Add Collection Fields
Create or update typed field definitions in a CMS collection.
Framer is a website builder and design platform whose Server API supports project publishing, CMS, localization, canvas, asset, code, and agent workflows.
Create or update typed field definitions in a CMS collection.
Create or update CMS collection items with typed, tagged field values.
Insert a component instance by component module URL.
Insert editable component layers using the current editor selection/context without retaining an instance. This action does not accept a target page. Attributes are forwarded to Framer, but Framer currently ignores them when producing the detached output and returns the component defaults instead.
Add a case to an enum field or enum variable.
Upload one image and insert it using the current editor selection/context. This action does not accept a target page.
Upload and insert multiple images using the current editor selection/context. This action does not accept a target page.
Add or synchronize managed CMS items with typed, tagged field values and stable external IDs.
Create project redirects, or update existing redirects by including their IDs; all changes take effect on a subsequent publish.
Insert an SVG on the canvas or replace the selected SVG.
Insert text using the current editor selection/context. This action does not accept a target page.
Execute Framer's agent command DSL on a project page.
Clone a design page by node ID, optionally requesting a name.
Clone a node by ID.
Clone a web page by node ID, optionally requesting a route path.
Create a Framer project branch from the active branch or a specified base, then switch the editor and API session to the new branch.
Create an agent branch from the active branch and switch to it.
Create a Framer code file with initial source content.
Create a user-owned CMS collection in the connected Framer project.
Create a reusable color style in the connected Framer project.
Create a smart component node with a name.
Create a design page.
Create a frame node, optionally below a parent.
Create a project locale.
Create a plugin-managed CMS collection in the connected project.
Create a text node, optionally below a parent.
Create a reusable text style in the connected Framer project.
Create a web page at a route path.
Delete an explicit project branch, switching to its base if active.
Delete a branch in the agent workflow.
Promote an existing Framer deployment to explicit domains or to the project's configured production domains.
Export a node as serialized SVG through Framer's dedicated WebSocket side channel.
Replace a component instance with editable local layers.
Get the branch currently active for the Framer editor and API session, including its base, contributor state, and creator metadata.
Get metadata for the branch active in the Framer agent session.
Get dynamic project context for Framer's agent command and query APIs.
Get Framer's static agent prompt, including its command and project-query DSL references.
Get a node's ancestors from its parent through the page root.
Get semantic changes in a branch relative to its base branch.
Get a summarized changelog for a project branch relative to its base.
Return every project branch, a selected set, or one branch by passing zero, many, or one branch ID.
List project branches available to the Framer agent session.
Get the root node of the current canvas.
Get contributors who changed the project in an optional version range.
Get page paths added, removed, or modified between the active project version and its previously published version.
Get a node's canvas children.
Get one Framer code file by ID or project-relative path.
Get the source content of a saved Framer code file version.
List saved versions of a Framer code file.
List code files and their current contents in the connected Framer project.
Get one CMS collection by its node ID.
List all field definitions in a CMS collection, including dividers.
List items and typed field values in a CMS collection.
List managed and user-owned CMS collections in the connected Framer project.
Get one reusable color style by ID.
List reusable color styles in the connected Framer project.
Get the Framer user whose identity and project permissions are represented by the connected project API key.
Get custom HTML and disabled state for all four project document injection locations.
Get the project's default locale.
Get the latest status snapshot, timestamps, creator, preview URL, and failure stage for one Framer deployment.
Get optimization warnings and errors for a Framer deployment, including related node IDs when available.
Get matching style or token nodes referenced by descendants.
Get descendants of a node matching provider-defined node types.
Get one available font variant by family, weight, and style.
List individual font files and variants available to the Framer project.
Get the top-level canvas node containing a node.
List valid locale language codes.
List valid region codes for a language.
List configured non-default locales.
Get localization groups, optionally filtered by IDs or type.
List supported fields in a plugin-managed Framer CMS collection.
List external item IDs in a plugin-managed CMS collection.
List plugin-managed CMS collections available to the connected API session.
Get a project node by ID.
Get one serialized Framer node and its children by ID.
Get serialized Framer nodes and their children by ID.
Get all nodes of selected types on a Framer page without children.
Get project nodes whose node type supports an attribute, whether or not it is set.
Get project nodes where a supported attribute has a non-null value.
Get all nodes of a known class, optionally below a parent node.
Get a node's parent.
Get the direct parent of a node.
Get the connected Framer project's current identity and legacy migration ID.
Get the connected project's current staging and production publication URLs, deployment times, and optimization states.
Get the bounding rectangle of a Framer node.
Get a node's rounded canvas rectangle.
List the project's redirects, including source and destination paths and locale expansion behavior.
Get the enclosing page or component scope for a node.
Get the plain-text content of a text node by ID.
Get one reusable text style by ID.
List reusable text styles in the connected Framer project.
List web pages added, updated, or removed since the active branch was last published.
List customizable variables for one Framer vector-set item.
List vector items in one Framer vector set.
List vector icon sets available to the connected Framer project.
Join an explicit project branch as a contributor.
Join a branch as a contributor for agent editing.
Leave an explicit project branch as a contributor.
Leave a branch as a contributor.
Deprecated Framer lint operation retained for compatibility; SDK 5.1.0 documents it as a no-op.
List project, external, and additional components available to the agent.
List one cursor-controlled page of deployments for the active Framer branch, returning at most 30 records.
List project, external, and additional icon sets available to the agent on the active page.
List all localization groups from Framer's session-bound iterator. The action consumes every cursor on one WebSocket connection and returns the complete list.
Copy an external component into the project and optionally replace all instances.
Merge an explicit source branch into its base or a compatible target.
Merge the active agent branch into its base or an explicit target, then switch to the target.
Paginate a complete item list to completion within one Framer WebSocket session and return all results.
Publish the active Framer branch and return the resulting deployment plus its preview or staging hostnames.
Run an agent publish operation, including production deployment when requested.
Run an analytics query over an ISO date range.
Search Framer's agent image sources and return candidate images.
Read provider-defined controls for project components on the active page.
Read provider-defined controls for icon sets on the active page.
Read exact icon names from an icon set on the active page.
Read provider-defined controls for layout templates on the active page.
Execute agent query objects against project state.
Read provider-defined controls for shaders on the active page.
Remove a Framer code file.
Remove one or more fields from a CMS collection.
Remove CMS collection items by item or node ID.
Remove a reusable Framer color style.
Remove a case from an enum field or enum variable.
Remove items from a managed CMS collection by external item ID.
Remove one or more canvas nodes by ID; pass a one-element list to remove one node.
Remove project redirects by ID; unknown IDs are ignored by Framer.
Remove a reusable Framer text style.
Rename an explicit project branch.
Rename a branch for the agent workflow.
Rename a Framer code file.
Replace exact text within one Framer text node.
Capture a node screenshot through Framer's dedicated WebSocket side channel.
Serialize a node with optional depth, attribute, and ancestor filtering.
Serialize multiple nodes with optional depth, attribute, and ancestor filtering.
Replace the source content of a Framer code file.
Set the display order of fields in a CMS collection.
Update one CMS item's slug, typed fields, locale status, or draft state.
Set the item order in a CMS collection.
Update selected attributes of a reusable Framer color style.
Set custom HTML at one Framer document injection location, or clear that location by passing null or omitting HTML.
Set the case order for an enum field or enum variable.
Set localized values and per-locale group status.
Replace and synchronize the typed field schema of a managed CMS collection.
Set item order in a plugin-managed Framer CMS collection.
Patch editable attributes on a node. Only explicitly supplied attributes are sent.
Move a node to a new parent and optional child index.
Set the evaluation and display order of project redirects; unknown redirect IDs are ignored.
Set text on the current selection or insert it when appropriate.
Update selected attributes of a reusable Framer text style.
Switch the editor and subsequent edits to an explicit branch.
Switch the active branch for agent operations.
Type-check source content with Framer's TypeScript service and return diagnostics.
Update a case in an enum field or enum variable.
Upload one file asset to Framer.
Upload multiple file assets to Framer.
Upload one image to Framer without inserting it on the canvas.
Upload multiple images to Framer without inserting them on the canvas.
The Framer integration connects your Dench AI CRM directly to Framer, so agents can read and act on your Framer data as part of everyday work — answering questions in chat, keeping your CRM in sync, and running automations without anyone copying data between tools.
157 actions are available for agents to invoke on your behalf. Every call runs through Framer's own authorization, scoped to the account you connect.
Sign in to your Dench workspace and open Integrations.
Find Framer and click Connect — you'll authorize access through Framer's own sign-in flow. No API keys or code required.
Ask an agent to use Framer in chat, or call it from an automation.
Manage or disconnect the connection any time from workspace settings.
The Dench Framer integration connects your AI CRM to Framer, so AI agents can work with your Framer data as part of chats, automations, and CRM workflows. You connect your account once, and every agent in your workspace can use it — governed by your workspace permissions.
The Framer integration currently exposes 157 actions, including Add Collection Fields, Add Collection Items, Add Component Instance, Add Detached Component Layers, Add Enum Case, and Add Image. Agents invoke them on your behalf from chat or from automations.
No. You connect Framer from your Dench workspace using Framer's own sign-in and authorization flow — no API keys to copy, no glue code to maintain.
Connections are authorized through Framer's own authentication flow, and Dench stores only the authorization needed to act on your behalf. You can review and disconnect the Framer connection from your workspace settings at any time.