Make a page draft the live page
promote_page_draftMake a draft the page: its layout and text replace the live page's, in place — the address, name, SEO, menu entry and links do not change. Call this ONLY once the user has approved the draft. By default (keep_previous: true) the version it replaces is kept as a draft called "Previous version", so putting it back is one more promote; the swap is also one entry in the page's version history, undoable with restore_version (file_slug = the page). Like every edit this changes the site's design, not what visitors see: publish_site ships it. warnings lists images the new version dropped or links that match no page — tell the user.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| site_id | Yes | The site the draft belongs to | |
| page_slug | No | The live page the draft belongs to. Optional — worked out from the draft when omitted. | |
| user_goal | No | Optional: the user's goal behind this call, in one short sentence of plain words (e.g. "add a page so customers can book tables"). No names, emails or other personal details. | |
| draft_slug | Yes | The draft's slug, from create_page_draft or list_page_drafts (e.g. "/about--draft-7f2a"). | |
| variation_id | No | Design the draft belongs to, from list_variations. Defaults to the active design. | |
| keep_previous | No | Keep the page it replaces as a draft named "Previous version", so putting it back is one call. Default true. |