diff --git a/docs/features/schema/schema-aggregator/api-reference.md b/docs/features/schema/schema-aggregator/api-reference.md index e5b0d3b8..c257798a 100644 --- a/docs/features/schema/schema-aggregator/api-reference.md +++ b/docs/features/schema/schema-aggregator/api-reference.md @@ -78,9 +78,59 @@ curl https://example.com/wp-json/yoast/v1/schema-aggregator/get-schema/post/2 --- -### Get XML Schemamap +### Get XML Schemamap — site-root URL (since 28.3) -Retrieve an XML sitemap of all available schema endpoints. +Starting with Yoast SEO 28.3, the schemamap is also served at the site root as a plain XML file: + +``` +GET https://example.com/schemamap.xml +``` + +This URL is served by WordPress's rewrite layer (no REST API required) and returns the same XML document as the REST endpoint below. AI crawlers and NLWeb-compliant consumers can fetch it without knowing the WordPress REST API path prefix. + +**Response Format:** + +```xml + + + + https://example.com/wp-json/yoast/v1/schema-aggregator/get-schema/page + 2026-01-01T14:03:56Z + daily + 0.8 + + + https://example.com/wp-json/yoast/v1/schema-aggregator/get-schema/post + 2026-01-01T14:03:56Z + daily + 0.8 + + +``` + +**Response Headers:** + +``` +Content-Type: application/xml; charset=UTF-8 +Cache-Control: public, max-age=300 +X-Robots-Tag: noindex, follow +``` + +**Example Request:** + +```bash +curl https://example.com/schemamap.xml +``` + +:::note +The site-root URL and the REST endpoint both serve the same cached XML. Yoast SEO automatically flushes the cache when relevant content changes, so both URLs stay in sync. +::: + +--- + +### Get XML Schemamap — REST endpoint + +Retrieve an XML sitemap of all available schema endpoints via the REST API. **Endpoint:** ``` diff --git a/docs/features/schema/schema-aggregator/overview.md b/docs/features/schema/schema-aggregator/overview.md index 494b948a..15af61f2 100644 --- a/docs/features/schema/schema-aggregator/overview.md +++ b/docs/features/schema/schema-aggregator/overview.md @@ -66,18 +66,29 @@ The Schema Aggregator implements a dynamic caching strategy: ### Schemamap (XML map for structured data) -The schemamap provides an XML index of all available schema endpoints: +The schemamap provides an XML index of all available schema endpoints. Starting with Yoast SEO 28.3, the schemamap is accessible at two URLs: + +- **Site-root URL** (new in 28.3): `https://example.com/schemamap.xml` — a plain URL served by WordPress's rewrite layer, designed for AI crawlers and NLWeb-compliant consumers. +- **REST endpoint**: `https://example.com/wp-json/yoast/v1/schema-aggregator/get-xml` — the original REST API path. + +Both URLs return the same cached XML document: ```xml - - - https://example.com/wp-json/yoast/v1/schema-aggregator/get-schema/post - - - https://example.com/wp-json/yoast/v1/schema-aggregator/get-schema/page - - + + + https://example.com/wp-json/yoast/v1/schema-aggregator/get-schema/post + 2026-01-01T14:03:56Z + daily + 0.8 + + + https://example.com/wp-json/yoast/v1/schema-aggregator/get-schema/page + 2026-01-01T14:03:56Z + daily + 0.8 + + ``` ### External source support