Skip to content

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.

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

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

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.