SkuVault

Developing for SkuVault

Welcome to SkuVault's API developer hub. You'll find comprehensive guides and documentation to help you start building your integration as quickly as possible, as well as support if you get stuck.

For partners, we offer a staging server whose data is separate from production.

Suggest Edits

/addItem

Moderate throttling
Add quantity to a warehouse location. Bulk version available

 
posthttps://app.skuvault.com/api/inventory/addItem
{
  "Sku": "String",
  "Code": "String",
  "WarehouseId": 0,
  "LocationCode": "String",
  "Quantity": 0,
  "Reason": "String",
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "AddItemStatus": "Success"
}

Body Params

Code
string

Product Code. Used when SKU is blank.

Sku
string

Product SKU. Used when Code is blank.

WarehouseId
int32
required

from getWarehouses

LocationCode
string
required

The warehouse location to remove from.

Quantity
int32
required

Quantity to add.

Reason
string
required

Transaction reason must exist in SkuVault

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 
Suggest Edits

/addItemBulk

Moderate throttling
Add quantity to warehouse locations, 100 at a time.

 
posthttps://app.skuvault.com/api/inventory/addItemBulk
{
  "Items": [
    {
      "Code": "String",
      "LocationCode": "String",
      "Quantity": 0,
      "Reason": "String",
      "Sku": "String",
      "WarehouseId": 0
    }
  ],
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
    {
      "ErrorMessages": [
        "String"
      ],
      "Sku": "String"
    }
  ],
  "Results": [
    "String"
  ],
  "Status": "OK"
}

Body Params

Items
object
Items.Code
string

Product Code. Required if SKU is omitted.

Items.Sku
string

Product SKU. Required if Code is omitted.

Items.WarehouseId
int32
required

from getWarehouses

Items.LocationCode
string
required
Items.Quantity
int32
required
Items.Reason
string
required

Transaction reason must exist in SkuVault

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 
Suggest Edits

/addShipments

Heavy throttling.
Using this call, users can add shipments to a sale.

 
posthttps://app.skuvault.com/api/sales/addShipments
{  
   "Shipments":[  
      {  
         "SaleId":"String",
         "Source":"String",
         "TrackingNumber":"String",
         "Carrier":"String",
         "Class":"String",
         "Type":"String",
         "Status":"String",
         "AlternateId":"String",
         "ManifestId":"String",
         "Note":"String",
         "TotalWeight":0,
         "WeightUnit":"String",
         "TrackingUrl":"String",
         "EstimatedShipDate":"0001-01-01T00:00:00.0000000Z",
         "EstimatedDeliveryDate":"0001-01-01T00:00:00.0000000Z",
         "ShippedFrom":{  
            "WarehouseId":"0",
            "ThreePL":false,
            "Address":{  
               "FirstName":"String",
               "LastName":"String",
               "MiddleName":"String",
               "Company":"String",
               "Email":"String",
               "Address1":"String",
               "Address2":"String",
               "City":"String",
               "Region":"String",
               "Country":"String",
               "PostalCode":"String"
            }
         },
         "Costs":[  
            {  
               "CostType":"String",
               "Amount":0,
               "CurrencyIsoCode":"String"
            }
         ],
         "Parcels":[  
            {  
               "Number":0,
               "Weight":0,
               "WeightUnit":"String",
               "Note":"String",
               "Items":[  
                  {  
                     "Sku":"String",
                     "Quantity":0
                  }
               ],
               "Dimensions":{  
                  "Height":0,
                  "Width":0,
                  "Length":0,
                  "Unit":"String"
               }
            }
         ],
         "LandedCosts":[  
            {  
               "Sku":"String",
               "Amount":0,
               "CurrencyIsoCode":"String"
            }
         ]
      }
   ],
   "TenantToken":"String",
   "UserToken":"String"
}
A binary file was returned

You couldn't be authenticated

{
    "Status": "OK",
    "Errors": []
}

Body Params

Shipments
object
Shipments.SaleId
string

If provided, the Sale ID must exist in SkuVault

Shipments.Source
string

Where the shipping information came from.

Shipments.TrackingNumber
string

The unique identifier for a shipment from a particular Carrier.

Shipments.Carrier
string

The shipping company responsible for taking the delivery from Point A to Point B.

Shipments.Class
string

The level of service the carrier was paid for.

Shipments.Type
string

The type of Shipment that is being transported to/from the warehouse. Accepts: "Fulfillment", "Return", "Exchange", "Replacement", "Warranty"

Shipments.Status
string

"Created" means the Shipment has been given a tracking number. "Voided" will void the Shipment.

Shipments.AlternateId
string

Alternate ID

Shipments.ManifestId
string

A list of Shipments

Shipments.Note
string

A note for the shipment.

Shipments.TotalWeight
double

Accepts decimal. This is the total weight of the shipment including all parcels in the shipment.

Shipments.WeightUnit
string

Units for the weight measurement. Accepts: "g", "oz", "lbs", "kgs"

Shipments.TrackingUrl
string

The URL where the Carrier provides tracking information for the shipment.

Shipments.EstimatedShipDate
date

At time of shipment, when order is expected to be picked up by the carrier.

Shipments.EstimatedDeliveryDate
date

At time of shipment, when order is expected to deliver.

Shipments.ShippedFrom
object
Shipments.ShippedFrom.WarehouseId
string

Warehouse ID. The ID must exist in SkuVault. If Shipments.ShippedFrom.ThreePL is "true", ID must belong to an external warehouse.

Shipments.ShippedFrom.ThreePL
boolean

True or False

Shipments.ShippedFrom.Address
object
Shipments.ShippedFrom.Address.FirstName
string

First Name

Shipments.ShippedFrom.Address.LastName
string

Last Name

Shipments.ShippedFrom.Address.MiddleName
string

Middle Name

Shipments.ShippedFrom.Address.Company
string

Company

Shipments.ShippedFrom.Address.Email
string

Email

Shipments.ShippedFrom.Address.Address1
string

Address 1

Shipments.ShippedFrom.Address.Address2
string

Address 2

Shipments.ShippedFrom.Address.City
string

City

Shipments.ShippedFrom.Address.Region
string

Region

Shipments.ShippedFrom.Address.Country
string

Country

Shipments.ShippedFrom.Address.PostalCode
string

Postal Code

Shipments.Costs
object
Shipments.Costs.CostType
string

The type of Shipping Cost appended to the shipment. Accepts: "Transportation", "Insurance", "Sales tax", "Gift Wrap", "Recycling Fee", "VAT Shipping", "VAT Gift Wrap", "Import Shipping", "Import Tax", "ThreePL"

Shipments.Costs.Amount
double

The Amount value of the Cost. Accepts decimals.

Shipments.Costs.CurrencyIsoCode
string

The type of currency associated with the cost.

Shipments.Parcels
object
Shipments.Parcels.Number
int32

The parcel number for each individual parcel.

Shipments.Parcels.Weight
double

Accepts decimals. The total weight of the parcel.

Shipments.Parcels.WeightUnit
string

The unit of measurement used. Accepts: "g", "oz", "lbs", "kgs".

Shipments.Parcels.Note
string

Note for the Parcel.

Shipments.Parcels.Items
object
Shipments.Parcels.Items.Sku
string

Sku for the item.

Shipments.Parcels.Items.Quantity
int32

Number of items associated with that SKU.

Shipments.Parcels.Dimensions
object
Shipments.Parcels.Dimensions.Height
double

Height. Accepts decimals.

Shipments.Parcels.Dimensions.Width
double

Width. Accepts decimals.

Shipments.Parcels.Dimensions.Length
double

Length. Accepts decimals.

Shipments.Parcels.Dimensions.Unit
string

Unit of Measurement. Accepts: "in", "ft", "yd", "mm", "cm", "m".

Shipments.LandedCosts
object
Shipments.LandedCosts.Sku
string

SKU

Shipments.LandedCosts.Amount
int32

Cost value of SKU item.

Shipments.LandedCosts.CurrencyIsoCode
string

Type of Currency for Amount

TenantToken
string
required

Tenant Token to access account

UserToken
string
required

User Token to access account

 
Suggest Edits

/createBrands

Moderate throttling

 
posthttps://app.skuvault.com/api/products/createBrands
{
  "Brands": [
    {
      "Name": "String"
    }
  ],
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Status": "OK",
  "Errors": []
}

Body Params

Brands
object
Brands.Name
string
required

Name of Brand

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

 
Suggest Edits

/createHolds

Moderate throttling

 
posthttps://app.skuvault.com/api/sales/createHolds
{
  "Holds": [
    {
      "Description": "String",
      "ExpirationDateUtc": "0001-01-01T00:00:00.0000000Z",
      "Quantity": 0,
      "Sku": "String"
    }
  ],
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

[
  {
    "Quantity": 0,
    "Sku": "String"
  }
]

Body Params

Holds
object
Holds.Description
string
required

A description of the hold, eg: "Summer Flash Sale"

Holds.ExpirationDateUtc
date
required

When this hold expires

Holds.Quantity
int32
required

The quantity.

Holds.SKU
string
required

The SKU to place on hold.

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 

Note on the Response

The quantity shown in the response is the product's new Available Quantity (Held quantity is deducted from Available).

Suggest Edits

/createKit

Moderate throttling
Using this call, users may create a kit inside of SkuVault.

 
posthttps://app.skuvault.com/api/products/createKit
{
  "AllowCreateAp": false,
  "Code": "String",
  "KitLines": [
    {
      "Combine": 1,
      "Items": [
        "String"
      ],
      "LineName": "String",
      "Quantity": 1
    }
  ],
  "Sku": "String",
  "TenantToken": "String",
  "Title": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
    "String"
  ],
  "Success": "String"
}

Body Params

AllowCreateAp
boolean

If true, will allow kit creation if a product with the same SKU exists, turning the product into an Assembled Product.

Code
string

Kit Code

KitLines
object
KitLines.Combine
string
required

Substitute combine option. 1) Use up by priority. 2) Use single SKU if possible. 3) Never combine.

KitLines.Items
array of strings
required

List of Codes or SKUs that make up the line. More that one indicates substitutes.

KitLines.LineName
string
required

The name of the line for internal use.

KitLines.Quantity
string
required

The quantity of the line item.

Sku
string
required

Kit SKU

Title
string
required

Kit Titled

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

 
Suggest Edits

/createPO

Moderate throttling
This call let's you create a PO using our API.

 
posthttps://app.skuvault.com/api/purchaseorders/createPO
{
  "ArrivalDueDate": "0001-01-01T00:00:00.0000000Z",
  "LineItems": [
    {
      "Cost": 0,
      "Identifier": "String",
      "PrivateNotes": "String",
      "PublicNotes": "String",
      "Quantity": 1,
      "QuantityTo3PL": 0,
      "SKU": "String",
      "Variant": "String"
    }
  ],
  "OrderCancelDate": "0001-01-01T00:00:00.0000000Z",
  "OrderDate": "0001-01-01T00:00:00.0000000Z",
  "PaymentStatus": "String",
  "Payments": [
    {
      "Amount": 0,
      "Note": "String",
      "PaymentName": "String"
    }
  ],
  "PoNumber": "String",
  "PrivateNotes": "String",
  "PublicNotes": "String",
  "RequestedShipDate": "0001-01-01T00:00:00.0000000Z",
  "SentStatus": "String",
  "ShipToAddress": "String",
  "ShipToWarehouse": "String",
  "ShippingCarrierClass": {
    "CarrierName": "String",
    "ClassName": "String"
  },
  "SupplierName": "String",
  "TenantToken": "String",
  "TermsName": "String",
  "TrackingInfo": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "CreatePOStatus": "Success"
}

Body Params

ArrivalDueDate
date

The date the PO is expected to arrive.

LineItems
object
LineItems.Cost
double

The cost of the SKU you are purchasing. If left blank, it will use the Supplier's Cost if the supplier is Active. Otherwise it will use the product's default cost (Product Cost Field).

LineItems.Identifier
string
LineItems.PrivateNotes
string
LineItems.PublicNotes
string
LineItems.Quantity
int32
required

The total quantity of the SKU you are purchasing.

LineItems.QuantityTo3PL
int32
required

The quantity of the SKU you are sending to 3PL.

LineItems.SKU
string
required

The SKU you are purchasing.

LineItems.Variant
string
OrderCancelDate
date

The date you wish to cancel the PO on if it has not been received.

OrderDate
date

The date the PO was placed.

PaymentStatus
string

Payment Status - NonePaid, PartiallyPaid, and FullyPaid

Payments
object
Payments.Amount
double
Payments.Note
string
Payments.PaymentName
string
PoNumber
string

The number you wish to give this PO. If not provided, will automatically be generated.

PrivateNotes
string

Notes for internal use only.

PublicNotes
string

Notes for use on the PO template.

RequestedShipDate
date
SentStatus
string

Sent Status - NotSent, Sent, and NeedToResend

SupplierName
string
required

The vendor you are purchasing from.

ShipToAddress
string

This is the Address Name of the warehouse in SkuVault. The address must exist for the ShipToWarehouse.

ShipToWarehouse
string

This is the code of the warehouse in SkuVault. You can specify a warehouse that PO is for.

ShippingCarrierClass
object
ShippingCarrierClass.Carrier
string

The shipping carrier.

ShippingCarrierClass.Class
string

The shipping class.

TenantToken
string
required

from getTokens

TermsName
string
TrackingInfo
string
UserToken
string
required

from getTokens

 

Brief Mention about LineItems.Cost (Product Cost)

There is some minor logic in regards to how SkuVault knows which cost to apply to the product when syncing a PO (Purchase Order).

  • If you include a cost - We will always use the cost specified
  • If you exclude a cost - If the product has an active supplier associated with it that is the same as the PO's supplier, then we will use the Supplier cost. If the product has an inactive supplier (that is the same as the PO's supplier) or the product does not contain that supplier, we will use the Product's default cost (the Product Cost field).
Suggest Edits

/createProduct

Throttling: Moderate
Create products in SkuVault one at a time. Bulk version available: /createProducts

 
posthttps://app.skuvault.com/api/products/createProduct
{
  "AllowCreateAp": false,
  "Attributes": {
    "AttributeName": "AttributeValue"
  },
  "Brand": "Generic",
  "Classification": "General",
  "Code": null,
  "Cost": 0,
  "Description": "String",
  "LongDescription": "String",
  "MinimumOrderQuantity": 0,
  "MinimumOrderQuantityInfo": "String",
  "Note": "String",
  "PartNumber": "String",
  "Pictures": [
    "http://www.example.com/image.jpg"
  ],
  "ReorderPoint": 0,
  "RetailPrice": "String",
  "SalePrice": 0,
  "ShortDescription": "String",
  "Sku": "String",
  "Statuses": [
    "String"
  ],
  "SupplierInfo": [
    {
      "Cost": 1.99,
      "LeadTime": 5,
      "SupplierName": "Unknown",
      "SupplierPartNumber": "String",
      "isActive": true,
      "isPrimary": true
    }
  ],
  "TenantToken": "String",
  "UserToken": "String",
  "VariationParentSku": "String",
  "Weight": 0,
  "WeightUnit": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
    "String"
  ],
  "Status": "OK"
}

Body Params

AllowCreateAp
boolean

Creates an Assembled Product if the kit already exists.

Attributes
object

Dictionary where key is attribute name and value is attribute value

Brand
string
required

Must exist in SkuVault.

Code
string

Barcode number.

Cost
double

Accepts decimal; Your overall cost on hand for that product. Used for a default (fallback) cost field or for the cost averaging feature in SkuVault.

Classification
string
required

Must exist in SkuVault.

Description
string

alias "Title"

LongDescription
string

Limit 65665 characters.

MinimumOrderQuantity
int32
MinimumOrderQuantityInfo
string
Note
string
PartNumber
string

Manufacturer part number.

Pictures
array of strings

List of picture urls

ReorderPoint
int32

The point at which you should reorder quantity.

RetailPrice
double

Accepts decimal; MSRP per unit

SalePrice
mixed type

Accepts decimal; Your selling price per unit

Sku
string
required

The SKU to give the product.

ShortDescription
string

Limit 1000 characters

Statuses
array of strings
SupplierInfo
object
SupplierInfo.SupplierName
string
required

The name of your supplier in SkuVault. It must exist in SkuVault and at least one supplier is required.

SupplierInfo.isPrimary
boolean
required

At least 1 supplier must be specified as primary (true).

SupplierInfo.Cost
double

This is the supplier's cost for that item.

SupplierInfo.SupplierPartNumber
string

Supplier's part number for that product. It is blank by default.

SupplierInfo.LeadTime
int32

Supplier's lead time.

SupplierInfo.isActive
boolean

If a supplier is active, we will use the supplier information (Cost, Supplier Part Number, etc.) when creating a Purchase Order.

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

VariationParentSku
string
Weight
double

Accepts decimal

WeightUnit
string

One of: "lbs", "kgs", "oz", "g"

 

Warning

Be sure to read Modifying Products.

Suggest Edits

/createProducts

Heavy throttling
Create 100 products per request.

 
posthttps://app.skuvault.com/api/products/createProducts
{
  "Items": [
    {
      "AllowCreateAp": false,
      "Attributes": {
        "AttributeName": "AttributeValue"
      },
      "Brand": "String",
      "Classification": "String",
      "Code": "String",
      "Cost": 0.00000,
      "Description": "String",
      "LongDescription": "String",
      "MinimumOrderQuantity": 0,
      "MinimumOrderQuantityInfo": "String",
      "Note": "String",
      "PartNumber": "String",
      "Pictures": [
        "http://www.example.com/image.jpg"
      ],
      "ReorderPoint": 0,
      "RetailPrice": 0.00000,
      "SalePrice": 0.00000,
      "ShortDescription": "String",
      "Sku": "String",
      "Statuses": [
        "String"
      ],
      "SupplierInfo": [
        {
          "Cost": 0.00000,
          "LeadTime": 5,
          "SupplierName": "Unknown",
          "SupplierPartNumber": "String",
          "isActive": false,
          "isPrimary": false
        }
      ],
      "VariationParentSku": "String",
      "Weight": 0,
      "WeightUnit": "String"
    }
  ],
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Status": "Accepted",
  "Errors": [
    {
      "Sku": "String",
      "ErrorMessages": [
        "String"
      ]
    }
  ]
}
{
  "Errors": [],
  "Status": "OK"
}

Body Params

Items
object
Items.AllowCreateAp
boolean

Creates an Assembled Product if the kit already exists.

Items.Attributes
object

Dictionary list where AttributeName is key, AttributeValue is value. AttributeName must exist under Classification.

Items.Brand
string
required

Must exist in SkuVault.

Items.Classification
string
required

Must exist in SkuVault.

Items.Code
string

Barcode number.

Items.Cost
double

Accepts decimal; Your overall cost on hand for that product. Used for a default (fallback) cost field or for the cost averaging feature in SkuVault.

Items.Description
string

Now known as "Title" in the UI.

Items.LongDescription
string

Limit 65665 characters.

Items.MinimumOrderQuantity
int32
Items.MinimumOrderQuantityInfo
string
Items.Note
string

A note to place on the SKU.

Items.PartNumber
string

Manufacturer part number.

Items.Pictures
array of strings

List of picture urls.

Items.ReorderPoint
int32

The point at which you should reorder quantity.

Items.RetailPrice
double

Accepts decimal; MSRP per unit

Items.SalePrice
double

Accepts decimal; Your selling price per unit

Items.ShortDescription
string

Limit 1000 characters.

Items.Sku
string
required

The SKU to give your product.

Items.Statuses
array of strings

Attach tags or statuses to this SKU. The status must exist in SkuVault.

Items.SupplierInfo
object
Items.SupplierInfo.Cost
double

This is the supplier's cost for that item.

Items.SupplierInfo.isActive
boolean

If a supplier is active, we will use the supplier information (Cost, Supplier Part Number, etc.) when creating a Purchase Order.

Items.SupplierInfo.isPrimary
boolean
required

At least 1 supplier must be specified as primary (true).

Items.SupplierInfo.LeadTime
int32

Supplier's lead time.

Items.SupplierInfo.SupplierName
string
required

The name of your supplier in SkuVault. It must exist in SkuVault and at least one supplier is required.

Items.SupplierInfo.SupplierPartNumber
string

Supplier's part number for that product. It is blank by default.

Items.VariationParentSku
string
Items.Weight
double

Accepts decimal.

Items.WeightUnit
string

One of: "lbs", "kgs", "oz", "g"

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

 

Warning

Be sure to read Modifying products.

Suggest Edits

/createSuppliers

Moderate throttling
Returns the list of current Suppliers in a SkuVault account.

 
posthttps://app.skuvault.com/api/products/createSuppliers
{
  "Suppliers": [
    {
      "EmailTemplateMessage": "String",
      "EmailTemplateSubject": "String",
      "Emails": [
        "String"
      ],
      "Name": "String"
    }
  ],
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
    "String"
  ]
}

Body Params

Suppliers
object
Suppliers.Name
string
Suppliers.EmailTemplateSubject
string
Suppliers.EmailTemplateMessage
string
Suppliers.Emails
array of strings
TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

 
Suggest Edits

/getAvailableQuantities

Heavy throttling
Retrieve a list of SKUs and their total available quantities across all warehouses. Available Quantity is the quantity that is actually available to sell across all your sales channels.

 
posthttps://app.skuvault.com/api/inventory/getAvailableQuantities
{
  "ExpandAlternateSkus": false,
  "ModifiedAfterDateTimeUtc": "0000-00-00T00:00:00.0000000Z",
  "ModifiedBeforeDateTimeUtc": "0000-00-00T00:00:00.0000000Z",
  "PageNumber": 0,
  "PageSize": null,
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Items": [
    {
      "AvailableQuantity": 0,
      "IsAlternateSku": false,
      "LastModifiedDateTimeUtc": "0000-00-00T00:00:00.0000000Z",
      "Sku": "String"
    }
  ]
}

Body Params

ModifiedAfterDateTimeUtc
date

Inventory modified after UTC DateTime

ModifiedBeforeDateTimeUtc
date

Inventory modified before UTC DateTime

PageNumber
int32

The page number to retrieve.

PageSize
int32

Must be between 1000 and 5000.

ExpandAlternateSkus
boolean

If true, we will return alternate SKUs as a list instead of separate line items.

TenantToken
string
required

Acquired from getTokens.

UserToken
string
required

Acquired from getTokens.

 
Suggest Edits

/getBrands

Heavy throttling
Returns a list of Brands created in SkuVault.

 
posthttps://app.skuvault.com/api/products/getBrands
{
  "PageNumber": 0,
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Brands": [
    {
      "IsEnabled": false,
      "Name": "String"
    }
  ]
}

Body Params

PageNumber
int32

Page number, 1,000 results per page.

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

 
Suggest Edits

/getClassifications

Heavy throttling
Returns classifications and, if they exist, their named attributes.

 
posthttps://app.skuvault.com/api/products/getClassifications
{
  "PageNumber": 0,
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Classifications": [
    {
      "Attributes": [
        {
          "IsEnabled": false,
          "IsRequired": false,
          "Name": "String",
          "Values": [
            "String"
          ]
        }
      ],
      "IsEnabled": false,
      "Name": "String"
    }
  ]
}

Body Params

PageNumber
int32

Page number. 1,000 results per page.

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

 
Suggest Edits

/getExternalWarehouseQuantities

Heavy throttling
This call gets the quantities in a designated External Warehouse. Please note these are different than ordinary warehouses.

 
posthttps://app.skuvault.com/api/inventory/getExternalWarehouseQuantities
{
  "GetTotalFbaQuantities": false,
  "PageNumber": 0,
  "PageSize": null,
  "TenantToken": "String",
  "Usertoken": "String",
  "WarehouseId": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
    "String"
  ],
  "Quantities": [
    {
      "InStockQuantity": 0,
      "InboundQuantity": 0,
      "ReserveQuantity": 0,
      "Sku": "String",
      "TotalQuantity": 0,
      "TransferQuantity": 0
    }
  ]
}

Body Params

GetTotalFbaQuantities
boolean

Will return the sum of the FBA quantities and warehouses that are associated with an Amazon account in SkuVault. NOTE: If true, then WarehouseId parameter will be ignored.

PageNumber
int32

The page number to be retrieved.

PageSize
int32

The number of SKUs to return per page. Can be any number between 1000 and 100000.

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

WarehouseId
int32
required

from getExternalWarehouses

 
Suggest Edits

/getExternalWarehouses

Moderate throttling.
Returns your external warehouses. No page parameters.

 
posthttps://app.skuvault.com/api/inventory/getExternalWarehouses
{
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Warehouses": [
    {
      "Code": "String",
      "Id": "String"
    },
    {
      "Code": "String",
      "Id": "String"
    }
  ]
}

Body Params

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

 
Suggest Edits

/getIncomingItems

Get incoming items for incomplete purchase orders

 
posthttps://app.skuvault.com/api/purchaseorders/getIncomingItems
{  
  "PageNumber":0,
  "TenantToken":"String",
  "UserToken":"String"
}
A binary file was returned

You couldn't be authenticated

{  
   "SoldItems":[  
      {  
         "SKU":"String",
         "Date":"0001-01-01T00:00:00.0000000Z",
         "Quantity":0,
         "TotalPrice":0
      }
   ],
   "Status":"String",
   "Errors":[  

   ]
}

Body Params

PageNumber
int32

Page number with 0 being the first page. Defaults to 0.

TenantToken
string
required

Tenant Token to access account

UserToken
string
required

User Token to access account

 
Suggest Edits

/getIntegrations

Severe throttling.
Returns a list of your enabled channel accounts. No page parameters.

 
posthttps://app.skuvault.com/api/integration/getIntegrations
{
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Accounts": [
    {
      "Id": "101",
      "LongId": "1-600001-2-101",
      "Name": "My Channel Advisor Account",
      "Type": "ChannelAdvisor"
    },
    {
      "Id": "102",
      "LongId": "1-600001-8-102",
      "Name": "My Amazon Account",
      "Type": "Amazon"
    }
  ]
}

Body Params

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

 
Suggest Edits

/getInventoryByLocation

Heavy throttling
Returns location and warehouse per product.

 
posthttps://app.skuvault.com/api/inventory/getInventoryByLocation
{
  "IsReturnByCodes": false,
  "PageNumber": 0,
  "PageSize": 0,
  "ProductCodes": [
  ],
  "ProductSKUs": [
  ],
  "TenantToken": "String",
  "Usertoken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
    "String"
  ],
  "Items": {
    "SKU-as-Key": [
      {
        "LocationCode": "String",
        "Quantity": 0,
        "Reserve": false,
        "WarehouseCode": "String"
      }
    ]
  }
}

Body Params

IsReturnByCodes
boolean

List products by code instead of SKU.

PageNumber
int32

1,000 products per page.

ProductCodes
array of strings

Filter by product codes.

ProductSKUs
array of strings

Filter by product SKUs.

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 

On filtering

If filtering by SKU, IsReturnByCodes must be null or false. Likewise, if filtering by Code, IsReturnByCodes must be true.

Suggest Edits

/getItemQuantities

Heavy throttling
Returns product quantities.

 
posthttps://app.skuvault.com/api/inventory/getItemQuantities
{
  "ModifiedAfterDateTimeUtc": "0000-00-00T00:00:00.0000000Z",
  "ModifiedBeforeDateTimeUtc": "0000-00-00T00:00:00.0000000Z",
  "PageNumber": 0,
  "PageSize": null,
  "ProductCodes": [
    "String"
  ],
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Items": [
    {
      "AvailableQuantity": 0,
      "Code": "String",
      "HeldQuantity": 0,
      "LastModifiedDateTimeUtc": "0000-00-00T00:00:00.0000000Z",
      "PendingQuantity": 0,
      "PickedQuantity": 0,
      "Sku": "String",
      "TotalOnHand": 0
    }
  ]
}

Body Params

ModifiedAfterDateTimeUtc
date

Product inventory modified after date time in UTC.

ModifiedBeforeDateTimeUtc
date

Product inventory modified before date time in UTC.

ProductCodes
array of strings

Filter results by a list of Codes

PageNumber
int32
PageSize
int32

Value should be between 1000 and 10000.

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 
Suggest Edits

/getKitQuantities

Heavy throttling
Returns kit quantities.

 
posthttps://app.skuvault.com/api/inventory/getKitQuantities
{
  "ModifiedAfterDateTimeUtc": "0001-01-01T00:00:00.0000000Z",
  "ModifiedBeforeDateTimeUtc": "0001-01-01T00:00:00.0000000Z",
  "PageNumber": 0,
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Kits": [
    {
      "AvailableQuantity": 0,
      "LastModifiedDateTimeUtc": "0001-01-01T00:00:00.0000000Z",
      "Sku": "String"
    }
  ]
}

Body Params

ModifiedAfterDateTimeUtc
date

Kit inventory modified after date time in UTC.

ModifiedBeforeDateTimeUtc" ModifiedBeforeDateTimeUtc
date

Kit inventory modified before date time in UTC.

PageNumber
int32

10,000 kits per page.

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 
Suggest Edits

/getKits

Heavy throttling
Returns kit details.

 
posthttps://app.skuvault.com/api/products/getKits
{
  "AvailableQuantityModifiedAfterDateTimeUtc": "0001-01-01T00:00:00.0000000Z",
  "AvailableQuantityModifiedBeforeDateTimeUtc": "0001-01-01T00:00:00.0000000Z",
  "GetAvailableQuantity": false,
  "IncludeKitCost": false,
  "KitSKUs": [
    "String"
  ],
  "ModifiedAfterDateTimeUtc": "0001-01-01T00:00:00.0000000Z",
  "ModifiedBeforeDateTimeUtc": "0001-01-01T00:00:00.0000000Z",
  "PageNumber": 0,
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
    "String"
  ],
  "Kits": [
    {
      "AvailableQuantity": 0,
      "AvailableQuantityLastModifiedDateTimeUtc": "",
      "Code": "String",
      "Cost": 0,
      "Description": "String",
      "KitLines": [
        {
          "Combine": 1,
          "Items": [
            {
              "Code": "String",
              "Description": "String",
              "SKU": "String"
            }
          ],
          "LineName": "String",
          "Quantity": 1
        }
      ],
      "LastModifiedDateTimeUtc": "2015-07-10 15:53:20Z",
      "SKU": "String"
    }
  ]
}

Body Params

AvailableQuantityModifiedAfterDateTimeUtc
date

Modified kit quantities after date time in UTC.

AvailableQuantityModifiedBeforeDateTimeUtc
date

Modified kit quantities before date time in UTC.

GetAvailableQuantity
boolean

If false, AvailableQuantity will always return 0.

IncludeKitCost
boolean

If true, then return cost for the kit with response

KitSKUs
array of strings

Filter results by a list of SKUs.

ModifiedAfterDateTimeUtc
date
ModifiedBeforeDateTimeUtc
date
PageNumber
int32
PageSize
int32

Value should be between 1000 and 10000.

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

 
Suggest Edits

/getOnlineSaleStatus

Heavy throttling
Returns a list of sales and their statuses.

 
posthttps://app.skuvault.com/api/sales/getOnlineSaleStatus
{
  "OrderIds": [
    "String"
  ],
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Sales": [
    {
      "Id": "String",
      "Items": [
        {
          "OnlineSaleItemStatus": "String",
          "Quantity": 1,
          "Sku": "String"
        }
      ],
      "LastPrintedDate": "0001-01-01T00:00:00.0000000Z",
      "Notes": "",
      "PrintedStatus": false,
      "Status": "String"
    }
  ]
}

Body Params

OrderIds
array of strings
required

List of IDs to get status on. Only 10000 orders can be accessed at at a time. All extra IDs will be ignored.

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 
Suggest Edits

/getPOs

Heavy throttling.
Returns a list of purchase orders.

 
posthttps://app.skuvault.com/api/purchaseorders/getPOs
{
  "IncludeProducts": false,
  "ModifiedAfterDateTimeUtc": "0001-01-01T00:00:00.0000000Z",
  "ModifiedBeforeDateTimeUtc": "0001-01-01T00:00:00.0000000Z",
  "PageNumber": 0,
  "Status": "String",
  "PONumbers":["test1","test2"],
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "PurchaseOrders": [
   {
      "PoNumber": "SVPO2000000370",
      "Status": "Cancelled",
      "PaymentStatus": "NonePaid",
      "SupplierName": "Unknown",
      "CreatedDate": "2016-06-30T16:18:55.8758885Z",
      "OrderDate": "2016-07-01T03:59:59.9990000Z",
      "OrderCancelDate": "0001-01-01T00:00:00.0000000Z",
      "ArrivalDueDate": "2016-07-01T03:59:59.9990000Z",
      "RequestedShipDate": "2016-07-01T03:59:59.9990000Z",
      "ActualShippedDate": "0001-01-01T00:00:00.0000000Z",
      "TrackingInfo": "String",
      "PublicNotes": "String",
      "PrivateNotes": "String",
      "TermsName": "String",
      "ShipToWarehouse": "N/A",
      "ShipToAddress": "N/A",
      "ShippingCarrierClass": {
        "CarrierName": "String",
        "ClassName": "String"
      },
      "Costs": [],
      "LineItems": [
        {
          "ProductId": "String",
          "SKU": "String",
          "Quantity": 2,
          "QuantityTo3PL": 1,
          "ReceivedQuantity": 1,
          "ReceivedQuantityTo3PL": 0,
          "Cost": 400,
          "RetailCost": 0,
          "PrivateNotes": "String",
          "PublicNotes": "String",
          "Variant": "String",
          "Identifier": "String"
        }
      ]
    }
  ]
}

Body Params

ModifiedAfterDateTimeUtc
date
ModifiedBeforeDateTimeUtc
date
Status
string

We will return all POs that are not completed by Default. To get completed PO's, you must intentionally specify in the call. Possible values are: NoneReceived, PartiallyReceived, Completed, Cancelled

PageNumber
int32

10,000 POs are returned per page.

IncludeProducts
boolean

Returns incoming product details in separate array.

PONumbers
array of strings

A list of PO Numbers you can request data for. If using this parameter, the Date parameters and Status parameter is ignored.

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 
Suggest Edits

/getProducts

Heavy throttling
This call returns product(not kit) details. The date parameters include updating details as well as product creation. Details do not include quantity.

 
posthttps://app.skuvault.com/api/products/getProducts
{
  "ModifiedAfterDateTimeUtc": "0000-00-00T00:00:00.0000000Z",
  "ModifiedBeforeDateTimeUtc": "0000-00-00T00:00:00.0000000Z",
  "ProductCodes": [
    "String"
    ],
  "PageNumber": 0,
  "PageSize": 0,
  "ProductSKUs": [
    "String"
  ],
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{  
   "Products":[  
      {  
         "Id":"String",
         "Code":"String",
         "Sku":"String",
         "PartNumber":"String",
         "Description":"String",
         "ShortDescription":"String",
         "LongDescription":"String",
         "Cost":0,
         "RetailPrice":0,
         "SalePrice":0,
         "WeightValue":"0",
         "WeightUnit":"String",
         "ReorderPoint":0,
         "Brand":"String",
         "Supplier":"String",
         "SupplierInfo":[  
            {  
               "SupplierName":"String",
               "SupplierPartNumber":"String",
               "Cost":0,
               "LeadTime":0,
               "IsActive":true,
               "IsPrimary":true
            }
         ],
         "Classification":"String",
         "QuantityOnHand":0,
         "QuantityOnHold":0,
         "QuantityPicked":0,
         "QuantityPending":0,
         "QuantityAvailable":0,
         "QuantityIncoming":0,
         "QuantityInbound":0,
         "QuantityTransfer":0,
         "QuantityInStock":0,
         "QuantityTotalFBA":0,
         "CreatedDateUtc":"0000-00-00T00:00:00.0000000Z",
         "ModifiedDateUtc":"0000-00-00T00:00:00.0000000Z",
         "Pictures":[  
            "http://www.example.com/image.jpg"
         ],
         "Attributes":[  
            {  
               "Name":"Attribute1",
               "Value":"ExampleValue"
            }
         ],
         "VariationParentSku":"",
         "IsAlternateSKU":false,
         "IsAlternateCode":false,
         "MOQ":0,
         "MOQInfo":"",
         "IncrementalQuantity":1,
         "DisableQuantitySync":false,
         "Statuses":[  
            "Status1",
            "Status2"
         ]
      }
   ],
   "Errors":[  

   ]
}

Body Params

ModifiedAfterDateTimeUtc
date

Modified product details after date time in UTC.

ModifiedBeforeDateTimeUtc
date

Modified product details before date time in UTC.

PageNumber
int32
PageSize
int32

Should be between 1000 and 10000.

ProductCodes
array of strings

Filter results by a list of Product Codes

ProductSKUs
array of strings

Filter results by a list of SKUs.

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

 

Alternate SKUs/Codes

If specific codes/SKUs aren't requested (using "ProductCodes" or "ProductSkus" parameters), then all Alternate SKUs will always be returned as separate objects within the product array. The "IsAlternateSku" boolean will indicate whether the SKU is an Alternate (value of "true) or the primary or parent SKU (value of "false").

Currently, products will only return under their Primary Code unless Alternate Codes are specified in the "ProductCodes" parameter.

Suggest Edits

/getReceivesHistory

Heavy throttling.
Returns a list of purchase order receives and receipts.

 
posthttps://app.skuvault.com/api/purchaseorders/getReceivesHistory
{  
   "WarehouseFilter":[  
      "String"
   ],
   "PageNumber":0,
   "PageSize":0,
   "PoNumberFilter":[  
      "String"
   ],
   "ReceivedAfterDateTimeUTC":"0000-00-00T00:00:00.0000000Z",
   "ReceivedBeforeDateTimeUTC":"0000-00-00T00:00:00.0000000Z",
   "TenantToken":"String",
   "UserToken":"String"
}
A binary file was returned

You couldn't be authenticated

{  
   "Corrections":[  
      {  
         "Code":"String",
         "CorrectedDate":"0000-00-00T00:00:00.0000000Z",
         "NewQuantity":0,
         "NewQuantity3pl":0,
         "OldQuantity":0,
         "OldQuantity3pl":0,
         "PONumber":"String",
         "PartNumber":"String",
         "QuantityByReceiptDate":[  
            {  
               "NewQuantity":0,
               "OldQuantity":0,
               "ReceiptDate":"0000-00-00T00:00:00.0000000Z"
            }
         ],
         "ReceivedDate":"0000-00-00T00:00:00.0000000Z",
         "SKU":"String",
         "Username":"String"
      }
   ],
   "Receives":[  
      {  
         "Code":"String",
         "Location":"String",
         "PONumber":"String",
         "PartNumber":"String",
         "Quantity":0,
         "Quantity3pl":0,
         "QuantityToLocation":0,
         "ReceiptDate":"0000-00-00T00:00:00.0000000Z",
         "ReceivedDate":"0000-00-00T00:00:00.0000000Z",
         "SKU":"String",
         "Username":"String",
         "Warehouse":"String"
      }
   ]
}

Body Params

WarehouseFilter
array of strings

Filter to get receives for one or a list of Warehouse Codes

PageNumber
int32

Specify which page to return.

PageSize
int32

Specify page size. Value should be between 1000 and 10000. Default is 10000. We will return the "Receives" collection first, then the "Corrections" collections last.

PoNumberFilter
array of strings

Filter to get receives for one or a list of PO's

ReceivedAfterDateTimeUTC
date

Filter for receives after this date and time.

ReceivedBeforeDateTimeUTC
date

Filter for receives before this date and time.

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 

Corrections field

Corrections are always returned. Even if you are specifying a warehouse, this is always returned as Corrections can not be determined on a per warehouse level. Therefore, if you are filtering on a warehouse level, these may not be 100% accurate.

  • All dates are returned in UTC format. Therefore, the "ReceiptDate" parameter will almost always be a day ahead of when the actual receipt is. For example, in the above "Example Response," the Receipt Date of "2016-01-23T00:00:00.0000000Z" is actually January 22 (UTC -> EST for example).
  • The "ReceivedDate" returned in the Corrections array will not contain a time. This is because it is impossible for this to be accurate. Why? Because you may have multiple receives at different times for the same SKU on the same day.
  • The Code/PartNumber parameters are the Code/PartNumber on that PO. So, if the product is deleted/recreated, it will not contain the new information, because the old product is what is on the PO.
Suggest Edits

/getSales

Heavy throttling
Use this call to retrieve a list of sales from SkuVault. 10,000 sales are returned per page.

 
posthttps://app.skuvault.com/api/sales/getSales
{
  "OrderIds": [
    "String"
  ],
  "Status": "ReadyToShip",
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
    "Sales": [
        {
            "Id": "String",
            "MarketplaceId": "String",
            "ChannelId": "String",
            "Status": "String",
            "SaleDate": "String",
            "Marketplace": "String",
            "SaleItems": [
                {
                    "Sku": "String",
                    "Quantity": 0,
                    "UnitPrice": {
                        "a": 0,
                        "s": "String"
                    }
                }
            ],
            "FulfilledItems": [],
            "SaleKits": [
                {
                    "Sku": "String",
                    "Quantity": 0,
                    "UnitPrice": {
                        "a": 1,
                        "s": "String"
                    },
                    "KitItems": {}
                }
            ],
            "FulfilledKits": [],
            "ShippingCost": {
                "a": 0,
                "s": "$"
            },
            "ShippingCharge": {
                "a": 0,
                "s": "$"
            },
            "ShippingInfo": {
                "City": "String",
                "Region": "String",
                "Country": "String",
                "PostalCode": "String",
                "Address1": "String",
                "Address2": "String"
            },
            "ContactInfo": {
                "FirstName": "String",
                "LastName": "String",
                "Company": "String",
                "Phone": "String",
                "Email": "String"
            },
            "ShippingCarrier": "String",
            "ShippingClass": "String",
            "Notes": "String",
            "PrintedStatus": true,
            "LastPrintedDate": "String"
        }
    ]
}

Body Params

Status
string

One of: ReadyToShip, Pending

OrderIds
array of strings

This is a list of order IDs that you can query for. Max 10000 per call. If you query for orders, we will only return those orders and ignore the "Status" filter. Essentially, it overwrites this filter. Also, take note that you can only filter for orders that originated from the API if you send in an Order ID. If you send in the full SkuVault ID, it will return the sale that matches that regardless of its source.

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 
Suggest Edits

/getSalesByDate

Heavy throttling
Returns sales based on a date range. 10,000 sales are returned per page.

 
posthttps://app.skuvault.com/api/sales/getSalesByDate
{
  "DateField": "Modified",
  "FromDate": "0001-01-01T00:00:00.0000000Z",
  "ToDate": "0001-01-01T00:00:00.0000000Z",
  "PageSize": 1000,
  "PageNumber": 0,
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

[
    {
        "Id": "1-1-1-1-sale1",
        "MarketplaceId": "String",
        "ChannelId": "String",
        "Status": "ReadyToShip",
        "SaleDate": "2017-02-02T15:11:11.8660000Z",
        "Marketplace": "Manual",
        "MerchantItems": [
            {
                "Sku": "String",
                "Quantity": 1,
                "UnitPrice": {
                    "a": 0,
                    "s": "$"
                },
                "PartNumber": ""
            }
        ],
        "FulfilledItems": [],
        "MerchantKits": [],
        "FulfilledKits": [],
        "Client": "",
        "Channel": "Manual",
        "ShippingCost": {
            "a": 0,
            "s": "$"
        },
        "ShippingCharge": {
            "a": 0,
            "s": "$"
        },
        "ShippingCarrier": "",
        "ShippingClass": "",
        "ShippingInfo": {
            "City": "",
            "Region": "",
            "Country": "",
            "PostalCode": "",
            "Address1": "",
            "Address2": ""
        },
        "ContactInfo": {
            "FirstName": "",
            "LastName": "",
            "Company": "",
            "Phone": "",
            "Email": ""
        },
        "Notes": "",
        "PrintedStatus": false,
        "LastPrintedDate": "0001-01-01T00:00:00.0000000Z"
    }
]
{
  "Sales": [
    {
      "Id": "1-1-1-1-sale1",
      "Status": "ReadyToShip",
      "SaleDate": "2016-12-16T19:32:49.2847810Z",
      "Marketplace": "Manual",
      "MerchantItems": [
        {
          "Sku": "testSku1",
          "Quantity": 1,
          "UnitPrice": {
            "a": 0,
            "s": "$"
          },
          "PartNumber": ""
        }
      ],
      "FulfilledItems": [],
      "MerchantKits": [],
      "FulfilledKits": [],
      "Client": "",
      "Channel": "Manual",
      "ShippingCost": {
        "a": 0,
        "s": "$"
      },
      "ShippingCharge": {
        "a": 0,
        "s": "$"
      },
      "ShippingCarrier": "",
      "ShippingClass": "",
      "ShippingInfo": {
        "City": "",
        "Region": "",
        "Country": "",
        "PostalCode": "",
        "Address1": "",
        "Address2": ""
      },
      "ContactInfo": {
        "FirstName": "",
        "LastName": "",
        "Company": "",
        "Phone": "",
        "Email": ""
      },
      "Notes": "",
      "PrintedStatus": false,
      "LastPrintedDate": "0001-01-01T00:00:00.0000000Z"
    },
    {
      "Id": "1-1-1-1-sale2",
      "Status": "Cancelled",
      "SaleDate": "2016-12-16T00:12:46.6650000Z",
      "Marketplace": "Manual",
      "MerchantItems": [
        {
          "Sku": "testSku2",
          "Quantity": 1,
          "UnitPrice": {
            "a": 1,
            "s": "$"
          },
          "PartNumber": ""
        }
      ],
      "FulfilledItems": [],
      "MerchantKits": [],
      "FulfilledKits": [],
      "Client": "",
      "Channel": "Manual",
      "ShippingCost": {
        "a": 0,
        "s": "$"
      },
      "ShippingCharge": {
        "a": 0,
        "s": "$"
      },
      "ShippingCarrier": "Unknown",
      "ShippingClass": "Unknown",
      "ShippingInfo": {
        "City": "",
        "Region": "",
        "Country": "",
        "PostalCode": "",
        "Address1": "",
        "Address2": ""
      },
      "ContactInfo": {
        "FirstName": "",
        "LastName": "",
        "Company": "",
        "Phone": "",
        "Email": ""
      },
      "Notes": "",
      "PrintedStatus": false,
      "LastPrintedDate": "0001-01-01T00:00:00.0000000Z"
    }
  ],
  "Status": "OK",
  "Errors": []
}

Body Params

DateField
string

2 possible values: Modified or Sale. A value of Modified will have the call return sales that have a last modified date within the date range specified. A value of Sale will search for sales that have an order date within the specified date range. (Using Sale is the how the call works when the DateField parameter isn't included at all)

FromDate
date
required

Start of inclusive time interval.

ToDate
date
required

End of inclusive time interval.

PageNumber
int32
PageSize
int32

Number of sales to return per page. Can be a value between 1000 and 10000. It is 10000 by default.

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

Headers

X-API-Version
int32

This is used to determine which version of the response is returned. If this header is excluded, you will be using the old version. We recommend using a value of "2" so you can get the most up-to-date and helpful response returned.

 

Date range must not be more than 7 days.

Suggest Edits

/getShipments

Heavy throttling.
Using this call, users can get current shipment information.

 
posthttps://app.skuvault.com/api/sales/getShipments
{  
  "SaleIds":[
    "String"
  ],
  "TenantToken":"String",
  "UserToken":"String"
}
A binary file was returned

You couldn't be authenticated

{  
   "Shipments":[  
      {  
         "SaleId":"String",
         "Source":"String",
         "TrackingNumber":"String",
         "Carrier":"String",
         "Class":"String",
         "Type":"String",
         "Status":"String",
         "AlternateId":"String",
         "ManifestId":"String",
         "Note":"String",
         "TotalWeight":0,
         "WeightUnit":"String",
         "TrackingUrl":"String",
         "CreatedDate":"0001-01-01T00:00:00.0000000Z",
         "EstimatedShipDate":"0001-01-01T00:00:00.0000000Z",
         "EstimatedDeliveryDate":"0001-01-01T00:00:00.0000000Z",
         "ShippedFrom":{  
            "WarehouseCode":"String",
            "ThreePL":false,
            "Address":{  
               "FirstName":"String",
               "LastName":"String",
               "MiddleName":"String",
               "Company":"String",
               "Email":"String",
               "Address1":"String",
               "Address2":"String",
               "City":"String",
               "Region":"String",
               "Country":"String",
               "PostalCode":"String"
            }
         },
         "Costs":[  
            {  
               "CostType":"String",
               "Cost":{  
                  "a":0,
                  "s":"$"
               }
            }
         ],
         "Parcels":[  
            {  
               "Number":0,
               "Items":[  
                  {  
                     "Id":"0",
                     "Sku":"String",
                     "Quantity":0
                  }
               ],
               "Kits":[  
                  {  
                     "Id":"0",
                     "Sku":"String",
                     "Quantity":0,
                     "Items":[  
                        {  
                           "Id":"0",
                           "Quantity":0
                        }
                     ]
                  }
               ],
               "Weight":0,
               "WeightUnit":"String",
               "Dimensions":{  
                  "Height":0,
                  "Width":0,
                  "Length":0,
                  "Unit":"String"
               },
               "Note":"String"
            }
         ],
         "LandedCosts":[  
            {  
               "Sku":"String",
               "Cost":{  
                  "a":0,
                  "s":"$"
               }
            }
         ],
         "FileIds":[  
            {  

            }
         ]
      }
   ],
   "Status":"String",
   "Errors":[  

   ]
}

Body Params

SaleIds
string

Sale ID - Must exist in SkuVault

TenantToken
string
required

Tenant Token associated with account.

UserToken
string
required

User Token associated with account.

 
Suggest Edits

/getSoldItems

Heavy throttling
Returns a list of sold items filtered by date. 10,000 sales are returned per page.

 
posthttps://app.skuvault.com/api/sales/getSoldItems
{
  "BreakDownKits": false,
  "EndDateUtc": "0001-01-01T00:00:00.0000000Z",
  "StartDateUtc": "0001-01-01T00:00:00.0000000Z",
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "SoldItems": [
    {
      "Date": "0001-01-01T00:00:00.0000000Z",
      "Quantity": 0,
      "SKU": "String",
      "TotalPrice": 0
    }
  ]
}

Body Params

StartDateUtc
date
required

Start date in UTC

EndDateUtc
date
required

End date in UTC

BreakDownKits
boolean

Break down kits to show component products.

PageNumber
int32

Specify page number to be returned

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 

Date range must not be more than 14 days.

Suggest Edits

/getSuppliers

Heavy throttling
Returns the list of current Suppliers in a SkuVault account.

 
posthttps://app.skuvault.com/api/products/getSuppliers
{
  "PageNumber": 0,
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Supplier": [
    {
      "IsEnabled": false,
      "Name": "String"
    }
  ]
}

Body Params

PageNumber
int32

10,000 results per page.

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

 
Suggest Edits

/getTokens

Very Light throttling. Use this call to retrieve your API tokens from SkuVault using your login email and password.

 
posthttps://app.skuvault.com/api/gettokens
{
  "Email": "String",
  "Password": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "TenantToken": "String",
  "UserToken": "String"
}

Body Params

Email
string
required

Your SkuVault login email.

Password
string
required

Your SkuVault login password.

 
Suggest Edits

/getTransactions

Heavy throttling
Look at your transaction history.

 
posthttps://app.skuvault.com/api/inventory/getTransactions
{  
   "WarehouseID":"String",
   "ExcludeTransactionReasons":[  
      "String"
   ],
   "FromDate":"0001-01-01T00:00:00.0000000Z",
   "ToDate":"0001-01-01T00:00:00.0000000Z",
   "TransactionReasons":[
     "String"
   ],
   "PageNumber":0,
   "PageSize":0,
   "TransactionType":"String",
   "TenantToken":"String",
   "UserToken":"String"
}
A binary file was returned

You couldn't be authenticated

{
  "Transactions":[  
      {  
         "User":"String",
         "Sku":"String",
         "Code":"String",
         "ScannedCode":"String",
         "Title":"String",
         "Quantity":0,
         "QuantityBefore":0,
         "QuantityAfter":0,
         "Location":"String",
         "TransactionType":"String",
         "TransactionReason":"String",
         "TransactionNote":"String",
         "TransactionDate":"0001-01-01T00:00:00.0000000Z",
         "Context":{  
            "Type":"Sale",
            "ID":"1-1-1-1-SALE1"
         }
      ]
   }

Body Params

WarehouseId
string
FromDate
date
required
ToDate
date
required

Max range: 1 week

TransactionType
string

All, Add, Remove, Pick, or Create

TransactionReasons
array of strings

This is a list of transactions reason to include in the response.

ExcludeTransactionReasons
array of strings

This is a list of transactions to exclude from the call

PageSize
int32

Valid range: 1000-10000

PageNumber
int32
TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

Headers

Content-Type
string
required
 

Sale Context for Picks

Picks that were made against a specific sale (using QC on Pick, Pick on QC, or Check Item Against Order) will show that sale's ID in the Context parameter.

Suggest Edits

/getWarehouseItemQuantities

Heavy throttling
This call returns SKUs and quantities from a specified warehouse. 10,000 SKUs returned per page.

 
posthttps://app.skuvault.com/api/inventory/getWarehouseItemQuantities
{
  "PageNumber": 0,
  "PageSize": 0,
  "TenantToken": "String",
  "UserToken": "String",
  "WarehouseId": 0
}
A binary file was returned

You couldn't be authenticated

{
  "ItemQuantities": [
    {
      "Quantity": 0,
      "Sku": "String"
    }
  ]
}

Body Params

WarehouseId
int32
required

from getWarehouses

PageNumber
int32

Page number to request.

PageSize
string

Number of objects to return per page. Can be any value between 1000 and 10000.

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 
Suggest Edits

/getWarehouseItemQuantity

Heavy throttling
Returns the quantity for a specified SKU.

 
posthttps://app.skuvault.com/api/inventory/getWarehouseItemQuantity
{
  "Sku": "String",
  "TenantToken": "String",
  "UserToken": "String",
  "WarehouseId": 0
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
    "String"
  ],
  "TotalQuantityOnHand": 0
}

Body Params

Sku
string
required

The Sku to filter by.

WarehouseId
int32
required

from getWarehouses

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 
Suggest Edits

/getWarehouses

Severe throttling. Returns all your regular warehouses.

 
posthttps://app.skuvault.com/api/inventory/getWarehouses
{
  "PageNumber": 0,
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
	"Warehouses": [{
		"Id": "String",
		"Code": "String"
	}]
}

Body Params

PageNumber
int32

Page to return.

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

 
Suggest Edits

/pickItem

Moderate throttling
Perform a pick transaction through the API.

 
posthttps://app.skuvault.com/api/inventory/pickItem
{
  "WarehouseId": 0,
  "LocationCode":"String",
  "Code": "String",
  "Sku": "String",
  "Quantity": 0,
  "IsExpressPick": false,
  "Note": "String",
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "PickItemStatus": "Ok"
}

Body Params

WarehouseId
int32
required

from getWarehouses

LocationCode
string

Location Code. Required if not using express pick.

Code
string

Product to pick. Required if not defining SKU.

Sku
string

Product Sku to pick. Required if not defining Code.

Quantity
int32
required

The quantity to pick

IsExpressPick
boolean

Uses express pick to determine location. Required if not defining location.

Note
string

The note to add to the transaction.

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

 
Suggest Edits

/receivePOItems

Moderate throttling

 
posthttps://app.skuvault.com/api/purchaseorders/receivePOItems
{
  "PoNumber": "String",
  "SupplierName": "String",
  "ReceiptDate": "0001-01-01T00:00:00.0000000Z",
  "LineItems": [
    {
      "Quantity": 1,
      "QuantityTo3PL": 0,
      "SKU": "String",
      "Location": "String"
    }
  ],
  "WarehouseId": 100,
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
    "String"
  ],
  "Status": "Success"
}

Body Params

PoNumber
string
required

The PO number to receive against.

SupplierName
string
required

Supplier associated with the PO.

ReceiptDate
date
required

Date and time items were received.

LineItems
object
LineItems.SKU
string
required

The SKU being received.

LineItems.Quantity
int32
required

The quantity being received.

LineItems.QuantityTo3PL
int32
required

The quantity received being sent to your 3PL warehouse.

Location
string

Location the item quantity is being received to.

WarehouseId
int32

from getWarehouses | Required if receiving to a location.

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 
Suggest Edits

/releaseHeldQuantities

Moderate throttling
Release holds before their expiration date expires.

 
posthttps://app.skuvault.com/api/sales/releaseHeldQuantities
{  
   "SkusToRelease":{  
      "String":0
   },
   "TenantToken":"String",
   "UserToken":"String"
}
A binary file was returned

You couldn't be authenticated

{
	"ReleasedQuantities": {
		"SKU_as_key": 0
	}
}

Body Params

SkusToRelease
object
required

Dictionary of SKUs and the quantity to release for each SKU

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 

Did you know?

Inventory quantity can be removed from holds by using a Transaction Reason that has the "Remove from holds" flag enabled. Set this flag on the Transaction Reasons page.

Suggest Edits

/removeItem

Moderate throttling
Remove quantity from a warehouse location. Bulk version available

 
posthttps://app.skuvault.com/api/inventory/removeItem
{  
   "Sku":"String",
   "Code":"String",
   "WarehouseId":0,
   "LocationCode":"String",
   "Quantity":0,
   "Reason":"String",
   "TenantToken":"String",
   "UserToken":"String"
}
A binary file was returned

You couldn't be authenticated

{
  "RemoveItemStatus": "Success"
}

Body Params

Code
string

Product Code. Required if SKU is omitted.

Sku
string

Product SKU. Required if Code is omitted.

WarehouseId
int32
required

from getWarehouses

LocationCode
string
required

The warehouse location to remove quantity from

Quantity
int32
required

The quantity to remove

Reason
string
required

Transaction reason must exist in SkuVault

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 
Suggest Edits

/removeItemBulk

Moderate throttling
Remove quantity from warehouse locations, 100 at a time.

 
posthttps://app.skuvault.com/api/inventory/removeItemBulk
{  
   "Items":[  
      {  
         "Sku":"String",
         "Code":"String",
         "WarehouseId":0,
         "LocationCode":"String",
         "Quantity":0,
         "Reason":"String"
      }
   ],
   "TenantToken":"String",
   "UserToken":"String"
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
    "String"
  ],
  "Results": [
    "Success"
  ],
  "Status": "OK"
}

Body Params

Items
object
Items.Code
string
required

Product Code. Required if SKU is omitted.

Items.Sku
string
required

Product SKU. Required if Code is omitted.

Items.WarehouseId
int32
required

from getWarehouses

Items.LocationCode
string
required

The warehouse location to remove quantity from

Items.Quantity
int32
required

The quantity to remove

Items.Reason
string
required

Transaction reason must exist in SkuVault

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 
Suggest Edits

/setItemQuantities

Moderate throttling.
Sets quantity for multiple products in one request.

 
posthttps://app.skuvault.com/api/inventory/setItemQuantities
{
  "Items": [
    {
      "LocationCode": "String",
      "Quantity": 0,
      "Sku": "String",
      "WarehouseId": 0
    }
  ],
  "TenantToken": "String",
  "UserToken": "String"
}
{
  "Items": [
    {
      "Code": "String",
      "LocationCode": "String",
      "Quantity": 0,
      "WarehouseId": 0
    }
  ],
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
    {
      "Code": "String",
      "Error": "Error explanation",
      "SKU": "String"
    }
  ],
  "Status": "Accepted"
}

Body Params

Items
object
Items.Code
string

Required if SKU is omitted.

Items.Sku
string

Required if Code is omitted.

Items.WarehouseId
int32
required

from getWarehouses

Items.LocationCode
string
required

The warehouse location to set quantity.

Items.Quantity
int32
required

The quantity to set.

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 

Maximum 100 objects under Items array!

Suggest Edits

/setItemQuantity

Moderate throttling
This lets you explicitly set quantity for an item in a warehouse's location.

 
posthttps://app.skuvault.com/api/inventory/setItemQuantity
{
	"Sku": "String",
	"Code": "String",
	"WarehouseId": 0,
	"LocationCode": "String",
	"Quantity": 0,
	"TenantToken": "String",
	"UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
	"SetItemQuantityStatusEnum": "Undefined"
}

Body Params

Code
string

The SKU you are setting quantity for. Used when SKU is blank.

Sku
string

The SKU you are setting quantity for. Used when Code is blank.

WarehouseId
int32
required

from getWarehouses

LocationCode
string
required

The warehouse location to set quantity in.

Quantity
int32
required

The quantity to set for a SKU.

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 
Suggest Edits

/setShipmentFile

Severe throttling.
Using this call, users can attach a base64 PDF file to Shipment Tracking Number.

 
posthttps://app.skuvault.com/api/sales/setShipmentFile
{  
   "Shipments":[  
      {  
         "SaleId":"String",
         "TrackingNumber":"String",
         "Carrier":"String",
         "FilesData":"String"
      }
   ],
   "TenantToken":"String",
   "UserToken":"String"
}
A binary file was returned

You couldn't be authenticated

{  
   "FileIds":[  
      {  

      }
   ],
   "Status":"String",
   "Errors":[  

   ]
}

Body Params

Shipments
object
 
Shipments.SaleId
string

Sale ID. Must exist in SkuVault.

Shipments.TrackingNumber
string

Tracking Number

Shipments.Carrier
string

The shipping company responsible for taking the delivery from Point A to Point B.

Shipments.FilesData
string

Valid Base64 sting.

TenantToken
string
required

Tenant Token

UserToken
string
required

User Token

 
Suggest Edits

/syncOnlineSale

Moderate throttling
Sync an online sale to SkuVault. If the sale does not exists, it's created. If it does exist, it's updated. ShippingStatus is required to create sale, but not update. ItemSkus is always required. Bulk version available: /syncOnlineSales

 
posthttps://app.skuvault.com/api/sales/syncOnlineSale
{
  "CheckoutStatus": "String",
  "FulfilledItems": [
    {
      "Quantity": 1,
      "Sku": "String",
      "UnitPrice": 0
    }
  ],
  "ItemSkus": [
    {
      "Quantity": 1,
      "Sku": "String",
      "UnitPrice": 0
    }
  ],
  "MarketplaceId": "String",
  "Notes": "String",
  "OrderDateUtc": "2016-01-01T00:00:00.0000000Z",
  "OrderId": "String",
  "OrderTotal": 0,
  "PaymentStatus": "String",
  "SaleState": "String",
  "ShippingInfo": {
    "City": "String",
    "CompanyName": "String",
    "Country": "String",
    "Email": "String",
    "FirstName": "String",
    "LastName": "String",
    "Line1": "String",
    "Line2": "String",
    "PhoneNumber": "String",
    "Postal": "String",
    "Region": "String",
    "ShippingCarrier": "String",
    "ShippingClass": "String",
    "ShippingStatus": "String"
  },
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "OrderId": "OK",
  "Status": "Success"
}

Body Params

OrderId
string
required

The order ID. After order is synced it's status can be retrieved by the same ID. NOTE: You can create AND update sales that do not originate from the API if you provide the full SkuVault Sale ID in this parameter. In other words, if a sale originated from Magento, you can update it in the API if you provide the full SkuVault Sale ID.

MarketplaceId
string

Add a distinct marketplace ID to your sale.

OrderDateUtc
date

The UTC date and time order was created.

OrderTotal
double

Total order price. Can be different than the sum sale price of sold SKUs.

CheckoutStatus
string

View guide. One of: NotVisited, Visited, OnHold, Completed, CompletedOffline, Cancelled

PaymentStatus
string

View guide. One of: NotSubmitted, Submitted, Deposited, Cleared, Failed

SaleState
string

View guide. One of: Active, Cancelled, Archived

Notes
string

Sale notes associated with this order.

ItemSkus
object
ItemSkus.Sku
string
required

The SKU sold.

ItemSkus.Quantity
int32
required

The sold quantity, must be higher than or equal to 1.

ItemSkus.UnitPrice
double

The sold unit price.

FulfilledItems
object
FulfilledItems.SKU
string

The SKU of the sold 3PL line item.

FulfilledItems.Quantity
int32

The sold quantity of the 3PL line item.

FulfilledItems.UnitPrice
double

The sold unit price of the 3PL line item.

ShippingInfo
object
ShippingInfo.ShippingStatus
string

View guide. One of: Unshipped, PendingShipment, PartiallyShipped, Shipped

ShippingInfo.ShippingCarrier
string
ShippingInfo.ShippingClass
string
ShippingInfo.FirstName
string
ShippingInfo.LastName
string
ShippingInfo.CompanyName
string
ShippingInfo.PhoneNumber
string
ShippingInfo.Email
string
ShippingInfo.Line1
string
ShippingInfo.Line2
string
ShippingInfo.City
string
ShippingInfo.Region
string
ShippingInfo.Postal
string
ShippingInfo.Country
string
TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 

ShippingInfo.ShippingStatus

This field is required to create sales, but not update them.

Suggest Edits

/syncOnlineSales

Severe throttling.
Can make this call 2x per minute, 100 sales max

 
posthttps://app.skuvault.com/api/sales/syncOnlineSales
{
  "Sales": [
    {
      "CheckoutStatus": "String",
      "FulfilledItems": [
        {
          "Quantity": 1,
          "Sku": "String",
          "UnitPrice": 0
        }
      ],
      "ItemSkus": [
        {
          "Quantity": 1,
          "Sku": "String",
          "UnitPrice": 0
        }
      ],
      "MarketplaceId": "String",
      "Notes": "String",
      "OrderDateUtc": "0001-01-01T00:00:00.0000000Z",
      "OrderId": "String",
      "OrderTotal": 0,
      "PaymentStatus": "String",
      "SaleState": "String",
      "ShippingInfo": {
        "City": "String",
        "CompanyName": "String",
        "Country": "String",
        "Email": "String",
        "FirstName": "String",
        "LastName": "String",
        "Line1": "String",
        "Line2": "String",
        "PhoneNumber": "String",
        "Postal": "String",
        "Region": "String",
        "ShippingCarrier": "String",
        "ShippingClass": "String",
        "ShippingStatus": "String"
      }
    }
  ],
  "TenantToken": "String",
  "Usertoken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
    {
      "ErrorMessages": [
        "String"
      ],
      "OrderId": "String"
    }
  ],
  "Status": "Accepted"
}
{
  "Errors": [
    {
      "ErrorMessages": [
        "String"
      ],
      "OrderId": "String"
    }
  ],
  "Status": "OK"
}

Body Params

Sales
object
Sales.MarketplaceId
string

Add a distinct marketplace ID to your sale.

Sales.OrderId
string
required

The order ID. After order is synced it's status can be retrieved by the same ID. NOTE: You can create AND update sales that do not originate from the API if you provide the full SkuVault Sale ID in this parameter. In other words, if a sale originated from Magento, you can update it in the API if you provide the full SkuVault Sale ID.

Sales.OrderDateUtc
date

The UTC date and time order was created.

Sales.OrderTotal
double

Total order price. Can be different than the sum sale price of sold SKUs.

Sales.CheckoutStatus
string

View guide. One of: NotVisited, Visited, OnHold, Completed, CompletedOffline, Cancelled

Sales.PaymentStatus
string

View guide. One of: NotSubmitted, Submitted, Deposited, Cleared, Failed

Sales.Notes
string

Sale notes associated with this order.

Sales.SaleState
string

View guide. One of: Active, Cancelled, Archived

Sales.ItemSkus
object
Sales.ItemSkus.Sku
string
required

The SKU sold.

Sales.ItemSkus.Quantity
int32
required

The sold quantity.

Sales.ItemSkus.UnitPrice
double

The sold unit price.

Sales.FulfilledItems
object
Sales.FulfilledItems.Sku
string

The SKU of the sold 3PL/FBA fulfilled item.

Sales.FulfilledItems.Quantity
int32

The quantity of the sold 3PL fulfilled item.

Sales.FulfilledItems.UnitPrice
double

The unit price of the sold 3PL fulfilled item.

Sales.ShippingInfo
object
Sales.ShippingInfo.ShippingStatus
string

View guide. One of: Unshipped, PendingShipment, PartiallyShipped, Shipped

Sales.ShippingInfo.ShippingCarrier
string
Sales.ShippingInfo.ShippingClass
string
Sales.ShippingInfo.FirstName
string
Sales.ShippingInfo.LastName
string
Sales.ShippingInfo.CompanyName
string
Sales.ShippingInfo.PhoneNumber
string
Sales.ShippingInfo.Email
string
Sales.ShippingInfo.Line1
string
Sales.ShippingInfo.Line2
string
Sales.ShippingInfo.City
string
Sales.ShippingInfo.Region
string
Sales.ShippingInfo.Postal
string
Sales.ShippingInfo.Country
string
TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 
Suggest Edits

/syncShippedSaleAndRemoveItems

Moderate throttling
This method syncs a shipped sale and auto-removes quantity. It will auto-remove quantities based on the first match alphabetically in your warehouses & locations. If a warehouse is provided, then it will use that warehouse.


Warning:

If your account has AutoRemove enabled, then syncing sales using this call will result in the system attempting to remove sale item quantity twice. Please use with caution and if you are unsure if this warning applies to your account, please submit a support ticket here.

 
posthttps://app.skuvault.com/api/sales/syncShippedSaleAndRemoveItems
{
  "FulfilledItems": [
    {
      "Quantity": 1,
      "Sku": "String",
      "UnitPrice": 0
    }
  ],
  "ItemSkus": [
    {
      "Quantity": 1,
      "Sku": "String",
      "UnitPrice": 0
    }
  ],
  "Notes": "String",
  "OrderDateUtc": "0001-01-01T00:00:00.0000000Z",
  "OrderId": "String",
  "OrderTotal": 0,
  "ShippingInfo": {
    "City": "String",
    "CompanyName": "String",
    "Country": "String",
    "Email": "String",
    "FirstName": "String",
    "LastName": "String",
    "Line1": "String",
    "Line2": "String",
    "PhoneNumber": "String",
    "Postal": "String",
    "Region": "String",
    "ShippingCarrier": "String",
    "ShippingClass": "String"
  },
  "TenantToken": "String",
  "UserToken": "String",
  "WarehouseId": 0
}
A binary file was returned

You couldn't be authenticated

{
  "RemoveItemErrors": [
    "String"
  ]
}

Body Params

OrderId
string
required

The order ID. After order is synced it's status can be retrieved by the same ID. NOTE: You can create AND update sales that do not originate from the API if you provide the full SkuVault Sale ID in this parameter. In other words, if a sale originated from Magento, you can update it in the API if you provide the full SkuVault Sale ID.

WarehouseId
int32

The warehouse to autoRemove from.

OrderDateUtc
date

The UTC date and time order was created.

OrderTotal
double

Total order price. Can be different than the sum sale price of sold SKUs.

Notes
string

Sale notes associated with this order.

ItemSkus
object
ItemSkus.Sku
string
required

The SKU sold.

ItemSkus.Quantity
int32
required

The sold quantity.

ItemSkus.UnitPrice
double
required

The sold unit price.

FulfilledItems
array

List of 3PL-fulfilled items in the order.

ShippingInfo
object
ShippingInfo.ShippingStatus
string

One of: Unshipped, PendingShipment, PartiallyShipped, Shipped

ShippingInfo.ShippingCarrier
string
ShippingInfo.ShippingClass
string
ShippingInfo.FirstName
string
ShippingInfo.LastName
string
ShippingInfo.CompanyName
string
ShippingInfo.PhoneNumber
string
ShippingInfo.Email
string
ShippingInfo.Line1
string
ShippingInfo.Line2
string
ShippingInfo.City
string
ShippingInfo.Region
string
ShippingInfo.Postal
string
ShippingInfo.Country
string
TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 
Suggest Edits

/updateExternalWarehouseQuantities

Severe throttling
Set the quantity of SKUs in a specified external warehouse. The limit is 100,000 SKUs per call.

 
posthttps://app.skuvault.com/api/inventory/updateExternalWarehouseQuantities
{
  "Quantities": [
    {
      "InStockQuantity": 0,
      "InboundQuantity": 0,
      "ReserveQuantity": 0,
      "Sku": "String",
      "TotalQuantity": 0,
      "TransferQuantity": 0
    }
  ],
  "TenantToken": "String",
  "UserToken": "String",
  "WarehouseId": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
    "String"
  ],
  "Status": "OK"
}

Body Params

WarehouseId
string
required

from getExternalWarehouses

Quantities
object
Quantities.SKU
string
required

The SKU whose quantities are being updated.

Quantities.InStockQuantity
int32

The "In Stock" quantity of that SKU. If excluded we will not 0 out the quantity or update it. We will just leave it how it currently is.

Quantities.InboundQuantity
int32

The "Inbound" quantity of that SKU. If excluded we will not 0 out the quantity or update it. We will just leave it how it currently is.

Quantities.TransferQuantity
int32

The "Transfer" quantity of that SKU. If excluded we will not 0 out the quantity or update it. We will just leave it how it currently is.

Quantities.ReserveQuantity
int32

The "Reserve" quantity of that SKU. If excluded we will not 0 out the quantity or update it. We will just leave it how it currently is.

Quantities.TotalQuantity
int32

The total quantity of that SKU in the external warehouse. We recommend TotalQuantity being the sum of the previous 4 quantities as best practice.

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

 

This request overwrites the entire external warehouse.

Any SKU in an external warehouse that is omitted from the next request will be removed from said warehouse.

Suggest Edits

/updateHandlingTime

Severe throttling
Update the handling time for each product per Amazon channel account, 500 at a time.

 
posthttps://app.skuvault.com/api/products/updateHandlingTime
{
  "Items": [
    {
      "HandlingTime": [
        {
          "AccountId": "String",
          "Quantity": 0
        }
      ],
      "Sku": "String"
    }
  ],
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
  ],
  "Status": "Accepted"
}
{
  "Errors": [
  ],
  "Status": "OK"
}

Body Params

Items
object
Items.Sku
object
Items.Sku.HandlingTime
object
Items.Sku.HandlingTime.AccountId
string
required

The channel account ID acquired from /getIntegrations request

Items.Sku.HandlingTime.Quantity
int32
required

Between 1 and 30, the number of days it takes to fulfill this SKU.

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

Headers

Content-Type
string
Accept
string
 
Suggest Edits

/updateOnlineSaleStatus

Light throttling
Update the status of a sale.

 
posthttps://app.skuvault.com/api/sales/updateOnlineSaleStatus
{
  "SaleId": "String",
  "Status": "String",
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{}
{
  "Status": "OK",
  "Errors": []
}

Body Params

SaleId
string
required

The full SkuVault Sale ID to be updated. NOTE: You can either use SaleID or OrderID. You cannot use both of them.

OrderId
string

The Order ID (not full SkuVault Sale ID) of the order to be updated. NOTE: You can only use this parameter for sales created via the API. If you want to change sale status for sales that did not originate from the API, you must use the 'SaleID' parameter.

Status
string
required

One of: Pending, ReadyToShip, Completed, Cancelled, Invalid, ShippedUnpaid

TenantToken
string
required

from getTokens

UserToken
string
required

from getTokens

Headers

X-API-Version
int32

This is used to determine which version of the response is returned. If this header is excluded, you will be using the old version. We recommend using a value of "2" so you can get the most up-to-date and helpful response returned.

 
Suggest Edits

/updateProduct

Moderate throttling
Update your product details. Bulk version available: /updateProducts

 
posthttps://app.skuvault.com/api/products/updateProduct
{
  "Attributes": {
    "AttributeName": "AttributeValue"
  },
  "Brand": "String",
  "Classification": "String",
  "Code": "String",
  "Cost": 0.00000,
  "Description": "String",
  "LongDescription": "String",
  "MinimumOrderQuantity": 0,
  "MinimumOrderQuantityInfo": "String",
  "Note": "String",
  "PartNumber": "String",
  "Pictures": [
    "String"
  ],
  "ReorderPoint": 0,
  "RetailPrice": 0.00000,
  "SalePrice": 0.00000,
  "ShortDescription": "String",
  "Sku": "String",
  "Statuses": [
    "String"
  ],
  "SupplierInfo": [
    {
      "Cost": 0.00000,
      "LeadTime": 0,
      "SupplierName": "String",
      "SupplierPartNumber": "String",
      "isActive": true,
      "isPrimary": false
    }
  ],
  "TenantToken": "String",
  "UserToken": "String",
  "VariationParentSku": "String",
  "Weight": 0.00,
  "WeightUnit": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
  ],
  "Status": "OK"
}

Body Params

Attributes
object

Dictionary where key is attribute name and value is attribute value. NOTE: If you want to update attributes, please include the Classification value as well.

Brand
string

Must exist in SkuVault.

Classification
string

Must exist in SkuVault.

Code
string

Barcode number.

Cost
double

Accepts decimal; Your overall cost on hand for that product. Used for a default (fallback) cost field or for the cost averaging feature in SkuVault.

Description
string

Equals "Title" inside SkuVault UI.

LongDescription
string

Limit 65665 characters.

MinimumOrderQuantity
int32
MinimumOrderQuantityInfo
string
Note
string

The note to place o the product.

PartNumber
string

Manufacturer part number.

Pictures
array of strings

List of picture urls

ReorderPoint
int32

The point at which you should reorder quantity.

RetailPrice
double

Accepts decimal; MSRP per unit

SalePrice
double

Accepts decimal; Your selling price per unit

ShortDescription
string

Limit 1000 characters

Sku
string
required

The SKU you wish to update.

Statuses
array of strings

List of statuses on the product.

SupplierInfo
object
SupplierInfo.Cost
double

This is the supplier's cost for that item.

SupplierInfo.LeadTime
int32

Supplier's lead time.

SupplierInfo.isPrimary
boolean
required

At least 1 supplier must be specified as primary (true).

SupplierInfo.SupplierName
string
required

The name of your supplier in SkuVault. It must exist in SkuVault and at least one supplier is required.

SupplierInfo.SupplierPartNumber
string

Supplier's part number.

SupplierInfo.isActive
boolean

If a supplier is active, we will use the supplier information (Cost, Supplier Part Number, etc.) when creating a Purchase Order.

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

VariationParentSku
string
Weight
double

Accepts decimal

WeightUnit
string

One of: "lbs", "kgs", "oz", "g"

 

Warning

  • Be sure to read Modifying Products.
    • Blank values are interpreted literally. Omit the field to not update it.
Suggest Edits

/updateProducts

Heavy throttling.
Update products in SkuVault, 100 at a time.

 
posthttps://app.skuvault.com/api/products/updateProducts
{
  "Items": [
    {
      "Attributes": {
        "AttributeName": "AttributeValue"
      },
      "Brand": "String",
      "Classification": "String",
      "Code": "String",
      "Cost": 0.00000,
      "Description": "String",
      "LongDescription": "String",
      "MinimumOrderQuantity": 0,
      "MinimumOrderQuantityInfo": "String",
      "Note": "String",
      "PartNumber": "String",
      "Pictures": [
        "http://www.example.com/image.jpg"
      ],
      "ReorderPoint": 0,
      "RetailPrice": 0.00000,
      "SalePrice": 0.00000,
      "ShortDescription": "String",
      "Sku": "String",
      "Statuses": [
        "String"
      ],
      "SupplierInfo": [
        {
          "Cost": 0.00000,
          "LeadTime": 0,
          "SupplierName": "String",
          "SupplierPartNumber": "String",
          "isActive": true,
          "isPrimary": true
        }
      ],
      "VariationParentSku": "String",
      "Weight": 0.00,
      "WeightUnit": "String"
    }
  ],
  "TenantToken": "String",
  "UserToken": "String"
}
A binary file was returned

You couldn't be authenticated

{
  "Errors": [
    "String"
  ],
  "Status": "Accepted"
}
{
  "Errors": [
    "String"
  ],
  "Status": "OK"
}

Body Params

Items
object
Items.Attributes
object

Dictionary list where name of attribute is key(AttributeName), value of attribute as value(AttributeValue). NOTE: If you want to update attributes, please include the Classification value as well.

Items.Brand
string

If provided, brand must exist in SkuVault.

Items.Classification
string

If provided, classification must exist in SkuVault.

Items.Code
string

Barcode number.

Items.Cost
double

Accepts decimal; Your overall cost on hand for that product. Used for a default (fallback) cost field or for the cost averaging feature in SkuVault.

Items.Description
string

Equals "Title" inside SkuVault UI.

Items.LongDescription
string

Limit 65665 characters.

Items.MinimumOrderQuantity
int32
Items.MinimumOrderQuantityInfo
string
Items.Note
string

The note to place o the product.

Items.PartNumber
string

Manufacturer part number.

Items.Pictures
array of strings

List of picture urls

Items.ReorderPoint
int32

The point at which you should reorder quantity.

Items.RetailPrice
double

Accepts decimal; MSRP per unit

Items.ShortDescription
string

Limit 1000 characters

Items.SalePrice
double

Accepts decimal; Your selling price per unit

Items.Sku
string
required

The SKU you wish to update.

Items.Statuses
array of strings

List of statuses on the product.

Items.SupplierInfo
object
Items.SupplierInfo.Cost
double

This is the supplier's cost for that item.

Items.SupplierInfo.LeadTime
int32

Supplier's lead time.

Items.SupplierInfo.SupplierName
string
required

The name of your supplier in SkuVault. It must exist in SkuVault and at least one supplier is required.

Items.SupplierInfo.SupplierPartNumber
string

Supplier's part number.

Items.SupplierInfo.isActive
boolean

If true, will use this supplier information when creating a PO.

Items.SupplierInfo.isPrimary
boolean
required

Must have at least one primary supplier set to true

Items.VariationParentSku
string
Items.Weight
double

Accepts decimal

Items.WeightUnit
string

One of: "lbs", "kgs", "oz", "g"

TenantToken
string
required

from getTokens.

UserToken
string
required

from getTokens.

 

Warning

  • Be sure to read Modifying Products.
    • Blank values are interpreted literally. Omit the field to not update it.
Suggest Edits

/updateShipments

Severe throttling.
Using this call, users can update shipments to a sale.

 
posthttps://app.skuvault.com/api/sales/updateShipments
{  
   "SaleIds":[  
      "String"
   ],
   "TenantToken":"String",
   "UserToken":"String"
}
A binary file was returned

You couldn't be authenticated

		{  
   "Status":"String",
   "Errors":[  

   ]
   }

Body Params

Shipments
object
Shipments.TrackingNumber
string

The tracking number associated with the shipment.

Shipments.Carrier
string

Shipping company responsible for taking the delivery from Point A to Point B.

Shipments.Status
string

The Status of a shipment if a tracking number has been assigned by the carrier.

Shipments.LandedCosts
object
Shipments.LandedCosts.Sku
string

Sku associated with Landed cost.

Shipments.LandedCosts.Amount
double

Amount value of Landed Cost. Accepts decimals.

Shipments.LandedCosts.CurrencyIsoCode
string

Type of Currency

SaleIds
string

List of Sale IDs.

TenantToken
string
required

Tenant Token to access account

UserToken
string
required

User Token

 

Lorem ipsum dolor sit amet, consectetur adipiscing elit.