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.
Tools (286)
Box Add Allowed Collaboration Domain
Box Add Allowed Collaboration DomainIntegration 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.
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
Box Add Classification To FileIntegration 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.
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 which lists all available classification keys.
Box Add Classification To Folder
Box Add Classification To FolderIntegration 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_classificationsto 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.
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 which lists all available classification keys.
Box Add Initial Classifications
Box Add Initial ClassificationsIntegration 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.
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
Box Add Or Update User AvatarIntegration 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.
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
Box Add Shared Link To FileIntegration 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.
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
Box Add Shared Link To FolderIntegration 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.
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
Box Add Shared Link To Web LinkIntegration 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.
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
Box Add User To GroupIntegration 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.
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
Box Append Metadata Taxonomy LevelIntegration 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.
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
Box Apply Watermark To FileIntegration 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.
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
Box Apply Watermark To FolderIntegration 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.
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
Box Ask QuestionIntegration 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.
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
Box Assign Legal Hold PolicyIntegration 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.
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
Box Assign Retention PolicyIntegration 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_retentionandenterprise_contentscopesA 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.
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
Box Assign Storage PolicyIntegration 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.
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
Box Assign TaskIntegration 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.
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
Box Authorize UserIntegration name: BOX_AUTHORIZE_USER
Authorize a user by sending them through the Box 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.
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
Box Cancel Box Sign RequestIntegration 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.
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
Box Commit Upload SessionIntegration 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:
Create an upload session using
create_upload_sessionUpload file parts using
upload_part_of_fileCommit 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.
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
Box Copy FileIntegration 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.
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
Box Copy File RequestIntegration 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:
Navigate to Box web UI (https://app.box.com)
Go to the folder containing the file request
Open the file request settings
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.
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
Box Copy FolderIntegration 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.
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
Box Create Ai AgentIntegration 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.
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
Box Create Box Sign RequestIntegration 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.
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
Box Create Box Skill Cards On FileIntegration 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_fileto delete existing cards first, then create new ones, ORUse
update_all_box_skill_cards_on_fileto overwrite all existing cards
Parameters
Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.
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
Box Create Collab ExemptionIntegration 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 domainsfirst if needed.The user must not already have an exemption (returns 409 Conflict if exists).
Requires enterprise admin privileges with
manage_usersscope.
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.
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
Box Create CollaborationIntegration 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:
loginandnameare hidden if a collaboration was created usinguser_idnameis hidden if a collaboration was created usinglogin
Parameters
Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.
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
Box Create CommentIntegration 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.
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
Box Create Email AliasIntegration 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.
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
Box Create FolderIntegration 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.
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
Box Create Folder LockIntegration 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.
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
Box Create GroupIntegration 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.
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
Box Create Legal Hold PolicyIntegration 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.
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
Box Create Metadata Cascade PolicyIntegration 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 Metadatain 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.
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
Box Create Metadata Instance On FileIntegration 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.
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
Box Create Metadata Instance On FolderIntegration 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.
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
Box Create Metadata TaxonomyIntegration 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.
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
Box Create Metadata Taxonomy LevelsIntegration 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.
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
Box Create Metadata Taxonomy NodeIntegration 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.
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
Box Create Metadata TemplateIntegration 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.
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
Box Create Retention PolicyIntegration 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.
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
Box Create Shield Information BarrierIntegration 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:
Get enterprise ID from /users/me
Create barrier (starts in
draft)Create segments and add users
Define segment restrictions
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.
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
Box Create Shield Information Barrier ReportIntegration 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.
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
Box Create Shield Information Barrier SegmentIntegration 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.
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.