Events

You can subscribe to events and view the events that are published to IBM Cloud® Object Storage (COS) endpoints or webhook endpoints. These endpoints are flexible, cost-effective, and scalable for your unstructured data.

Important: The Inventory service is not meant for running push mechanisms in real time. It can be used for occasional pushes to marketplaces that do not call inventory APIs directly. It can also be used for accounting and auditing purposes.

Event characteristics

The events can be delivered through IBM® Cloud Object Storage and webhooks and you must understand the key differences while configuring the events. For more information, see Comparative analysis for webhooks and COS.

Event messages and event triggering
  • All item-related changes lead to computing availability and trigger an event message. Examples of item-related changes are configuration changes (such as updates to safety stock, fulfillment options, changes in parent-child relationship), transaction-related changes, or bulk actions like distribution group sync.
  • For Sync Supply and Sync Demand PUT API requests, Inventory Visibility relies on the most recent sourceTs value for the record to know whether data is up to date and an event needs to be triggered. If sourceTs is not specified, then the timestamp of the API call is used. If an API request includes a sourceTs that is earlier than the last time that the sync occurred, then the sync is ignored and an event is not triggered.
  • Event messages are sent at least one time from inventory service to the endpoint. In some cases, messages are sent more than one time. Therefore, you might notice duplicate event messages from time to time for various reasons. When processing data, you must ensure to remove all the duplicate event messages.
The following table lists a rough estimate of the number of events raised for the transactions requested. The actual number of events is influenced by other factors such as the number of concurrent transactions for similar items.
Table 1. Estimation of events expected to be published
Transaction Notes Minimum events raised Maximum events raised Additional information
Create a reservation Open order reservation in Inventory Visibility. 2 (PICK-1 & SHIP-1) 2 (PICK-1 & SHIP-1)  
Create order and reservationId Reservation is consumed rsvr_demand is created in Inventory Visibility. 2 (PICK-1 & SHIP-1) 2 (PICK-1 & SHIP-1)  
Schedule order rsvr_demand is converted to scheduled demand. 0 4 (PICK-2 & SHIP-2) Depending on work load pattern at that point in time, changes can either get aggregated or not get aggregated.
Release order Temporary reservation created (of type for_demand). Scheduled demand is converted to allocated demand. 0 4 (PICK-2 & SHIP-2) Depending on work load pattern, changes can either get aggregated or not get aggregated.
Confirm shipment Supply is reduced. Demand is reduced. 0 4 (PICK-2 & SHIP-2) Depending on work load pattern at that point in time, changes can either get aggregated or not get aggregated.

Events delivery

Events can be delivered through IBM Cloud Object Storage and webhooks. Understand the key differences while configuring the events.
For more information, see Events integration.