set_side_page_section
Update a side page section with structured typed fields, a single dot-path value, or natural-language instructions, while validating against the section's schema to prevent 400 errors.
Instructions
Update one section of a side page with STRUCTURED, typed fields (not a content string). The write must match the section's real shape or it is rejected with a 400 validation error. Landing sections use typed objects, e.g. hero → { title: { prefix, suffix }, description, testimonials: [...] }; comparison sections (matrix, verdict, scorecard, decisionTree, priceCalculator, competitorClaims, ...) use their comparison-schema shape. Use view_side_page(detail:'full') first to see the current section shape, then send the same shape back with your edits. Pass EITHER fields (a partial section object merged onto the current section) OR field (a dot-path) + value for a single nested change, OR instructions alone for a natural-language edit (the server runs an AI pass scoped to this section). type:"text" pages: there is no per-section nesting — the whole page is one flat {title, htmlContent} document. sectionId is accepted for symmetry (e.g. "content"/"htmlContent"/"title") but every edit applies to the whole document: pass fields:{title,htmlContent}, field:"title"|"htmlContent"+value, or instructions alone for an AI rewrite of the whole page. edit_side_page's title/htmlContent params are a simpler direct-write shortcut for the same document. Every edit creates a new draft version (like landing-page section edits) — see list_side_page_versions / restore_side_page_version; on a published page, edits stay draft-only until set_side_page_state({published:true}) publishes them.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Parent landing page slug | |
| field | No | Dot-path to a single nested field (e.g. 'title.prefix'). Requires `value`. | |
| value | No | New value for the single `field` above. | |
| fields | No | Structured partial section object, shallow-merged onto the current section. Must conform to the section's typed shape. | |
| sideKey | Yes | Side page key | |
| sectionId | Yes | Section ID from view_side_page (e.g. hero, features, matrix, verdict) | |
| instructions | No | Natural-language edit instructions. When provided alone (no fields/field), triggers an AI pass that rewrites this section's content according to the instructions. When combined with fields/field, stored only as an annotation for future context — no AI pass runs. |