Catalog events
These are the catalog events. Each one reaches a webhook subscription as the data of a webhook delivery, whose type is the event type shown under its heading. Every required property is always present; a nullable one may be null.
ProductCreated
Section titled “ProductCreated”Type: jtWMS.Catalog.Events.V1.ProductCreated
Published when a product is created, with its units of measure and barcodes.
Payload: The full state of a newly created product.
| Property | Type | Required | Description |
|---|---|---|---|
ProductId |
string (uuid) | Yes | |
Sku |
string | Yes | Max length 64. |
Name |
string | Yes | Max length 200. |
Description |
string, nullable | Yes | |
Category |
string, nullable | Yes | |
Status |
string, one of Active, Inactive, PendingDelete |
Yes | |
TrackLots |
boolean | Yes | |
TrackSerials |
boolean | Yes | |
TrackExpiry |
boolean | Yes | |
ShelfLifeDays |
integer, nullable | Yes | Minimum 1. Maximum 3650. |
RotationStrategy |
string, one of Fifo, Lifo, Fefo |
Yes | |
VelocityClass |
string, one of A, B, C, nullable |
Yes | |
WeightUnit |
string, one of Kg, G, Lb, Oz |
Yes | |
LengthUnit |
string, one of Cm, Mm, M, In |
Yes | |
UnitsOfMeasure |
array of objects | Yes | One unit of measure of a product. Weights are in the product’s WeightUnit and dimensions in its LengthUnit. At least 1 item. At most 5 items. |
UnitsOfMeasure[].UnitOfMeasureId |
string (uuid) | Yes | |
UnitsOfMeasure[].Code |
string | Yes | Pattern ^[A-Z0-9]{1,10}$. |
UnitsOfMeasure[].Name |
string | Yes | Max length 50. |
UnitsOfMeasure[].Level |
integer | Yes | 0 for the base unit, then 1, 2, … upwards. Minimum 0. |
UnitsOfMeasure[].QuantityOfLevelBelow |
integer | Yes | 1 for the base unit, otherwise at least 2. Minimum 1. |
UnitsOfMeasure[].BaseUnitQuantity |
integer | Yes | How many base units the level holds (the product of the quantities up to it). Minimum 1. |
UnitsOfMeasure[].Weight |
number, nullable | Yes | |
UnitsOfMeasure[].Length |
number, nullable | Yes | |
UnitsOfMeasure[].Width |
number, nullable | Yes | |
UnitsOfMeasure[].Height |
number, nullable | Yes | |
UnitsOfMeasure[].Barcodes |
array of objects | Yes | A barcode on one unit of measure. At most 10 items. |
UnitsOfMeasure[].Barcodes[].BarcodeId |
string (uuid) | Yes | |
UnitsOfMeasure[].Barcodes[].Value |
string | Yes | Max length 64. |
UnitsOfMeasure[].Barcodes[].Type |
string, one of Gtin, Other |
Yes | |
CreatedAt |
string (date-time) | Yes | |
UpdatedAt |
string (date-time) | Yes |
ProductUpdated
Section titled “ProductUpdated”Type: jtWMS.Catalog.Events.V1.ProductUpdated
Published when a product’s fields, units of measure or barcodes change. Carries the full state after the change, not a diff.
Payload: The full state of a product after an update that changed something.
| Property | Type | Required | Description |
|---|---|---|---|
ProductId |
string (uuid) | Yes | |
Sku |
string | Yes | Max length 64. |
Name |
string | Yes | Max length 200. |
Description |
string, nullable | Yes | |
Category |
string, nullable | Yes | |
Status |
string, one of Active, Inactive, PendingDelete |
Yes | |
TrackLots |
boolean | Yes | |
TrackSerials |
boolean | Yes | |
TrackExpiry |
boolean | Yes | |
ShelfLifeDays |
integer, nullable | Yes | Minimum 1. Maximum 3650. |
RotationStrategy |
string, one of Fifo, Lifo, Fefo |
Yes | |
VelocityClass |
string, one of A, B, C, nullable |
Yes | |
WeightUnit |
string, one of Kg, G, Lb, Oz |
Yes | |
LengthUnit |
string, one of Cm, Mm, M, In |
Yes | |
UnitsOfMeasure |
array of objects | Yes | One unit of measure of a product. Weights are in the product’s WeightUnit and dimensions in its LengthUnit. At least 1 item. At most 5 items. |
UnitsOfMeasure[].UnitOfMeasureId |
string (uuid) | Yes | |
UnitsOfMeasure[].Code |
string | Yes | Pattern ^[A-Z0-9]{1,10}$. |
UnitsOfMeasure[].Name |
string | Yes | Max length 50. |
UnitsOfMeasure[].Level |
integer | Yes | 0 for the base unit, then 1, 2, … upwards. Minimum 0. |
UnitsOfMeasure[].QuantityOfLevelBelow |
integer | Yes | 1 for the base unit, otherwise at least 2. Minimum 1. |
UnitsOfMeasure[].BaseUnitQuantity |
integer | Yes | How many base units the level holds (the product of the quantities up to it). Minimum 1. |
UnitsOfMeasure[].Weight |
number, nullable | Yes | |
UnitsOfMeasure[].Length |
number, nullable | Yes | |
UnitsOfMeasure[].Width |
number, nullable | Yes | |
UnitsOfMeasure[].Height |
number, nullable | Yes | |
UnitsOfMeasure[].Barcodes |
array of objects | Yes | A barcode on one unit of measure. At most 10 items. |
UnitsOfMeasure[].Barcodes[].BarcodeId |
string (uuid) | Yes | |
UnitsOfMeasure[].Barcodes[].Value |
string | Yes | Max length 64. |
UnitsOfMeasure[].Barcodes[].Type |
string, one of Gtin, Other |
Yes | |
CreatedAt |
string (date-time) | Yes | |
UpdatedAt |
string (date-time) | Yes |
ProductStatusChanged
Section titled “ProductStatusChanged”Type: jtWMS.Catalog.Events.V1.ProductStatusChanged
Published when a product is deactivated, activated or deleted. Carries the full product with its new status, plus the previous and new status.
Payload: The full state of a product after its status changed (Status equals NewStatus), plus the previous and new status. A delete (NewStatus PendingDelete) carries the units of measure and barcodes the product had when it was deleted; they are deleted with it, and its SKU and barcodes become free for reuse.
| Property | Type | Required | Description |
|---|---|---|---|
ProductId |
string (uuid) | Yes | |
Sku |
string | Yes | Max length 64. |
Name |
string | Yes | Max length 200. |
Description |
string, nullable | Yes | |
Category |
string, nullable | Yes | |
Status |
string, one of Active, Inactive, PendingDelete |
Yes | |
TrackLots |
boolean | Yes | |
TrackSerials |
boolean | Yes | |
TrackExpiry |
boolean | Yes | |
ShelfLifeDays |
integer, nullable | Yes | Minimum 1. Maximum 3650. |
RotationStrategy |
string, one of Fifo, Lifo, Fefo |
Yes | |
VelocityClass |
string, one of A, B, C, nullable |
Yes | |
WeightUnit |
string, one of Kg, G, Lb, Oz |
Yes | |
LengthUnit |
string, one of Cm, Mm, M, In |
Yes | |
UnitsOfMeasure |
array of objects | Yes | One unit of measure of a product. Weights are in the product’s WeightUnit and dimensions in its LengthUnit. At least 1 item. At most 5 items. |
UnitsOfMeasure[].UnitOfMeasureId |
string (uuid) | Yes | |
UnitsOfMeasure[].Code |
string | Yes | Pattern ^[A-Z0-9]{1,10}$. |
UnitsOfMeasure[].Name |
string | Yes | Max length 50. |
UnitsOfMeasure[].Level |
integer | Yes | 0 for the base unit, then 1, 2, … upwards. Minimum 0. |
UnitsOfMeasure[].QuantityOfLevelBelow |
integer | Yes | 1 for the base unit, otherwise at least 2. Minimum 1. |
UnitsOfMeasure[].BaseUnitQuantity |
integer | Yes | How many base units the level holds (the product of the quantities up to it). Minimum 1. |
UnitsOfMeasure[].Weight |
number, nullable | Yes | |
UnitsOfMeasure[].Length |
number, nullable | Yes | |
UnitsOfMeasure[].Width |
number, nullable | Yes | |
UnitsOfMeasure[].Height |
number, nullable | Yes | |
UnitsOfMeasure[].Barcodes |
array of objects | Yes | A barcode on one unit of measure. At most 10 items. |
UnitsOfMeasure[].Barcodes[].BarcodeId |
string (uuid) | Yes | |
UnitsOfMeasure[].Barcodes[].Value |
string | Yes | Max length 64. |
UnitsOfMeasure[].Barcodes[].Type |
string, one of Gtin, Other |
Yes | |
CreatedAt |
string (date-time) | Yes | |
UpdatedAt |
string (date-time) | Yes | |
PreviousStatus |
string, one of Active, Inactive |
Yes | |
NewStatus |
string, one of Active, Inactive, PendingDelete |
Yes | |
ChangedAt |
string (date-time) | Yes | When the status changed; the same as UpdatedAt. |