Pages endpoint

GET /channels/{channel_id}/pages/{page_path}

Get the JSON representation of a page in a Bloomreach Content channel including all the components, content items, and menus of which that page is comprised.

Hierarchical structures such as the page component hierarchy or a navigation menu are serialized in a flattened representation.

See Pages JSON Representation for a full walkthrough of the response format.

Parameters

NameDescription
channel_id

string

(path)*
Channel ID
page_path

string

(path)
Any number of path elements can be appended to the base endpoint URL to retrieve the representation for the corresponding page in a channel.

Optionally, it is possible to retrieve a partial page by specifying a component path within the page's layout structure following a delimiter ./ (see the last example below).

Examples:

- /delivery/site/v1/channels/brxsaas/pages/
- /delivery/site/v1/channels/brxsaas/pages/products/tools/
- /delivery/site/v1/channels/brxsaas/pages/articles/changing-a-tap-washer
- /delivery/site/v1/channels/brxsaas/pages/articles/changing-a-tap-washer./main
Authorization

string

(request header)
ℹ️ The Authorization header is only required for previewing a channel in the Experience manager, not for regular public consumption of the API. Preview channel authentication is built into the Bloomreach SPA SDK. Channel preview works out of the box with any SPA built using the SDK. Only SPAs not using the SDK need to implement preview authentication.

When the Experience manager requests the preview channel for the first time, it appends the external frontend application's URL with a 'query' request parameter containing a JSON Web Token. In order to access the preview channel data through a Page Delivery API request, the frontend application must include this token in the Authorization header using the Bearer schema. See Page Delivery API Preview Authentication for more details.

Mandatory in Experience manager channel preview context only

Example:

Authorization: Bearer xxxxx.yyyyy.zzzzz

As of version 20220629, this header may also contain an anonymous UUID associated with a specific project for which External preview support has been enabled. In this case, the response will contain unpublished data associated with the specific project branch that is linked to the UUID value, rather than the currently published version.

Example:

Authorization: Bearer 56e7e6ca-1f62-4ea0-97ac-548a9025e301
preview-token

string

(request parameter)
As of version 20220629, this query string style parameter is available as an alternative to the Authorization header as described above. It provides equivalent functionality and is intended to support developer use cases where it is most convenient to access the Delivery API preview response without manipulating HTTP request headers. This can be useful for simple exploratory testing with a standard web browser, for example.

Example:

/delivery/site/v1/channels/brxsaas/pages/articles/changing-a-tap-washer?preview-token=56e7e6ca-1f62-4ea0-97ac-548a9025e301
br_version_uuid

string

(request parameter)
ℹ️ The br_version_uuid request parameter is only required for viewing previous versions of a page in the Experience manager, not for regular public consumption of the API. Page version selection is built into the Bloomreach SPA SDK. Page version selection works out of the box with any SPA built using the SDK. Only SPAs not using the SDK need to implement page version selection.

When selecting a specific version from a page's version history in the Experience manager, a version identifier is passed to the frontend application in a request parameter called br_version_uuid. The frontend application must pass the br_version_uuid request parameter on to the Delivery API's Pages endpoint so that the correct version of the page is returned. The SPA SDK implements this out of the box.

Example:

br_version_uuid=ab46347b-4a47-49b8-9d57-6b229ecf9b20

Response

Code: 200
Description: OK Media type: application/json
Example:

{
   "meta":{   
      "product": "brx",
      "version":"1.0",
      "branch":"master",
      "locale": "en_US"
   },
   "links":{
      "self":{
         "href":"https://brxsaas.bloomreach.cloud/delivery/site/v1/channels/brxsaas/pages/winter-sale",
         "type":"external"
      },
      "site":{
         "href":"/winter-sale",
         "type":"internal"
      }
   },
   "channel":{
      "info":{
         "props":{
            graphql_baseurl: "https://graphql-commerce.bloomreach.io/",
            "smDomainKey":"",
            "smAccountId":"1234",
            "smEndpoint":"https://core.dxpapi.com/api/v1/core/",
            "spaUrl":"https://brx-reference-spa-20231215.netlify.app/"
         }
      }
   },
   "translations": [
      {
         "locale": "nl_NL",
         "channel": "brxsaas-nl",
         "links": {
            "site": {
               "href": "https://brxsaas.bloomreach.cloud/delivery/site/v1/channels/brxsaas-nl/winter-sale",
               "type": "external"
            },
            "self": {
               "href": "https://brxsaas.bloomreach.cloud/delivery/site/v1/channels/brxsaas-nl/pages/winter-sale",
               "type": "external"
            }
        }
      }
   ],
   "root":{
      "$ref":"/page/u6b031ebfe46f46cd9ecdf430fa952f34"
   },
   "document":{
      "$ref":"/page/u10811792bf4b42c4bbf1ab303fc5ebcf"
   },
   "page":{
      "u6b031ebfe46f46cd9ecdf430fa952f34":{
         "type":"component",
         ...
         ]
      },
      ...
      ...
      ...
      "u10811792bf4b42c4bbf1ab303fc5ebcf":{
         "type":"document",
         ...
      }
   }
}

Code: 404
Description: Not Found