# Webflow

Webflow is a no-code website design and hosting platform, letting users build responsive sites, launch online stores, and maintain content without coding

- **Category:** website builders
- **Auth:** OAUTH2, API_KEY
- **Composio Managed App Available?** Yes
- **Tools:** 52
- **Triggers:** 0
- **Slug:** `WEBFLOW`
- **Version:** 20260312_00

## Tools

### Create Asset Folder

**Slug:** `WEBFLOW_CREATE_ASSET_FOLDER`

Tool to create a new Asset Folder within a Webflow site. Use when you need to organize assets by creating folders. Requires assets:write scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `site_id` | string | Yes | Unique identifier for the Webflow site |
| `display_name` | string | Yes | A human readable name for the Asset Folder |
| `parent_folder` | string | No | An optional pointer to a parent Asset Folder ID. If not provided or set to null, the folder will be created at the root level. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Bulk Create Collection Items

**Slug:** `WEBFLOW_CREATE_BULK_COLLECTION_ITEMS`

Tool to create one or multiple items in a Webflow CMS Collection across multiple locales. Use when you need to create up to 100 collection items in a single request. If cmsLocaleIds is not included for an item, it will only be created in the primary locale. Requires CMS:write scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `items` | array | Yes | List of items to create (maximum 100 items per request). Each item must include fieldData with at least 'name' and 'slug' fields. |
| `collection_id` | string | Yes | Unique identifier for the Webflow collection |
| `skipInvalidFiles` | boolean | No | When true, invalid files are skipped and processing continues. When false, the entire request fails if any file is invalid. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Webflow Collection

**Slug:** `WEBFLOW_CREATE_COLLECTION`

Tool to create a new collection in a Webflow site. Each collection includes required 'name' and 'slug' fields which are generated automatically. Use this when you need to create a new CMS collection with custom fields. Required scope: cms:write

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `slug` | string | No | URL-friendly identifier for the collection. If not provided, it will be auto-generated from displayName. Field slugs are automatically converted to lowercase with spaces replaced by hyphens |
| `fields` | array | No | An array of custom fields to add to the collection. Each collection automatically includes required 'name' and 'slug' fields which cannot be removed |
| `site_id` | string | Yes | Unique identifier for the Webflow site where the collection will be created |
| `displayName` | string | Yes | Name of the collection. Each collection name must be distinct within the site |
| `singularName` | string | Yes | Singular name of each item in the collection (e.g., 'Blog Post' if the collection is 'Blog Posts') |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Collection Field

**Slug:** `WEBFLOW_CREATE_COLLECTION_FIELD`

Tool to create a custom field in a Webflow collection. Use when you need to add a new field to an existing collection. Field validation is currently not available through the API. Bulk creation of fields is not supported - fields must be created one at a time.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | Optional unique identifier for the field. If not provided, Webflow will auto-generate one |
| `type` | string ("Color" | "DateTime" | "Email" | "File" | "Image" | "Link" | "MultiImage" | "Number" | "Phone" | "PlainText" | "RichText" | "Switch" | "VideoLink" | "Option" | "Reference" | "MultiReference") | Yes | The type of field to create. Choose the appropriate field type for your collection data |
| `helpText` | string | No | Additional text to help anyone filling out this field |
| `metadata` | string | No | Metadata for the field. Required for Option, Reference, and MultiReference field types. For Option fields: provide OptionFieldMetadata with 'options' array. For Reference/MultiReference fields: provide ReferenceFieldMetadata with 'collectionId'. |
| `isEditable` | boolean | No | Define whether the field is editable. Defaults to true if not specified |
| `isRequired` | boolean | No | Define whether the field is required in the collection. Defaults to false if not specified |
| `displayName` | string | Yes | The display name of the field |
| `collection_id` | string | Yes | Unique identifier for the Collection |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Webflow Collection Item

**Slug:** `WEBFLOW_CREATE_COLLECTION_ITEM`

This tool creates a new item in a specified Webflow collection. It requires the collection_id and field_data parameters (including required name and slug) and optionally accepts an is_draft flag. Authentication is assumed to be provided, and the collection_id can be obtained by using the WEBFLOW_LIST_COLLECTIONS tool. IMPORTANT: The field_data keys must use the exact field 'slug' values from the collection schema, not display names. Use WEBFLOW_GET_COLLECTION first to retrieve the collection schema and identify the correct field slugs to use.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `is_draft` | boolean | No | Whether to create the item as a draft |
| `field_data` | object | Yes | The data for the item's fields. Must include 'name' and 'slug' fields. IMPORTANT: Field keys must be the exact field 'slug' values from the collection schema, NOT display names or arbitrary names. Use WEBFLOW_GET_COLLECTION with the collection_id to retrieve the collection schema and find valid field slugs. For example, if a field has displayName='Author Name' but slug='author-name', you must use 'author-name' as the key. |
| `collection_id` | string | Yes | The unique identifier of the Webflow collection |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Live Webflow Collection Item

**Slug:** `WEBFLOW_CREATE_LIVE_COLLECTION_ITEM`

Tool to create a collection item that will be immediately published to the live site. Use when you need items to appear on the live site instantly without staging. This bypasses the staged item workflow and creates items directly in the live database.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `field_data` | object | Yes | The data for the item's fields. Must include 'name' and 'slug' fields. IMPORTANT: Field keys must be the exact field 'slug' values from the collection schema, NOT display names or arbitrary names. Use WEBFLOW_GET_COLLECTION with the collection_id to retrieve the collection schema and find valid field slugs. For example, if a field has displayName='Author Name' but slug='author-name', you must use 'author-name' as the key. |
| `collection_id` | string | Yes | The unique identifier of the Webflow collection |
| `skip_invalid_files` | boolean | No | When true, invalid files are skipped and processing continues. When false, the entire request fails if any file is invalid. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Webflow Asset

**Slug:** `WEBFLOW_DELETE_ASSET`

Tool to delete an Asset from Webflow. Use when you need to permanently remove an asset from a site. Requires assets:write scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `asset_id` | string | Yes | Unique identifier for an Asset on a site |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Webflow Collection

**Slug:** `WEBFLOW_DELETE_COLLECTION`

Tool to delete a collection from Webflow using its unique identifier. Use when you need to permanently remove a collection. This operation requires the 'cms:write' scope and cannot be undone.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `collection_id` | string | Yes | Unique identifier for the collection to delete |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Collection Field

**Slug:** `WEBFLOW_DELETE_COLLECTION_FIELD`

Tool to delete a custom field from a Webflow collection. Use when you need to permanently remove a field from a collection schema. This endpoint does not currently support bulk deletion and requires the 'cms:write' authentication scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `field_id` | string | Yes | Unique identifier for a Field in a collection |
| `collection_id` | string | Yes | Unique identifier for a Collection |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Webflow Collection Item

**Slug:** `WEBFLOW_DELETE_COLLECTION_ITEM`

This tool allows you to delete a specific item from a collection in Webflow. It permanently removes the item from the specified collection and complements existing collection management tools. The tool requires a collection_id to identify the collection and an item_id to identify the item, with an optional cms_locale_id parameter for handling multi-language content.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_id` | string | Yes | The unique identifier of the item to delete |
| `cms_locale_id` | string | No | The locale ID for multi-language content |
| `collection_id` | string | Yes | The unique identifier of the Webflow collection |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Multiple Collection Items

**Slug:** `WEBFLOW_DELETE_COLLECTION_ITEMS`

Tool to delete multiple items from a Webflow collection in a single request. Use when you need to remove multiple collection items efficiently. Items are deleted only in the primary locale unless cmsLocaleIds are specified. Requires CMS:write scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `items` | array | Yes | List of items to delete from the collection. Each item must have an 'id' field and optionally 'cmsLocaleIds' for locale-specific deletion. |
| `collection_id` | string | Yes | Unique identifier of the Webflow collection |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Webflow Webhook

**Slug:** `WEBFLOW_DELETE_WEBHOOK`

Tool to remove a Webhook from Webflow. Use when you need to delete an existing webhook by its ID. Requires 'sites:read' scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `webhook_id` | string | Yes | Unique identifier for the Webhook to delete |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fulfill Order

**Slug:** `WEBFLOW_FULFILL_ORDER`

This tool allows you to mark an order as fulfilled in Webflow's e-commerce system. It's essential for managing order fulfillment in Webflow stores.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `site_id` | string | Yes | Unique identifier for the site where the order exists |
| `order_id` | string | Yes | Unique identifier for the order to be fulfilled |
| `send_order_fulfilled_email` | boolean | No | Whether to send the order fulfillment email to the customer |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Asset Details

**Slug:** `WEBFLOW_GET_ASSET`

Retrieves detailed information about a specific asset by its ID from a Webflow site. Returns asset metadata including content type, size, URLs, variants, and other properties. Use this when you need to access details about an uploaded asset. This tool requires the 'assets:read' authentication scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `locale` | string | No | Unique identifier for a specific locale. Used when working with localized content. |
| `asset_id` | string | Yes | Unique identifier for the asset to retrieve |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Asset Folder Details

**Slug:** `WEBFLOW_GET_ASSET_FOLDER`

Tool to retrieve details about a specific Asset Folder in Webflow. Use when you need information about a folder's name, parent folder, assets it contains, and metadata like creation/update dates. Requires assets:read scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `asset_folder_id` | string | Yes | Unique identifier for the Asset Folder |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Collection Details

**Slug:** `WEBFLOW_GET_COLLECTION`

Retrieves a specific collection by its ID from a Webflow site. This endpoint returns detailed information about the collection, including its name, slug, and schema. It requires a valid collection_id as a parameter and complements the WEBFLOW_LIST_COLLECTIONS tool for accessing specific collection details. This tool requires the 'cms:read' authentication scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `collection_id` | string | Yes | Unique identifier for the collection to retrieve |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Collection Item

**Slug:** `WEBFLOW_GET_COLLECTION_ITEM`

This tool retrieves a specific item from a Webflow collection. It allows users to fetch detailed information about a single collection item using its unique identifier. The tool is used to get an item's details such as its id, timestamps (lastPublished, lastUpdated, createdOn), archive/draft status, fieldData, and cmsLocaleId. This tool requires appropriate 'cms:read' authentication scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_id` | string | Yes | Unique identifier for the item within the collection |
| `cms_locale_id` | string | No | Unique identifier for a CMS Locale. To query multiple locales, input a comma-separated string. |
| `collection_id` | string | Yes | Unique identifier for the collection |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Component Properties

**Slug:** `WEBFLOW_GET_COMPONENT_PROPERTIES`

Tool to get the default property values of a component definition. Use when you need to retrieve text content properties (plain text or rich text) for a specific component. If you do not include a localeId in your request, the response will return any properties that can be localized from the Primary locale. Required scope: components:read

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of records to return (max: 100) |
| `offset` | integer | No | Offset for pagination |
| `site_id` | string | Yes | Unique identifier for the site |
| `branchId` | string | No | Scope the operation to work on a specific branch |
| `localeId` | string | No | Unique identifier for a specific locale. If not included, returns properties that can be localized from the Primary locale |
| `component_id` | string | Yes | Unique identifier for the component |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Custom Domains

**Slug:** `WEBFLOW_GET_CUSTOM_DOMAINS`

Tool to retrieve all custom domains associated with a specific Webflow site. Use when you need to list the custom domain URLs configured for a site.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `site_id` | string | Yes | Unique identifier for a Site |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Item Inventory

**Slug:** `WEBFLOW_GET_ITEM_INVENTORY`

This tool retrieves the current inventory levels for a specific SKU item in a Webflow e-commerce site. It provides information about the item's inventory quantity and type (finite or infinite) and complements the WEBFLOW_UPDATE_ITEM_INVENTORY action by allowing users to check inventory levels before making any updates. Requirements: - E-commerce must be enabled on the Webflow site - The collection_id must be a SKU collection ID (not a regular CMS collection) - The item_id must be a valid SKU item ID - Requires the 'ecommerce:read' authentication scope

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_id` | string | Yes | Unique identifier for the SKU Item whose inventory you want to retrieve. Use the List Products & SKUs API to find SKU item IDs. |
| `collection_id` | string | Yes | Unique identifier for the SKU Collection (not a regular CMS collection). This is automatically created when e-commerce is enabled on the site. Use the List Collections API to find the SKU collection ID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Live Collection Item

**Slug:** `WEBFLOW_GET_LIVE_COLLECTION_ITEM`

Retrieves details of a selected Collection live Item from Webflow. Use this when you need to access the published version of a collection item. For serving data to applications in real-time, the CDN-backed endpoint at api-cdn.webflow.com is recommended for better performance. This tool requires the 'cms:read' authentication scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_id` | string | Yes | Unique identifier for the item within the collection |
| `cms_locale_id` | string | No | Unique identifier for a CMS Locale. To query multiple locales, input a comma-separated string. |
| `collection_id` | string | Yes | Unique identifier for the collection |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Order Details

**Slug:** `WEBFLOW_GET_ORDER`

This tool retrieves detailed information about a specific order in Webflow. It allows users to fetch comprehensive order details including customer information, items purchased, payment status, and shipping details. The response includes order status, customer details, billing and shipping information, items purchased, payment details, order total, timestamps, fulfillment status, and additional comments or tracking information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `site_id` | string | Yes | The unique identifier of the site |
| `order_id` | string | Yes | The unique identifier of the order |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Page Metadata

**Slug:** `WEBFLOW_GET_PAGE`

Tool to retrieve metadata for a single Webflow page by page_id. Use when you need detailed information about a specific page including title, slug, SEO/OpenGraph settings, draft/published state, localization, and branching details. Requires pages:read scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page_id` | string | Yes | Unique identifier for the page |
| `locale_id` | string | No | Unique identifier for a specific locale. If not provided, returns content from the primary locale. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Page DOM Content

**Slug:** `WEBFLOW_GET_PAGE_DOM`

Tool to retrieve the DOM/content node structure for a Webflow static page. Use when you need to inspect page elements, locate text content, or identify components for localization or text replacement. Returns static text and image nodes but not the complete DOM structure. Only works with static pages, not CMS template pages.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of records to return (max: 100) |
| `offset` | integer | No | Offset for pagination |
| `page_id` | string | Yes | Unique identifier for the page |
| `locale_id` | string | No | Unique identifier for a specific locale |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Webflow Site Information

**Slug:** `WEBFLOW_GET_SITE_INFO`

This tool retrieves detailed information about a specific Webflow site. It includes site id, workspaceId, creation and update dates, display names, and other settings like previewUrl, timeZone, customDomains, and locale settings. It requires a valid 'site_id' and appropriate 'sites:read' authentication scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `site_id` | string | Yes | The unique identifier of the site to retrieve information for |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Token Authorized By

**Slug:** `WEBFLOW_GET_TOKEN_AUTHORIZED_BY`

Tool to retrieve information about the user who authorized the access token. Use when you need to identify the authorized user's ID, email, first name, and last name.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Asset Folders

**Slug:** `WEBFLOW_LIST_ASSET_FOLDERS`

Tool to list all asset folders within a given Webflow site. Use when you need to retrieve folder structure for asset organization or when uploading assets to specific folders.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `site_id` | string | Yes | Unique identifier for a Site |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Webflow Assets

**Slug:** `WEBFLOW_LIST_ASSETS`

Tool to retrieve all assets (images, files) uploaded to a Webflow site. Use when you need to list or search for assets within a site. Supports pagination for large asset collections.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of records to be returned (max limit: 100) |
| `offset` | integer | No | Offset used for pagination if the results have more than limit records |
| `site_id` | string | Yes | The unique identifier of the Webflow site |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Collection Items

**Slug:** `WEBFLOW_LIST_COLLECTION_ITEMS`

This tool retrieves a list of items from a specified collection in Webflow. It supports pagination and filtering, and is essential for fetching multiple items from a collection, such as blog posts, products, or any content stored in collections.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Filter by exact item name |
| `slug` | string | No | Filter by exact item slug |
| `limit` | integer | No | Maximum number of records to return (max: 100) |
| `offset` | integer | No | Offset for pagination |
| `sort_by` | string ("lastPublished" | "name" | "slug") | No | Fields available for sorting collection items. |
| `sort_order` | string ("asc" | "desc") | No | Sort order for query results. |
| `cms_locale_id` | string | No | Filter by CMS Locale ID |
| `collection_id` | string | Yes | Unique identifier for the collection |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Webflow Collections

**Slug:** `WEBFLOW_LIST_COLLECTIONS`

This tool retrieves a list of all collections for a given Webflow site. It uses the site_id (obtained from WEBFLOW_LIST_WEBFLOW_SITES) to return a list of collections, each with properties such as id, name, slug, singularName, lastUpdated, and fields. This tool is fundamental for working with Webflow's CMS and requires appropriate 'cms:read' authentication scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `site_id` | string | Yes | The unique identifier of the Webflow site |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Comment Threads

**Slug:** `WEBFLOW_LIST_COMMENT_THREADS`

Tool to list all comment threads for a Webflow site. Use when you need to retrieve comments on pages for collaboration or review purposes. Note: New comments may take up to 5 minutes to appear.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of records to return (max: 100) |
| `offset` | integer | No | Offset for pagination |
| `sortBy` | string ("createdOn" | "lastUpdated") | No | Sort field options for comment threads. |
| `site_id` | string | Yes | Unique identifier for the site |
| `localeId` | string | No | Unique identifier for a specific locale to filter comments by |
| `sortOrder` | string ("asc" | "desc") | No | Sort order options. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Form Submissions

**Slug:** `WEBFLOW_LIST_FORM_SUBMISSIONS`

This tool retrieves a list of form submissions for a specific Webflow site. It allows users to fetch form submission data with pagination support and optional filtering by form element ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of items to return (max: 100) |
| `offset` | integer | No | Number of items to skip for pagination |
| `site_id` | string | Yes | The ID of the site to get form submissions from |
| `element_id` | string | No | Filter submissions by specific form element ID |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Webflow Orders

**Slug:** `WEBFLOW_LIST_ORDERS`

This tool retrieves a list of all orders for a specified Webflow site using the GET /sites/{site_id}/orders endpoint. It accepts a required site_id parameter and optional parameters such as status (to filter orders by their status), offset (for pagination), and limit (specifies the number of items per request). The response includes order details like order_id, created_on, customer_info, status, total, items, shipping_address, billing_address, and payment_info. This functionality supports ecommerce workflow management and requires the scope ecommerce:read.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of items to return |
| `offset` | integer | No | Number of items to skip for pagination |
| `status` | string ("pending" | "unfulfilled" | "fulfilled" | "disputed" | "dispute-lost" | "refunded") | No | Order status in Webflow. |
| `site_id` | string | Yes | The ID of the site to get orders from |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Pages

**Slug:** `WEBFLOW_LIST_PAGES`

This tool retrieves a list of all pages for a specified Webflow site. It can access both static and CMS-driven pages and provides information such as the page's unique identifier, name, URL slug, creation and update timestamps, and publication status. It is useful for auditing site structure, building site maps, and monitoring page updates.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of records to return (max: 100) |
| `offset` | integer | No | Offset for pagination |
| `site_id` | string | Yes | Unique identifier for the site |
| `locale_id` | string | No | Unique identifier for a specific locale |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Webflow Sites

**Slug:** `WEBFLOW_LIST_WEBFLOW_SITES`

This tool retrieves a list of all Webflow sites accessible to the authenticated user. It is a fundamental and independent action which only requires an authentication token and returns details for each site including site_id, name, shortName, lastPublished, previewUrl, timezone, and status.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Webflow Webhooks

**Slug:** `WEBFLOW_LIST_WEBHOOKS`

Tool to list all App-created Webhooks registered for a given site. Use when you need to retrieve the webhooks configured for a Webflow site. Requires 'sites:read' scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `site_id` | string | Yes | The unique identifier of the Webflow site |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Publish Collection Items

**Slug:** `WEBFLOW_PUBLISH_COLLECTION_ITEMS`

Tool to publish one or multiple staged collection items in Webflow. Use when you need to make draft items live on the published site. Supports both simple publishing (via item_ids) and locale-specific publishing (via items with cms_locale_ids) for multi-locale sites.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `items` | array | No | Array of items with optional locale information. Use this format when publishing to specific locales in multi-locale sites. Either item_ids or items must be provided, but not both. |
| `item_ids` | array | No | Array of collection item IDs to publish. Use this for simple publishing without locale information. Either item_ids or items must be provided, but not both. |
| `collection_id` | string | Yes | The unique identifier of the Webflow collection |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Publish Webflow Site

**Slug:** `WEBFLOW_PUBLISH_SITE`

This tool publishes a Webflow site, making all staged changes live. It uses the POST /v2/sites/{site_id}/publish API endpoint and requires a valid site_id. You can optionally specify custom domain IDs or choose to publish to the default Webflow subdomain. It is essential for deploying updates made to site content, design, or structure. Rate limit: 1 successful publish per minute.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `site_id` | string | Yes | The unique identifier of the site to publish |
| `custom_domains` | array | No | Array of Custom Domain IDs to publish. Use the Get Custom Domains endpoint to retrieve domain IDs. At least one of custom_domains or publish_to_webflow_subdomain must be specified. |
| `publish_to_webflow_subdomain` | boolean | No | Set to true to publish to the default Webflow subdomain ({shortName}.webflow.io). Defaults to false. At least one of custom_domains or publish_to_webflow_subdomain must be specified. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Refund Order

**Slug:** `WEBFLOW_REFUND_ORDER`

This tool allows you to refund a Webflow e-commerce order. When executed, it reverses the Stripe charge and sets the order's status to 'refunded'. It handles customer returns or order cancellations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `reason` | string ("duplicate" | "fraudulent" | "requested") | No | Valid reasons for refunding an order. |
| `site_id` | string | Yes | Unique identifier for the site where the order exists |
| `order_id` | string | Yes | Unique identifier for the order to be refunded |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unfulfill Order

**Slug:** `WEBFLOW_UNFULFILL_ORDER`

This tool allows you to mark a previously fulfilled order as unfulfilled in Webflow. It is useful for reversing a fulfillment action when an order was mistakenly marked as fulfilled or if there are issues with shipment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `site_id` | string | Yes | The ID of the site containing the order |
| `order_id` | string | Yes | The ID of the order to unfulfill |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unpublish Live Collection Item

**Slug:** `WEBFLOW_UNPUBLISH_LIVE_COLLECTION_ITEM`

Tool to unpublish a live item from the Webflow site and set the isDraft property to true. Use when you need to take a published collection item offline and revert it to draft status. Requires CMS:write scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_id` | string | Yes | Unique identifier for an Item |
| `cms_locale_id` | string | No | Unique identifier for a CMS Locale. This UID is different from the Site locale identifier and is listed as `cmsLocaleId` in the Sites response. To query multiple locales, input a comma separated string. |
| `collection_id` | string | Yes | Unique identifier for a Collection |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unpublish Live Collection Items

**Slug:** `WEBFLOW_UNPUBLISH_LIVE_COLLECTION_ITEMS`

Tool to unpublish up to 100 items from the live site and set isDraft property to true. Use when you need to remove items from live view while keeping them in the collection. Items are unpublished only in the primary locale unless cmsLocaleIds are specified. Requires CMS:write scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `items` | array | Yes | List of items to unpublish from the live site (max 100 items). Each item must have an 'id' field and optionally 'cmsLocaleIds' for locale-specific unpublishing. Sets isDraft property to true for unpublished items. |
| `collection_id` | string | Yes | Unique identifier of the Webflow collection |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Collection Field

**Slug:** `WEBFLOW_UPDATE_COLLECTION_FIELD`

Tool to update a custom field in a Webflow collection. Use when you need to modify field properties like display name, help text, or required status. Requires cms:write scope. At least one field property (displayName, helpText, or isRequired) must be provided for the update.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `field_id` | string | Yes | Unique identifier for the Field in the collection |
| `helpText` | string | No | Additional text to help anyone filling out this field |
| `isRequired` | boolean | No | Define whether the field is required in the collection |
| `displayName` | string | No | The display name of the field |
| `collection_id` | string | Yes | Unique identifier for the Collection |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Webflow Collection Item (Deprecated)

**Slug:** `WEBFLOW_UPDATE_COLLECTION_ITEM`

DEPRECATED: Use WEBFLOW_UPDATE_COLLECTION_ITEM_V2 instead. Updates an EXISTING item in a Webflow collection. This action is for modifying items that already exist - it requires a valid item_id (24-character hexadecimal MongoDB ObjectId) of an existing collection item. IMPORTANT: This action cannot create new items. To create new collection items, use WEBFLOW_CREATE_COLLECTION_ITEM instead. Uses the PATCH /collections/{collection_id}/items endpoint to modify fields available in the collection's schema and returns the updated item with metadata.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `live` | boolean | No | Whether to publish the changes immediately |
| `fields` | object | Yes | The fields to update and their new values. Keys must be field slugs from the collection schema. Values can be: string (text, email, link, date, option ID, reference ID), number (int/float), boolean, image object ({url, alt, fileId}), or array (multi-reference IDs, multi-image objects). Use WEBFLOW_GET_COLLECTION to retrieve valid field slugs. |
| `item_id` | string | Yes | The unique identifier of an EXISTING collection item to update. Must be a valid 24-character hexadecimal MongoDB ObjectId (e.g., '6012c632c07e9e32342dc2c4'). To create NEW items, use WEBFLOW_CREATE_COLLECTION_ITEM instead. |
| `cms_locale_id` | string | No | The locale identifier if the item is localized |
| `collection_id` | string | Yes | The unique identifier of the Webflow collection |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Collection Item (V2 Single)

**Slug:** `WEBFLOW_UPDATE_COLLECTION_ITEM_V2`

Tool to update a selected Item in a Webflow Collection using the single-item PATCH endpoint. Use when you need to update an existing collection item with new field values, draft status, or archive status. Requires CMS:write scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `isDraft` | boolean | No | Boolean determining if the Item is set to draft |
| `item_id` | string | Yes | Unique identifier for an Item |
| `fieldData` | object | Yes | The fields to update and their new values. Must include 'name' and 'slug'. Keys must be field slugs from the collection schema. Values can be: string (text, email, link, date, option ID, reference ID), number (int/float), boolean, image object ({url, fileId, alt}), or array (multi-reference IDs, multi-image objects). Use WEBFLOW_GET_COLLECTION to retrieve valid field slugs. |
| `isArchived` | boolean | No | Boolean determining if the Item is set to archived |
| `cmsLocaleId` | string | No | Identifier for the locale of the CMS item |
| `collection_id` | string | Yes | Unique identifier for a Collection |
| `skipInvalidFiles` | boolean | No | When true, invalid files are skipped and processing continues. When false, the entire request fails if any file is invalid. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Item Inventory

**Slug:** `WEBFLOW_UPDATE_ITEM_INVENTORY`

This tool allows you to update the inventory levels of a specific SKU item in your Webflow e-commerce site by either setting the inventory quantity directly or updating it incrementally. It updates the inventory status using the PATCH /collections/:collection_id/items/:item_id/inventory endpoint and requires the 'ecommerce:write' scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_id` | string | Yes | Unique identifier for a SKU Item. Use WEBFLOW_LIST_COLLECTION_ITEMS with the SKU collection_id to find SKU item IDs. |
| `quantity` | number | No | Sets the inventory quantity to this absolute value |
| `collection_id` | string | Yes | Unique identifier for an SKU Collection (requires e-commerce enabled site). Use WEBFLOW_LIST_COLLECTIONS to find SKU collections. |
| `inventory_type` | string ("finite" | "infinite") | Yes | Type of inventory tracking. Must be either 'finite' or 'infinite' |
| `update_quantity` | number | No | Adds this quantity to the current stored quantity (can be negative) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Live Webflow Collection Item

**Slug:** `WEBFLOW_UPDATE_LIVE_COLLECTION_ITEM`

Tool to update a selected live Item in a Webflow Collection. Use when you need to publish updates to a collection item directly to the live site. The updates are immediately published and visible on the production website.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `isDraft` | boolean | No | Boolean determining if the Item is set to draft |
| `item_id` | string | Yes | The unique identifier of an EXISTING collection item to update live. Must be a valid 24-character hexadecimal MongoDB ObjectId (e.g., '6012c632c07e9e32342dc2c4'). The updates will be published directly to the live site. |
| `fieldData` | object | Yes | The fields to update and their new values. Keys must be field slugs from the collection schema. Values can be: string (text, email, link, date, option ID, reference ID), number (int/float), boolean, image object ({url, alt, fileId}), or array (multi-reference IDs, multi-image objects). Use WEBFLOW_GET_COLLECTION to retrieve valid field slugs. |
| `isArchived` | boolean | No | Boolean determining if the Item is set to archived |
| `cmsLocaleId` | string | No | Identifier for the locale of the CMS item |
| `collection_id` | string | Yes | The unique identifier of the Webflow collection |
| `skipInvalidFiles` | boolean | No | When true, invalid files are skipped and processing continues. When false, the entire request fails if any file is invalid. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Live Collection Items

**Slug:** `WEBFLOW_UPDATE_LIVE_COLLECTION_ITEMS`

Tool to update single or multiple published items (up to 100) in a Webflow Collection. Use when you need to update items that are already published to the live site. Items will only be updated in the primary locale unless a cmsLocaleId is included in the request.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `items` | array | Yes | List of items to update. Maximum 100 items can be updated in a single request. Each item must include an 'id' and 'fieldData' with the fields to update. |
| `collection_id` | string | Yes | The unique identifier of the Webflow collection |
| `skipInvalidFiles` | boolean | No | When true, invalid files are skipped and processing continues. When false, the entire request fails if any file is invalid. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Order

**Slug:** `WEBFLOW_UPDATE_ORDER`

This tool allows updating specific fields of an existing order in Webflow. It's particularly useful for managing order fulfillment details and adding internal notes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `comment` | string | No | Arbitrary data for your records. |
| `site_id` | string | Yes | Unique identifier for a Site. |
| `order_id` | string | Yes | Unique identifier for an Order. |
| `shippingProvider` | string | No | Company or method used to ship order. |
| `shippingTracking` | string | No | Tracking number for order shipment. |
| `shippingTrackingURL` | string | No | URL to track order shipment. At least one of comment, shippingProvider, shippingTracking, or shippingTrackingURL must be provided. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Page Metadata

**Slug:** `WEBFLOW_UPDATE_PAGE_METADATA`

Tool to update page-level metadata in Webflow including SEO and Open Graph fields. Use when you need to modify a page's title, slug, SEO settings, or Open Graph annotations. Requires pages:write scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `seo` | object | No | Model for page SEO input fields. |
| `slug` | string | No | Slug for the page. Note: Updating slugs in secondary locales is only supported in Advanced and Enterprise localization add-on plans. |
| `title` | string | No | Title for the page |
| `page_id` | string | Yes | Unique identifier for the page |
| `localeId` | string | No | Unique identifier for a specific locale. Learn more about localization at https://webflow.com/docs/working-with-localization |
| `openGraph` | object | No | Model for page Open Graph input fields. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Webflow Site

**Slug:** `WEBFLOW_UPDATE_SITE`

Tool to update a Webflow site's properties such as name and parent folder. Use when you need to modify site settings. This endpoint requires an Enterprise workspace and the sites:write OAuth scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The name of the site |
| `site_id` | string | Yes | Unique identifier for the site to update |
| `parentFolderId` | string | No | The parent folder ID of the site |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Upload Asset to Webflow

**Slug:** `WEBFLOW_UPLOAD_ASSET`

This tool allows users to upload assets (files, images, etc.) to a Webflow site. It involves a two-step process: first, generating a pre-signed Amazon S3 upload URL by calling the Webflow API, and second, uploading the file to that S3 URL. IMPORTANT: The file_content parameter must contain actual base64-encoded binary data, NOT a placeholder or variable reference. For example, 'SGVsbG8gV29ybGQh' is valid base64 that decodes to 'Hello World!'. The tool requires parameters such as site_id, file_name, file_content, md5, and optionally asset_folder_id to correctly upload and manage assets for the specified Webflow site.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `md5` | string | Yes | MD5 hash of the file content (raw bytes, not base64) for integrity verification. Must be a 32-character hexadecimal string. |
| `site_id` | string | Yes | The unique identifier of the Webflow site |
| `file_name` | string | Yes | Name of the file to be uploaded |
| `content_type` | string | Yes | MIME type of the file being uploaded |
| `file_content` | string | Yes | The actual base64-encoded binary content of the file to upload. This MUST be real base64 data, NOT a placeholder or variable name. Valid base64 strings contain only characters A-Z, a-z, 0-9, +, /, and = (for padding). Example for a small text file: 'SGVsbG8gV29ybGQh' (encodes 'Hello World!'). To get base64 content: read the file bytes and encode with base64.b64encode(). |
| `asset_folder_id` | string | No | ID of the asset folder where the asset should be placed. Must be a valid asset folder ID (not a site ID). Use the List Asset Folders endpoint (GET /v2/sites/{site_id}/asset_folders) to get available folder IDs. If not provided, the asset will be uploaded to the root level. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
