> From the [Strife developer docs](https://strife.app/docs/reference/field-reference/fields-json). Every page is listed in [llms.txt](https://strife.app/docs/llms.txt).

# fields.json()

Raw JSON field for arbitrary structured data. Deprecated — never rendered by the edit panel; use fields.html() instead.

Raw JSON field ("Rich Content (JSON)" in the Studio field reference). Maps to editor `{ name: 'str-textarea', type: 'json' }`. The stored value is arbitrary JSON, so the generated read type is `unknown` — narrow it at the call site.

> [!WARNING]
> **Deprecated — do not use in new schemas.** This editor was never fully implemented: neither the legacy nor the current Strife Studio edit panel has a case for it, so a document with this field shows nothing editable for it in Studio, and no real template uses it today. It's kept only for backward compatibility with existing `fields.json()` calls and is expected to be removed in a future major version. Use [`fields.html()`](https://strife.app/docs/reference/field-reference/fields.html.md) for rich content, or a typed field, instead.

## Example

```ts
fields.json({
  label: 'Raw config',
})
```

## Options

| Option         | Type             | Required | Description                                                |
| -------------- | ---------------- | -------- | ---------------------------------------------------------- |
| `label`        | `string`         | Yes      | Label shown to editors in Strife Studio.                   |
| `description`  | `string`         | No       | Tooltip shown to editors.                                  |
| `searchable`   | `boolean`        | No       | Include in the team's search index.                        |
| `filterable`   | `boolean`        | No       | Allow filtering content lists by this value.               |
| `protected`    | `boolean`        | No       | Restrict editing to users with the appropriate permission. |
| `propertyName` | `string`         | No       | Override the stored property name.                         |
| `placeholder`  | `string \| null` | No       | Hint text shown when the editor is empty.                  |

No `localizable` option.

## Output type

`unknown` — cast or validate before use.

## See also

* [Rich Content (JSON)\~](https://strife.app/docs/reference/fields/rich-content-json.md) — the same editor, documented from the Strife Studio UI side.
