Class: HubSpotSDK::Resources::Cms::Pages::WebsitePages

Inherits:
Object
  • Object
show all
Defined in:
lib/hubspot_sdk/resources/cms/pages/website_pages.rb

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ WebsitePages

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of WebsitePages.

Parameters:



657
658
659
# File 'lib/hubspot_sdk/resources/cms/pages/website_pages.rb', line 657

def initialize(client:)
  @client = client
end

Instance Method Details

#clone_(id:, clone_name: nil, request_options: {}) ⇒ HubSpotSDK::Models::Cms::PageData

Create a copy of an existing website page.

Parameters:

  • id (String)

    ID of the object to be cloned.

  • clone_name (String)

    Name of the cloned object.

  • request_options (HubSpotSDK::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



387
388
389
390
391
392
393
394
395
396
397
# File 'lib/hubspot_sdk/resources/cms/pages/website_pages.rb', line 387

def clone_(params)
  parsed, options = HubSpotSDK::Cms::Pages::WebsitePageCloneParams.dump_request(params)
  @client.request(
    method: :post,
    path: "cms/pages/2026-03/site-pages/clone",
    headers: {"content-type" => "*/*"},
    body: parsed,
    model: HubSpotSDK::Cms::PageData,
    options: options
  )
end

#create(id:, ab_status:, ab_test_id:, archived_at:, archived_in_dashboard:, attached_stylesheets:, author_name:, campaign:, category_id:, content_group_id:, content_type_category:, created:, created_by_id:, currently_published:, current_state:, domain:, dynamic_page_data_source_id:, dynamic_page_data_source_type:, dynamic_page_hub_db_table_id:, enable_domain_stylesheets:, enable_layout_stylesheets:, featured_image:, featured_image_alt_text:, folder_id:, footer_html:, head_html:, html_title:, include_default_custom_css:, language:, layout_sections:, link_rel_canonical_url:, mab_experiment_id:, meta_description:, name:, page_expiry_date:, page_expiry_enabled:, page_expiry_redirect_id:, page_expiry_redirect_url:, page_redirected:, password:, public_access_rules:, public_access_rules_enabled:, publish_date:, publish_immediately:, slug:, state:, subcategory:, template_path:, theme_settings_values:, translated_from_id:, translations:, updated:, updated_by_id:, url:, use_featured_image:, widget_containers:, widgets:, request_options: {}) ⇒ HubSpotSDK::Models::Cms::PageData

Some parameter documentations has been truncated, see Models::Cms::Pages::WebsitePageCreateParams for more details.

Create a new website page.

Parameters:

  • id (String)

    The unique ID of the page.

  • ab_status (Symbol, HubSpotSDK::Models::Cms::PageData::AbStatus)

    The status of the AB test associated with this page, if applicable

  • ab_test_id (String)

    The ID of the AB test associated with this page, if applicable

  • archived_at (Time)

    The timestamp (ISO8601 format) when this page was deleted.

  • archived_in_dashboard (Boolean)

    If True, the page will not show up in your dashboard, although the page could st

  • attached_stylesheets (Array<Hash{Symbol=>Object}>)

    List of stylesheets to attach to this page. These stylesheets are attached to ju

  • author_name (String)

    The name of the user that updated this page.

  • campaign (String)

    The GUID of the marketing campaign this page is a part of.

  • category_id (Integer)

    ID of the type of object this is. Should always .

  • content_group_id (String)

    The unique identifier for the content group associated with the page.

  • content_type_category (Symbol, HubSpotSDK::Models::Cms::PageData::ContentTypeCategory)

    An ENUM descibing the type of this object. Should be either LANDING_PAGE or SITE

  • created (Time)

    The timestamp indicating when the page was created.

  • created_by_id (String)

    The ID of the user that created this page.

  • currently_published (Boolean)

    Indicates whether the page is currently published.

  • current_state (Symbol, HubSpotSDK::Models::Cms::PageData::CurrentState)

    A generated ENUM descibing the current state of this page.

  • domain (String)

    The domain this page will resolve to. If null, the page will default to the prim

  • dynamic_page_data_source_id (String)

    The identifier for the data source used by the dynamic page.

  • dynamic_page_data_source_type (Integer)

    The type of data source used by the dynamic page.

  • dynamic_page_hub_db_table_id (String)

    The ID of the HubDB table this page references, if applicable

  • enable_domain_stylesheets (Boolean)

    Boolean to determine whether or not the styles from the template should be appli

  • enable_layout_stylesheets (Boolean)

    Boolean to determine whether or not the styles from the template should be appli

  • featured_image (String)

    The featuredImage of this page.

  • featured_image_alt_text (String)

    Alt Text of the featuredImage.

  • folder_id (String)

    The ID of the associated folder this landing page is organized under in the app

  • footer_html (String)

    Custom HTML for embed codes, javascript that should be placed before the </body>

  • head_html (String)

    Custom HTML for embed codes, javascript, etc. that goes in the <head> tag of the

  • html_title (String)

    The html title of this page.

  • include_default_custom_css (Boolean)

    Boolean to determine whether or not the Primary CSS Files should be applied.

  • language (Symbol, HubSpotSDK::Models::Cms::PageData::Language)

    The explicitly defined ISO 639 language code of the page. If null, the page will

  • layout_sections (Hash{Symbol=>HubSpotSDK::Models::Cms::LayoutSection})

    A structure detailing the layout sections of the page.

  • link_rel_canonical_url (String)

    Optional override to set the URL to be used in the rel=canonical link tag on the

  • mab_experiment_id (String)

    The ID of the MAB test (or dynamic test) associated with this page, if applicabl

  • meta_description (String)

    A description that goes in <meta> tag on the page.

  • name (String)

    The internal name of the page.

  • page_expiry_date (Integer)

    The date at which this page should expire and begin redirecting to another url o

  • page_expiry_enabled (Boolean)

    Boolean describing if the page expiration feature is enabled for this page

  • page_expiry_redirect_id (Integer)

    The ID of another page this page’s url should redirect to once this page expires

  • page_expiry_redirect_url (String)

    The URL this page’s url should redirect to once this page expires. Should only s

  • page_redirected (Boolean)

    A generated Boolean describing whether or not this page is currently expired and

  • password (String)

    Set this to create a password protected page. Entering the password will be requ

  • public_access_rules (Array<Object>)

    Rules for require member registration to access private content.

  • public_access_rules_enabled (Boolean)

    Boolean to determine whether or not to respect publicAccessRules.

  • publish_date (Time)

    The date (ISO8601 format) the page is to be published at.

  • publish_immediately (Boolean)

    Set this to true if you want to be published immediately when the schedule publi

  • slug (String)

    The path of the this page. This field is appended to the domain to construct the

  • state (String)

    An ENUM descibing the current state of this page.

  • subcategory (String)

    Details the type of page this is. Should always be landing_page or site_page

  • template_path (String)

    String detailing the path of the template used for this page.

  • theme_settings_values (Hash{Symbol=>Object})

    A collection of settings specific to the theme applied to the page.

  • translated_from_id (String)

    ID of the primary page this object was translated from.

  • translations (Hash{Symbol=>HubSpotSDK::Models::Cms::ContentLanguageVariation})

    A map of translations for the page, each associated with a specific language var

  • updated (Time)

    The timestamp indicating when the page was last updated.

  • updated_by_id (String)

    The ID of the user that updated this page.

  • url (String)

    A generated field representing the URL of this page.

  • use_featured_image (Boolean)

    Boolean to determine if this page should use a featuredImage.

  • widget_containers (Hash{Symbol=>Object})

    A data structure containing the data for all the modules inside the containers f

  • widgets (Hash{Symbol=>Object})

    A data structure containing the data for all the modules for this page.

  • request_options (HubSpotSDK::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



134
135
136
137
138
139
140
141
142
143
144
# File 'lib/hubspot_sdk/resources/cms/pages/website_pages.rb', line 134

def create(params)
  parsed, options = HubSpotSDK::Cms::Pages::WebsitePageCreateParams.dump_request(params)
  @client.request(
    method: :post,
    path: "cms/pages/2026-03/site-pages",
    headers: {"content-type" => "*/*"},
    body: parsed,
    model: HubSpotSDK::Cms::PageData,
    options: options
  )
end

#delete(object_id_, archived: nil, request_options: {}) ⇒ nil

Delete a website page, specified by its ID.

Parameters:

  • object_id_ (String)
  • archived (Boolean)

    Whether to return only results that have been archived.

  • request_options (HubSpotSDK::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

  • (nil)

See Also:



362
363
364
365
366
367
368
369
370
371
372
# File 'lib/hubspot_sdk/resources/cms/pages/website_pages.rb', line 362

def delete(object_id_, params = {})
  parsed, options = HubSpotSDK::Cms::Pages::WebsitePageDeleteParams.dump_request(params)
  query = HubSpotSDK::Internal::Util.encode_query_params(parsed)
  @client.request(
    method: :delete,
    path: ["cms/pages/2026-03/site-pages/%1$s", object_id_],
    query: query,
    model: NilClass,
    options: options
  )
end

#get(object_id_, archived: nil, property: nil, request_options: {}) ⇒ HubSpotSDK::Models::Cms::PageData

Retrieve a website page by its ID.

Parameters:

  • object_id_ (String)
  • archived (Boolean)

    Whether to return only results that have been archived.

  • property (String)
  • request_options (HubSpotSDK::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



414
415
416
417
418
419
420
421
422
423
424
# File 'lib/hubspot_sdk/resources/cms/pages/website_pages.rb', line 414

def get(object_id_, params = {})
  parsed, options = HubSpotSDK::Cms::Pages::WebsitePageGetParams.dump_request(params)
  query = HubSpotSDK::Internal::Util.encode_query_params(parsed)
  @client.request(
    method: :get,
    path: ["cms/pages/2026-03/site-pages/%1$s", object_id_],
    query: query,
    model: HubSpotSDK::Cms::PageData,
    options: options
  )
end

#get_draft(object_id_, request_options: {}) ⇒ HubSpotSDK::Models::Cms::PageData

Retrieve the full draft version of a website page, specified by its ID.

Parameters:

Returns:

See Also:



436
437
438
439
440
441
442
443
# File 'lib/hubspot_sdk/resources/cms/pages/website_pages.rb', line 436

def get_draft(object_id_, params = {})
  @client.request(
    method: :get,
    path: ["cms/pages/2026-03/site-pages/%1$s/draft", object_id_],
    model: HubSpotSDK::Cms::PageData,
    options: params[:request_options]
  )
end

#list(after: nil, archived: nil, created_after: nil, created_at: nil, created_before: nil, limit: nil, property: nil, sort: nil, updated_after: nil, updated_at: nil, updated_before: nil, request_options: {}) ⇒ HubSpotSDK::Internal::Page<HubSpotSDK::Models::Cms::PageData>

Some parameter documentations has been truncated, see Models::Cms::Pages::WebsitePageListParams for more details.

Retrieve all website pages. Supports paging and filtering. This method would be useful for an integration that examined these models and used an external service to suggest edits.

Parameters:

  • after (String)

    The paging cursor token of the last successfully read resource will be returned

  • archived (Boolean)

    Whether to return only results that have been archived.

  • created_after (Time)
  • created_at (Time)
  • created_before (Time)
  • limit (Integer)

    The maximum number of results to display per page.

  • property (String)
  • sort (Array<String>)
  • updated_after (Time)
  • updated_at (Time)
  • updated_before (Time)
  • request_options (HubSpotSDK::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
# File 'lib/hubspot_sdk/resources/cms/pages/website_pages.rb', line 329

def list(params = {})
  parsed, options = HubSpotSDK::Cms::Pages::WebsitePageListParams.dump_request(params)
  query = HubSpotSDK::Internal::Util.encode_query_params(parsed)
  @client.request(
    method: :get,
    path: "cms/pages/2026-03/site-pages",
    query: query.transform_keys(
      created_after: "createdAfter",
      created_at: "createdAt",
      created_before: "createdBefore",
      updated_after: "updatedAfter",
      updated_at: "updatedAt",
      updated_before: "updatedBefore"
    ),
    page: HubSpotSDK::Internal::Page,
    model: HubSpotSDK::Cms::PageData,
    options: options
  )
end

#publish_draft(object_id_, request_options: {}) ⇒ nil

Take any changes from the draft version of the website page and apply them to the live version.

Parameters:

Returns:

  • (nil)

See Also:



456
457
458
459
460
461
462
463
# File 'lib/hubspot_sdk/resources/cms/pages/website_pages.rb', line 456

def publish_draft(object_id_, params = {})
  @client.request(
    method: :post,
    path: ["cms/pages/2026-03/site-pages/%1$s/draft/push-live", object_id_],
    model: NilClass,
    options: params[:request_options]
  )
end

#schedule(id:, publish_date:, request_options: {}) ⇒ nil

Schedule a website page to published at a future time.

Parameters:

  • id (String)

    The ID of the object to be scheduled.

  • publish_date (Time)

    The date the object should transition from scheduled to published.

  • request_options (HubSpotSDK::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

  • (nil)

See Also:



478
479
480
481
482
483
484
485
486
487
488
# File 'lib/hubspot_sdk/resources/cms/pages/website_pages.rb', line 478

def schedule(params)
  parsed, options = HubSpotSDK::Cms::Pages::WebsitePageScheduleParams.dump_request(params)
  @client.request(
    method: :post,
    path: "cms/pages/2026-03/site-pages/schedule",
    headers: {"content-type" => "*/*"},
    body: parsed,
    model: NilClass,
    options: options
  )
end

#set_new_lang_primary(id:, request_options: {}) ⇒ nil

Set a landing page as the primary language of a multi-language group.

Parameters:

  • id (String)

    ID of object to set as primary in multi-language group.

  • request_options (HubSpotSDK::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

  • (nil)

See Also:



501
502
503
504
505
506
507
508
509
510
511
# File 'lib/hubspot_sdk/resources/cms/pages/website_pages.rb', line 501

def set_new_lang_primary(params)
  parsed, options = HubSpotSDK::Cms::Pages::WebsitePageSetNewLangPrimaryParams.dump_request(params)
  @client.request(
    method: :put,
    path: "cms/pages/2026-03/landing-pages/multi-language/set-new-lang-primary",
    headers: {"content-type" => "*/*"},
    body: parsed,
    model: NilClass,
    options: options
  )
end

#update(object_id_, id:, ab_status:, ab_test_id:, archived_at:, archived_in_dashboard:, attached_stylesheets:, author_name:, campaign:, category_id:, content_group_id:, content_type_category:, created:, created_by_id:, currently_published:, current_state:, domain:, dynamic_page_data_source_id:, dynamic_page_data_source_type:, dynamic_page_hub_db_table_id:, enable_domain_stylesheets:, enable_layout_stylesheets:, featured_image:, featured_image_alt_text:, folder_id:, footer_html:, head_html:, html_title:, include_default_custom_css:, language:, layout_sections:, link_rel_canonical_url:, mab_experiment_id:, meta_description:, name:, page_expiry_date:, page_expiry_enabled:, page_expiry_redirect_id:, page_expiry_redirect_url:, page_redirected:, password:, public_access_rules:, public_access_rules_enabled:, publish_date:, publish_immediately:, slug:, state:, subcategory:, template_path:, theme_settings_values:, translated_from_id:, translations:, updated:, updated_by_id:, url:, use_featured_image:, widget_containers:, widgets:, archived: nil, request_options: {}) ⇒ HubSpotSDK::Models::Cms::PageData

Some parameter documentations has been truncated, see Models::Cms::Pages::WebsitePageUpdateParams for more details.

Partially updates a single website page, specified by its ID. You only need to specify the column values that you are modifying.

LANDING_

Parameters:

  • object_id_ (String)

    Path param

  • id (String)

    Body param: The unique ID of the page.

  • ab_status (Symbol, HubSpotSDK::Models::Cms::PageData::AbStatus)

    Body param: The status of the AB test associated with this page, if applicable

  • ab_test_id (String)

    Body param: The ID of the AB test associated with this page, if applicable

  • archived_at (Time)

    Body param: The timestamp (ISO8601 format) when this page was deleted.

  • archived_in_dashboard (Boolean)

    Body param: If True, the page will not show up in your dashboard, although the p

  • attached_stylesheets (Array<Hash{Symbol=>Object}>)

    Body param: List of stylesheets to attach to this page. These stylesheets are at

  • author_name (String)

    Body param: The name of the user that updated this page.

  • campaign (String)

    Body param: The GUID of the marketing campaign this page is a part of.

  • category_id (Integer)

    Body param: ID of the type of object this is. Should always .

  • content_group_id (String)

    Body param: The unique identifier for the content group associated with the page

  • content_type_category (Symbol, HubSpotSDK::Models::Cms::PageData::ContentTypeCategory)

    Body param: An ENUM descibing the type of this object. Should be either

  • created (Time)

    Body param: The timestamp indicating when the page was created.

  • created_by_id (String)

    Body param: The ID of the user that created this page.

  • currently_published (Boolean)

    Body param: Indicates whether the page is currently published.

  • current_state (Symbol, HubSpotSDK::Models::Cms::PageData::CurrentState)

    Body param: A generated ENUM descibing the current state of this page.

  • domain (String)

    Body param: The domain this page will resolve to. If null, the page will default

  • dynamic_page_data_source_id (String)

    Body param: The identifier for the data source used by the dynamic page.

  • dynamic_page_data_source_type (Integer)

    Body param: The type of data source used by the dynamic page.

  • dynamic_page_hub_db_table_id (String)

    Body param: The ID of the HubDB table this page references, if applicable

  • enable_domain_stylesheets (Boolean)

    Body param: Boolean to determine whether or not the styles from the template sho

  • enable_layout_stylesheets (Boolean)

    Body param: Boolean to determine whether or not the styles from the template sho

  • featured_image (String)

    Body param: The featuredImage of this page.

  • featured_image_alt_text (String)

    Body param: Alt Text of the featuredImage.

  • folder_id (String)

    Body param: The ID of the associated folder this landing page is organized under

  • footer_html (String)

    Body param: Custom HTML for embed codes, javascript that should be placed before

  • head_html (String)

    Body param: Custom HTML for embed codes, javascript, etc. that goes in the <head

  • html_title (String)

    Body param: The html title of this page.

  • include_default_custom_css (Boolean)

    Body param: Boolean to determine whether or not the Primary CSS Files should be

  • language (Symbol, HubSpotSDK::Models::Cms::PageData::Language)

    Body param: The explicitly defined ISO 639 language code of the page. If null, t

  • layout_sections (Hash{Symbol=>HubSpotSDK::Models::Cms::LayoutSection})

    Body param: A structure detailing the layout sections of the page.

  • link_rel_canonical_url (String)

    Body param: Optional override to set the URL to be used in the rel=canonical lin

  • mab_experiment_id (String)

    Body param: The ID of the MAB test (or dynamic test) associated with this page,

  • meta_description (String)

    Body param: A description that goes in <meta> tag on the page.

  • name (String)

    Body param: The internal name of the page.

  • page_expiry_date (Integer)

    Body param: The date at which this page should expire and begin redirecting to a

  • page_expiry_enabled (Boolean)

    Body param: Boolean describing if the page expiration feature is enabled for thi

  • page_expiry_redirect_id (Integer)

    Body param: The ID of another page this page’s url should redirect to once this

  • page_expiry_redirect_url (String)

    Body param: The URL this page’s url should redirect to once this page expires. S

  • page_redirected (Boolean)

    Body param: A generated Boolean describing whether or not this page is currently

  • password (String)

    Body param: Set this to create a password protected page. Entering the password

  • public_access_rules (Array<Object>)

    Body param: Rules for require member registration to access private content.

  • public_access_rules_enabled (Boolean)

    Body param: Boolean to determine whether or not to respect publicAccessRules.

  • publish_date (Time)

    Body param: The date (ISO8601 format) the page is to be published at.

  • publish_immediately (Boolean)

    Body param: Set this to true if you want to be published immediately when the sc

  • slug (String)

    Body param: The path of the this page. This field is appended to the domain to c

  • state (String)

    Body param: An ENUM descibing the current state of this page.

  • subcategory (String)

    Body param: Details the type of page this is. Should always be landing_page or s

  • template_path (String)

    Body param: String detailing the path of the template used for this page.

  • theme_settings_values (Hash{Symbol=>Object})

    Body param: A collection of settings specific to the theme applied to the page.

  • translated_from_id (String)

    Body param: ID of the primary page this object was translated from.

  • translations (Hash{Symbol=>HubSpotSDK::Models::Cms::ContentLanguageVariation})

    Body param: A map of translations for the page, each associated with a specific

  • updated (Time)

    Body param: The timestamp indicating when the page was last updated.

  • updated_by_id (String)

    Body param: The ID of the user that updated this page.

  • url (String)

    Body param: A generated field representing the URL of this page.

  • use_featured_image (Boolean)

    Body param: Boolean to determine if this page should use a featuredImage.

  • widget_containers (Hash{Symbol=>Object})

    Body param: A data structure containing the data for all the modules inside the

  • widgets (Hash{Symbol=>Object})

    Body param: A data structure containing the data for all the modules for this pa

  • archived (Boolean)

    Query param: Whether to return only results that have been archived.

  • request_options (HubSpotSDK::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



278
279
280
281
282
283
284
285
286
287
288
289
290
291
# File 'lib/hubspot_sdk/resources/cms/pages/website_pages.rb', line 278

def update(object_id_, params)
  query_params = [:archived]
  parsed, options = HubSpotSDK::Cms::Pages::WebsitePageUpdateParams.dump_request(params)
  query = HubSpotSDK::Internal::Util.encode_query_params(parsed.slice(*query_params))
  @client.request(
    method: :patch,
    path: ["cms/pages/2026-03/site-pages/%1$s", object_id_],
    query: query,
    headers: {"content-type" => "*/*"},
    body: parsed.except(*query_params),
    model: HubSpotSDK::Cms::PageData,
    options: options
  )
end

#update_draft(object_id_, id:, ab_status:, ab_test_id:, archived_at:, archived_in_dashboard:, attached_stylesheets:, author_name:, campaign:, category_id:, content_group_id:, content_type_category:, created:, created_by_id:, currently_published:, current_state:, domain:, dynamic_page_data_source_id:, dynamic_page_data_source_type:, dynamic_page_hub_db_table_id:, enable_domain_stylesheets:, enable_layout_stylesheets:, featured_image:, featured_image_alt_text:, folder_id:, footer_html:, head_html:, html_title:, include_default_custom_css:, language:, layout_sections:, link_rel_canonical_url:, mab_experiment_id:, meta_description:, name:, page_expiry_date:, page_expiry_enabled:, page_expiry_redirect_id:, page_expiry_redirect_url:, page_redirected:, password:, public_access_rules:, public_access_rules_enabled:, publish_date:, publish_immediately:, slug:, state:, subcategory:, template_path:, theme_settings_values:, translated_from_id:, translations:, updated:, updated_by_id:, url:, use_featured_image:, widget_containers:, widgets:, request_options: {}) ⇒ HubSpotSDK::Models::Cms::PageData

Some parameter documentations has been truncated, see Models::Cms::Pages::WebsitePageUpdateDraftParams for more details.

Partially update the draft version of a website page, specified by page ID. You only need to specify the values for the details that you’re modifying.

Parameters:

  • object_id_ (String)
  • id (String)

    The unique ID of the page.

  • ab_status (Symbol, HubSpotSDK::Models::Cms::PageData::AbStatus)

    The status of the AB test associated with this page, if applicable

  • ab_test_id (String)

    The ID of the AB test associated with this page, if applicable

  • archived_at (Time)

    The timestamp (ISO8601 format) when this page was deleted.

  • archived_in_dashboard (Boolean)

    If True, the page will not show up in your dashboard, although the page could st

  • attached_stylesheets (Array<Hash{Symbol=>Object}>)

    List of stylesheets to attach to this page. These stylesheets are attached to ju

  • author_name (String)

    The name of the user that updated this page.

  • campaign (String)

    The GUID of the marketing campaign this page is a part of.

  • category_id (Integer)

    ID of the type of object this is. Should always .

  • content_group_id (String)

    The unique identifier for the content group associated with the page.

  • content_type_category (Symbol, HubSpotSDK::Models::Cms::PageData::ContentTypeCategory)

    An ENUM descibing the type of this object. Should be either LANDING_PAGE or SITE

  • created (Time)

    The timestamp indicating when the page was created.

  • created_by_id (String)

    The ID of the user that created this page.

  • currently_published (Boolean)

    Indicates whether the page is currently published.

  • current_state (Symbol, HubSpotSDK::Models::Cms::PageData::CurrentState)

    A generated ENUM descibing the current state of this page.

  • domain (String)

    The domain this page will resolve to. If null, the page will default to the prim

  • dynamic_page_data_source_id (String)

    The identifier for the data source used by the dynamic page.

  • dynamic_page_data_source_type (Integer)

    The type of data source used by the dynamic page.

  • dynamic_page_hub_db_table_id (String)

    The ID of the HubDB table this page references, if applicable

  • enable_domain_stylesheets (Boolean)

    Boolean to determine whether or not the styles from the template should be appli

  • enable_layout_stylesheets (Boolean)

    Boolean to determine whether or not the styles from the template should be appli

  • featured_image (String)

    The featuredImage of this page.

  • featured_image_alt_text (String)

    Alt Text of the featuredImage.

  • folder_id (String)

    The ID of the associated folder this landing page is organized under in the app

  • footer_html (String)

    Custom HTML for embed codes, javascript that should be placed before the </body>

  • head_html (String)

    Custom HTML for embed codes, javascript, etc. that goes in the <head> tag of the

  • html_title (String)

    The html title of this page.

  • include_default_custom_css (Boolean)

    Boolean to determine whether or not the Primary CSS Files should be applied.

  • language (Symbol, HubSpotSDK::Models::Cms::PageData::Language)

    The explicitly defined ISO 639 language code of the page. If null, the page will

  • layout_sections (Hash{Symbol=>HubSpotSDK::Models::Cms::LayoutSection})

    A structure detailing the layout sections of the page.

  • link_rel_canonical_url (String)

    Optional override to set the URL to be used in the rel=canonical link tag on the

  • mab_experiment_id (String)

    The ID of the MAB test (or dynamic test) associated with this page, if applicabl

  • meta_description (String)

    A description that goes in <meta> tag on the page.

  • name (String)

    The internal name of the page.

  • page_expiry_date (Integer)

    The date at which this page should expire and begin redirecting to another url o

  • page_expiry_enabled (Boolean)

    Boolean describing if the page expiration feature is enabled for this page

  • page_expiry_redirect_id (Integer)

    The ID of another page this page’s url should redirect to once this page expires

  • page_expiry_redirect_url (String)

    The URL this page’s url should redirect to once this page expires. Should only s

  • page_redirected (Boolean)

    A generated Boolean describing whether or not this page is currently expired and

  • password (String)

    Set this to create a password protected page. Entering the password will be requ

  • public_access_rules (Array<Object>)

    Rules for require member registration to access private content.

  • public_access_rules_enabled (Boolean)

    Boolean to determine whether or not to respect publicAccessRules.

  • publish_date (Time)

    The date (ISO8601 format) the page is to be published at.

  • publish_immediately (Boolean)

    Set this to true if you want to be published immediately when the schedule publi

  • slug (String)

    The path of the this page. This field is appended to the domain to construct the

  • state (String)

    An ENUM descibing the current state of this page.

  • subcategory (String)

    Details the type of page this is. Should always be landing_page or site_page

  • template_path (String)

    String detailing the path of the template used for this page.

  • theme_settings_values (Hash{Symbol=>Object})

    A collection of settings specific to the theme applied to the page.

  • translated_from_id (String)

    ID of the primary page this object was translated from.

  • translations (Hash{Symbol=>HubSpotSDK::Models::Cms::ContentLanguageVariation})

    A map of translations for the page, each associated with a specific language var

  • updated (Time)

    The timestamp indicating when the page was last updated.

  • updated_by_id (String)

    The ID of the user that updated this page.

  • url (String)

    A generated field representing the URL of this page.

  • use_featured_image (Boolean)

    Boolean to determine if this page should use a featuredImage.

  • widget_containers (Hash{Symbol=>Object})

    A data structure containing the data for all the modules inside the containers f

  • widgets (Hash{Symbol=>Object})

    A data structure containing the data for all the modules for this page.

  • request_options (HubSpotSDK::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



642
643
644
645
646
647
648
649
650
651
652
# File 'lib/hubspot_sdk/resources/cms/pages/website_pages.rb', line 642

def update_draft(object_id_, params)
  parsed, options = HubSpotSDK::Cms::Pages::WebsitePageUpdateDraftParams.dump_request(params)
  @client.request(
    method: :patch,
    path: ["cms/pages/2026-03/site-pages/%1$s/draft", object_id_],
    headers: {"content-type" => "*/*"},
    body: parsed,
    model: HubSpotSDK::Cms::PageData,
    options: options
  )
end