younifyd
Menu

Get Node Products

Get a node's products

GET/pcm/hierarchies/{hierarchyID}/nodes/{nodeID}/products

Use it in a workflow

  1. Add a step and choose the Elastic Path connector.
  2. Pick the Get Node Products action (under PIM).
  3. Fill in the fields below, then reference the result from later steps as {{getNodeProducts.response.data}}.

Request

Path parameters

hierarchyIDstringrequired

A unique identifier for the hierarchy.

nodeIDstringrequired

A unique identifier for the node.

Query parameters

page[offset]integer (int64)

The number of records to offset the results by.

page[limit]integer (int64)

The number of records per page. The maximum limit is 100.

Response

Returns 200 with an object. Read it in later steps with {{getNodeProducts.response.data.<field>}}.

dataarray<object>
idstring

A unique product ID that is generated when you create the product.

typestring

This represents the type of resource object being returned. Always `product`.

One ofproduct

attributesobject17 fields
metaobject8 fields
relationshipsobject

Relationships are established between different product entities. For example, a `bundle` product and a `child` product are related to a `parent` product, as both are associated with it.

includedobject

Included is an array of resources that are included in the response.

main_imagesarray<object>9 fields

The main images associated with a product.

component_productsarray<object>5 fields

Returns a list of component products in a product bundle. If a bundle has no component products (in other words, is not a product bundle), an empty array is returned.

filesarray<object>9 fields

The files associated with a product.

linksobject

Links allow you to navigate between pages of results. :::caution Planned pagination changes — on or after 1 September 2026 The pagination behaviour of PIM list endpoints (for example, `GET /pcm/products` and `GET /pcm/hierarchies`) currently differs from the rest of the Elastic Path Commerce Cloud platform. We plan to align PIM pagination with the platform standard on or after **1 September 2026**. Please review the details below and check that your integration code will handle the new behaviour correctly. ::: #### Current behaviour The current pagination link behaviour in PIM has the following known issues: - The `current` link is **not returned**. - The `first` and `last` links are **not always returned**. - The `prev` link is omitted on both the first **and** second pages. It should only be omitted on the first page. - The `next` link is omitted on both the last **and** second-to-last pages. It should only be omitted on the last page. #### Planned behaviour (on or after 1 September 2026) On or after 1 September 2026, PIM list endpoints will adopt the following pagination link behaviour, aligning with the rest of the platform: - `current` — always present, pointing to the current page. - `first` — always present. - `last` — present on all pages **except the final page**. Omitting `last` on the final page is intentional, to avoid triggering infinite‑loop bugs in integration code that uses the presence of `last` to detect whether more pages remain. - `next` — present on all pages except the last page. - `prev` — present on all pages except the first page.

currentstring

A link to the current page of results. **Note:** this link is not currently returned by PIM endpoints. It will be introduced on or after 1 September 2026.

firststring

A link to the first page of results. Currently this may not always be present. After the planned changes it will always be present.

laststring

A link to the last page of results. Currently this may not always be present. After the planned changes it will be present on all pages except the final page (where it is intentionally omitted).

nextstring

A link to the next page of results. Should be absent on the last page. Currently this is incorrectly absent on the second-to-last page as well; this will be fixed on or after 1 September 2026.

prevstring

A link to the previous page of results. Should be absent on the first page. Currently this is incorrectly absent on the second page as well; this will be fixed on or after 1 September 2026.

metaobject
resultsobject1 fields

Contains the results for the entire collection.

json
{
  "data": [
    {
      "id": "string",
      "type": "product",
      "attributes": {
        "name": "string",
        "description": "string",
        "slug": "string",
        "sku": "string",
        "status": "live",
        "commodity_type": "physical",
        "upc_ean": "string",
        "mpn": "string",
        "external_ref": "string",
        "locales": {},
        "tags": [
          "string"
        ],
        "shopper_attributes": {
          "cost_of_goods": "42.0",
          "charge_type": "credit card"
        }
      },
      "meta": {
        "created_at": "2020-09-22T09:00:00.000Z",
        "updated_at": "2020-09-22T09:00:00.000Z",
        "owner": "organization",
        "variations": [
          {
            "id": "string",
            "name": "string",
            "sort_order": 0,
            "options": [
              null
            ]
          }
        ],
        "custom_relationships": [
          null
        ],
        "child_variations": [
          {
            "id": "string",
            "name": "string",
            "sort_order": 0,
            "options": [
              null
            ],
            "option": {
              "id": null,
              "name": null,
              "description": null,
              "sort_order": null
            }
          }
        ],
        "product_types": [
          "parent"
        ],
        "variation_matrix": {}
      },
      "relationships": {}
    }
  ],
  "included": {
    "main_images": [
      {
        "id": "00000000-0000-0000-0000-000000000000",
        "type": "file",
        "file_name": "file_name.jpg",
        "mime_type": "image/jpeg",
        "file_size": 36000,
        "public": true,
        "meta": {
          "timestamps": {
            "created_at": "2023-10-11T13:02:25.293Z"
          },
          "dimensions": {
            "width": 1800,
            "height": 1000
          }
        },
        "links": {
          "self": "https://useast.api.elasticpath.com/v2/files/ddc28c74-a7df-46be-b262-8fa69a6e7d52"
        },
        "link": {
          "href": "https://files-eu.epusercontent.com/e8c53cb0-120d-4ea5-8941-ce74dec06038/f8cf26b3-6d38-4275-937a-624a83994702.png",
          "meta": {
            "results": {
              "total": null
            }
          }
        }
      }
    ],
    "component_products": [
      {
        "id": "string",
        "type": "product",
        "attributes": {
          "name": "string",
          "description": "string",
          "slug": "string",
          "sku": "string",
          "status": "live",
          "commodity_type": "physical",
          "upc_ean": "string",
          "mpn": "string",
          "external_ref": "string",
          "locales": {},
          "tags": [
            "string"
          ],
          "shopper_attributes": {
            "cost_of_goods": "42.0",
            "charge_type": "credit card"
          }
        },
        "meta": {
          "created_at": "2020-09-22T09:00:00.000Z",
          "updated_at": "2020-09-22T09:00:00.000Z",
          "owner": "organization",
          "variations": [
            {
              "id": null,
              "name": null,
              "sort_order": null,
              "options": null
            }
          ],
          "custom_relationships": [
            null
          ],
          "child_variations": [
            {
              "id": null,
              "name": null,
              "sort_order": null,
              "options": null,
              "option": null
            }
          ],
          "product_types": [
            "parent"
          ],
          "variation_matrix": {}
        },
        "relationships": {}
      }
    ],
    "files": [
      {
        "id": "00000000-0000-0000-0000-000000000000",
        "type": "file",
        "file_name": "file_name.jpg",
        "mime_type": "image/jpeg",
        "file_size": 36000,
        "public": true,
        "meta": {
          "timestamps": {
            "created_at": "2023-10-11T13:02:25.293Z"
          },
          "dimensions": {
            "width": 1800,
            "height": 1000
          }
        },
        "links": {
          "self": "https://useast.api.elasticpath.com/v2/files/ddc28c74-a7df-46be-b262-8fa69a6e7d52"
        },
        "link": {
          "href": "https://files-eu.epusercontent.com/e8c53cb0-120d-4ea5-8941-ce74dec06038/f8cf26b3-6d38-4275-937a-624a83994702.png",
          "meta": {
            "results": {
              "total": null
            }
          }
        }
      }
    ]
  },
  "links": {
    "current": "/pcm/hierarchies?page[offset]=10&page[limit]=10",
    "first": "/pcm/hierarchies?page[offset]=0&page[limit]=10",
    "last": "/pcm/hierarchies?page[offset]=20&page[limit]=10",
    "next": "/pcm/hierarchies?page[offset]=10&page[limit]=10",
    "prev": "/pcm/hierarchies?page[offset]=8&page[limit]=10"
  },
  "meta": {
    "results": {
      "total": 2
    }
  }
}

Need more? See the Elastic Path guide for connection setup and behaviour shared by every action.

Was this page helpful?