Product API

Search the ABC Supply product catalog and view product information. Get product availability and key product attributes across several product hierarchies.

The Product Hierarchy endpoint returns the ABC product hierarchy. The response includes the six levels of hierarchy, with the item SKU representing the 7th level. The following is the illustration of ABC product hierarchy:

- Product Group (L1)
  - Product Category (L2)
    - Material Compostion i.e Characteristics (L3)  
      - Product Type (L4)
        - Product Warranty (L5)
          - Product Brand (L6)
Expand
Product API

Get Product Hierarchy

GET /hierarchy

Get ABC Supply product hierarchy

Authorization

OAuth 2.0 server or user token with the product.read scope.

Request

Query Parameters

Name

Type

Description

itemsPerPage

integer

The number of items to display per page.

pageNumber

integer

The page number of the results to return from the request.

Example Request

Get Product Hierarchy request

GET /api/product/v1/hierarchy?itemsPerPage=1&pageNumber=1 HTTP/1.1
Host: partners.abcsupply.com
Authorization: Bearer <TOKEN>
Expand

Response

Example Response

Get Product Hierarchy response payload

{
    "pagination": {
        "itemsPerPage": 2,
        "pageNumber": 2,
        "totalPages": 4186,
        "totalItems": 8372
    },
    "hierarchies": [
        {
            "productGroup": {
                "name": "0001  -  Steep Slope Products",
                "code": "1",
                "label": "Steep Slope Products",
                "description": "Steep Slope Products",
                "category": {
                    "name": "000007  -  Steep Slope Roofing Accessories",
                    "code": "7",
                    "label": "Steep Slope Roofing Accessories",
                    "description": "Steep Slope Roofing Accessories",
                    "productType": {
                        "name": "000168  -  Steel Roofing Accessories",
                        "code": "168",
                        "label": "Steel Roofing Accessories",
                        "description": "Steel Roofing Accessories",
                        "materialComposition": {
                            "name": "000034  -  Metal Accessories",
                            "code": "34",
                            "label": "Metal Accessories",
                            "description": "Metal Accessories",
                            "warranty": {
                                "name": "000165  -  Galvanized Steel Drip Edge",
                                "code": "165",
                                "label": "Galvanized Steel Drip Edge",
                                "description": "Galvanized Steel Drip Edge",
                                "brandLine": {
                                    "name": "Galvanized Steel Drip Edge  -  000846",
                                    "code": "846",
                                    "label": "Galvanized Steel Drip Edge",
                                    "description": "Galvanized Steel Drip Edge"
                                }
                            }
                        }
                    }
                }
            }
        },
        {
            "productGroup": {
                "name": "0007  -  Low Slope Products",
                "code": "7",
                "label": "Low Slope Products",
                "description": "Low Slope Products",
                "category": {
                    "name": "000024  -  Low Slope Roofing Accessories",
                    "code": "24",
                    "label": "Low Slope Roofing Accessories",
                    "description": "Low Slope Roofing Accessories",
                    "productType": {
                        "name": "000370  -  Roof Hatches",
                        "code": "370",
                        "label": "Roof Hatches",
                        "description": "Roof Hatches",
                        "materialComposition": {
                            "name": "000141  -  Roof Hatches",
                            "code": "141",
                            "label": "Roof Hatches",
                            "description": "Roof Hatches",
                            "warranty": {
                                "name": "000790  -  Roof Hatches",
                                "code": "790",
                                "label": "Roof Hatches",
                                "description": "Roof Hatches",
                                "brandLine": {
                                    "name": "Bilco Roof Hatches  -  004448",
                                    "code": "4448",
                                    "label": "Bilco Roof Hatches",
                                    "description": "Bilco Roof Hatches"
                                }
                            }
                        }
                    }
                }
            }
        }
    ]
}
Expand

Name

Type

Description

pagination

object

The object describing the pagination of the response.

pagination.itemsPerPage

integer

The number of items per page of the response.

pagination.pageNumber

integer

The current page number of the response.

pagination.totalPages

integer

The total number of pages in the response.

pagination.totalItems

integer

The total number of items in the response.

hierarchies

object

The object describing the product hierarchy.

hierarchies.productGroup

object

The object that describes the product hierarchy product group.

hierarchies.productGroup.name

string

The name of the product group.

hierarchies.productGroup.code

string

The code representing the product group.

hierarchies.productGroup.description

string

The description of the product group.

hierarchies.productGroup.label

string

The abbreviated description of the product group.

hierarchies.productGroup.category

object

The object that describes the category of the product group.

hierarchies.productGroup.category.name

string

The name of the product category.

hierarchies.productGroup.category.code

string

The code representing the product category.

hierarchies.productGroup.category.description

string

The description of the product category.

hierarchies.productGroup.category.label

string

The abbreviated description of the product category.

hierarchies.productGroup.category.productType

object

The object that describes the product type of the category.

hierarchies.productGroup.category.productType.name

string

The name of the product type.

hierarchies.productGroup.category.productType.code

string

The code representing the product type.

hierarchies.productGroup.category.productType.description

string

The description of the product type.

hierarchies.productGroup.category.productType.label

string

An abbreviated description of the product type.

hierarchies.productGroup.category.productType.materialComposition

object

The object that describes the material composition of the product.

hierarchies.productGroup.category.productType.materialComposition.name

string

The name of the material composition.

hierarchies.productGroup.category.productType.materialComposition.code

string

The code representing the material composition.

hierarchies.productGroup.category.productType.materialComposition.description

string

The description of the material composition.

hierarchies.productGroup.category.productType.materialComposition.label

string

An abbreviated description of the material composition.

hierarchies.productGroup.category.productType.materialComposition.warranty

object

The object that describes the warranty of the product.

hierarchies.productGroup.category.productType.materialComposition.warranty.name

string

The name of the warranty.

hierarchies.productGroup.category.productType.materialComposition.warranty.code

string

The code representing the warranty.

hierarchies.productGroup.category.productType.materialComposition.warranty.description

string

The description of the warranty.

hierarchies.productGroup.category.productType.materialComposition.warranty.label

string

An abbreviated description of the warranty.

hierarchies.productGroup.category.productType.materialComposition.brandLine

object

The object describing the brand line of the returned product.

hierarchies.productGroup.category.productType.materialComposition.brandLine.name

string

The name of the brand line.

hierarchies.productGroup.category.productType.materialComposition.brandLine.code

string

The code that represents the brand line.

hierarchies.productGroup.category.productType.materialComposition.brandLine.description

string

The description of the brand line.

hierarchies.productGroup.category.productType.materialComposition.brandLine.label

string

An abbreviated description of the brand line.

HTTP Status Codes

Name

Type

Description

200

OK

The request and response were sent successfully.

400

Bad Request

Check the Request to make sure the Request Body and Parameters are passed correctly based on the API documentation.