ProductInventoryCreate Endpoint

Overview

Nearly every single store needs at least some of their products to have inventory levels assigned to them - or they should.  This endpoint allows you to create as many inventory records as you need for products your store.

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 some kind of idea what numbers that you want your product inventory properties to have before you create it.

ProductInventoryCreate

This REST API endpoint allows you to create inventory for a product in your store. 

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/productinventory

HTTP Method

POST

Parameters

This method only requires that you pass an instance of the ProductInventoryDTO object to the endpoint.

Returns

If successful, this endpoint will return a ProductInventoryDTO object in JSON format.  Otherwise, you will 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);

// create a new product inventory object
var inventory = new ProductInventoryDTO
{
    ProductBvin = "dfcae0ee-8bcf-4321-8b31-7883b5434285",
    QuantityOnHand = 100,
    LowStockPoint = 10,
    OutOfStockPoint = 3
};

// call the API to create the new product inventory record
ApiResponse<ProductInventoryDTO> response = proxy.ProductInventoryCreate(inventory);
// 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 = "productinventory";  
// get this from the store admin
var apiKey = "YOUR-API-KEY";

$(document).ready(function() {

    // create a new product inventory object
    var inventory = {
        "ProductBvin": "dfcae0ee-8bcf-4321-8b31-7883b5434285",
        "QuantityOnHand": 100,
        "LowStockPoint": 10,
        "OutOfStockPoint": 3
    };

    // call the API to create the new product inventory record
    $.ajax({
        dataType: "json",
        url: url + apiPath + endPoint + "?key=" + apiKey,
        data: JSON.stringify(inventory),
        type: 'POST',
        success: function (data) {
            // do something
        },
        error: function(jqXHR, textStatus) {
            // do something else
        }
    });

});
{
   "Errors":[

   ],
   "Content":{
      "Bvin":"f82bcaad-97e4-4e03-8683-998a09346009",
      "LastUpdated":"\/Date(1401919593954)\/",
      "ProductBvin":"dfcae0ee-8bcf-4321-8b31-7883b5434285",
      "VariantId":"",
      "QuantityOnHand":100,
      "QuantityReserved":0,
      "LowStockPoint":10,
      "OutOfStockPoint":3
   }
}
Have more questions? Submit a request

Need More Help?

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