CategoriesFindForProduct Endpoint

Overview

When working with a product, it might be convenient to list or parse the categories it has to display them or change the display based upon them.  This endpoint allows you to find all of the categories in your store that are applied to a product.

Requirements

The following pre-requisites will be necessary to accomplish the goals of this article:

  • General understanding of REST and API’s
  • Understanding of C# and/or JavaScript
  • Visual Studio 2012 or newer

Getting Started

You should already have a project open and ready to accept code to allow you to use this REST API endpoint.  You should also have one or more categories and products created so that you can successfully find some categories based upon the product.

CategoriesFindForProduct

This REST API endpoint allows you to find all categories in your store that have been applied to a specific product. 

Example URL

This is what the REST endpoint will look like if you are calling it using JavaScript.  See our REST API URL documentation for more information.

http://example.com/DesktopModules/Hotcakes/API/rest/v1/categories/ANY?key=[YOURKEY]&byproduct=[BVIN]

BVIN is the product ID (bvin) of the product as described in the parameters below.

HTTP Method

GET

Parameters

Parameter Description
byproduct This value should be a valid product ID for the product you are looking for. This is the same property/field that is called "bvin" in the database or product object.

Returns

If successful, this endpoint will return a populated list of CategorySnapshopDTO object in JSON format.  Otherwise, you should have one or more errors returned.  

Example Code

The following code will allow you to successfully call this endpoint, provided that you have enabled it.

Project References

  • Hotcakes.CommerceDTO

Import Namespaces

  • Hotcakes.CommerceDTO.v1
  • Hotcakes.CommerceDTO.v1.Catalog
  • Hotcakes.CommerceDTO.v1.Client

 

string url = "http://example.com";
string key = "YOUR-API-KEY";

Api proxy = new Api(url, key);

// the product ID (bvin) to find categories for
var productID = "8a981b5a-0fc2-4afd-9d7f-234c47fdc152";

// find the category in the store
ApiResponse<List<CategorySnapshotDTO>> response = proxy.CategoriesFindForProduct(productID);
// your domain name
var url = "http://example.com"; 
// the path where the API is
var apiPath = "/DesktopModules/Hotcakes/API/rest/v1/";  
// endpoint as shown in the documentation
var endPoint = "categories";  
// get this from the store admin
var apiKey = "YOUR-API-KEY";

$(document).ready(function() {

    // the product ID (bvin) to find categories for
    var productID = "8a981b5a-0fc2-4afd-9d7f-234c47fdc152";

    // find the categories that belong to the product
    $.ajax({
        dataType: "json",
        url: url + apiPath + endPoint + "/?key=" + apiKey + "&byproduct=" + productID,
        type: 'GET',
        success: function (data) {
            // do something
        },
        error: function (jqXHR, textStatus) {
           // do something else
        }
    });

});
{
   "Errors":[

   ],
   "Content":[
      {
         "Bvin":"da66d19c-cc4a-4406-96a4-b9fa977a3fd2",
         "StoreId":1,
         "ParentId":"",
         "Name":"Sample Products",
         "Description":"This is a sample category",
         "SourceType":0,
         "ImageUrl":"",
         "BannerImageUrl":"",
         "CustomPageUrl":"",
         "CustomPageOpenInNewWindow":false,
         "ShowInTopMenu":false,
         "Hidden":false,
         "RewriteUrl":"sample-products",
         "SortOrder":2,
         "MetaTitle":"Sample Products",
         "Operations":[

         ]
      },
      {
         "Bvin":"582c1bb5-a2fa-427d-ac0f-2ada35cb976f",
         "StoreId":1,
         "ParentId":"",
         "Name":"More Sample Products",
         "Description":"",
         "SourceType":0,
         "ImageUrl":"",
         "BannerImageUrl":"",
         "CustomPageUrl":"",
         "CustomPageOpenInNewWindow":false,
         "ShowInTopMenu":true,
         "Hidden":false,
         "RewriteUrl":"more-sample",
         "SortOrder":3,
         "MetaTitle":"More Sample Products",
         "Operations":[

         ]
      },
      {
         "Bvin":"df233158-67e7-414d-a62b-0502b145b721",
         "StoreId":1,
         "ParentId":"",
         "Name":"Demo Category",
         "Description":"",
         "SourceType":0,
         "ImageUrl":"",
         "BannerImageUrl":"",
         "CustomPageUrl":"",
         "CustomPageOpenInNewWindow":false,
         "ShowInTopMenu":true,
         "Hidden":false,
         "RewriteUrl":"demo-category",
         "SortOrder":4,
         "MetaTitle":"Demo Category",
         "Operations":[

         ]
      }
   ]
}
Have more questions? Submit a request

Need More Help?

Do you need more assistance with this article? Please review your support options.