> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tryprofound.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Using Framer in Agents

This page covers the **Framer CMS** integration in Profound.

After connecting your Framer project, the following actions become available as Agent steps for working with Framer CMS collections and items. Each step requires you to select a connected **Framer Project** from a dropdown.

<Tabs>
  <Tab title="Create item" icon="file-plus">
    #### **Create Item**

    Create a new CMS item in a Framer collection.

    **Required inputs**

    * **Framer Project** — Select the Framer project you connected in Profound from the dropdown
    * **Collection** — Select the collection from the dropdown
    * **Field Data** — The available fields are generated from the selected collection's schema. See [Working with Create Item Inputs](#working-with-create-item-inputs).

    The output includes the created item's `id`, `slug`, `draft`, and [`field_data`](#understanding-item-output).

    <Callout icon="lightbulb" color="#376CFF">
      **Tip:** Use **Get Collection** first to inspect the collection schema and confirm which fields are required before creating an item.
    </Callout>
  </Tab>

  <Tab title="List collections" icon="list">
    #### **List Collections**

    Retrieve the CMS collections available in your connected Framer project.

    **Required inputs**

    * **Framer Project** — Select the Framer project you connected in Profound from the dropdown

    The output includes a structured list of collections with each collection's `id`, `name`, and `readonly` values.
  </Tab>

  <Tab title="Get collection" icon="table-columns">
    #### **Get Collection**

    Retrieve a single Framer collection and its schema.

    **Required inputs**

    * **Framer Project** — Select the Framer project you connected in Profound from the dropdown
    * **Collection** — Select the collection from the dropdown

    The output includes the collection's `id`, `name`, `readonly`, `managed_by`, and [`field_definitions`](#understanding-collection-schemas), which describe each field's `id`, `name`, `type`, and whether it is required.
  </Tab>

  <Tab title="List items" icon="files">
    #### **List Items**

    Retrieve CMS items from a Framer collection.

    **Required inputs**

    * **Framer Project** — Select the Framer project you connected in Profound from the dropdown
    * **Collection** — Select the collection from the dropdown

    The output includes each item's `id`, `slug`, `draft`, and [`field_data`](#understanding-item-output).
  </Tab>

  <Tab title="Get item" icon="file">
    #### **Get Item**

    Retrieve a single CMS item by ID.

    **Required inputs**

    * **Framer Project** — Select the Framer project you connected in Profound from the dropdown
    * **Collection** — Select the collection from the dropdown
    * **Item ID** — Enter the item ID directly

    The output includes the item's `id`, `slug`, `draft`, and [`field_data`](#understanding-item-output) so it can be inspected or passed to later steps.
  </Tab>
</Tabs>

***

## Supported Field Types

Framer's dynamic schema means Profound adapts to your collection model. The following Framer CMS field types are currently supported when creating items:

| Field Type          | Description                 | Supported |
| ------------------- | --------------------------- | --------- |
| **Plain Text**      | Single-line text            | Yes       |
| **Formatted Text**  | Rich text content           | Yes       |
| **Date**            | Date field                  | No        |
| **Link**            | URL field                   | Yes       |
| **Image**           | Image asset                 | No        |
| **Gallery**         | Array of images             | No        |
| **Color**           | Color value                 | No        |
| **Toggle**          | True/false value            | Yes       |
| **Number**          | Numeric value               | Yes       |
| **Option**          | Single-select option        | Yes       |
| **File**            | File asset                  | No        |
| **Reference**       | Reference to another item   | No        |
| **Multi-Reference** | Reference to multiple items | No        |

***

## Understanding Collection Schemas

Use **Get Collection** to inspect a collection's schema before working with its items.

The output includes:

* **Collection ID** and **Collection Name**
* **readonly** — whether the collection is read-only
* **managed\_by** — how the collection is managed
* **field\_definitions** — the fields configured on that collection

Each field definition includes:

* **id** — the field's internal Framer ID
* **name** — the label shown in Framer
* **type** — the field's primary Framer type, such as `string`, `formattedText`, or `number`
* **required** — whether the field is required
* **itemType** — additional item information for compound field types when Framer provides it

Example collection output:

```json theme={null}
{
  "collection": {
    "field_definitions": [
      {
        "id": "slug",
        "name": "Slug",
        "required": true,
        "type": "string",
        "itemType": null
      },
      {
        "id": "111111",
        "name": "Title",
        "required": true,
        "type": "string",
        "itemType": null
      },
      {
        "id": "222222",
        "name": "Content",
        "required": true,
        "type": "formattedText",
        "itemType": null
      }
    ],
    "id": "333333",
    "managed_by": "user",
    "name": "Example Collection",
    "readonly": false
  }
}
```

***

## Working with Create Item Inputs

When you select a Framer collection in **Create Item**, Profound renders inputs dynamically from that collection's schema.

For supported field types, you can fill in the values directly in the step UI. For example, a collection may expose fields such as:

* **Slug**
* **Title**
* **Content**
* **Link**
* **Name**
* **Option**
* **Count**
* **Featured**

If a collection includes required fields with unsupported types, the **Create Item** request will fail because Profound cannot provide values for those fields.

<Callout icon="lightbulb" color="#376CFF">
  **Note:** Use **Get Collection** to confirm the field definitions before creating an item. If you need support for a Framer field type that is not currently supported, contact us and we can help evaluate your use case.
</Callout>

***

## Understanding Item Output

Framer item responses include top-level item fields such as:

* **id**
* **slug**
* **draft**
* **field\_data**

The `field_data` object is keyed by field ID. Each entry includes the field's human-readable name, type, and value.

Example item output:

```json theme={null}
{
  "item": {
    "draft": true,
    "field_data": {
      "111111": {
        "name": "Title",
        "type": "string",
        "value": "Example title",
        "valueByLocale": {}
      },
      "222222": {
        "name": "Featured",
        "type": "boolean",
        "value": true
      }
    },
    "id": "333333",
    "slug": "example-title"
  }
}
```

***

## Common Use Cases

* **Content Publishing**: Create new Framer CMS items from AI-generated copy or structured data
* **Content Retrieval**: Pull structured content from Framer collections for review, summarization, or downstream workflows
* **Workflow Preparation**: Inspect collection schemas before building automations that depend on specific Framer fields
