---
canonical_url: "https://docs.composio.dev/toolkits/framer"
markdown_url: "https://docs.composio.dev/toolkits/framer.md"
product: "platform"
version: null
last_updated: null
---

# Framer

Framer is a website builder and design platform whose Server API supports project publishing, CMS, localization, canvas, asset, code, and agent workflows.

- **Category:** website & app building
- **Auth:** API_KEY
- **Composio-managed OAuth available?** N/A
- **Tools:** 157
- **Triggers:** 0
- **Slug:** `FRAMER`
- **Version:** 00000000_00

## Tools

### Add Collection Fields

**Slug:** `FRAMER_ADD_COLLECTION_FIELDS`

Create or update typed field definitions in a CMS collection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | array | Yes | Typed fields to create or update; include id for updates and omit it for creates. |
| `collection_id` | string | Yes | CMS collection node 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 |

### Add Collection Items

**Slug:** `FRAMER_ADD_COLLECTION_ITEMS`

Create or update CMS collection items with typed, tagged field values.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `items` | array | Yes | Items to create or update; use id for updates and slug for creates. |
| `collection_id` | string | Yes | CMS collection node 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 |

### Add Component Instance

**Slug:** `FRAMER_ADD_COMPONENT_INSTANCE`

Insert a component instance by component module URL.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | Yes | Framer component module URL. |
| `parent_id` | string | No | Optional parent node ID; omit to use Framer's current selection context. |
| `attributes` | object | No | Optional editable component-instance attributes, including controls and layout values. |

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

### Add Detached Component Layers

**Slug:** `FRAMER_ADD_DETACHED_COMPONENT_LAYERS`

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.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | Yes | Framer component module URL. |
| `layout` | boolean | No | Whether to insert as a layout block and match breakpoints. |
| `attributes` | object | No | Optional attributes forwarded to Framer's temporary component instance. Framer currently returns detached layers with the component defaults instead of applying these values. |

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

### Add Enum Case

**Slug:** `FRAMER_ADD_ENUM_CASE`

Add a case to an enum field or enum variable.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `enum_id` | string | Yes | EnumField field ID or EnumVariable variable ID. |
| `parent_id` | string | Yes | Collection ID for an EnumField, or component/collection node ID for an EnumVariable. |
| `attributes` | object | Yes | Enum case attributes to create. |

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

### Add Image

**Slug:** `FRAMER_ADD_IMAGE`

Upload one image and insert it using the current editor selection/context. This action does not accept a target page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `image` | string | Yes | Image to upload and insert on the canvas. |

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

### Add Images

**Slug:** `FRAMER_ADD_IMAGES`

Upload and insert multiple images using the current editor selection/context. This action does not accept a target page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `images` | array | Yes | Images to upload and insert on the canvas. |

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

### Add Managed Collection Items

**Slug:** `FRAMER_ADD_MANAGED_COLLECTION_ITEMS`

Add or synchronize managed CMS items with typed, tagged field values and stable external IDs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `items` | array | Yes | Managed items to add or synchronize by stable external ID. |
| `collection_id` | string | Yes | Managed CMS collection node 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 |

### Add Redirects

**Slug:** `FRAMER_ADD_REDIRECTS`

Create project redirects, or update existing redirects by including their IDs; all changes take effect on a subsequent publish.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `redirects` | array | Yes | Redirects to create, or existing redirects to update by 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 |

### Add SVG

**Slug:** `FRAMER_ADD_SVG`

Insert an SVG on the canvas or replace the selected SVG.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `svg` | string | Yes | Serialized SVG markup to insert. |
| `name` | string | No | Optional name for the inserted SVG layer. |

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

### Add Text

**Slug:** `FRAMER_ADD_TEXT`

Insert text using the current editor selection/context. This action does not accept a target page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tag` | string ("h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "p") | No | Optional semantic HTML tag for the inserted text. |
| `text` | string | Yes | Plain text content to insert. |

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

### Apply Agent Changes

**Slug:** `FRAMER_APPLY_AGENT_CHANGES`

Execute Framer's agent command DSL on a project page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `dsl` | string | Yes | Agent command DSL to execute. |
| `page_path` | string | No | Page route on which to apply the commands. |

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

### Clone Design Page

**Slug:** `FRAMER_CLONE_DESIGN_PAGE`

Clone a design page by node ID, optionally requesting a name.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `options` | object | No | Optional naming settings for the cloned page. |
| `page_id` | string | Yes | ID of the DesignPageNode to clone. |

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

### Clone Node

**Slug:** `FRAMER_CLONE_NODE`

Clone a node by ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `node_id` | string | Yes | Framer canvas node ID to clone. |

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

### Clone Web Page

**Slug:** `FRAMER_CLONE_WEB_PAGE`

Clone a web page by node ID, optionally requesting a route path.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `options` | object | No | Optional route settings for the cloned page. |
| `page_id` | string | Yes | ID of the WebPageNode to clone. |

#### 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 Branch

**Slug:** `FRAMER_CREATE_BRANCH`

Create a Framer project branch from the active branch or a specified base, then switch the editor and API session to the new branch.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | No | Human-readable branch title. |
| `base_branch_id` | string | No | Branch to use as the base; omit to use the active branch. |

#### 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 Branch For Agent

**Slug:** `FRAMER_CREATE_BRANCH_FOR_AGENT`

Create an agent branch from the active branch and switch to it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | No | Human-readable branch title. |

#### 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 Code File

**Slug:** `FRAMER_CREATE_CODE_FILE`

Create a Framer code file with initial source content.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | Yes | Initial source code for the file. |
| `name` | string | Yes | Name for the new code file. |
| `edit_via_plugin` | boolean | No | Whether plugin tooling should edit the new file. |

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

**Slug:** `FRAMER_CREATE_COLLECTION`

Create a user-owned CMS collection in the connected Framer project.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Human-readable name for the new CMS 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 Color Style

**Slug:** `FRAMER_CREATE_COLOR_STYLE`

Create a reusable color style in the connected Framer project.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `dark` | string | No | Optional dark-appearance color, or null. |
| `name` | string | No | Color style name; use slashes to create asset folders. |
| `path` | string | No | Alternative hierarchical asset path for the style. |
| `light` | string | Yes | Light-appearance color in a Framer-supported CSS format. |

#### 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 Component Node

**Slug:** `FRAMER_CREATE_COMPONENT_NODE`

Create a smart component node with a name.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Name for the new smart 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 |

### Create Design Page

**Slug:** `FRAMER_CREATE_DESIGN_PAGE`

Create a design page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page_name` | string | Yes | Name of the design page to create. |

#### 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 Frame Node

**Slug:** `FRAMER_CREATE_FRAME_NODE`

Create a frame node, optionally below a parent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent_id` | string | No | Parent canvas node ID, or null to create at the canvas root. |
| `attributes` | object | Yes | Initial editable frame attributes; omitted fields use Framer defaults. |

#### 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 Locale

**Slug:** `FRAMER_CREATE_LOCALE`

Create a project locale.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Human-readable name for the new locale. |
| `slug` | string | No | URL slug for the locale. |
| `draft` | boolean | No | Whether the locale starts in draft state. |
| `region` | string | No | Optional ISO region code for the locale. |
| `language` | string | Yes | BCP 47 language code, such as en or fr. |
| `fallback_locale_id` | string | No | Existing locale ID to use when a translation is unavailable. |

#### 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 Managed Collection

**Slug:** `FRAMER_CREATE_MANAGED_COLLECTION`

Create a plugin-managed CMS collection in the connected project.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Human-readable managed collection 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 |

### Create Text Node

**Slug:** `FRAMER_CREATE_TEXT_NODE`

Create a text node, optionally below a parent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent_id` | string | No | Parent canvas node ID, or null to create at the canvas root. |
| `attributes` | object | Yes | Initial editable text-node attributes; omitted fields use Framer defaults. |

#### 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 Text Style

**Slug:** `FRAMER_CREATE_TEXT_STYLE`

Create a reusable text style in the connected Framer project.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `attributes` | object | Yes | Text style attributes accepted by Framer SDK 5.1.0. |

#### 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 Web Page

**Slug:** `FRAMER_CREATE_WEB_PAGE`

Create a web page at a route path.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page_path` | string | Yes | Route path for the new web page. |

#### 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 Branch

**Slug:** `FRAMER_DELETE_BRANCH`

Delete an explicit project branch, switching to its base if active.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `branch_id` | string | Yes | Branch ID 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 Branch For Agent

**Slug:** `FRAMER_DELETE_BRANCH_FOR_AGENT`

Delete a branch in the agent workflow.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `branch_id` | string | Yes | Branch ID 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 |

### Deploy

**Slug:** `FRAMER_DEPLOY`

Promote an existing Framer deployment to explicit domains or to the project's configured production domains.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `domains` | array | No | Domain names to receive this deployment; omit to use the project's configured domains. |
| `deployment_id` | string | Yes | Deployment ID returned by publish or list deployments. |

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

### Export SVG

**Slug:** `FRAMER_EXPORT_SVG`

Export a node as serialized SVG through Framer's dedicated WebSocket side channel.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `node_id` | string | Yes | Framer canvas node 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 |

### Flatten Component Instance For Agent

**Slug:** `FRAMER_FLATTEN_COMPONENT_INSTANCE_FOR_AGENT`

Replace a component instance with editable local layers.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | ID of the component instance to flatten. |
| `page_path` | string | No | Page route containing the instance. |

#### 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 Active Branch

**Slug:** `FRAMER_GET_ACTIVE_BRANCH`

Get the branch currently active for the Framer editor and API session, including its base, contributor state, and creator metadata.

#### 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 Active Branch For Agent

**Slug:** `FRAMER_GET_ACTIVE_BRANCH_FOR_AGENT`

Get metadata for the branch active in the Framer agent session.

#### 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 Agent Context

**Slug:** `FRAMER_GET_AGENT_CONTEXT`

Get dynamic project context for Framer's agent command and query APIs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page_path` | string | No | Page route used to scope the agent context. |

#### 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 Agent System Prompt

**Slug:** `FRAMER_GET_AGENT_SYSTEM_PROMPT`

Get Framer's static agent prompt, including its command and project-query DSL references.

#### 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 Ancestors For Agent

**Slug:** `FRAMER_GET_ANCESTORS_FOR_AGENT`

Get a node's ancestors from its parent through the page root.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | ID of the node whose ancestor chain should be returned. |
| `page_path` | string | No | Page route to inspect; defaults to the active page. |

#### 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 Branch Changes

**Slug:** `FRAMER_GET_BRANCH_CHANGES`

Get semantic changes in a branch relative to its base branch.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `branch_id` | string | Yes | Branch ID whose changes should be returned. |

#### 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 Branch Changes For Agent

**Slug:** `FRAMER_GET_BRANCH_CHANGES_FOR_AGENT`

Get a summarized changelog for a project branch relative to its base.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `branch_id` | string | Yes | Branch ID whose summarized changes to return. |

#### 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 Branches

**Slug:** `FRAMER_GET_BRANCHES`

Return every project branch, a selected set, or one branch by passing zero, many, or one branch ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `branch_ids` | array | No | Branch IDs to return; pass one ID for one branch, or an empty list to return all branches. |

#### 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 Branches For Agent

**Slug:** `FRAMER_GET_BRANCHES_FOR_AGENT`

List project branches available to the Framer agent session.

#### 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 Canvas Root

**Slug:** `FRAMER_GET_CANVAS_ROOT`

Get the root node of the current canvas.

#### 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 Change Contributors

**Slug:** `FRAMER_GET_CHANGE_CONTRIBUTORS`

Get contributors who changed the project in an optional version range.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `to_version` | integer | No | Last project version to include. |
| `from_version` | integer | No | First project version to include. |

#### 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 Changed Paths

**Slug:** `FRAMER_GET_CHANGED_PATHS`

Get page paths added, removed, or modified between the active project version and its previously published version.

#### 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 Children

**Slug:** `FRAMER_GET_CHILDREN`

Get a node's canvas children.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `node_id` | string | Yes | Framer canvas node 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 Code File

**Slug:** `FRAMER_GET_CODE_FILE`

Get one Framer code file by ID or project-relative path.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id_or_path` | string | Yes | Code file ID or project-relative path. |

#### 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 Code Files

**Slug:** `FRAMER_GET_CODE_FILES`

List code files and their current contents in the connected Framer project.

#### 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 Code File Version Content

**Slug:** `FRAMER_GET_CODE_FILE_VERSION_CONTENT`

Get the source content of a saved Framer code file version.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `file_id` | string | Yes | Code file ID captured from a CodeFileVersion object. |
| `version_id` | string | Yes | Version ID captured from a CodeFileVersion object. |

#### 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 Code File Versions

**Slug:** `FRAMER_GET_CODE_FILE_VERSIONS`

List saved versions of a Framer code file.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code_file_id` | string | Yes | Code file ID captured from a CodeFile object. |

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

**Slug:** `FRAMER_GET_COLLECTION`

Get one CMS collection by its node ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `collection_id` | string | Yes | CMS collection node 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 Collection Fields

**Slug:** `FRAMER_GET_COLLECTION_FIELDS`

List all field definitions in a CMS collection, including dividers.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `collection_id` | string | Yes | CMS collection node 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 Collection Items

**Slug:** `FRAMER_GET_COLLECTION_ITEMS`

List items and typed field values in a CMS collection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `collection_id` | string | Yes | CMS collection node 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 Collections

**Slug:** `FRAMER_GET_COLLECTIONS`

List managed and user-owned CMS collections in the connected Framer project.

#### 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 Color Style

**Slug:** `FRAMER_GET_COLOR_STYLE`

Get one reusable color style by ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Color style node 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 Color Styles

**Slug:** `FRAMER_GET_COLOR_STYLES`

List reusable color styles in the connected Framer project.

#### 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 Current User

**Slug:** `FRAMER_GET_CURRENT_USER`

Get the Framer user whose identity and project permissions are represented by the connected project API key.

#### 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 Code

**Slug:** `FRAMER_GET_CUSTOM_CODE`

Get custom HTML and disabled state for all four project document injection locations.

#### 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 Default Locale

**Slug:** `FRAMER_GET_DEFAULT_LOCALE`

Get the project's default 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 Deployment

**Slug:** `FRAMER_GET_DEPLOYMENT`

Get the latest status snapshot, timestamps, creator, preview URL, and failure stage for one Framer deployment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `deployment_id` | string | Yes | Deployment ID returned by publish or list deployments. |

#### 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 Deployment Issues

**Slug:** `FRAMER_GET_DEPLOYMENT_ISSUES`

Get optimization warnings and errors for a Framer deployment, including related node IDs when available.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `deployment_id` | string | Yes | Deployment ID returned by publish or list deployments. |

#### 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 Descendant References Of Types For Agent

**Slug:** `FRAMER_GET_DESCENDANT_REFERENCES_OF_TYPES_FOR_AGENT`

Get matching style or token nodes referenced by descendants.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | ID of the node whose descendant references should be searched. |
| `types` | array | Yes | Provider-defined referenced node type names to match. |
| `page_path` | string | No | Page route to search; defaults to the active page. |

#### 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 Descendants Of Types For Agent

**Slug:** `FRAMER_GET_DESCENDANTS_OF_TYPES_FOR_AGENT`

Get descendants of a node matching provider-defined node types.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | ID of the node whose descendants should be searched. |
| `types` | array | Yes | Provider-defined node type names to match. |
| `page_path` | string | No | Page route to search; defaults to the active page. |

#### 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 Font

**Slug:** `FRAMER_GET_FONT`

Get one available font variant by family, weight, and style.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `family` | string | Yes | Font family name; matching is case-insensitive. |
| `attributes` | object | No | Optional weight and style match. |

#### 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 Fonts

**Slug:** `FRAMER_GET_FONTS`

List individual font files and variants available to the Framer project.

#### 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 Ground Node For Agent

**Slug:** `FRAMER_GET_GROUND_NODE_FOR_AGENT`

Get the top-level canvas node containing a node.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | ID of the node whose top-level canvas node should be returned. |
| `page_path` | string | No | Page route to inspect; defaults to the active page. |

#### 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 Locale Languages

**Slug:** `FRAMER_GET_LOCALE_LANGUAGES`

List valid locale language codes.

#### 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 Locale Regions

**Slug:** `FRAMER_GET_LOCALE_REGIONS`

List valid region codes for a language.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `language` | string | Yes | BCP 47 language code, such as en or fr. |

#### 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 Locales

**Slug:** `FRAMER_GET_LOCALES`

List configured non-default locales.

#### 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 Localization Groups

**Slug:** `FRAMER_GET_LOCALIZATION_GROUPS`

Get localization groups, optionally filtered by IDs or type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `group_ids` | array | No | Localization group IDs to include; omit to include all matching groups. |
| `group_type` | string ("collection" | "collection-item" | "component" | "page" | "settings" | "template") | No | Localization group type to include. |

#### 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 Managed Collection Fields

**Slug:** `FRAMER_GET_MANAGED_COLLECTION_FIELDS`

List supported fields in a plugin-managed Framer CMS collection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `collection_id` | string | Yes | Collection ID captured from a ManagedCollection object. |

#### 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 Managed Collection Item IDs

**Slug:** `FRAMER_GET_MANAGED_COLLECTION_ITEM_IDS`

List external item IDs in a plugin-managed CMS collection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `collection_id` | string | Yes | Managed CMS collection node 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 Managed Collections

**Slug:** `FRAMER_GET_MANAGED_COLLECTIONS`

List plugin-managed CMS collections available to the connected API session.

#### 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 Node

**Slug:** `FRAMER_GET_NODE`

Get a project node by ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `node_id` | string | Yes | Framer canvas node 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 Node For Agent

**Slug:** `FRAMER_GET_NODE_FOR_AGENT`

Get one serialized Framer node and its children by ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | ID of the node to retrieve. |
| `page_path` | string | No | Page route containing the node. |

#### 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 Nodes For Agent

**Slug:** `FRAMER_GET_NODES_FOR_AGENT`

Get serialized Framer nodes and their children by ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ids` | array | Yes | Node IDs to retrieve in input order. |
| `page_path` | string | No | Page route containing the nodes. |

#### 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 Nodes Of Types For Agent

**Slug:** `FRAMER_GET_NODES_OF_TYPES_FOR_AGENT`

Get all nodes of selected types on a Framer page without children.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `types` | array | Yes | Node type names to match. |
| `page_path` | string | No | Page route to search. |

#### 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 Nodes With Attribute

**Slug:** `FRAMER_GET_NODES_WITH_ATTRIBUTE`

Get project nodes whose node type supports an attribute, whether or not it is set.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `attribute` | string ("name" | "visible" | "locked" | "backgroundColor" | "backgroundImage" | "backgroundGradient" | "rotation" | "opacity" | "borderRadius" | "border" | "overflow" | "overflowX" | "overflowY" | "componentIdentifier" | "insertURL" | "componentName" | "controls" | "typedControls" | "svg" | "position" | "top" | "right" | "bottom" | "left" | "centerX" | "centerY" | "width" | "height" | "maxWidth" | "minWidth" | "maxHeight" | "minHeight" | "aspectRatio" | "textTruncation" | "imageRendering" | "zIndex" | "font" | "inlineTextStyle" | "draft" | "path" | "collectionId" | "layout" | "stackDirection" | "stackDistribution" | "stackAlignment" | "stackWrapEnabled" | "gridColumnCount" | "gridRowCount" | "gridAlignment" | "gridColumnWidthType" | "gridColumnWidth" | "gridColumnMinWidth" | "gridRowHeightType" | "gridRowHeight" | "gap" | "padding" | "gridItemFillCellWidth" | "gridItemFillCellHeight" | "gridItemHorizontalAlignment" | "gridItemVerticalAlignment" | "gridItemColumnSpan" | "gridItemRowSpan" | "isVariant" | "isPrimaryVariant" | "gesture" | "inheritsFromId" | "isBreakpoint" | "isPrimaryBreakpoint" | "link" | "linkOpenInNewTab" | "linkSmoothScroll" | "linkClickTrackingId" | "linkRelValues" | "linkPreserveParams") | Yes | Node attribute whose supporting node classes should be returned. |

#### 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 Nodes With Attribute Set

**Slug:** `FRAMER_GET_NODES_WITH_ATTRIBUTE_SET`

Get project nodes where a supported attribute has a non-null value.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `attribute` | string ("name" | "visible" | "locked" | "backgroundColor" | "backgroundImage" | "backgroundGradient" | "rotation" | "opacity" | "borderRadius" | "border" | "overflow" | "overflowX" | "overflowY" | "componentIdentifier" | "insertURL" | "componentName" | "controls" | "typedControls" | "svg" | "position" | "top" | "right" | "bottom" | "left" | "centerX" | "centerY" | "width" | "height" | "maxWidth" | "minWidth" | "maxHeight" | "minHeight" | "aspectRatio" | "textTruncation" | "imageRendering" | "zIndex" | "font" | "inlineTextStyle" | "draft" | "path" | "collectionId" | "layout" | "stackDirection" | "stackDistribution" | "stackAlignment" | "stackWrapEnabled" | "gridColumnCount" | "gridRowCount" | "gridAlignment" | "gridColumnWidthType" | "gridColumnWidth" | "gridColumnMinWidth" | "gridRowHeightType" | "gridRowHeight" | "gap" | "padding" | "gridItemFillCellWidth" | "gridItemFillCellHeight" | "gridItemHorizontalAlignment" | "gridItemVerticalAlignment" | "gridItemColumnSpan" | "gridItemRowSpan" | "isVariant" | "isPrimaryVariant" | "gesture" | "inheritsFromId" | "isBreakpoint" | "isPrimaryBreakpoint" | "link" | "linkOpenInNewTab" | "linkSmoothScroll" | "linkClickTrackingId" | "linkRelValues" | "linkPreserveParams") | Yes | Node attribute that must have a non-null value. |

#### 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 Nodes With Type

**Slug:** `FRAMER_GET_NODES_WITH_TYPE`

Get all nodes of a known class, optionally below a parent node.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `node_type` | string ("FrameNode" | "TextNode" | "SVGNode" | "ComponentInstanceNode" | "WebPageNode" | "DesignPageNode" | "ComponentNode" | "ShapeContainerNode" | "PathNode" | "ShapeGroupNode" | "BooleanShapeNode") | Yes | Concrete Framer node class to return. |
| `parent_node_id` | string | No | Parent node ID to search below, or null to search the whole project. |

#### 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 Parent

**Slug:** `FRAMER_GET_PARENT`

Get a node's parent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `node_id` | string | Yes | Framer canvas node 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 Parent Node For Agent

**Slug:** `FRAMER_GET_PARENT_NODE_FOR_AGENT`

Get the direct parent of a node.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | ID of the node whose direct parent should be returned. |
| `page_path` | string | No | Page route to inspect; defaults to the active page. |

#### 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 Project Info

**Slug:** `FRAMER_GET_PROJECT_INFO`

Get the connected Framer project's current identity and legacy migration 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 Publish Info

**Slug:** `FRAMER_GET_PUBLISH_INFO`

Get the connected project's current staging and production publication URLs, deployment times, and optimization states.

#### 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 Rect

**Slug:** `FRAMER_GET_RECT`

Get the bounding rectangle of a Framer node.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `node_id` | string | Yes | Framer canvas node 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 Rect For Agent

**Slug:** `FRAMER_GET_RECT_FOR_AGENT`

Get a node's rounded canvas rectangle.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | ID of the node whose rounded canvas rectangle is needed. |
| `page_path` | string | No | Page route to inspect; defaults to the active page. |

#### 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 Redirects

**Slug:** `FRAMER_GET_REDIRECTS`

List the project's redirects, including source and destination paths and locale expansion behavior.

#### 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 Scope Node For Agent

**Slug:** `FRAMER_GET_SCOPE_NODE_FOR_AGENT`

Get the enclosing page or component scope for a node.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | ID of the node whose enclosing scope should be returned. |
| `page_path` | string | No | Page route to inspect; defaults to the active page. |

#### 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 Text for Node

**Slug:** `FRAMER_GET_TEXT_FOR_NODE`

Get the plain-text content of a text node by ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `node_id` | string | Yes | ID of the TextNode whose plain text to read. |

#### 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 Text Style

**Slug:** `FRAMER_GET_TEXT_STYLE`

Get one reusable text style by ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Text style node 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 Text Styles

**Slug:** `FRAMER_GET_TEXT_STYLES`

List reusable text styles in the connected Framer project.

#### 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 Unpublished Page Changes

**Slug:** `FRAMER_GET_UNPUBLISHED_PAGE_CHANGES`

List web pages added, updated, or removed since the active branch was last published.

#### 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 Vector Set Items

**Slug:** `FRAMER_GET_VECTOR_SET_ITEMS`

List vector items in one Framer vector set.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `vector_set_id` | string | Yes | Vector set ID returned by Get Vector Sets. |

#### 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 Vector Set Item Variables

**Slug:** `FRAMER_GET_VECTOR_SET_ITEM_VARIABLES`

List customizable variables for one Framer vector-set item.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `module_id` | string | Yes | Module ID returned with the vector set item. |
| `vector_set_item_id` | string | Yes | Vector set item ID returned by Get Vector Set Items. |

#### 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 Vector Sets

**Slug:** `FRAMER_GET_VECTOR_SETS`

List vector icon sets available to the connected Framer project.

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

### Join Branch

**Slug:** `FRAMER_JOIN_BRANCH`

Join an explicit project branch as a contributor.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `branch_id` | string | Yes | Branch ID to join as a contributor. |

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

### Join Branch For Agent

**Slug:** `FRAMER_JOIN_BRANCH_FOR_AGENT`

Join a branch as a contributor for agent editing.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `branch_id` | string | Yes | Branch ID to join as a contributor. |

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

### Leave Branch

**Slug:** `FRAMER_LEAVE_BRANCH`

Leave an explicit project branch as a contributor.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `branch_id` | string | Yes | Branch ID to leave as a contributor. |

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

### Leave Branch For Agent

**Slug:** `FRAMER_LEAVE_BRANCH_FOR_AGENT`

Leave a branch as a contributor.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `branch_id` | string | Yes | Branch ID to leave as a contributor. |

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

### Lint Code

**Slug:** `FRAMER_LINT_CODE`

Deprecated Framer lint operation retained for compatibility; SDK 5.1.0 documents it as a no-op.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `content` | string | Yes | Source code to pass to the deprecated linter. |
| `severity` | string ("error" | "warning") | Yes | Severity for the removed forbid-browser-apis rule. |
| `file_name` | string | Yes | Code file name used in diagnostics. |

#### 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 Components For Agent

**Slug:** `FRAMER_LIST_COMPONENTS_FOR_AGENT`

List project, external, and additional components available to the agent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page_path` | string | No | Page route used to scope the component catalog. |

#### 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 Deployments

**Slug:** `FRAMER_LIST_DEPLOYMENTS`

List one cursor-controlled page of deployments for the active Framer branch, returning at most 30 records.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum deployments to return in this page (1-30). |
| `cursor` | string | No | Opaque continuation cursor returned by the preceding call. |

#### 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 Icon Sets For Agent

**Slug:** `FRAMER_LIST_ICON_SETS_FOR_AGENT`

List project, external, and additional icon sets available to the agent on the active page.

#### 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 Localization Groups Next

**Slug:** `FRAMER_LIST_LOCALIZATION_GROUPS_NEXT`

List all localization groups from Framer's session-bound iterator. The action consumes every cursor on one WebSocket connection and returns the complete list.

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

### Make External Component Local For Agent

**Slug:** `FRAMER_MAKE_EXTERNAL_COMPONENT_LOCAL_FOR_AGENT`

Copy an external component into the project and optionally replace all instances.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | ID of the external component instance. |
| `page_path` | string | No | Page route containing the component. |
| `replace_all` | boolean | No | Whether to replace every instance after provider confirmation. |

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

### Merge Branch

**Slug:** `FRAMER_MERGE_BRANCH`

Merge an explicit source branch into its base or a compatible target.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `branch_id` | string | Yes | Source branch ID to merge. |
| `target_branch_id` | string | No | Target branch ID; omit to merge into the source branch base. |

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

### Merge Branch For Agent

**Slug:** `FRAMER_MERGE_BRANCH_FOR_AGENT`

Merge the active agent branch into its base or an explicit target, then switch to the target.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `target_branch_id` | string | No | Merge target branch ID; use "main" for the main branch or omit to use the active branch base. |

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

### Paginate For Agent

**Slug:** `FRAMER_PAGINATE_FOR_AGENT`

Paginate a complete item list to completion within one Framer WebSocket session and return all results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `items` | array | Yes | Complete items to paginate within this action invocation. |
| `page_path` | string | No | Page route to inspect; defaults to the active page. |

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

**Slug:** `FRAMER_PUBLISH`

Publish the active Framer branch and return the resulting deployment plus its preview or staging hostnames.

#### 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 For Agent

**Slug:** `FRAMER_PUBLISH_FOR_AGENT`

Run an agent publish operation, including production deployment when requested.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `input` | object | No | Action-discriminated input defined by Framer's agent system prompt. |

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

### Query Analytics For Agent

**Slug:** `FRAMER_QUERY_ANALYTICS_FOR_AGENT`

Run an analytics query over an ISO date range.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `to` | string | No | Optional analytics range end as an ISO string. |
| `query` | string | Yes | Analytics query to execute. |
| `from_date` | string | Yes | Inclusive analytics range start as an ISO string. |

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

### Query Images For Agent

**Slug:** `FRAMER_QUERY_IMAGES_FOR_AGENT`

Search Framer's agent image sources and return candidate images.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `input` | object | Yes | Image source and search options from the agent system prompt. |

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

### Read Component Controls For Agent

**Slug:** `FRAMER_READ_COMPONENT_CONTROLS_FOR_AGENT`

Read provider-defined controls for project components on the active page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `component_ids` | array | Yes | Component IDs whose provider-defined controls to read. |

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

### Read Icon Set Controls For Agent

**Slug:** `FRAMER_READ_ICON_SET_CONTROLS_FOR_AGENT`

Read provider-defined controls for icon sets on the active page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `icon_set_ids` | array | Yes | Icon-set IDs whose provider-defined controls to read. |

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

### Read Icons For Agent

**Slug:** `FRAMER_READ_ICONS_FOR_AGENT`

Read exact icon names from an icon set on the active page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `icon_set_id` | string | Yes | Icon-set ID whose exact icon names to read. |

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

### Read Layout Template Controls For Agent

**Slug:** `FRAMER_READ_LAYOUT_TEMPLATE_CONTROLS_FOR_AGENT`

Read provider-defined controls for layout templates on the active page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `layout_template_ids` | array | Yes | Layout-template IDs whose provider-defined controls to read. |

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

### Read Project For Agent

**Slug:** `FRAMER_READ_PROJECT_FOR_AGENT`

Execute agent query objects against project state.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `queries` | array | Yes | Agent query objects using the exact DSL returned by Framer's agent system prompt. |
| `page_path` | string | No | Page route used to scope the project query. |

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

### Read Shader Controls For Agent

**Slug:** `FRAMER_READ_SHADER_CONTROLS_FOR_AGENT`

Read provider-defined controls for shaders on the active page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `shader_names` | array | Yes | Shader names whose provider-defined controls to read. |

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

### Remove Code File

**Slug:** `FRAMER_REMOVE_CODE_FILE`

Remove a Framer code file.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code_file_id` | string | Yes | Code file ID captured from a CodeFile object. |

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

### Remove Collection Fields

**Slug:** `FRAMER_REMOVE_COLLECTION_FIELDS`

Remove one or more fields from a CMS collection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `field_ids` | array | Yes | IDs of collection fields to remove. |
| `collection_id` | string | Yes | CMS collection node 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 |

### Remove Collection Items

**Slug:** `FRAMER_REMOVE_COLLECTION_ITEMS`

Remove CMS collection items by item or node ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_ids` | array | Yes | CMS item or node IDs to remove. |

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

### Remove Color Style

**Slug:** `FRAMER_REMOVE_COLOR_STYLE`

Remove a reusable Framer color style.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `color_style_id` | string | Yes | Style ID captured from a ColorStyle object. |

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

### Remove Enum Case

**Slug:** `FRAMER_REMOVE_ENUM_CASE`

Remove a case from an enum field or enum variable.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `case_id` | string | Yes | ID of the enum case to remove. |
| `enum_id` | string | Yes | EnumField field ID or EnumVariable variable ID. |
| `parent_id` | string | Yes | Collection ID for an EnumField, or component/collection node ID for an EnumVariable. |

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

### Remove Managed Collection Items

**Slug:** `FRAMER_REMOVE_MANAGED_COLLECTION_ITEMS`

Remove items from a managed CMS collection by external item ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_ids` | array | Yes | External IDs of managed collection items to remove. |
| `collection_id` | string | Yes | Managed CMS collection node 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 |

### Remove Nodes

**Slug:** `FRAMER_REMOVE_NODES`

Remove one or more canvas nodes by ID; pass a one-element list to remove one node.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `node_ids` | array | Yes | One or more canvas node IDs to remove. |

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

### Remove Redirects

**Slug:** `FRAMER_REMOVE_REDIRECTS`

Remove project redirects by ID; unknown IDs are ignored by Framer.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `redirect_ids` | array | Yes | Redirect IDs to remove; Framer ignores IDs that do not exist. |

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

### Remove Text Style

**Slug:** `FRAMER_REMOVE_TEXT_STYLE`

Remove a reusable Framer text style.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text_style_id` | string | Yes | Style ID captured from a TextStyle object. |

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

### Rename Branch

**Slug:** `FRAMER_RENAME_BRANCH`

Rename an explicit project branch.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | Yes | New human-readable branch title. |
| `branch_id` | string | Yes | Branch ID to rename. |

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

### Rename Branch For Agent

**Slug:** `FRAMER_RENAME_BRANCH_FOR_AGENT`

Rename a branch for the agent workflow.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | Yes | New human-readable branch title. |
| `branch_id` | string | Yes | Branch ID to rename. |

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

### Rename Code File

**Slug:** `FRAMER_RENAME_CODE_FILE`

Rename a Framer code file.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `new_name` | string | Yes | New code file name. |
| `code_file_id` | string | Yes | Code file ID captured from a CodeFile object. |

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

### Replace Text For Agent

**Slug:** `FRAMER_REPLACE_TEXT_FOR_AGENT`

Replace exact text within one Framer text node.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | ID of the text node to update. |
| `page_path` | string | No | Page route containing the text node. |
| `search_text` | string | Yes | Exact text to find in the node. |
| `replace_text` | string | Yes | Text to substitute for each match. |

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

### Screenshot Node

**Slug:** `FRAMER_SCREENSHOT_NODE`

Capture a node screenshot through Framer's dedicated WebSocket side channel.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `clip` | object | No | Optional clipping rectangle in CSS pixels before scaling. |
| `scale` | number | No | Pixel-density multiplier; Framer defaults to 1. |
| `format` | string ("png" | "jpeg") | No | Image format; Framer defaults to png. |
| `node_id` | string | Yes | Framer canvas node ID. |
| `quality` | integer | No | JPEG quality from 0 to 100; only applies to jpeg. |

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

### Serialize For Agent

**Slug:** `FRAMER_SERIALIZE_FOR_AGENT`

Serialize a node with optional depth, attribute, and ancestor filtering.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | ID of the node to serialize. |
| `depth` | integer | No | Maximum descendant depth to include. |
| `page_path` | string | No | Page route to inspect; defaults to the active page. |
| `ancestor_path` | boolean | No | Whether to include the node's ancestor path. |
| `attribute_filter` | array | No | Node attribute names to include in the serialization. |

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

### Serialize Nodes For Agent

**Slug:** `FRAMER_SERIALIZE_NODES_FOR_AGENT`

Serialize multiple nodes with optional depth, attribute, and ancestor filtering.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ids` | array | Yes | IDs of nodes to serialize in input order. |
| `depth` | integer | No | Maximum descendant depth to include. |
| `page_path` | string | No | Page route to inspect; defaults to the active page. |
| `ancestor_path` | boolean | No | Whether to include each node's ancestor path. |
| `attribute_filter` | array | No | Node attribute names to include in each serialization. |

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

### Set Code File Content

**Slug:** `FRAMER_SET_CODE_FILE_CONTENT`

Replace the source content of a Framer code file.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | Yes | Complete source content to write to the code file. |
| `code_file_id` | string | Yes | Code file ID captured from a CodeFile object. |

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

### Set Collection Field Order

**Slug:** `FRAMER_SET_COLLECTION_FIELD_ORDER`

Set the display order of fields in a CMS collection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `field_ids` | array | Yes | All collection field IDs in the desired display order. |
| `collection_id` | string | Yes | CMS collection node 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 |

### Set Collection Item Attributes

**Slug:** `FRAMER_SET_COLLECTION_ITEM_ATTRIBUTES`

Update one CMS item's slug, typed fields, locale status, or draft state.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_id` | string | Yes | CMS item or node ID to update. |
| `attributes` | object | Yes | Item attributes to update. |

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

### Set Collection Item Order

**Slug:** `FRAMER_SET_COLLECTION_ITEM_ORDER`

Set the item order in a CMS collection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_ids` | array | Yes | All CMS item IDs in the desired order. |
| `collection_id` | string | Yes | CMS collection node 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 |

### Set Color Style Attributes

**Slug:** `FRAMER_SET_COLOR_STYLE_ATTRIBUTES`

Update selected attributes of a reusable Framer color style.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `update` | object | Yes | Color style attributes to update. |
| `color_style_id` | string | Yes | Style ID captured from a ColorStyle object. |

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

### Set Custom Code

**Slug:** `FRAMER_SET_CUSTOM_CODE`

Set custom HTML at one Framer document injection location, or clear that location by passing null or omitting HTML.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `html` | string | No | HTML to inject, or null to clear the selected location. |
| `location` | string ("headStart" | "headEnd" | "bodyStart" | "bodyEnd") | Yes | Document location where the custom HTML is injected. |

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

### Set Enum Case Order

**Slug:** `FRAMER_SET_ENUM_CASE_ORDER`

Set the case order for an enum field or enum variable.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `enum_id` | string | Yes | EnumField field ID or EnumVariable variable ID. |
| `case_ids` | array | Yes | IDs of all enum cases in the desired order. |
| `parent_id` | string | Yes | Collection ID for an EnumField, or component/collection node ID for an EnumVariable. |

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

### Set Localization Data

**Slug:** `FRAMER_SET_LOCALIZATION_DATA`

Set localized values and per-locale group status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `update` | object | Yes | Localized values and group statuses keyed by source, group, and locale IDs. |

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

### Set Managed Collection Fields

**Slug:** `FRAMER_SET_MANAGED_COLLECTION_FIELDS`

Replace and synchronize the typed field schema of a managed CMS collection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | array | Yes | Complete managed field schema to synchronize. |
| `collection_id` | string | Yes | Managed CMS collection node 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 |

### Set Managed Collection Item Order

**Slug:** `FRAMER_SET_MANAGED_COLLECTION_ITEM_ORDER`

Set item order in a plugin-managed Framer CMS collection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_ids` | array | Yes | Managed item IDs in the desired order. |
| `collection_id` | string | Yes | Collection ID captured from a ManagedCollection object. |

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

### Set Node Attributes

**Slug:** `FRAMER_SET_NODE_ATTRIBUTES`

Patch editable attributes on a node. Only explicitly supplied attributes are sent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `node_id` | string | Yes | Framer canvas node ID. |
| `attributes` | object | Yes | Editable attributes supported by the target node class; omitted fields are unchanged. |

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

### Set Parent

**Slug:** `FRAMER_SET_PARENT`

Move a node to a new parent and optional child index.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `index` | integer | No | Optional zero-based child position under the new parent. |
| `node_id` | string | Yes | Node to move. |
| `parent_id` | string | Yes | New parent node 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 |

### Set Redirect Order

**Slug:** `FRAMER_SET_REDIRECT_ORDER`

Set the evaluation and display order of project redirects; unknown redirect IDs are ignored.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `redirect_ids` | array | Yes | Redirect IDs in the desired order; Framer ignores IDs that do not exist. |

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

### Set Text

**Slug:** `FRAMER_SET_TEXT`

Set text on the current selection or insert it when appropriate.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | Yes | Plain text to set on the current selection or insert when appropriate. |

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

### Set Text Style Attributes

**Slug:** `FRAMER_SET_TEXT_STYLE_ATTRIBUTES`

Update selected attributes of a reusable Framer text style.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `attributes` | object | Yes | Text style attributes to update. |
| `text_style_id` | string | Yes | Style ID captured from a TextStyle object. |

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

### Switch Branch

**Slug:** `FRAMER_SWITCH_BRANCH`

Switch the editor and subsequent edits to an explicit branch.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `branch_id` | string | Yes | Branch ID to activate; use "main" for main. |

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

### Switch Branch For Agent

**Slug:** `FRAMER_SWITCH_BRANCH_FOR_AGENT`

Switch the active branch for agent operations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `branch_id` | string | Yes | Branch ID to activate; use "main" for the main branch. |

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

### Typecheck Code

**Slug:** `FRAMER_TYPECHECK_CODE`

Type-check source content with Framer's TypeScript service and return diagnostics.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `content` | string | Yes | Source code to type-check. |
| `file_name` | string | Yes | Code file name used in diagnostics. |
| `session_id` | string | No | Optional type-check session ID used to reuse provider state. |
| `compiler_options` | object | No | TypeScript compiler options; additional protocol options are preserved. |

#### 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 Enum Case

**Slug:** `FRAMER_UPDATE_ENUM_CASE`

Update a case in an enum field or enum variable.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `case_id` | string | Yes | ID of the enum case to update. |
| `enum_id` | string | Yes | EnumField field ID or EnumVariable variable ID. |
| `parent_id` | string | Yes | Collection ID for an EnumField, or component/collection node ID for an EnumVariable. |
| `attributes` | object | Yes | Enum case attributes to update. |

#### 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 File

**Slug:** `FRAMER_UPLOAD_FILE`

Upload one file asset to Framer.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `file` | string | Yes | File asset to upload. |

#### 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 Files

**Slug:** `FRAMER_UPLOAD_FILES`

Upload multiple file assets to Framer.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `files` | array | Yes | File assets to upload. |

#### 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 Image

**Slug:** `FRAMER_UPLOAD_IMAGE`

Upload one image to Framer without inserting it on the canvas.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `image` | string | Yes | Image to upload without inserting it. |

#### 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 Images

**Slug:** `FRAMER_UPLOAD_IMAGES`

Upload multiple images to Framer without inserting them on the canvas.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `images` | array | Yes | Images to upload without inserting them. |

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