Visual web design and CMS platform for marketing sites.
| Integration | Available | Notes |
|---|---|---|
| API | ✓ | REST API for sites, CMS, forms |
| MCP | - | Not available |
| CLI | ✓ | Webflow CLI for devlink and apps |
| SDK | ✓ | Official SDK for Node.js |
- Type: API Token (Site token or OAuth)
- Header:
Authorization: Bearer {api_token} - Get token: Site Settings > Integrations > API Access
GET https://api.webflow.com/v2/sites
Authorization: Bearer {api_token}GET https://api.webflow.com/v2/sites/{site_id}
Authorization: Bearer {api_token}GET https://api.webflow.com/v2/sites/{site_id}/collections
Authorization: Bearer {api_token}GET https://api.webflow.com/v2/collections/{collection_id}/items
Authorization: Bearer {api_token}GET https://api.webflow.com/v2/collections/{collection_id}/items/{item_id}
Authorization: Bearer {api_token}POST https://api.webflow.com/v2/collections/{collection_id}/items
Authorization: Bearer {api_token}
{
"fieldData": {
"name": "Item Name",
"slug": "item-name",
"custom-field": "value"
}
}PATCH https://api.webflow.com/v2/collections/{collection_id}/items/{item_id}
Authorization: Bearer {api_token}
{
"fieldData": {
"custom-field": "new value"
}
}POST https://api.webflow.com/v2/collections/{collection_id}/items/publish
Authorization: Bearer {api_token}
{
"itemIds": ["item_id_1", "item_id_2"]
}GET https://api.webflow.com/v2/sites/{site_id}/forms/{form_id}/submissions
Authorization: Bearer {api_token}POST https://api.webflow.com/v2/sites/{site_id}/publish
Authorization: Bearer {api_token}
{
"publishToWebflowSubdomain": true,
"publishToCustomDomains": true
}const Webflow = require('webflow-api');
const webflow = new Webflow({ token: 'api_token' });
// List sites
const sites = await webflow.sites.list();
// Get collection items
const items = await webflow.collections.items.listItems(collectionId);
// Create item
const item = await webflow.collections.items.createItem(collectionId, {
fieldData: {
name: 'New Item',
slug: 'new-item'
}
});# Install
npm install -g @webflow/webflow-cli
# Login
webflow login
# Initialize devlink
webflow devlink init
# Sync components
webflow devlink sync- Collections - Content types (like blog posts, team members)
- Items - Individual entries in a collection
- Fields - Data fields on items
PlainText- Simple textRichText- Formatted contentImage- Image uploadLink- URL or page referenceReference- Link to another collectionMulti-Reference- Multiple collection linksSwitch- Boolean toggleNumber- Numeric valueDate- Date/time
- Marketing site CMS management
- Blog/content publishing
- Form submission handling
- Automated content updates
- Programmatic SEO pages
- 60 requests/minute (general)
- 10 requests/minute (publishing)
- programmatic-seo
- content-strategy
- cro