Webflow

Learn how to use Webflow with Composio

Overview

SLUG: WEBFLOW

Description

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

Authentication Details

generic_api_key
stringRequired

Connecting to Webflow

Create an auth config

Use the dashboard to create an auth config for the Webflow toolkit. This allows you to connect multiple Webflow accounts to Composio for agents to use.

1

Select App

Navigate to the Webflow toolkit page and click “Setup Integration”.

2

Configure Auth Config Settings

Select among the supported auth schemes of and configure them here.

3

Create and Get auth config ID

Click “Create Integration”. After creation, copy the displayed ID starting with ac_. This is your auth config ID. This is not a sensitive ID — you can save it in environment variables or a database. This ID will be used to create connections to the toolkit for a given user.

Connect Your Account

Using API Key

1from composio import Composio
2
3# Replace these with your actual values
4webflow_auth_config_id = "ac_YOUR_WEBFLOW_CONFIG_ID" # Auth config ID created above
5user_id = "0000-0000-0000" # UUID from database/app
6
7composio = Composio()
8
9def authenticate_toolkit(user_id: str, auth_config_id: str):
10 # Replace this with a method to retrieve an API key from the user.
11 # Or supply your own.
12 user_api_key = input("[!] Enter API key")
13
14 connection_request = composio.connected_accounts.initiate(
15 user_id=user_id,
16 auth_config_id=auth_config_id,
17 config={"auth_scheme": "API_KEY", "val": user_api_key}
18 )
19
20 # API Key authentication is immediate - no redirect needed
21 print(f"Successfully connected Webflow for user {user_id}")
22 print(f"Connection status: {connection_request.status}")
23
24 return connection_request.id
25
26
27connection_id = authenticate_toolkit(user_id, webflow_auth_config_id)
28
29# You can verify the connection using:
30connected_account = composio.connected_accounts.get(connection_id)
31print(f"Connected account: {connected_account}")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the Webflow toolkit’s playground

Python
1from composio import Composio
2from openai import OpenAI
3import json
4
5openai = OpenAI()
6composio = Composio()
7
8# User ID must be a valid UUID format
9user_id = "0000-0000-0000" # Replace with actual user UUID from your database
10
11tools = composio.tools.get(user_id=user_id, toolkits=["WEBFLOW"])
12
13print("[!] Tools:")
14print(json.dumps(tools))
15
16def invoke_llm(task = "What can you do?"):
17 completion = openai.chat.completions.create(
18 model="gpt-4o",
19 messages=[
20 {
21 "role": "user",
22 "content": task, # Your task here!
23 },
24 ],
25 tools=tools,
26 )
27
28 # Handle Result from tool call
29 result = composio.provider.handle_tool_calls(user_id=user_id, response=completion)
30 print(f"[!] Completion: {completion}")
31 print(f"[!] Tool call result: {result}")
32
33invoke_llm()

Tool List

Tool Name: Create Webflow Collection Item

Description

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.

Action Parameters

collection_id
stringRequired
field_data
objectRequired
is_draft
boolean

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Webflow Collection Item

Description

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.

Action Parameters

cms_locale_id
string
collection_id
stringRequired
item_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Collection Details

Description

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.

Action Parameters

collection_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Collection Item

Description

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.

Action Parameters

cms_locale_id
string
collection_id
stringRequired
item_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Item Inventory

Description

This tool retrieves the current inventory levels for a specific item in a webflow collection. 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.

Action Parameters

collection_id
stringRequired
item_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Order Details

Description

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.

Action Parameters

order_id
stringRequired
site_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Webflow Site Information

Description

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.

Action Parameters

site_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Webflow Collections

Description

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.

Action Parameters

site_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Collection Items

Description

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.

Action Parameters

cms_locale_id
string
collection_id
stringRequired
limit
integer
name
string
offset
integer
slug
string
sort_by
string
sort_order
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Form Submissions

Description

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.

Action Parameters

element_id
string
limit
integer
offset
integer
site_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Webflow Orders

Description

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.

Action Parameters

limit
integer
offset
integer
site_id
stringRequired
status
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Pages

Description

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.

Action Parameters

limit
integer
locale_id
string
offset
integer
site_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Webflow Sites

Description

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.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Publish Webflow Site

Description

This tool publishes a webflow site, making all staged changes live. it uses the post /sites/{site id}/publish api endpoint and requires a valid site id, with an optional domains array to specify custom domains. it is essential for deploying updates made to site content, design, or structure.

Action Parameters

domains
array
site_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Refund Order

Description

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.

Action Parameters

order_id
stringRequired
reason
string
site_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update Webflow Collection Item

Description

This tool allows updating an existing item in a webflow collection using the patch /collections/{collection id}/items/{item id} endpoint. it accepts required parameters such as collection id, item id, and fields, and optional 'live' flag and cms locale id. the update operation modifies any fields available in the collection's schema and returns the updated item along with metadata.

Action Parameters

cms_locale_id
string
collection_id
stringRequired
fields
objectRequired
item_id
stringRequired
live
boolean

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update Item Inventory

Description

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.

Action Parameters

collection_id
stringRequired
inventory_type
stringRequired
item_id
stringRequired
quantity
number
update_quantity
number

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update Order

Description

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.

Action Parameters

comment
string
order_id
stringRequired
shippingProvider
string
shippingTracking
string
shippingTrackingURL
string
site_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Upload Asset to Webflow

Description

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. 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.

Action Parameters

asset_folder_id
string
content_type
stringRequired
file_content
stringRequired
file_name
stringRequired
md5
stringRequired
site_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Fulfill Order

Description

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.

Action Parameters

order_id
stringRequired
send_order_fulfilled_email
boolean
site_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Unfulfill Order

Description

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.

Action Parameters

order_id
stringRequired
site_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired