Product API

Search the ABC Supply product catalog for items using different search criteria. Get product information with optional features such as same-family items and branch availability.

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

Example Request

Sample Request Payload.

GET /api/product/v1/hierarchy HTTP/1.1
Host: partners.abcsupply.com
Authorization: Bearer <TOKEN>
Expand

Response

Example Response

Sample Response Payload

{
    "pagination": {
        "itemsPerPage": 30,
        "pageNumber": 2,
        "totalPages": 277,
        "totalItems": 8297
    },
    "hierarchies": [
        {
            "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": "Babcock Roof Hatches  -  004449",
                                    "code": "4449",
                                    "label": "Babcock Roof Hatches",
                                    "description": "Babcock Roof Hatches"
                                }
                            }
                        }
                    }
                }
            }
        },
        {
            "productGroup": {
                "name": "0001  -  Steep Slope Products",
                "code": "1",
                "label": "Steep Slope Products",
                "description": "Steep Slope Products",
                "category": {
                    "name": "000013  -  Steep Slope Roofing (<gt/>2:12 Pitch)",
                    "code": "13",
                    "label": "Steep Slope Roofing (<gt/>2:12 Pitch)",
                    "description": "Steep Slope Roofing (<gt/>2:12 Pitch)",
                    "productType": {
                        "name": "000278  -  Standard Slate Roofing",
                        "code": "278",
                        "label": "Standard Slate Roofing",
                        "description": "Standard Slate Roofing",
                        "materialComposition": {
                            "name": "000096  -  Slate Roofing",
                            "code": "96",
                            "label": "Slate Roofing",
                            "description": "Slate Roofing",
                            "warranty": {
                                "name": "000729  -  Standard Slate Roofing",
                                "code": "729",
                                "label": "Standard Slate Roofing",
                                "description": "Standard Slate Roofing",
                                "brandLine": {
                                    "name": "Hilltop Slate  -  003641",
                                    "code": "3641",
                                    "label": "Hilltop Slate",
                                    "description": "Hilltop Slate"
                                }
                            }
                        }
                    }
                }
            }
        }
    ]
}
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

400

Bad Request

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

404

Object Not Found

The request returned empty or no object. Please check the object identifier.

Additional Examples

Not Applicable