Skip to content

update ​

Update an existing deployment with new HTML or files. The live URL stays the same; the content updates immediately.

Annotations ​

AnnotationValue
readOnlyHintfalse
destructiveHintfalse
openWorldHinttrue

Parameters ​

NameTypeRequiredDescription
idstringYesThe deployment ID to update
htmlstringNo*New HTML content (single-file update)
filesarrayNo*New files (multi-file update — replaces all existing files)
titlestringNoPage title. If omitted, kept unchanged.
descriptionstringNoMeta description. If omitted, kept unchanged.
faviconstringNoFavicon emoji. If omitted, kept unchanged.
is_spabooleanNoSPA routing fallback. If omitted, kept unchanged.

*Either html or files is required.

files array format ​

Same as the deploy tool — each file has path, content, contentType, and optional encoding.

When passing files, all existing files are replaced with the new set. Include any files you want to keep.

Return format ​

Updated successfully!

URL: https://my-site.invoker.page
ID: dep_abc123

Example ​

User prompt:

"Update my waitlist — change the headline to 'Now in Public Beta'"

What Claude does:

  1. Calls get_status to retrieve the deployment ID and current state.
  2. Modifies the HTML with the new headline.
  3. Calls update with the deployment ID and new HTML.
  4. Returns: "Updated! https://my-waitlist.invoker.page is live with the new headline."

Notes ​

  • URL preserved. The slug and subdomain don't change after an update.
  • Live immediately. Updates apply as soon as update returns — no review step.
  • Multi-file updates replace all files. If you only want to change one file in a multi-file deploy, include the unchanged files in the files array as well.
  • Switching modes. You can update a single-file HTML deploy to multi-file (or vice versa) by passing the appropriate parameter.

Deploy apps from conversation. Vercel for AI agents.