Get a Node
GET/catalog/nodes/:node_id
Returns a node from the catalog.
If you have multiple catalog rules defined, the rule that best matches the shoppers context is used to determine which catalog is retrieved. For information about how rules are matched, see Resolving Catalog Rules.
You can see the parent nodes a node is associated with in the bread_crumb
metadata for each node. This is useful if you want to improve how your shoppers search your store, for example. See Product and Node Associations in Breadcrumb Metadata.
The response lists the products associated with a node. If products are curated, they are displayed in curated_products
. Product curation allows you to promote specific products within each of your nodes, enabling you to create unique product collections in your storefront.
- If you don't provide any
curated_products
, products are listed by theirupdated_at
time in descending order, with the most recently updated product first. - If you configure
curated_products
for only a few products, the curated products are displayed first and the other products are displayed in the order ofupdated_at
time. - You can only curate 20 products or less. You cannot have more than 20 curated products.
- A product that is curated has the
"curated_product": true
attribute displayed. - If a curated product is removed from a node, the product is also removed from the
curated_products
list.
Request
Path Parameters
The catalog node ID.
Header Parameters
The list of channels in which this catalog can be displayed. A channel is the shopping experience, such as a mobile app or web storefront. If empty, the catalog rule matches all channels. The channel will eventually be included in the bearer token that is used for authorization, but currently, you must set the EP-Channel
header in your requests.
Product tags are used to store or assign a key word against a product. The product tag can then be used to describe or label that product. Using product tags means that you can group your products together, for example, by brand, category, subcategory, colors, types, industries, and so on. You can enhance your product list using tags, enabling you to refine your product list and run targeted promotions. Tags are used to refine the eligibility criteria for a rule. Requests populate the catalog rule tag using the EP-Context-Tag
header.
The language and locale your storefront prefers. See Accept-Language.
Responses
- 200
- default
The catalog node.
- application/json
- Schema
- Example (from schema)
Schema
- Array [
- ]
data object
A category node in a catalog. Nodes can have child nodes, as well as a list of attached products.
attributes object
Resource attributes of a catalog node.
The date and time a node was created.
The date and time a node was published in a catalog.
A description of a node.
The name of a node. Names must be unique among sibling nodes in a hierarchy. Otherwise, a name can be non-unique within the hierarchy and across multiple hierarchies.
A slug for the node. Slugs must be unique among sibling nodes in the hierarchy. Otherwise, a slug can be non-unique within the hierarchy and across multiple hierarchies.
A list of curated products for a node. You can curate your products in your nodes product lists. Product curation allows you to promote specific products within each node in a hierarchy, enabling you to create unique product collections in your storefront.
The date and time a node was updated.
The unique identifier of a node.
relationships object
Relationships to parent and child nodes, and products.
products object
A URL to all products associated with a node.
data object[]
A unique identifier for a product.
Possible values: [product
]
This represents the type of object being returned. Always product
.
links object
A URL to a related object, for example, catalog rules, hierarchies, price books, products and deltas.
A URL to a related object, for example, catalog rules, hierarchies, price books, products and deltas.
children object
A URL to all child nodes associated with a node.
links objectrequired
A URL to a related object, for example, catalog rules, hierarchies, price books, products and deltas.
A URL to a related object, for example, catalog rules, hierarchies, price books, products and deltas.
parent object
A URL to all parent nodes associated with a node.
data objectrequired
Possible values: [node
]
links object
A URL to a related object, for example, catalog rules, hierarchies, price books, products and deltas.
A URL to a related object, for example, catalog rules, hierarchies, price books, products and deltas.
hierarchy object
A URL to the hierarchies associated with a node.
data objectrequired
Possible values: [hierarchy
]
links object
A URL to a related object, for example, catalog rules, hierarchies, price books, products and deltas.
A URL to a related object, for example, catalog rules, hierarchies, price books, products and deltas.
This represents the type of object being returned. Always node
.
meta object
A node's metadata.
The node details localized in the supported languages.
Helps you understand the association of products with nodes. It explains how products are associated with parent nodes and the relationship among the array of nodes. This is useful if you want to improve how your shoppers search within you store.
links object
Links allow you to move between requests.
Single entities use a self
parameter with a link the specific resource.
Always the first page.
This is null
if there is only one page.
This is null
if there is only one page.
This is null
if there is only one page.
{
"data": {
"attributes": {
"created_at": "1970-01-01T00:00:00.000",
"published_at": "1970-01-01T00:00:00.000",
"description": "Formal dresswear",
"label": "category",
"name": "Formal dresswear",
"slug": "formal",
"curated_products": [
"8dbb35b2-ef04-477e-974d-e5f3abe6faae"
],
"status": "live",
"updated_at": "1970-01-01T00:00:00.000"
},
"id": "e871df93-c769-49a9-9394-a6fd555b8e8a",
"relationships": {
"products": {
"data": [
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"type": "product"
}
],
"links": {
"related": "string"
}
},
"children": {
"links": {
"related": "string"
}
},
"parent": {
"data": {
"type": "node",
"id": "8fccaa19-dba9-4621-8d11-31a222a68c7c"
},
"links": {
"related": "string"
}
},
"hierarchy": {
"data": {
"type": "hierarchy",
"id": "8fccaa19-dba9-4621-8d11-31a222a68c7c"
},
"links": {
"related": "string"
}
}
},
"type": "node",
"meta": {
"language": "en-GB",
"bread_crumb": [
"8dbb35b2-ef04-477e-974d-e5f3abe6faae"
]
}
},
"links": {
"self": "string",
"first": "string",
"last": "string",
"prev": "string",
"next": "string"
}
}
The unexpected error.
- application/json
- Schema
- Example (from schema)
Schema
- Array [
- ]
errors object[]
{
"errors": [
{
"detail": "not processable",
"status": "422",
"title": "There was a problem processing your request."
}
]
}