In short. Use channel_id to inspect BigCommerce channel SEO settings and read null fields as inherited global values.
Definition: An agency can inspect BigCommerce's storefront SEO response for a selected channel. When a channel-level response returns
nullfor a field, BigCommerce documents that the field has no channel override and inherits the global value.
Key facts
- BigCommerce's Get Storefront SEO Settings reference says the endpoint returns SEO settings.
- The optional
channel_idquery parameter requests channel-specific settings. Omitting it selects the global settings only. - In a channel-level response,
nullmeans that the particular field has not been overridden and its value is inherited from the global level. - The SEO settings object contains
meta_description,meta_keywords,page_title, andwww_redirectfields. The documentedwww_redirectvalues arewww,no-www, andnone. - BigCommerce's Update Storefront SEO Settings reference says that supplying
nulldeletes a channel override and makes the field inherit the global value. - BigCommerce's multi-storefront overview describes the settings API as supporting global and per-channel configuration.
How does channel_id select the setting scope?
The GET endpoint uses channel_id as an optional query parameter. A request with the parameter asks for the selected channel's settings, so the response can expose which fields have channel-level overrides. A request without the parameter interacts with global settings only.
GET https://api.bigcommerce.com/stores/{store_hash}/v3/settings/storefront/seo?channel_id={channel_id}
Accept: application/json
X-Auth-Token: {access_token}
The multi-storefront overview says that the REST Management API settings feature lets an app read and write important configuration elements globally and per channel. The selected identifier therefore defines the scope of the SEO inspection.
How does an agency read inheritance from the response?
Read each property separately. A string such as page_title or meta_description is a channel-level value when the channel request returns that value. A null property is BigCommerce's documented marker that the channel has no override for that property and inherits the global setting. The response's data object contains the SEO settings, and its meta object contains response metadata.
The fields are independent. One channel response can therefore contain a channel value for one SEO property and null for another. The API reference lists meta_description, meta_keywords, page_title, and www_redirect as the properties of SEOSettings.
How do you clear a channel override?
The update reference uses the same optional channel_id query parameter for channel-specific writes. With that parameter present, supply null for the field whose override should be removed. BigCommerce documents this operation as deleting the override for that channel and restoring inheritance from the global level.
PUT https://api.bigcommerce.com/stores/{store_hash}/v3/settings/storefront/seo?channel_id={channel_id}
Content-Type: application/json
Accept: application/json
X-Auth-Token: {access_token}
{
"meta_description": null,
"meta_keywords": null,
"page_title": null,
"www_redirect": null
}
The update reference also documents channel_id in the request body for a headless channel when controlling www_redirect for that channel's unique checkout URL. That case is separate from the query parameter used to select channel-specific settings.
What should the agency record?
BigCommerce defines a channel as a place where a merchant sells products. Its overview says each store is provisioned with one channel for its first Stencil storefront, and that channel has ID 1 for all BigCommerce stores. For an audit, record the requested channel identifier and the raw value of each SEO field. Mark a returned null as inherited, and retain the returned string or enum value as a channel-level setting.
Related terms
- How do I edit a Shopify page's search listing?
- How do I set default meta tags in Drupal's Metatag module?
- Where do I edit Squarespace page SEO descriptions?
FAQ
What does omitting channel_id return?
It selects the global SEO settings only. Add channel_id when you need the response for a particular channel.
What does a null SEO field mean?
In a channel-level response, it identifies a field without a channel override. BigCommerce says the field inherits the global value.
How can you restore inheritance for one field?
Send null for that field to the update endpoint while selecting the channel with channel_id. The update documentation describes null as the value that deletes the channel override.
Sources
- BigCommerce, "Get Storefront SEO Settings", undated
- BigCommerce, "Update Storefront SEO Settings", undated
- BigCommerce, "Introduction to Multi-Storefront", undated
Check how a page reads to answer engines. Open the GEO score analyzer