update_post
Update an existing CMS post (any post type). Only provided fields are changed.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| meta | No | Custom field values; merged shallowly with existing meta. Use this for structured data, not excerpt. | |
| slug | No | URL slug (must be unique per company+type). | |
| type | No | Change post type (e.g. blog_post → treatment). Slug is re-checked for uniqueness under the new type. | |
| title | No | Post title | |
| blocks | No | Replaces the entire ordered block array. Use append_post_block / replace_post_block / remove_post_block / reorder_post_blocks for per-block edits. Each block: { id, version, type, data }. Types: paragraph, heading, image, list, quote, code, divider, spacer, embed, html, youtube, file, faq, callout, gallery, cta, accordion, product, columns. | |
| postId | Yes | The post ID | |
| status | No | Post status | |
| tagIds | No | Tag IDs to sync (replaces existing tags) | |
| excerpt | No | Plain-text summary only — never JSON. Omit to leave unchanged. | |
| parentId | No | Parent post ID for nested types. | |
| seoTitle | No | SEO title override | |
| sortOrder | No | Sort order (lower = earlier) | |
| visibility | No | Visibility | |
| categoryIds | No | Category IDs | |
| publishedAt | No | Publish timestamp (ISO 8601) | |
| featuredImage | No | Cover image URL | |
| seoDescription | No | SEO description override |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | Tool result payload — shape varies per tool, see the tool description | |
| summary | Yes | One-line human-readable summary of the action | |
| renderType | Yes | UI rendering hint for the result |