There's a new version of the HubSpot API

We're also working on a new documentation website, you're invited to check it out and give us your feedback.

Update a page

Last updated May 31, 2023

PUT /content/api/v2/pages/:page_id

Method Details

HTTP Methods:


Content Type:


Response Format:


Requires Authentication?


Rate Limited?






Updates a page in the database.
If not all top level fields are included in the body, we will only update the included fields.

Required Parameters How to use Description
OAuth access token or private app access token Authorization: Bearer {token} header Used to authenticate the request. Please see this page for more details about authentication.
page_id Used in the request URL Unique identifier for a particular blog

Allowed JSON Fields in the body

Note: dynamic_page_hubdb_table_id is returned via our GET endpoint, but should not be used when making a PUT request. Use dynamic_page_data_source_id, and dynamic_page_data_source_type instead.

Parameter name Type Description
campaign string The guid of the marketing campaign this page is associated with
campaign_name string The name of the marketing campaign this page is associated with
dynamic_page_data_source_id integer The id number of the HubDB or CRM object.
dynamic_page_data_source_type integer The type of data source to generate dynamic pages from. Expects 1 (for hubdb) or 2 (for crm object).
footer_html string Custom HTML for embed codes, javascript that should be placed before the </body> tag of the page
head_html string Custom HTML for embed codes, javascript, etc. that goes in the <head> tag of the page
is_draft string True if the post is still a draft, invisible to the public. Gets changed when the /publish-action API endpoint is called
meta_description string A description that goes in <meta> tag on the page
meta_keywords string Keywords for the meta tag
name string The internal name of the page
password string Set this to create a password protected page. Entering the password will be required to view the page
publish_date long The date the page is to be published at in milliseconds since the unix epoch.
publish_immediately string Set this to true if you want to be published immediately when the schedule publish endpoint is called, and to ignore the publish_date setting
slug string The path of the URL on which the page will live. Changing this will change the URL.
subcategory string This is set to empty or to "landing_page" for landing pages, or to "site_page" for site pages
widget_containers string A data structure containing the data for all the modules inside the containers for this post. This will only be populated if the page has widget containers.
widgets string A data structure containing the data for all the modules for this page.