> This page is for Data API, version v2 (default).
> For other versions, use one of these documentation indexes:
> - v2 (default): https://developers.webflow.com/data/v2.0.0/llms.txt
> - v2 Beta: https://developers.webflow.com/data/v2.0.0-beta/llms.txt
> - v1: https://developers.webflow.com/data/v1.0.0/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developers.webflow.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developers.webflow.com/_mcp/server.

# Field Types & Item Values

> A reference for all Webflow CMS field types and the value formats they accept.

This page is a reference for all Webflow CMS field types and the value formats they accept. Use it to:

* Understand each field type’s purpose and behavior
* Learn how to format values when creating or updating items via the API

To retrieve the specific fields used in a collection, call the [Get Collection](/data/reference/cms/collections/get) endpoint.

> **Field Type Names**
>
> Some field types may use slightly different names in the Webflow UI. This document uses the API name for each field type.

## [Plain Text](https://help.webflow.com/hc/en-us/articles/33961333974547)

Stores text without formatting.

#### Value Format

```
string
```

#### Example

```
"Always know where your towel is."
```

## [Rich Text](https://help.webflow.com/hc/en-us/articles/33961332768275)

Stores long-form text with HTML formatting.

#### Value Format

```
string
```

#### Example

```html
"<p>A small, blue-green planet orbiting an unregarded yellow sun in the uncharted backwaters of the Galaxy's western spiral arm.</p>
<h3>Notable features</h3>
<blockquote>It has a population of humans, who are mostly harmless. They have developed digital watches and are known for their ability to make tea.</blockquote>"
```

> **Code Blocks in Rich Text Fields**
>
> The API doesn't currently support code blocks in Rich Text fields. Passing code blocks will result in an empty string.

## [ImageRef / Image](https://help.webflow.com/hc/en-us/articles/33961308662803)

Stores a single image. Images must be hosted on a publicly accessible URL to be uploaded via the API. The maximum file size for images is 4MB.

#### Read Value

**`Format`**

```javascript Format
{
  "fileId": "string",
  "url": "string",
  "alt": "string" (optional)
}
```

**`Example`**

```javascript Example
{
  "fileId": "6390ba25bfe63b0cca1dd136",
  "url": "https://.../image.jpg",
  "alt": "Marvin the Paranoid Android"
}
```

#### Write Value

To upload a new image, provide an object containing a `url`.

**`New Upload`**

```javascript title="New Upload"
{
  "myImageField": {
    "url": "https://.../image.png",
    "alt": "Finn and Jake fist bumping"
  }
}
```

## [Multi-Image](https://help.webflow.com/hc/en-us/articles/33961308586899)

Stores multiple images. Images must be hosted on a publicly accessible URL to be uploaded via the API. The maximum file size for each image is 4MB.

#### Read Value

**`Format`**

```javascript Format
[
  {
    "fileId": "string",
    "url": "string",
    "alt": "string" (optional)
  }
]
```

**`Example`**

```json Example
{
  "myImageField": [
    {
      "fileId": "6390ba25bfe63b0cca1dd136",
      "url": "https://.../image1.jpeg",
      "alt": "Marvin the Paranoid Android"
    },
    {
      "fileId": "6390ba25bfe63b0cca1dd137",
      "url": "https://.../image2.jpeg",
      "alt": "Vogon Poetry"
    }
  ]
}
```

#### Write Value

To upload new images, provide an array of objects, each containing a `url`.

**`New Uploads`**

```javascript title="New Uploads"
{
  "myImageField": [
    {
      "url": "https://.../image1.png",
      "alt": "Finn and Jake fist bumping"
    },
    {
      "url": "https://.../image2.png",
      "alt": "Finn and Jake hugging"
    }
  ]
}
```

## VideoLink

Accepts a URL string for videos hosted on platforms like YouTube or Vimeo.

#### Value Format

```
string
```

#### Example

```json
{
  "myVideoLink": "https://www.youtube.com/watch?v=jfKfPfyJRdk"
}
```

## [Link](https://help.webflow.com/hc/en-us/articles/33961335400083)

Stores a URL.

#### Value Format

```
string
```

#### Example

```json
{
  "myLink": "https://www.webflow.com"
}
```

## [Email](https://help.webflow.com/hc/en-us/articles/33961308969235)

Stores an email address.

#### Value Format

```
string
```

#### Example

```json
{
  "myEmail": "hello@webflow.com"
}
```

## [Phone](https://help.webflow.com/hc/en-us/articles/33961338921619)

Stores a phone number.

#### Value Format

```
string
```

#### Example

```json
{
  "myPhone": "2024561111"
}
```

## [Number](https://help.webflow.com/hc/en-us/articles/33961310580115)

Stores an integer or a decimal number.

#### Value Format

```
number
```

#### Example

```json
{
  "myNumber": 42
}
```

## [Date/Time](https://help.webflow.com/hc/en-us/articles/33961357365651)

Stores a date and time.

#### Read Value Format

```
string (ISO 8601)
```

#### Write Value Format

```
Date | string (ISO 8601)
```

#### Example

```json
{
  "myDateTime": "2022-11-18T00:00:00.000Z"
}
```

## [Switch](https://help.webflow.com/hc/en-us/articles/33961341008915)

Stores a boolean value (`true` or `false`).

#### Value Format

```
boolean
```

#### Example

```json
{
  "mostly-harmless": true
}
```

## [Color](https://help.webflow.com/hc/en-us/articles/33961295965331)

Stores a color value. Accepts HEX, RGB, HSL, and named color formats.

#### Value Format

```
string
```

#### Example

```json
{
  "bulldozer": "#FFFF00"
}
```

Accepted formats include:

* `#RGB`
* `#RGBA`
* `#RRGGBB`
* `#RRGGBBAA`
* `rgb(red,green,blue)`
* `rgba(red,green,blue,alpha)`
* `hsl(hue,saturation,lightness)`
* `hsla(hue,saturation,lightness,alpha)`
* `orchid`, `aqua`, `black`, etc.
* `transparent`

## [Option](https://help.webflow.com/hc/en-us/articles/33961415087251)

Creates a predefined list of choices for an item.

### Create an Option Field

To create an Option field, send a `POST` request to the [Create Field](/data/reference/cms/collection-fields/create) endpoint. The request body must include `"type": "Option"` and a `metadata` object containing an `options` array. Each object in the array defines a choice with a `name`.

#### Create Field Request

```javascript
{
  "type": "Option",
  "displayName": "milliways-drink-menu",
  "metadata": {
    "options": [
      {"name": "pan-galactic gargle blaster"},
      {"name": "waturi punch"},
      {"name": "gnab gib"}
    ]
  }
}
```

#### Read Field Definition

```javascript
{
  "type": "Option",
  "validations": {
    "options": [
      {
        "name": "pan-galactic gargle blaster",
        "id": "a1b2c3d4"
      },
      // ...
    ]
  }
}
```

### Write an option value

To set an option for an item, get the option `id` of the desired option and pass it as a string. You can get the option `id` by calling the [Get Collection Details](/data/reference/cms/collections/get) endpoint and then searching for the option field and it's metadata in the `fields` array.

#### Value Format

```
string (Option ID)
```

#### Example

```json
{
  "milliways-drink-menu": "a1b2c3d4"
}
```

## File

Stores a file reference. You can upload a new file from a public URL or use an existing file by referencing its `fileId`.

#### Read Value

```javascript
{
  "fileId": "string",
  "url": "string",
  "alt"?: "string"
}
```

#### Write Value

```javascript
{
  "url": "https://data.wa.gov/api/views/f6w7-q2d2/rows.csv"
  alt"?: "Electric Vehicle Data"
}
```

## [ItemRef / Reference](https://help.webflow.com/hc/en-us/articles/33961317363091)

Links an item to another item in the same or a different collection.

### Create a reference field

To create a Reference field, send a `POST` request to the [Create Field](/data/reference/cms/collection-fields/create) endpoint. The request body must include `"type": "Reference"` and a `metadata` object containing the `collectionId` of the collection you want to reference.

#### Create Field Request

```javascript
// Include the metadata property in the request body
{
  "type": "Reference",
  "displayName": "Author",
  "helpText": "Add the post author here",
  "metadata": {
    "collectionId": "63692ab61fb2852f582ba8f5"
  }
}
```

### Write a reference value

To set a reference for an item, get the item `id` of the referenced item and pass it as a string. You can get the item `id` by calling the [Get Items](/data/reference/cms/collection-items/staged-items/list-items) endpoint for the referenced collection.

#### Value Format

```
string (Item ID)
```

#### Example

```json
{
  "author": "63764ec7981aa0138e99abc"
}
```

## [Multi-Reference](https://help.webflow.com/hc/en-us/articles/33961260360083)

Links an item to multiple items in the same or a different collection.

### Create a multi-reference field

To create a Multi-Reference field, send a `POST` request to the [Create Field](/data/reference/cms/collection-fields/create) endpoint. The request body must include `"type": "MultiReference"` and a `metadata` object containing the `collectionId` of the collection you want to reference.

#### Create Field Request

```javascript
// Include the metadata property in the request body
{
  "type": "MultiReference",
  "displayName": "Authors",
  "helpText": "Add post authors here",
  "metadata": {
    "collectionId": "63692ab61fb2852f582ba8f5"
  }
}
```

### Write a multi-reference value

To set multiple references for an item, pass an array of item `id` strings.

#### Value Format

```
[string, string] (Item IDs)
```

#### Example

```json
{
  "authors": [
    "63764ec7981aa0138e99abc",
    "63764ec7981aa0138e99abd"
  ]
}
```

## User

A read-only field containing the unique ID of a Webflow user. This field is used for the "created-by" and "updated-by" properties on an item.

#### Value Format

```
string
```

#### Example

```
"Person_63209baeac0b804b455624ce"
```