Skip to main content
Glama

Update Website CMS

update_website_cms
Idempotent

Changes how approved website posts reach a website CMS: pass provider (from get_website_cms) when more than one CMS is connected, then per channel (blog, faq, competitor_page, landing_page) which collection and fields they fill, mediaDestination (where new media goes), or a switch back to draft mode. Pass rediscover to read the CMS's collections again first. A mapping is checked against the discovered fields before it is saved; it cannot target the collection the API key signs in with, or a media collection. A channel publishes to one CMS. Saving reads from the customer's CMS and re-checks the connection. Admins only. Switching to live mode, the API key and the site URL are changed in the Mark app only. Related: get_website_cms, sync_connections (test, or retry a failed publish).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
mappingNoPer channel: a full channel mapping to set, or null to stop publishing that channel. Channels not named keep their mapping. A channel publishes to one CMS.
providerNoWebsite CMS provider from get_website_cms, for example payload. Required when more than one website CMS is connected.
rediscoverNoRead the CMS's collections and fields again first.
publishModeNoSet to draft so Mark saves drafts and the customer publishes in the CMS. Switching to live is done in the Mark app.
mediaDestinationNoNew media goes to: the media collection (from get_website_cms mediaCollections) Mark uploads a website post's Mark images into when it publishes, or null so Mark uploads nothing (covers and body images must then come from the CMS). Left out, unchanged.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
cmsYes
appUrlYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / mapping / additionalProperties / anyOf
      Previous value: -[
      -  {
      -    "properties": {
      -      "bodyFormat": {
      -        "description": "How the post body is stored: markdown or lexical (rich text).",
      -        "enum": [
      -          "markdown",
      -          "lexical"
      -        ],
      -        "type": "string"
      -      },
      -      "collection": {
      -        "description": "CMS collection slug this channel publishes into.",
      -        "maxLength": 64,
      -        "minLength": 1,
      -        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      -        "type": "string"
      -      },
      -      "defaults": {
      -        "additionalProperties": {},
      -        "description": "Fixed values for required CMS fields Mark cannot fill, such as an author id.",
      -        "propertyNames": {
      -          "maxLength": 64,
      -          "minLength": 1,
      -          "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -          "type": "string"
      -        },
      -        "type": "object"
      -      },
      -      "fields": {
      -        "description": "CMS field paths Mark fills on each document.",
      -        "properties": {
      -          "author": {
      -            "description": "CMS field for the author.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "body": {
      -            "description": "CMS field for the post body.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "categories": {
      -            "description": "CMS field for categories.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "cover": {
      -            "description": "CMS field for the cover image.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "description": {
      -            "description": "CMS field for the meta description.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "excerpt": {
      -            "description": "CMS field for the short listing excerpt.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "ogImage": {
      -            "description": "CMS field for the social/OG image.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "publishedAt": {
      -            "description": "CMS field for the published-at timestamp.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "seoDescription": {
      -            "description": "CMS field for the SEO description.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "seoTitle": {
      -            "description": "CMS field for the SEO title.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "slug": {
      -            "description": "CMS field for the URL slug.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "tags": {
      -            "description": "CMS field for tags.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "title": {
      -            "description": "CMS field for the post title.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "title",
      -          "slug",
      -          "body",
      -          "description"
      -        ],
      -        "type": "object"
      -      },
      -      "mediaCollection": {
      -        "description": "Media collection for the cover image. Omit so this channel sends no images.",
      -        "maxLength": 64,
      -        "minLength": 1,
      -        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      -        "type": "string"
      -      },
      -      "previewUrlTemplate": {
      -        "description": "Draft preview URL pattern. Must include {slug} or {id} (the CMS document id), for example https://www.example.com/blog/preview/{id}?token=SECRET. Omit if the CMS has no draft preview URL.",
      -        "maxLength": 2048,
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "provider": {
      -        "const": "payload",
      -        "description": "Which website CMS publishes this channel. A channel maps to one CMS.",
      -        "type": "string"
      -      },
      -      "urlPattern": {
      -        "description": "Live page URL pattern. Must include {slug}, for example https://www.example.com/blog/{slug}.",
      -        "maxLength": 2048,
      -        "minLength": 1,
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "collection",
      -      "fields",
      -      "bodyFormat",
      -      "urlPattern"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "properties": {
      +      "bodyFormat": {
      +        "description": "How the post body is stored: markdown or lexical (rich text).",
      +        "enum": [
      +          "markdown",
      +          "lexical"
      +        ],
      +        "type": "string"
      +      },
      +      "collection": {
      +        "description": "CMS collection slug this channel publishes into.",
      +        "maxLength": 64,
      +        "minLength": 1,
      +        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      +        "type": "string"
      +      },
      +      "defaults": {
      +        "additionalProperties": {},
      +        "description": "Fixed values for required CMS fields Mark cannot fill, such as an author id.",
      +        "propertyNames": {
      +          "maxLength": 64,
      +          "minLength": 1,
      +          "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "fields": {
      +        "description": "CMS field paths Mark fills on each document.",
      +        "properties": {
      +          "author": {
      +            "description": "CMS field for the author.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "body": {
      +            "description": "CMS field for the post body.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "categories": {
      +            "description": "CMS field for categories.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "cover": {
      +            "description": "CMS field for the cover image.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "description": {
      +            "description": "CMS field for the meta description.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "excerpt": {
      +            "description": "CMS field for the short listing excerpt.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "ogImage": {
      +            "description": "CMS field for the social/OG image.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "publishedAt": {
      +            "description": "CMS field for the published-at timestamp.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "seoDescription": {
      +            "description": "CMS field for the SEO description.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "seoTitle": {
      +            "description": "CMS field for the SEO title.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "slug": {
      +            "description": "CMS field for the URL slug.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "tags": {
      +            "description": "CMS field for tags.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "title": {
      +            "description": "CMS field for the post title.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "title",
      +          "slug",
      +          "body",
      +          "description"
      +        ],
      +        "type": "object"
      +      },
      +      "mediaCollection": {
      +        "description": "Read only. Set the connection's mediaDestination instead.",
      +        "maxLength": 64,
      +        "minLength": 1,
      +        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      +        "type": "string"
      +      },
      +      "previewUrlTemplate": {
      +        "description": "Draft preview URL pattern. Must include {slug} or {id} (the CMS document id), for example https://www.example.com/blog/preview/{id}?token=SECRET. Omit if the CMS has no draft preview URL.",
      +        "maxLength": 2048,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "provider": {
      +        "const": "payload",
      +        "description": "Which website CMS publishes this channel. A channel maps to one CMS.",
      +        "type": "string"
      +      },
      +      "urlPattern": {
      +        "description": "Live page URL pattern. Must include {slug}, for example https://www.example.com/blog/{slug}.",
      +        "maxLength": 2048,
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "collection",
      +      "fields",
      +      "bodyFormat",
      +      "urlPattern"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / mediaDestination
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 64,
      +      "minLength": 1,
      +      "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "description": "New media goes to: the media collection (from get_website_cms mediaCollections) Mark uploads a website post's Mark images into when it publishes, or null so Mark uploads nothing (covers and body images must then come from the CMS). Left out, unchanged."
      +}
  2. Changed1 schema field changed
    • changedInput schema / properties / mapping / propertyNames / enum
      Previous value: -[
      -  "blog",
      -  "faq",
      -  "competitor_page"
      -]New value: +[
      +  "blog",
      +  "faq",
      +  "competitor_page",
      +  "landing_page"
      +]
  3. Changed1 schema field changed
    • changedInput schema / properties / mapping / additionalProperties / anyOf
      Previous value: -[
      -  {
      -    "properties": {
      -      "bodyFormat": {
      -        "description": "How the post body is stored: markdown or lexical (rich text).",
      -        "enum": [
      -          "markdown",
      -          "lexical"
      -        ],
      -        "type": "string"
      -      },
      -      "collection": {
      -        "description": "CMS collection slug this channel publishes into.",
      -        "maxLength": 64,
      -        "minLength": 1,
      -        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      -        "type": "string"
      -      },
      -      "defaults": {
      -        "additionalProperties": {},
      -        "description": "Fixed values for required CMS fields Mark cannot fill, such as an author id.",
      -        "propertyNames": {
      -          "maxLength": 64,
      -          "minLength": 1,
      -          "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -          "type": "string"
      -        },
      -        "type": "object"
      -      },
      -      "fields": {
      -        "description": "CMS field paths Mark fills on each document.",
      -        "properties": {
      -          "author": {
      -            "description": "CMS field for the author.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "body": {
      -            "description": "CMS field for the post body.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "categories": {
      -            "description": "CMS field for categories.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "cover": {
      -            "description": "CMS field for the cover image.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "description": {
      -            "description": "CMS field for the meta description.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "excerpt": {
      -            "description": "CMS field for the short listing excerpt.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "ogImage": {
      -            "description": "CMS field for the social/OG image.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "publishedAt": {
      -            "description": "CMS field for the published-at timestamp.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "seoDescription": {
      -            "description": "CMS field for the SEO description.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "seoTitle": {
      -            "description": "CMS field for the SEO title.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "slug": {
      -            "description": "CMS field for the URL slug.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "tags": {
      -            "description": "CMS field for tags.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "title": {
      -            "description": "CMS field for the post title.",
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "title",
      -          "slug",
      -          "body",
      -          "description"
      -        ],
      -        "type": "object"
      -      },
      -      "mediaCollection": {
      -        "description": "Media collection for the cover image. Omit so this channel sends no images.",
      -        "maxLength": 64,
      -        "minLength": 1,
      -        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      -        "type": "string"
      -      },
      -      "previewUrlTemplate": {
      -        "description": "Draft preview URL pattern. Must include {slug}. Omit if the CMS has no draft preview URL.",
      -        "maxLength": 2048,
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "provider": {
      -        "const": "payload",
      -        "description": "Which website CMS publishes this channel. A channel maps to one CMS.",
      -        "type": "string"
      -      },
      -      "urlPattern": {
      -        "description": "Live page URL pattern. Must include {slug}, for example https://www.example.com/blog/{slug}.",
      -        "maxLength": 2048,
      -        "minLength": 1,
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "collection",
      -      "fields",
      -      "bodyFormat",
      -      "urlPattern"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "properties": {
      +      "bodyFormat": {
      +        "description": "How the post body is stored: markdown or lexical (rich text).",
      +        "enum": [
      +          "markdown",
      +          "lexical"
      +        ],
      +        "type": "string"
      +      },
      +      "collection": {
      +        "description": "CMS collection slug this channel publishes into.",
      +        "maxLength": 64,
      +        "minLength": 1,
      +        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      +        "type": "string"
      +      },
      +      "defaults": {
      +        "additionalProperties": {},
      +        "description": "Fixed values for required CMS fields Mark cannot fill, such as an author id.",
      +        "propertyNames": {
      +          "maxLength": 64,
      +          "minLength": 1,
      +          "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "fields": {
      +        "description": "CMS field paths Mark fills on each document.",
      +        "properties": {
      +          "author": {
      +            "description": "CMS field for the author.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "body": {
      +            "description": "CMS field for the post body.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "categories": {
      +            "description": "CMS field for categories.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "cover": {
      +            "description": "CMS field for the cover image.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "description": {
      +            "description": "CMS field for the meta description.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "excerpt": {
      +            "description": "CMS field for the short listing excerpt.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "ogImage": {
      +            "description": "CMS field for the social/OG image.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "publishedAt": {
      +            "description": "CMS field for the published-at timestamp.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "seoDescription": {
      +            "description": "CMS field for the SEO description.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "seoTitle": {
      +            "description": "CMS field for the SEO title.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "slug": {
      +            "description": "CMS field for the URL slug.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "tags": {
      +            "description": "CMS field for tags.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "title": {
      +            "description": "CMS field for the post title.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "title",
      +          "slug",
      +          "body",
      +          "description"
      +        ],
      +        "type": "object"
      +      },
      +      "mediaCollection": {
      +        "description": "Media collection for the cover image. Omit so this channel sends no images.",
      +        "maxLength": 64,
      +        "minLength": 1,
      +        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      +        "type": "string"
      +      },
      +      "previewUrlTemplate": {
      +        "description": "Draft preview URL pattern. Must include {slug} or {id} (the CMS document id), for example https://www.example.com/blog/preview/{id}?token=SECRET. Omit if the CMS has no draft preview URL.",
      +        "maxLength": 2048,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "provider": {
      +        "const": "payload",
      +        "description": "Which website CMS publishes this channel. A channel maps to one CMS.",
      +        "type": "string"
      +      },
      +      "urlPattern": {
      +        "description": "Live page URL pattern. Must include {slug}, for example https://www.example.com/blog/{slug}.",
      +        "maxLength": 2048,
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "collection",
      +      "fields",
      +      "bodyFormat",
      +      "urlPattern"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  4. Changed1 schema field changed
    • changedInput schema / properties / mapping / additionalProperties / anyOf
      Previous value: -[
      -  {
      -    "properties": {
      -      "bodyFormat": {
      -        "enum": [
      -          "markdown",
      -          "lexical"
      -        ],
      -        "type": "string"
      -      },
      -      "collection": {
      -        "maxLength": 64,
      -        "minLength": 1,
      -        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      -        "type": "string"
      -      },
      -      "defaults": {
      -        "additionalProperties": {},
      -        "propertyNames": {
      -          "maxLength": 64,
      -          "minLength": 1,
      -          "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -          "type": "string"
      -        },
      -        "type": "object"
      -      },
      -      "fields": {
      -        "properties": {
      -          "author": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "body": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "categories": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "cover": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "description": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "excerpt": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "ogImage": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "publishedAt": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "seoDescription": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "seoTitle": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "slug": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "tags": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "title": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "title",
      -          "slug",
      -          "body",
      -          "description"
      -        ],
      -        "type": "object"
      -      },
      -      "mediaCollection": {
      -        "maxLength": 64,
      -        "minLength": 1,
      -        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      -        "type": "string"
      -      },
      -      "previewUrlTemplate": {
      -        "maxLength": 2048,
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "provider": {
      -        "const": "payload",
      -        "type": "string"
      -      },
      -      "urlPattern": {
      -        "maxLength": 2048,
      -        "minLength": 1,
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "collection",
      -      "fields",
      -      "bodyFormat",
      -      "urlPattern"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "properties": {
      +      "bodyFormat": {
      +        "description": "How the post body is stored: markdown or lexical (rich text).",
      +        "enum": [
      +          "markdown",
      +          "lexical"
      +        ],
      +        "type": "string"
      +      },
      +      "collection": {
      +        "description": "CMS collection slug this channel publishes into.",
      +        "maxLength": 64,
      +        "minLength": 1,
      +        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      +        "type": "string"
      +      },
      +      "defaults": {
      +        "additionalProperties": {},
      +        "description": "Fixed values for required CMS fields Mark cannot fill, such as an author id.",
      +        "propertyNames": {
      +          "maxLength": 64,
      +          "minLength": 1,
      +          "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "fields": {
      +        "description": "CMS field paths Mark fills on each document.",
      +        "properties": {
      +          "author": {
      +            "description": "CMS field for the author.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "body": {
      +            "description": "CMS field for the post body.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "categories": {
      +            "description": "CMS field for categories.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "cover": {
      +            "description": "CMS field for the cover image.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "description": {
      +            "description": "CMS field for the meta description.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "excerpt": {
      +            "description": "CMS field for the short listing excerpt.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "ogImage": {
      +            "description": "CMS field for the social/OG image.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "publishedAt": {
      +            "description": "CMS field for the published-at timestamp.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "seoDescription": {
      +            "description": "CMS field for the SEO description.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "seoTitle": {
      +            "description": "CMS field for the SEO title.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "slug": {
      +            "description": "CMS field for the URL slug.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "tags": {
      +            "description": "CMS field for tags.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "title": {
      +            "description": "CMS field for the post title.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "title",
      +          "slug",
      +          "body",
      +          "description"
      +        ],
      +        "type": "object"
      +      },
      +      "mediaCollection": {
      +        "description": "Media collection for the cover image. Omit so this channel sends no images.",
      +        "maxLength": 64,
      +        "minLength": 1,
      +        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      +        "type": "string"
      +      },
      +      "previewUrlTemplate": {
      +        "description": "Draft preview URL pattern. Must include {slug}. Omit if the CMS has no draft preview URL.",
      +        "maxLength": 2048,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "provider": {
      +        "const": "payload",
      +        "description": "Which website CMS publishes this channel. A channel maps to one CMS.",
      +        "type": "string"
      +      },
      +      "urlPattern": {
      +        "description": "Live page URL pattern. Must include {slug}, for example https://www.example.com/blog/{slug}.",
      +        "maxLength": 2048,
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "collection",
      +      "fields",
      +      "bodyFormat",
      +      "urlPattern"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  5. Changed4 schema fields changed
    • changedInput schema / properties / mapping / additionalProperties / anyOf
      Previous value: -[
      -  {
      -    "properties": {
      -      "bodyFormat": {
      -        "enum": [
      -          "markdown",
      -          "lexical"
      -        ],
      -        "type": "string"
      -      },
      -      "collection": {
      -        "maxLength": 64,
      -        "minLength": 1,
      -        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      -        "type": "string"
      -      },
      -      "defaults": {
      -        "additionalProperties": {},
      -        "propertyNames": {
      -          "maxLength": 64,
      -          "minLength": 1,
      -          "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -          "type": "string"
      -        },
      -        "type": "object"
      -      },
      -      "fields": {
      -        "properties": {
      -          "author": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "body": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "categories": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "cover": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "description": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "excerpt": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "ogImage": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "publishedAt": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "seoDescription": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "seoTitle": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "slug": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "tags": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          },
      -          "title": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "title",
      -          "slug",
      -          "body",
      -          "description"
      -        ],
      -        "type": "object"
      -      },
      -      "mediaCollection": {
      -        "maxLength": 64,
      -        "minLength": 1,
      -        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      -        "type": "string"
      -      },
      -      "previewUrlTemplate": {
      -        "maxLength": 2048,
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "urlPattern": {
      -        "maxLength": 2048,
      -        "minLength": 1,
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "collection",
      -      "fields",
      -      "bodyFormat",
      -      "urlPattern"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "properties": {
      +      "bodyFormat": {
      +        "enum": [
      +          "markdown",
      +          "lexical"
      +        ],
      +        "type": "string"
      +      },
      +      "collection": {
      +        "maxLength": 64,
      +        "minLength": 1,
      +        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      +        "type": "string"
      +      },
      +      "defaults": {
      +        "additionalProperties": {},
      +        "propertyNames": {
      +          "maxLength": 64,
      +          "minLength": 1,
      +          "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "fields": {
      +        "properties": {
      +          "author": {
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "body": {
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "categories": {
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "cover": {
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "description": {
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "excerpt": {
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "ogImage": {
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "publishedAt": {
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "seoDescription": {
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "seoTitle": {
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "slug": {
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "tags": {
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          },
      +          "title": {
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*$",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "title",
      +          "slug",
      +          "body",
      +          "description"
      +        ],
      +        "type": "object"
      +      },
      +      "mediaCollection": {
      +        "maxLength": 64,
      +        "minLength": 1,
      +        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
      +        "type": "string"
      +      },
      +      "previewUrlTemplate": {
      +        "maxLength": 2048,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "provider": {
      +        "const": "payload",
      +        "type": "string"
      +      },
      +      "urlPattern": {
      +        "maxLength": 2048,
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "collection",
      +      "fields",
      +      "bodyFormat",
      +      "urlPattern"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • changedInput schema / properties / mapping / description
      Previous value: -"Per channel: a full channel mapping to set, or null to stop publishing that channel. Channels not named keep their mapping."New value: +"Per channel: a full channel mapping to set, or null to stop publishing that channel. Channels not named keep their mapping. A channel publishes to one CMS."
    • addedInput schema / properties / provider
      Added value: +{
      +  "description": "Website CMS provider from get_website_cms, for example payload. Required when more than one website CMS is connected.",
      +  "type": "string"
      +}
    • changedInput schema / properties / publishMode / description
      Previous value: -"Set to draft so Mark saves drafts and the customer publishes in Payload. Switching to live is done in the Mark app."New value: +"Set to draft so Mark saves drafts and the customer publishes in the CMS. Switching to live is done in the Mark app."
  6. Added

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources