> This page is for Home.

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

# Pages API: read and write JSON-LD schema markup

> Four new beta endpoints let you read, write, and bulk-manage JSON-LD schema markup on pages, with locale-aware fallback.

The Data API now exposes endpoints for managing the JSON-LD schema markup attached to a page.
Schema markup powers rich search results such as FAQ snippets, breadcrumbs, organization cards, and product listings.
Previously, schema markup could be edited only one page at a time in the Designer.

## New endpoints

All four endpoints are available under the `/v2/beta/` prefix.

| Method  | Path                                                                                                                            | Required scope |
| ------- | ------------------------------------------------------------------------------------------------------------------------------- | -------------- |
| `GET`   | [`/pages/{page_id}/schema-markup`](/data/v2.0.0-beta/reference/pages-and-components/pages/schema-markup/get)                    | `pages:read`   |
| `PUT`   | [`/pages/{page_id}/schema-markup`](/data/v2.0.0-beta/reference/pages-and-components/pages/schema-markup/update)                 | `pages:write`  |
| `POST`  | [`/sites/{site_id}/pages/schema-markup/query`](/data/v2.0.0-beta/reference/pages-and-components/pages/schema-markup/query-bulk) | `pages:read`   |
| `PATCH` | [`/sites/{site_id}/pages/schema-markup`](/data/v2.0.0-beta/reference/pages-and-components/pages/schema-markup/update-bulk)      | `pages:write`  |

## Locale-aware reads and writes

Each endpoint accepts an optional `localeId` to target a secondary locale.
When a secondary locale has no schema markup of its own, the response returns the primary locale's schema markup and sets `isInherited` to `true`.

## Bulk operations

The bulk read endpoint accepts up to 100 page entries per request.
The bulk update endpoint accepts up to 25 page entries per request.
Each entry in a bulk request can target a different locale, so you can update the same page across multiple locales in a single call.

## Flexible input

The `jsonLdSchema` field accepts a JSON object, a raw JSON string, or a string wrapped in a `<script type="application/ld+json">` tag.
Pass `null` to clear the schema markup for the targeted page or locale.

## Validation limits

Each entry is validated against the following limits:

* 60KB raw input
* 32 levels of nesting
* 5,000 nodes