新規イベント・フォーマット

Sterling Intelligent Promising では、 inventory serviceの新しいイベント・フォーマットが導入されています。 今後、新しいイベントは新しい形式で配信されます。

以下のリストでは、新しいフォーマットで配信されるイベントについて触れている:

イベントの変更

インベントリに何らかの変更が発生すると、指定したエンドポイントに以下のイベントがパブリッシュされる。
Inventory Visibility のイベント ID ペイロード内のイベント・コード
非推奨フィーチャーSupply.Change Deprecated featuresupplyChange
supplyChange.v2 supplyChange.v2
productAvailability.v2 productAvailability.v2
availableSupplyChange.v2 availableSupplyChange.v2
dgAvailabilityChange.v2 dgAvailabilityChange.v2
Demand.Change demandChange

スナップショット・イベント

以下のスナップショット・イベントを使用して、変更イベントを外部システムにパブリッシュできます。
Inventory Visibility のイベント ID ペイロード内のイベント・コード
productAvailabilitySnapshot.v2 productAvailabilitySnapshot.v2
dgAvailabilitySnapshot.v2 dgAvailabilitySnapshot.v2
demandSnapshot demandSnapshot
supplySnapshot supplySnapshot
注:
  • 2024年6月以前の需給記録、および2024年6月以降にデルタ調整が行われていない記録については、スナップショットイベントでそれらの記録を表示するには、再度同期を行う必要があります。
  • 供給または需要の有効期限が到来すると、影響を受けるアイテムについて、ノードレベルおよびネットワークレベルのイベントが公開されます。これには、すべての可用性イベントおよび利用可能な供給イベントが含まれます。
非推奨フィーチャーSupply.Change
アイテムの供給が変更されると、 Supply.Change イベントがトリガーされます。 このイベントのコードは supplyChangeです。
以下のサンプル JSON は、パブリッシュされた Supply.Change イベントの例です。
{
  "eventbatch":[
   {
     "channel":"Order Management",
     "identifiers":[],
     "events":[
    {
      "code": "supplyChange",
      "timestamp": "2020-01-18T06:00:00.021Z",
      "attributes": [
          { "name":"tenantId", "type":"String", "value":"tenant1" },
          { "name":"productID", "type":"String", "value":"SKU1024" },
          { "name":"unitOfMeasure", "type":"String", "value":"EACH" },
          { "name":"productClass", "type":"String", "value":"NEW" },
          { "name":"shipNode", "type":"String", "value":"Matrix-Store-001" },
          { "name":"shipByDate", "type":"dateTime", "value":"2500-01-01T00:00:00.000Z" },
          { "name":"lineReference", "type":"String", "value":"" },
          { "name":"reference", "type":"String", "value":"" },
          { "name":"referenceType", "type":"String", "value":"" },
          { "name":"segment", "type":"String", "value":"" },
          { "name":"segmentType", "type":"String", "value":"" },
          { "name":"quantity", "type":"Number", "value":"1.0" },
          { "name":"changedQuantity", "type":"Number", "value":"1.0" },
          { "name":"type", "type":"String", "value":"ONHAND_BACKROOM_01" },
          { "name":"baseType", "type":"String", "value":"ONHAND" },
          { "name":"tagNumber", "type":"String", "value":"|||" },
          { "name":"updatedTs", "type":"dateTime", "value":"IGNORE_VALUE" },
          { "name":"eta", "type":"dateTime", "value":"1900-01-01T00:00:00.000Z" },
          { "name":"adjustmentReason", "type":"String", "value":"ADJUSTMENT"},
        ]
        },
    {
      "code":"supplyChange",
      "timestamp":"2020-01-03T15:48:02Z",
      "attributes":[
          { "name":"tenantId", "value":"tenant1", "type":"String"},
          { "name":"productID", "value":"SKU1024", "type":"String"},
          { "name":"unitOfMeasure", "value":"EACH", "type":"String"},
          { "name":"productClass", "value":"NEW", "type":"String"},
          { "name":"lineReference", "value":" ", "type":"String"},
          { "name":"shipNode", "value":"Matrix-Store-002", "type":"String"},
          { "name":"shipByDate", "value":"2500-01-01T00:00:00Z", "type":"dateTime"},
          { "name":"reference", "value":" ", "type":"String"},
          { "name":"referenceType", "value":" ", "type":"String"},
          { "name":"quantity", "value":"200.0", "type":"Number"},
          { "name":"segment", "value":" ", "type":"String"},
          { "name":"segmentType", "value":" ", "type":"String"},
          { "name":"type", "type":"String", "value":"ONHAND_BACKROOM_01" },
          { "name":"baseType", "type":"String", "value":"ONHAND" },
          { "name":"tagNumber", "type":"String", "value":"|||" },
          { "name":"updatedTs", "value":"2020-01-03T15:47:48Z", "type":"dateTime"},
          { "name":"eta", "value":"1900-01-01T00:00:00Z", "type":"dateTime"},
          { "name":"adjustmentReason", "type":"String", "value":"ADJUSTMENT"},
        ]}
     ]
  }]
}
updatedTs フィールドは、この供給のためにデータベースが更新された時刻を示します。 データベース・レコードが存在しない場合、 forcePublishの間は NULL になります。 デフォルトでは、供給同期が実行されると、供給変更イベントは、供給同期の一部としてアップサートする必要があるレコードに対してのみパブリッシュされます。 ただし、供給同期で forcePublish が true として渡されると、供給同期の一部であるすべての供給レコードに対してイベントがパブリッシュされます。 これにより、供給レコードの受信による可用性の変化に関係なく、ノードとネットワークの可用性変化イベントも公表される。 供給レコードがシステムに存在せず、同期プロセスの一部として無視される場合、このレコードのイベントに対して updatedTs は NULL になります。
注: このパラメータは productAvailability.v2, availableSupplyChange.v2, dgAvailabilityChange.v2 に適用される。
supplyChange.v2
アイテムの供給が変更されると、 supplyChange.v2 イベントがトリガーされます。 このイベントのコードは supplyChange.v2です。
以下のサンプル JSON は、パブリッシュされた supplyChange.v2 イベントの例です。
{
  "type": "supplyChange.v2",
  "datacontenttype": "application/json",
  "id": "2a8d36a3-485b-3fc0-bd15-d530625a6ec5",
  "specversion": "1.0",
  "time": "2023-08-30T10:20:31.102Z",
  "data": {
      "tenantId": "tenant1",
      "itemId": "SKU1024",
      "unitOfMeasure": "EACH",
      "productClass": "NEW",
      "inventoryTag": {
         "batchNo": "B1",
         "identifiers": [
            "revisionNo",
            "lotNumber",
            "batchNo"
          ],
          "lotNumber": "L1",
          "revisionNo": "R1",
          "tagNumber": "B1|L1|R1",
          "manufacturingDate": "2025-11-01T00:00:00Z",
          "msrp": 155.0,
          "lotKeyReference": "Ref1",
          "countryOfOrigin": "USA"
          "customAttributes": [
          {
            "key": "futureQuantity",
            "double": 10.1
          },
          {
            "key": "VendorOrganization",
            "string": "matrix"
          },
          {
            "key": "expiryDate",
            "date": "2028-01-01T00:00:00.000Z"
          }
        ]   
      }
      "shipNode": "Matrix-Store-001"
      "shipByDate": "2500-01-01T00:00:00.000Z",
      "lineReference":null,
      "reference":null,
      "referenceType":null,
      "segment": null,
      "segmentType": null,
      "quantity": 1,
      "changedQuantity": 1,
      "customAttributes" : [ {
         "double" : 10.1,
         "key" : "futureQuantity"
      }, {
         "key" : "adjustmentReasonText",
         "string" : "returnDamaged"
      }, {
         "date" : "2023-01-01T00:00:00.000Z",
         "key" : "manufacturingDate"
     }],
      "type": "ONHAND_BACKROOM_01",
      "baseType": "ONHAND",
      "tagNumber": "|||",
      "updatedTs": "2023-08-30T10:20:31.102Z",
      "eta": "1900-01-01T00:00:00.000Z",
      "adjustmentReason": "ADJUSTMENT",
  }
}
updatedTs フィールドは、この供給のためにデータベースが更新された時刻を示します。 データベース・レコードが存在しない場合、 forcePublishの間は NULL になります。 デフォルトでは、供給同期が実行されると、供給変更イベントは、供給同期の一部としてアップサートする必要があるレコードに対してのみパブリッシュされます。 ただし、供給同期で forcePublish が true として渡されると、供給同期の一部であるすべての供給レコードに対してイベントがパブリッシュされます。 これにより、供給レコードの受信による可用性の変化に関係なく、ノードとネットワークの可用性変化イベントも公表される。 供給レコードがシステムに存在せず、同期プロセスの一部として無視される場合、このレコードのイベントに対して updatedTs は NULL になります。
productAvailability.v2
productAvailability.v2 イベントにおけるノードの可用性は、利用可能な数量に変更があるたびに、アイテム・ノード単位で公表される。 この変更は、供給、需要、安全在庫、フルフィルメント・オプション、キャパシティ・レベルが更新された場合にトリガーされる。
以下のサンプルJSONは、SHPおよびPICK配信方法の公開イベントの例です。
  • SHP配信方法
    {
      "type": "productAvailability.v2",
      "datacontenttype": "application/json",
      "id": "2a8d36a3-485b-3fc0-bd15-d530625a6ec5",
      "specversion": "1.0",
      "time": "2021-03-10T00:00:00.288Z",
      "data": {
      "itemAttributes" : 
      {
          "color": ["red", "black"],
          "material": ["cotton"],
          "size": ["L", "M"]
      },
      "computeTs": "2021-03-10T00:00:00.097Z",
      "tenantId": "tenant1",
      "productId": "SHIRT",
      "productClass": "CLASS_1",
      "inventoryTag": {
         "batchNo": "B1",
         "identifiers": [
            "revisionNo",
            "lotNumber",
            "batchNo"
         ],
         "lotNumber": "L1",
         "revisionNo": "R1",
         "tagNumber": "B1|L1|R1",
         "manufacturingDate": "2025-11-01T00:00:00Z",
         "msrp": 155.0,
         "lotKeyReference": "Ref1",
         "countryOfOrigin": "USA"
         "customAttributes": [
         {
            "key": "futureQuantity",
            "double": 10.1
         },
         {
            "key": "VendorOrganization",
            "string": "matrix"
         },
         {
            "key": "expiryDate",
            "date": "2028-01-01T00:00:00.000Z"
         }
        ]
      }
      "deliveryMethod": "SHP",
      "segment": null,
      "segmentType": null,
      "shipNode": "store-BostonMA",
      "unitOfMeasure": "EACH",
      "shipNodeAvailabilities": [
      {
          "shipNode": "store-BostonMA",
          "shipNodeDetails": {
             "shipNode": "store-BostonMA",
             "type": "STORE",
             "country": "US"
       },
      "currentAvailability": {
         "demandQuantity": 0,
         "supplyQuantity": 5,
         "toTs": "2021-04-01T00:00:00.000Z",
         "availableQuantity": 35,
         "consumedSafetyQuantity": 0,
         "fulfillmentAllowed": true,
         "reservedQuantity": 0,
         "shortageQuantity": 0,
         "thresholdLevel": 0,
         "demandShortage": 0,
         "reservationShortage":0,
         "safetyShortage":0,
         "consumedByUntagged": 0.0,
         "taggedAvailability": 1.0,
         "segmentedQuantity": 5.0,
         "unsegmentedQuantity": 25.0,
         "consumptionDemandQuantity": 0.0,
         "consumptionReservedQuantity": 0.0
         "unplanned": {
           "availableQuantity": 5.0,
           "demandQuantity": 3.0,
           "reserveQuantity": 2.0
           }
      },
      "futureAvailability": [
      {
         "demandQuantity": 0,
         "supplyQuantity": 5,
         "fromTs": "2021-04-01T00:00:00.000Z",
         "toTs": "2500-01-01T00:00:00.000Z",
         "availableQuantity": 45,
         "consumedSafetyQuantity": 0,
         "fulfillmentAllowed": true,
         "reservedQuantity": 0,
         "shortageQuantity": 0,
         "demandShortage": 0,
         "reservationShortage":0,
         "safetyShortage":0,
         "consumedByUntagged": 0.0,
         "taggedAvailability": 1.0,
         "segmentedQuantity": 5.0,
         "unsegmentedQuantity": 35.0,
         "consumptionDemandQuantity" : 0.0,
         "consumptionReservedQuantity" : 0.0,  
         "unplanned": {
           "availableQuantity": 5.0,
           "demandQuantity": 3.0,
           "reserveQuantity": 2.0
           }
         }
       ]
     }
    }
  • 配送方法を選択
    {
      "type": "productAvailability.v2",
      "datacontenttype": "application/json",
      "id": "2a8d36a3-485b-3fc0-bd15-d530625a6ed6",
      "specversion": "1.0",
      "time": "2021-03-10T00:00:00.288Z",
      "data": {
      "itemAttributes" : 
      {
          "color": ["red", "black"],
          "material": ["cotton"],
          "size": ["L", "M"]
      },
      "computeTs": "2021-03-10T00:00:00.097Z",
      "tenantId": "tenant1",
      "productId": "SHIRT",
      "productClass": "CLASS_1",
      "inventoryTag": {
         "batchNo": "B1",
         "identifiers": [
            "revisionNo",
            "lotNumber",
            "batchNo"
         ],
         "lotNumber": "L1",
         "revisionNo": "R1",
         "tagNumber": "B1|L1|R1",
         "manufacturingDate": "2025-11-01T00:00:00Z",
         "msrp": 155.0,
         "lotKeyReference": "Ref1",
         "countryOfOrigin": "USA"
         "customAttributes": [
         {
            "key": "futureQuantity",
            "double": 10.1
         },
         {
            "key": "VendorOrganization",
            "string": "matrix"
         },
         {
            "key": "expiryDate",
            "date": "2028-01-01T00:00:00.000Z"
         }
       ]
      }
      "deliveryMethod": "PICK",
      "segment": null,
      "segmentType": null,
      "shipNode": "store-BostonMA",
      "unitOfMeasure": "EACH",
      "shipNodeAvailabilities": [
      {
          "shipNode": "store-BostonMA",
          "shipNodeDetails": {
             "shipNode": "store-BostonMA",
             "type": "STORE",
             "country": "US"
       },
      "currentAvailability": {
         "demandQuantity": 0,
         "supplyQuantity": 5,
         "toTs": "2021-04-01T00:00:00.000Z",
         "availableQuantity": 35,
         "consumedSafetyQuantity": 0,
         "fulfillmentAllowed": true,
         "reservedQuantity": 0,
         "shortageQuantity": 0,
         "thresholdLevel": 0,
         "demandShortage": 0,
         "reservationShortage":0,
         "safetyShortage":0,
         "consumedByUntagged": 0.0,
         "taggedAvailability": 1.0,
         "segmentedQuantity": 5.0,
         "unsegmentedQuantity": 25.0,
         "consumptionDemandQuantity" : 0.0,
         "consumptionReservedQuantity" : 0.0,
         "unplanned": {
           "availableQuantity": 5.0,
           "demandQuantity": 3.0,
           "reserveQuantity": 2.0
           }
      },
      "futureAvailability": [
      {
         "demandQuantity": 0,
         "supplyQuantity": 5,
         "fromTs": "2021-04-01T00:00:00.000Z",
         "toTs": "2500-01-01T00:00:00.000Z",
         "availableQuantity": 45,
         "consumedSafetyQuantity": 0,
         "fulfillmentAllowed": true,
         "reservedQuantity": 0,
         "shortageQuantity": 0,
         "demandShortage": 0,
         "reservationShortage":0,
         "safetyShortage":0,
         "consumedByUntagged": 0.0,
         "taggedAvailability:" 1.0,
         "segmentedQuantity": 5.0,
         "unsegmentedQuantity": 35.0,
         "consumptionDemandQuantity" : 0.0,
         "consumptionReservedQuantity" : 0.0,
         "unplanned": {
           "availableQuantity": 5.0,
           "demandQuantity": 3.0,
           "reserveQuantity": 2.0
           }
        }
       ]
     }
    }
注:
  • ここに記載されている数値はあくまで一例であり、参考情報として提供されているものです。
  • shortaeQuantity は、過剰需要、過剰予約、および過剰安全在庫のためにシステムで発生した不足です。
  • consumedSafetyQuantity は、在庫状況に応じて調整された安全数量です。
  • fulfillmentAllowed フィールドには、フルフィルメントが許可されているかどうかが示されます。
  • demandShortage は、供給で調整できなかった超過需要数量を示します。
  • reservationShortage は、予約の超過分の値を示します。
  • safetyShortage は、使用可能なサプライ用品で調整できなかった安全在庫数量を示します。
  • shortageQuantity = demandShortage + reservationShortage + safetyShortage.
  • SegmentedQuantity は、セグメント化された在庫に由来する可用性である。 セグメントがセグメント化されていない在庫を消費する場合にのみ計算され、イベントがセグメント化されていない可用性を示す場合は、 0.0。
  • UnsegmentedQuantity は、セグメント化されていない在庫に由来する可用性である。 セグメントがセグメント外の在庫を消費する場合にのみ計算される。
  • イベントがセグメント化されていない可用性のために公開されている場合、計算のために以下のパラメータを考慮してください:
    • consumptionDemandQuantity は、セグメント化されていない可用性に割り当てられる追加のセグメント化された需要量である。 これは、消費が有効で、セグメント化されていない在庫に対してイベントが発生した場合にのみ計算される。
    • consumptionReservedQuantity は、セグメント化されていない予約可能な状態で配置された、追加のセグメント化された予約数量である。 これは、消費が有効で、セグメント化されていない在庫に対してイベントが発生した場合にのみ計算される。
  • currentAvailability の計画外数量は既存在庫の売れすぎを示し、 futureAvailability の数量はサプライヤーによる補充が必要であることを意味する。
  • このタグ付きリソース consumedByUntagged は、タグのない要求によって消費される利用可能リソースです。 これは、タグによる在庫管理が有効になっている場合にのみ計算され、タグ付き在庫はタグなしの需要に対して考慮され、タグ付き在庫に対してイベントが発生します。
  • は、タグ付けされた在庫に基づく taggedAvailability 利用可能量を算出します。 これは、タグによる在庫管理が有効になっている場合にのみ計算され、タグ付き在庫はタグなしの需要に対して考慮され、タグなし在庫に対してイベントが発生します。
ノード・レベルまたはアイテム・レベルのいずれかでフルフィルメントがオフになっている場合、在庫状況変更イベントは、供給や需要などの在庫関連アクティビティーでは発生しません。 フルフィルメントが無効になっている場合でもイベントを受信する必要がある場合は、必要な配信方法をコンマ区切りリストとして使用してテナント・ベースのルール event.alwaysPublishEventForDelMethod を設定する必要があります。 デフォルトでは、このルールは空です。 Update settings API を使用して、このルールを変更できます。

詳細については、API Update settings を参照してください。

注: 指定された配達方法のノードの在庫状況変更イベントは、上記のルールが設定され、フルフィルメントがノード・レベルまたはアイテム・レベルで無効になっている場合に発生します。 これは、 productAvailability.v2 イベントに適用されます。
availableSupplyChange.v2
availableSupplyChange.v2 イベントは、供給、需要、予約、または安全在庫で変更が発生した場合に、供給日に基づいて在庫状況ピクチャーを提供します。 このイベントのコードは availableSupplyChange.v2です。 availableSupplyChange.v2 イベントのトリガー・ポイントは、 productavailability.v2のトリガー・ポイントと同じです。

詳しくは、 ノードで使用可能なサプライ用品を参照してください。

以下のサンプルJSONは、SHPおよびPICK配信方法の公開イベントの例です。
  • SHP配信方法
    {
       "specversion": "1.0",
       "type": "availableSupplyChange.v2",
       "id": "515aa404-4411-38d8-9855-b6ab093a451e",
       "time": "2023-12-05T23:35:56.616Z",
       "datacontenttype": "application/json",
       "data":{
          "tenantId":"us-b5d0aae5",
          "productId":"SHIRT",
          "segment":null,
          "segmentType":null,
          "unitOfMeasure":"EACH",
          "productClass":"NEW",
          "inventoryTag": {
             "batchNo": "B1",
             "identifiers": [
                "revisionNo",
                "lotNumber",
                "batchNo"
             ],
             "lotNumber": "L1",
             "revisionNo": "R1",
             "tagNumber": "B1|L1|R1",
             "manufacturingDate": "2025-11-01T00:00:00Z",
             "msrp": 155.0,
             "lotKeyReference": "Ref1",
             "countryOfOrigin": "USA"
             "customAttributes": [
             {
                 "key": "futureQuantity",
                 "double": 10.1
             },
             {
                 "key": "VendorOrganization",
                 "string": "matrix"
             },
             {
                 "key": "expiryDate",
                 "date": "2028-01-01T00:00:00.000Z"
             }
           ]
          }
          "deliveryMethod":"SHP",
          "shipNode": "store-BostonMA",
          "computeTs": "2023-12-05T23:35:56.584Z",
          "thresholdLevel": "0",
          "availableSupplies":[{
             "availableQuantity" : 8.0,
             "consumedSafetyQuantity" : 0.0,
             "demandQuantity" : 4.0,
             "fromTs" : "2023-12-01T00:00:00.000Z",
             "fulfillmentAllowed" : true,
             "reservedQuantity" : 0.0,
             "shortageQuantity" : 0.0,
             "supplyQuantity" : 12.0,
             "toTs" : "2023-12-30T00:00:01.000Z",
             "demandShortage": 0,
             "reservationShortage":0,
             "safetyShortage":0,
             "consumedByUntagged": 0.0,
             "taggedAvailability": 1.0,
          }, 
       {
          "availableQuantity" : 15.0,
          "consumedSafetyQuantity" : 0.0,
          "demandQuantity" : 0.0,
          "fromTs" : "2023-12-10T00:00:00.000Z",
          "fulfillmentAllowed" : true,
          "reservedQuantity" : 0.0,
          "shortageQuantity" : 0.0,
          "supplyQuantity" : 10.0,
          "toTs" : "2024-01-10T00:00:01.000Z",
          "demandShortage": 0,
          "reservationShortage":0,
          "safetyShortage":0,
          "consumedByUntagged": 0.0,
          "taggedAvailability": 1.0,
       }],
       "unsegmentedAvailableSupplies":[{ 
          "availableQuantity" : 90.0,
          "consumedSafetyQuantity" : 0.0,
          "demandQuantity" : 0.0,
          "fromTs" : "1900-01-01T00:00:00.000Z",
          "fulfillmentAllowed" : true,
          "reservedQuantity" : 0.0,
          "shortageQuantity" : 0.0,
          "supplyQuantity" : 90.0,
          "toTs" : "2500-01-01T00:00:00.000Z",
          "demandShortage": 0,
          "reservationShortage":0,
          "safetyShortage":0,
                "consumedByUntagged": 0.0,
          "taggedAvailability": 1.0,
          "consumptionDemandQuantity" : 0.0,
          "consumptionReservedQuantity" : 0.0
       }],
       "itemAttributes" : 
       {
          "color": ["red", "black"],
          "material": ["cotton"],
          "size": ["L", "M"]
        }
      }
    }
  • 配送方法を選択
    {
       "specversion": "1.0",
       "type": "availableSupplyChange.v2",
       "id": "515aa404-4411-38d8-9855-b6ab093a462f",
       "time": "2023-12-05T23:35:56.616Z",
       "datacontenttype": "application/json",
       "data":{
          "tenantId":"us-b5d0aae5",
          "productId":"SHIRT",
          "segment":null,
          "segmentType":null,
          "unitOfMeasure":"EACH",
          "productClass":"NEW",
          "inventoryTag": {
             "batchNo": "B1",
             "identifiers": [
                "revisionNo",
                "lotNumber",
                "batchNo"
             ],
             "lotNumber": "L1",
             "revisionNo": "R1",
             "tagNumber": "B1|L1|R1",
             "manufacturingDate": "2025-11-01T00:00:00Z",
             "msrp": 155.0,
             "lotKeyReference": "Ref1",
             "countryOfOrigin": "USA"
             "customAttributes": [
             {
                "key": "futureQuantity",
                "double": 10.1
             },
             {
                "key": "VendorOrganization",
                "string": "matrix"
             },
             {
                "key": "expiryDate",
                "date": "2028-01-01T00:00:00.000Z"
             }
           ]
          }
          "deliveryMethod":"PICK",
          "shipNode": "store-BostonMA",
          "computeTs": "2023-12-05T23:35:56.584Z",
          "thresholdLevel": "0",
          "availableSupplies":[{
             "availableQuantity" : 13.0,
             "consumedSafetyQuantity" : 0.0,
             "demandQuantity" : 4.0,
             "fromTs" : "2023-12-01T00:00:00.000Z",
             "fulfillmentAllowed" : true,
             "reservedQuantity" : 0.0,
             "shortageQuantity" : 0.0,
             "supplyQuantity" : 12.0,
             "toTs" : "2023-12-30T00:00:01.000Z",
             "demandShortage": 0,
             "reservationShortage":0,
             "safetyShortage":0,
             "consumedByUntagged": 0.0,
             "taggedAvailability": 1.0,
          }, 
       {
          "availableQuantity" : 10.0,
          "consumedSafetyQuantity" : 0.0,
          "demandQuantity" : 0.0,
          "fromTs" : "2023-12-10T00:00:00.000Z",
          "fulfillmentAllowed" : true,
          "reservedQuantity" : 0.0,
          "shortageQuantity" : 0.0,
          "supplyQuantity" : 10.0,
          "toTs" : "2024-01-10T00:00:01.000Z",
          "demandShortage": 0,
          "reservationShortage":0,
          "safetyShortage":0,
          "consumedByUntagged": 0.0,
          "taggedAvailability": 1.0,
       }],
       "unsegmentedAvailableSupplies":[{ 
          "availableQuantity" : 90.0,
          "consumedSafetyQuantity" : 0.0,
          "demandQuantity" : 0.0,
          "fromTs" : "1900-01-01T00:00:00.000Z",
          "fulfillmentAllowed" : true,
          "reservedQuantity" : 0.0,
          "shortageQuantity" : 0.0,
          "supplyQuantity" : 90.0,
          "toTs" : "2500-01-01T00:00:00.000Z",
          "demandShortage": 0,
          "reservationShortage":0,
          "safetyShortage":0,
          "consumedByUntagged": 0.0,
          "taggedAvailability": 1.0,
          "consumptionDemandQuantity" : 0.0,
          "consumptionReservedQuantity" : 0.0
       }],
       "itemAttributes" : 
       {
          "color": ["red", "black"],
          "material": ["cotton"],
          "size": ["L", "M"]
        }
      }
    }
ノード・レベルまたはアイテム・レベルのいずれかでフルフィルメントがオフになっている場合、在庫状況変更イベントは、供給や需要などの在庫関連アクティビティーでは発生しません。 フルフィルメントが無効になっている場合でもイベントを受信する必要がある場合は、必要な配信方法をコンマ区切りリストとして使用してテナント・ベースのルール event.alwaysPublishEventForDelMethod を設定する必要があります。 デフォルトでは、このルールは空です。 Update settings API を使用して、このルールを変更できます。

詳細については、API Update settings を参照してください。

注: 指定された配達方法のノードの在庫状況変更イベントは、上記のルールが設定され、フルフィルメントがノード・レベルまたはアイテム・レベルで無効になっている場合に発生します。 これは、 availableSupplyChange.v2 イベントに適用されます。
dgAvailabilityChange.v2
dgAvailabilityChange.v2 イベントは、ディストリビューション・グループのネットワーク全体の可用性を表します。 1つまたは複数の含まれるノードが可用性量またはタイムスタンプの変更を経験するたびに、新しいイベントが発行されます。 これらの変更は、供給、需要、安全在庫、フルフィルメント・オプション、キャパシティ・レベルの更新によって引き起こされる。
以下のサンプルJSONは、SHPおよびPICK配信方法の公開イベントの例です。
  • SHP配信方法
    {
      "type": "dgAvailabilityChange.v2",
      "datacontenttype": "application/json",
      "id": "304746ba-4d53-3514-94d9-9353b8b14152",
      "specversion": "1.0",
      "time": "2021-03-10T00:00:00.283Z",
      "data": {
      "itemAttributes" : 
      {
         "color": ["red", "black"],
         "material": ["cotton"],
         "size": ["L", "M"]
      },
      "computeTs": "2021-03-10T00:00:00.119Z",
      "tenantId": "tenant1",
      "productId": "SHIRT",
      "productClass": "CLASS_1",
      "inventoryTag": {
         "batchNo": "B1",
         "identifiers": [
            "revisionNo",
            "lotNumber",
            "batchNo"
         ],
         "lotNumber": "L1",
         "revisionNo": "R1",
         "tagNumber": "B1|L1|R1",
         "manufacturingDate": "2025-11-01T00:00:00Z",
         "msrp": 155.0,
         "lotKeyReference": "Ref1",
         "countryOfOrigin": "USA"
         "customAttributes": [
         {
            "key": "futureQuantity",
            "double": 10.1
         },
         {
            "key": "VendorOrganization",
            "string": "matrix"
         },
         {
            "key": "expiryDate",
            "date": "2028-01-01T00:00:00.000Z"
         }
       ]
      }
      "deliveryMethod": "SHP",
      "segment" : "Platinum",
      "segmentType" : "B2B Accounts",
      "distributionGroupId": "WEB",
      "unitOfMeasure": "EACH",
      "currentAvailability": {
         "toTs": "2021-04-01T00:00:00.000Z",
         "availableQuantity": 35,
         "consumedSafetyQuantity": 0,
         "fulfillmentAllowed": true,
         "reservedQuantity": 0,
         "shortageQuantity": 0,
         "thresholdLevel": 0,
         "demandShortage": 0,
         "reservationShortage": 0,
         "safetyShortage":0,
         "consumedByUntagged": 0.0,
         "taggedAvailability": 1.0,
         "segmentedQuantity": 20.0,
         "unsegmentedQuantity": 10.0,
         "consumptionDemandQuantity" : 0.0,
         "consumptionReservedQuantity" : 0.0,
         "unplanned": {
           "availableQuantity": 5.0,
           "demandQuantity": 3.0,
           "reserveQuantity": 2.0
           }
        },
        "futureAvailability": [
        {
           "fromTs": "2021-04-01T00:00:00.000Z",
           "toTs": "2500-01-01T00:00:00.000Z",
           "availableQuantity": 45,
           "consumedSafetyQuantity": 0,
           "fulfillmentAllowed": true,
           "reservedQuantity": 0,
           "shortageQuantity": 0,
           "demandShortage": 0,
           "reservationShortage":0,
           "safetyShortage":0,
           "consumedByUntagged": 0.0,
           "taggedAvailability": 1.0,
           "segmentedQuantity": 5.0,
           "unsegmentedQuantity": 35.0,
           "consumptionDemandQuantity" : 0.0,
           "consumptionReservedQuantity" : 0.0
           "unplanned": {
             "availableQuantity": 5.0,
             "demandQuantity": 3.0,
             "reserveQuantity": 2.0
             }
           }
        ]
      }
    }
  • 配送方法を選択
    {
      "type": "dgAvailabilityChange.v2",
      "datacontenttype": "application/json",
      "id": "515aa404-4411-38d8-9855-b6ab093a46df",
      "specversion": "1.0",
      "time": "2021-03-10T00:00:00.283Z",
      "data": {
        "itemAttributes" :
        {
          "color": ["red", "black"],
          "material": ["cotton"],
          "size": ["L", "M"]
        },
      "computeTs": "2021-03-10T00:00:00.119Z",
      "tenantId": "tenant1",
      "productId": "SHIRT",
      "productClass": "CLASS_1",
      "inventoryTag": {
         "batchNo": "B1",
         "identifiers": [
            "revisionNo",
            "lotNumber",
            "batchNo"
         ],
         "lotNumber": "L1",
         "revisionNo": "R1",
         "tagNumber": "B1|L1|R1",
         "manufacturingDate": "2025-11-01T00:00:00Z",
         "msrp": 155.0,
         "lotKeyReference": "Ref1",
         "countryOfOrigin": "USA"
         "customAttributes": [
         {
            "key": "futureQuantity",
            "double": 10.1
         },
         {
            "key": "VendorOrganization",
            "string": "matrix"
         },
         {
            "key": "expiryDate",
            "date": "2028-01-01T00:00:00.000Z"
         }
       ]
      }
      "deliveryMethod": "PICK",
      "segment": null,
      "segmentType": null,
      "distributionGroupId": "WEB",
      "unitOfMeasure": "EACH",
      "currentAvailability": {
         "toTs": "2021-04-01T00:00:00.000Z",
         "availableQuantity": 35,
         "consumedSafetyQuantity": 0,
         "fulfillmentAllowed": true,
         "reservedQuantity": 0,
         "shortageQuantity": 0,
         "thresholdLevel": 0,
         "demandShortage": 0,
         "reservationShortage":0,
         "safetyShortage":0,
         "consumedByUntagged": 0.0,
         "taggedAvailability": 1.0,
         "segmentedQuantity": 5.0,
         "unsegmentedQuantity": 25.0,
         "consumptionDemandQuantity" : 0.0,
         "consumptionReservedQuantity" : 0.0,
         "unplanned": {
           "availableQuantity": 5.0,
           "demandQuantity": 3.0,
           "reserveQuantity": 2.0
           }
         },
         "futureAvailability": [
         {
           "fromTs": "2021-04-01T00:00:00.000Z",
           "toTs": "2500-01-01T00:00:00.000Z",
           "availableQuantity": 45,
           "consumedSafetyQuantity": 0,
           "fulfillmentAllowed": true,
           "reservedQuantity": 0,
           "shortageQuantity": 0,
           "demandShortage": 0,
           "reservationShortage":0,
           "safetyShortage":0,
           "consumedByUntagged": 0.0,
           "taggedAvailability": 1.0,
           "segmentedQuantity": 20.0,
           "unsegmentedQuantity": 20.0,
           "consumptionDemandQuantity" : 0.0,
           "consumptionReservedQuantity" : 0.0
           "unplanned": {
             "availableQuantity": 5.0,
             "demandQuantity": 3.0,
             "reserveQuantity": 2.0
             }
           }
        ]
      }
    }
注:shortageQuantity 」属性は、分配グループのすべてのノードにわたるノード・レベルの不足数量の集約を表します。 詳しくは、 shortageQuantityconsumedSafetyQuantity、および fulfillmentAllowedの定義を参照してください。
Demand.Change
inventory service では、分析のために需要変更データを外部システムに公開できます。 このようなデータにより、サプライ・チェーン (SC) 管理者は、在庫需要が急増した場合にアラートを受け取ることができます。 例えば、突然のハンド・サニタイザー需要スパイクが発生した場合、SC のマネージャーは、価値の高い一部の購入者に対する契約上の損害を軽減するために、フルフィルメント戦略を迅速に変更できます。

以下のサンプル・ペイロードは、パブリッシュされたイベントの例です。 Inventory Visibility イベント ID は Demand.Change で、ペイロード内のイベント・コードは demandChangeです。

{
    "specversion" : "1.0",
    "datacontenttype" : "application/json",
    "type": "demandChange",
    "id": "<UUID>",
    "time": "<time ISO-8601 format>",
    "data": {
        "itemId": "SHIRT",
        "unitOfMeasure": "EACH",
        "productClass": "CLASS_1",
        "inventoryTag" : {
            "batchNo" : "B1",
            "identifiers" : [ "revisionNo", "lotNumber", "batchNo" ],
            "lotNumber" : "L1",
            "revisionNo" : "R1",
            "tagNumber" : "B1|L1|R1"
        },
        "tagNumber": "A|02",
        "shipNode": "store-BostonMA",
        "baseType": "OPEN_ORDER",
        "type": "CUSTOM_OPEN_ORDER",
        "segment": "Web",
        "segmentType": "Channel",
        "shipDate": "2020-05-29T13:00:00.000Z",
        "cancelDate": "2020-06-28T13:00:00.000Z",
        "minShipByDate": "2022-01-22T05:00:00.000Z",
        "quantity": 3.0,
        "changedQuantity": 2.0,
        "updatedTs": "2020-05-28T06:00:00.000Z",
        "adjustmentReason" : "PROCESS"
    }
}
注: updatedTs フィールドは、この需要に対してデータベースが更新された時刻を示します。
productAvailabilitySnapshot.v2
productAvailabilitySnapshot.v2 イベントを使用して、特定のノード、すべてのノード、または分配グループに属するノードの可用性のスナップショットを (オンデマンドで) 送信します。
以下のサンプルJSONは、SHPおよびPICK配信方法の公開イベントの例です。
在庫状況スナップショットイベントにおけるアイテム属性
trueリクエストパラメータを includeItemAttributes に設定することで、アイテムに割り当てられた属性を在庫状況スナップショットイベントに含めることができます。 この機能が有効になっている場合、イベントのペイロードには、カタログサービスから取得した、設定済みのアイテムに割り当てられた属性を含むオブジェクト itemAttributes が含まれます。

trueが に設定されている場合 includeItemAttributes 、公開されたスナップショットイベントには、次のような オブジェクト itemAttributes が含まれます:

  • SHP配信方法
    {
      "type": "productAvailabilitySnapshot.v2",
      "datacontenttype": "application/json",
      "id": "2a8d36a3-485b-3fc0-bd15-d530625a6ec5",
      "specversion": "1.0",
      "time": "2021-03-10T00:00:00.288Z",
      "data": {
        "computeTs": "2021-03-10T00:00:00.097Z",
        "tenantId": "tenant1",
        "snapshotId": "productAvailabilitySnapshot-test",
        "productId": "SHIRT",
        "productClass": "CLASS_1",
        "inventoryTag": {
           "batchNo": "B1",
           "identifiers": [
              "revisionNo",
              "lotNumber",
              "batchNo"
           ],
           "lotNumber": "L1",
           "revisionNo": "R1",
           "tagNumber": "B1|L1|R1",
           "manufacturingDate": "2025-11-01T00:00:00Z",
           "msrp": 155.0,
           "countryOfOrigin": "USA"
           "customAttributes": [
           {
              "key": "futureQuantity",
              "double": 10.1
           },
           {
              "key": "VendorOrganization",
              "string": "matrix"
           },
           {
              "key": "expiryDate",
              "date": "2028-01-01T00:00:00.000Z"
           }
          ]
        }
        "deliveryMethod": "SHP",
        "segment": null,
        "segmentType": null,
        "shipNode": "store-BostonMA",
        "unitOfMeasure": "EACH",
        "currentAvailability": {
          "demandQuantity": 0,
          "supplyQuantity": 30,
          "toTs": "2021-04-01T00:00:00.000Z",
          "availableQuantity": 35,
          "consumedSafetyQuantity": 0,
          "fulfillmentAllowed": true,
          "reservedQuantity": 0,
          "shortageQuantity": 0,
          "thresholdLevel": 0,
          "demandShortage": 0,
          "reservationShortage":0,
          "safetyShortage":0,
          "consumedByUntagged": 0.0,
          "taggedAvailability": 1.0,
          "segmentedQuantity": 20.0,
          "unsegmentedQuantity": 10.0,
          "consumptionDemandQuantity" : 0.0,
          "consumptionReservedQuantity" : 0.0,
          "unplanned": {
             "availableQuantity": 5.0,
             "demandQuantity": 3.0,
             "reserveQuantity": 2.0
             }
        },
        "futureAvailability": [
        {
          "demandQuantity": 0,
          "supplyQuantity": 45,
          "fromTs": "2021-04-01T00:00:00.000Z",
          "toTs": "2500-01-01T00:00:00.000Z",
          "availableQuantity": 40,
          "consumedSafetyQuantity": 0,
          "fulfillmentAllowed": true,
          "reservedQuantity": 0,
          "shortageQuantity": 0,
          "demandShortage": 0,
          "reservationShortage":0,
          "safetyShortage":0,
          "consumedByUntagged": 0.0,
          "taggedAvailability": 1.0,
          "segmentedQuantity": 20.0,
          "unsegmentedQuantity": 20.0,
          "consumptionDemandQuantity" : 0.0,
          "consumptionReservedQuantity" : 0.0
          "unplanned": {
             "availableQuantity": 5.0,
             "demandQuantity": 3.0,
             "reserveQuantity": 2.0
             }
           }
         ]
         "itemAttributes" : 
         {
            "color": ["red", "black"],
            "material": ["cotton"],
            "size": ["L", "M"]
         }
      }
    }
  • 配送方法を選択
    {
      "type": "productAvailabilitySnapshot.v2",
      "datacontenttype": "application/json",
      "id": "2a8d36a3-485b-3fc0-be26-d530625a6ec5",
      "specversion": "1.0",
      "time": "2021-03-10T00:00:00.288Z",
      "data": {
        "computeTs": "2021-03-10T00:00:00.097Z",
        "tenantId": "tenant1",
        "snapshotId": "productAvailabilitySnapshot-test",
        "productId": "SHIRT",
        "productClass": "CLASS_1",
        "inventoryTag": {
        "batchNo": "B1",
           "identifiers": [
              "revisionNo",
              "lotNumber",
              "batchNo"
           ],
           "lotNumber": "L1",
           "revisionNo": "R1",
           "tagNumber": "B1|L1|R1",
           "manufacturingDate": "2025-11-01T00:00:00Z",
           "msrp": 155.0,
           "lotKeyReference": "Ref1",
           "countryOfOrigin": "USA"
           "customAttributes": [
           {
              "key": "futureQuantity",
              "double": 10.1
           },
           {
              "key": "VendorOrganization",
              "string": "matrix"
           },
           {
              "key": "expiryDate",
              "date": "2028-01-01T00:00:00.000Z"
           }
         ]
        }
        "deliveryMethod": "PICK",
        "segment": null,
        "segmentType": null,
        "shipNode": "store-BostonMA",
        "unitOfMeasure": "EACH",
        "currentAvailability": {
          "demandQuantity": 0,
          "supplyQuantity": 30,
          "toTs": "2021-04-01T00:00:00.000Z",
          "availableQuantity": 30,
          "consumedSafetyQuantity": 0,
          "fulfillmentAllowed": true,
          "reservedQuantity": 0,
          "shortageQuantity": 0,
          "thresholdLevel": 0,
          "demandShortage": 0,
          "reservationShortage":0,
          "safetyShortage":0,
          "consumedByUntagged": 0.0,
          "taggedAvailability": 1.0,
          "segmentedQuantity": 20.0,
          "unsegmentedQuantity": 10.0,
          "consumptionDemandQuantity" : 0.0,
          "consumptionReservedQuantity" : 0.0
        },
        "futureAvailability": [
        {
          "demandQuantity": 0,
          "supplyQuantity": 40,
          "fromTs": "2021-04-01T00:00:00.000Z",
          "toTs": "2500-01-01T00:00:00.000Z",
          "availableQuantity": 40,
          "consumedSafetyQuantity": 0,
          "fulfillmentAllowed": true,
          "reservedQuantity": 0,
          "shortageQuantity": 0,
          "demandShortage": 0,
          "reservationShortage":0,
          "safetyShortage":0,
          "consumedByUntagged": 0.0,
          "taggedAvailability": 1.0,
          "segmentedQuantity": 20.0,
          "unsegmentedQuantity": 20.0,
          "consumptionDemandQuantity" : 0.0,
          "consumptionReservedQuantity" : 0.0
          "unplanned": {
            "availableQuantity": 5.0,
            "demandQuantity": 3.0,
            "reserveQuantity": 2.0
            }
          }
        ]
        "itemAttributes" : 
        {
           "color": ["red", "black"],
           "material": ["cotton"],
           "size": ["L", "M"]
        }
      }
    }
以下の EOF サンプルは、パブリッシュされたイベントの例です。
{
  "type": "productAvailabilitySnapshot.v2",
  "datacontenttype": "application/json",
  "id": "2a8d36a3-485b-3fc0-be26-d530625a6ec5",
  "specversion": "1.0",
  "time": "2021-03-10T00:00:00.288Z",
  "data": {
    "tenantId": "tenant1", 
    "snapshotId": "productAvailabilitySnapshot-test",
  }
}
API publish_all を呼び出すことで、特定のノードのスナップショットを手動で実行することができます。 jobIdこの productAvailabilitySnapshot.v2 publish_all API は、ジョブ URL を、.とともに返します。 snapshotIdまた、処理が完了するとダミーのイベントを送信しますが、これは通常のメッセージと同じ形式ですが、と以外の tenantId すべての属性が省略されています。 は snapshotId 、イベントを識別するためのUUIDです。 URLproductAvailabilitySnapshot.v2 は次の通りです:
https://api.watsoncommerce.ibm.com/<tenantId>/v2/configuration/events/productAvailabilitySnapshot.v2/publish_all
注:
dgAvailabilitySnapshot.v2
イベント dgAvailabilitySnapshot.v2 を使用して、可用性のスナップショットを(オンデマンドで)配布グループに送信します。
在庫状況スナップショットイベントにおけるアイテム属性
trueリクエストパラメータを includeItemAttributes に設定することで、アイテムに割り当てられた属性を在庫状況スナップショットイベントに含めることができます。 この機能が有効になっている場合、イベントのペイロードには、カタログサービスから取得した、設定済みのアイテムに割り当てられた属性を含むオブジェクト itemAttributes が含まれます。

trueが に設定されている場合 includeItemAttributes 、公開されたスナップショットイベントには、次のような オブジェクト itemAttributes が含まれます:

以下のサンプルJSONは、SHPおよびPICK配信方法の公開イベントの例です。
  • SHP配信方法
    {
       "type": "dgAvailabilitySnapshot.v2",
       "datacontenttype": "application/json",
       "id": "240fe0ec-e24a-31c2-93a0-74cb8160aa98",
       "specversion": "1.0",
       "time": "2021-07-17T00:00:00.503Z",
       "data": {
         "computeTs": "2021-07-17T00:00:00.174Z",
         "tenantId": "tenant1",
         "productClass": "NEW",
         "inventoryTag": {
            "batchNo": "B1",
            "identifiers": [
               "revisionNo",
               "lotNumber",
               "batchNo"
            ],
            "lotNumber": "L1",
            "revisionNo": "R1",
            "tagNumber": "B1|L1|R1",
            "manufacturingDate": "2025-11-01T00:00:00Z",
            "msrp": 155.0,
            "lotKeyReference": "Ref1",
            "countryOfOrigin": "USA"
            "customAttributes": [
            {
               "key": "futureQuantity",
               "double": 10.1
            },
            {
               "key": "VendorOrganization",
               "string": "matrix"
            },
            {
               "key": "expiryDate",
               "date": "2028-01-01T00:00:00.000Z"
            }
          ]
         }
         "productId": "book",
         "snapshotId": "dgAvailabilitySnapshot-test",
         "unitOfMeasure": "EACH",
         "deliveryMethod": "SHP",
         "segment": null,
         "segmentType": null,
         Deprecated feature"distributionGroup": "Stores",
         "distributionGroupId": "Stores",
         "currentAvailability": {
           "availableQuantity": 5,
           "consumedSafetyQuantity": 0,
           "fulfillmentAllowed": true,
           "reservedQuantity": 0,
           "shortageQuantity": 0,
           "thresholdLevel": 3,
           "toTs": "2021-07-20T00:00:00.000Z",
           "demandShortage": 0,
           "reservationShortage":0,
           "safetyShortage":0,
           "consumedByUntagged": 0.0,
           "taggedAvailability": 1.0,
           "segmentedQuantity": 0.0,
           "unsegmentedQuantity": 0.0,
           "consumptionDemandQuantity" : 0.0,
           "consumptionReservedQuantity" : 0.0,
           "unplanned": {
             "availableQuantity": 5.0,
             "demandQuantity": 3.0,
             "reserveQuantity": 2.0
           }
         },
         "futureAvailability": [
           {
             "availableQuantity": 15,
             "consumedSafetyQuantity": 0,
             "fromTs": "2021-07-20T00:00:00.000Z",
             "fulfillmentAllowed": true,
             "reservedQuantity": 0,
             "shortageQuantity": 0,
             "toTs": "2021-08-16T00:00:01.000Z",
             "demandShortage": 0,
             "reservationShortage":0,
             "safetyShortage":0,
             "consumedByUntagged": 0.0,
             "taggedAvailability": 1.0,
             "segmentedQuantity": 5.0,
             "unsegmentedQuantity": 5.0,
             "consumptionDemandQuantity" : 0.0,
             "consumptionReservedQuantity" : 0.0
             "unplanned": {
               "availableQuantity": 5.0,
               "demandQuantity": 3.0,
               "reserveQuantity": 2.0
               }
             }
          ]
          "itemAttributes" : 
          {
             "color": ["red", "black"],
             "material": ["cotton"],
             "size": ["L", "M"]
          }
       } 
     }
  • 配送方法を選択
    {
       "type": "dgAvailabilitySnapshot.v2",
       "datacontenttype": "application/json",
       "id": "240fe0ec-e24a-31c2-93a0-74cb8160bb00",
       "specversion": "1.0",
       "time": "2021-07-17T00:00:00.503Z",
       "data": {
         "computeTs": "2021-07-17T00:00:00.174Z",
         "tenantId": "tenant1",
         "productClass": "NEW",
         "inventoryTag": {
            "batchNo": "B1",
            "identifiers": [
               "revisionNo",
               "lotNumber",
               "batchNo"
            ],
            "lotNumber": "L1",
            "revisionNo": "R1",
            "tagNumber": "B1|L1|R1",
            "manufacturingDate": "2025-11-01T00:00:00Z",
            "msrp": 155.0,
            "lotKeyReference": "Ref1",
            "countryOfOrigin": "USA"
            "customAttributes": [
            {
               "key": "futureQuantity",
               "double": 10.1
            },
            {
               "key": "VendorOrganization",
               "string": "matrix"
            },
            {
               "key": "expiryDate",
               "date": "2028-01-01T00:00:00.000Z"
            }
           ]
         } 
         "productId": "book",
         "snapshotId": "dgAvailabilitySnapshot-test",
         "unitOfMeasure": "EACH",
         "deliveryMethod": "PICK",
         "segment": null,
         "segmentType": null,
         Deprecated feature"distributionGroup": "Stores",
         "distributionGroupId": "Stores",
         "currentAvailability": {
           "availableQuantity": 5,
           "consumedSafetyQuantity": 0,
           "fulfillmentAllowed": true,
           "reservedQuantity": 0,
           "shortageQuantity": 0,
           "thresholdLevel": 3,
           "toTs": "2021-07-20T00:00:00.000Z",
           "demandShortage": 0,
           "reservationShortage":0,
           "safetyShortage":0,
           "consumedByUntagged": 0.0,
           "taggedAvailability": 1.0,
           "segmentedQuantity": 0.0,
           "unsegmentedQuantity": 0.0,
           "consumptionDemandQuantity" : 0.0,
           "consumptionReservedQuantity" : 0.0,
           "unplanned": {
              "availableQuantity": 5.0,
              "demandQuantity": 3.0,
              "reserveQuantity": 2.0
           }
         },
         "futureAvailability": [
           {
             "availableQuantity": 15,
             "consumedSafetyQuantity": 0,
             "fromTs": "2021-07-20T00:00:00.000Z",
             "fulfillmentAllowed": true,
             "reservedQuantity": 0,
             "shortageQuantity": 0,
             "toTs": "2021-08-16T00:00:01.000Z",
             "demandShortage": 0,
             "reservationShortage":0,
             "safetyShortage":0,
             "consumedByUntagged": 0.0,
             "taggedAvailability": 1.0,
             "segmentedQuantity": 5.0,
             "unsegmentedQuantity": 5.0,
             "consumptionDemandQuantity" : 0.0,
             "consumptionReservedQuantity" : 0.0
             "unplanned": {
                "availableQuantity": 5.0,
                "demandQuantity": 3.0,
                "reserveQuantity": 2.0
                }
             }
          ]
          "itemAttributes" : 
          {
             "color": ["red", "black"],
             "material": ["cotton"],
             "size": ["L", "M"]
          }
       } 
    }
注:
  • shortageQuantity 」属性は、分配グループのすべてのノードにわたるノード・レベルの不足数量の集約を表します。
  • distributionGroup 属性は非推奨であり、製品の後続リリースで削除される予定です。 代わりに、 distributionGroupId 属性を使用してください。
詳しくは、 shortageQuantityconsumedSafetyQuantity、および fulfillmentAllowedの定義を参照してください。
以下の EOF サンプルは、パブリッシュされたイベントの例です。
{
    "type": "dgAvailabilitySnapshot.v2",
    "datacontenttype": "application/json",
    "id": "2a8d36a3-485b-3fc0-bd15-d530625a6ec5",
    "specversion": "1.0",
    "time": "2021-03-10T00:00:00.288Z",
    "data": {
      "tenantId": "tenant1",
      "snapshotId": "ceadcf7a-c82b-4957-b87c-42dc8d62c008"
    }
}
API publish_all を呼び出すことで、特定の配布グループに対してスナップショットを手動で実行することができます。 jobIdこの dgAvailabilitySnapshot.v2 publish_all API は、ジョブ URL を、.とともに返します。 snapshotIdまた、処理が完了するとダミーのイベントを送信しますが、これは通常のメッセージと同じ形式ですが、と以外の tenantId すべての属性が省略されています。 特定の配布グループまたはそのすべてのスナップショットを生成することができます。 URLdgAvailabilitySnapshot.v2 は次の通りです:
https://api.watsoncommerce.ibm.com/<tenantId>v2/configuration/events/dgAvailabilitySnapshot.v2/publish_all
demandSnapshot

Inventory Visibilityのシステム・インテグレーターは、分析のためにデマンド・システムのスナップショットを公開します。 フルフィルメント・マネージャーは、この情報を使用して需要システムに関するレポートを作成し、次の会計サイクルの前に検出された問題をトラブルシューティングします。 例えば、実行した商品のプロモーションの結果として、特定のノードで商品の需要が継続的に急増しているとします。 この増大する需要に対応するために、ロケーションで利用可能な供給を増やし、顧客が商品を見逃さないようにする必要があります。 需要システムを完全に可視化することで、顧客の需要に対応し続けることができます。

以下のサンプル JSON は、パブリッシュされたイベントの例です。 イベント・コードは demandSnapshotです。

{
  "type": "demandSnapshot",
  "datacontenttype": "application/json",
  "id": "a1ae3dcd-8fd6-4f76-b7ed-7916c739ac5a",
  "specversion": "1.0",
  "time": "2023-11-28T00:00:00.000Z",
  "data": {
    "fetchTs": "2023-11-28T00:00:00.000Z",
    "tenantId": "tenant1",
    "snapshotId": "demandSnapshot-test",
    "productId": "SKU1024",
    "unitOfMeasure": "EACH",
    "productClass": "NEW",
    "inventoryTag" : {
        "batchNo" : "B1",
        "identifiers" : [ "revisionNo", "lotNumber", "batchNo" ],
        "lotNumber" : "L1",
        "revisionNo" : "R1",
        "tagNumber" : "B1|L1|R1"
    },
    "type": "OPEN_ORDER",
    "shipNode": "Matrix-Store-001",
    "tagNumber": null,
    "segment": "ONLINE",
    "segmentType": "Channel",
    "shipDate": "2023-12-05T00:00:00Z",
    "cancelDate": "2500-01-01T00:00:00Z",
    "referenceType": null,
    "reference": null,
    "minShipByDate": "2500-01-01T00:00:00Z",
    "quantity": 10
  }
}
注: Inventory Visibility 、スナップショット・イベントにおいて、無効または未構成のタイプを持つ需給記録を公表しなくなった。 今後数ヶ月間、IVはインジェスト時にバリデーションを実施し、そのようなレコードを拒否する。 データを送信する前に、すべてのカスタム需給タイプがIVで設定されていることを確認する。
demandSnapshot には以下の URL を使用する:
https://api.watsoncommerce.ibm.com/inventory/{tenantId}/v2/configuration/events/demandSnapshot/publish_all
supplySnapshot
Inventory VisibilitySystems Integrator として、あなたは分析のために供給システムのスナップショットを公開する。 Fulfillment Manager、早い段階で供給システムを把握することができるので、発見された不一致は次の財務サイクルの前に対処することができる。 例えば、最近販売を開始したばかりの新製品の売上が急上昇していることに気付きます。 より多くの売上を取り込むために、特定のノードでこの商品を中心に販売促進を実行することにします。 供給システムを完全に可視化することで、プロモーションの前に供給する必要がある商品の量を既に把握していることになります。 これにより、お客様の要求を正常に満たすことができます。

以下のサンプル JSON は、パブリッシュされたイベントの例です。 イベント・コードは supplySnapshotです。

{
  "type": "supplySnapshot",
  "datacontenttype": "application/json",
  "id": "4075a47d-9227-432e-ab3e-c369e8802aa0",
  "specversion": "1.0",
  "time": "2023-11-28T00:00:00.000Z",
  "data": {
    "fetchTs": "2023-11-28T00:00:00.000Z",
    "tenantId": "tenant1",
    "snapshotId": "supplySnapshot-test",
    "itemId": "SKU1024",
    "unitOfMeasure": "EACH",
    "productClass": "NEW",
    "inventoryTag": {
       "batchNo": "B1",
       "identifiers": [
          "revisionNo",
          "lotNumber",
          "batchNo"
       ],
       "lotNumber": "L1",
       "revisionNo": "R1",
       "tagNumber": "B1|L1|R1",
       "manufacturingDate": "2025-11-01T00:00:00Z",
       "msrp": 155.0,
       "lotKeyReference": "Ref1",
       "countryOfOrigin": "USA"
       "customAttributes": [
       {
          "key": "futureQuantity",
          "double": 10.1
       },
       {
          "key": "VendorOrganization",
          "string": "matrix"
       },
       {
          "key": "expiryDate",
          "date": "2028-01-01T00:00:00.000Z"
       }
     ]
    }
    "type": "ONHAND",
    "shipNode": "Matrix-Store-001",
    "tagNumber": null,
    "segment": "ONLINE",
    "segmentType": "Channel",
    "eta": "1900-01-01T00:00:00Z",
    "shipByDate": "2500-01-01T00:00:00Z",
    "referenceType": null,
    "reference": null,
    "lineReference": null,
    "quantity": 100
  }
}
注: Inventory Visibility 、スナップショット・イベントにおいて、無効または未構成のタイプを持つ需給記録を公表しなくなった。 今後数ヶ月間、IVはインジェスト時にバリデーションを実施し、そのようなレコードを拒否する。 データを送信する前に、すべてのカスタム需給タイプがIVで設定されていることを確認する。
supplySnapshot には以下の URL を使用する:
https://api.watsoncommerce.ibm.com/inventory/{tenantId}/v2/configuration/events/supplySnapshot/publish_all
注: レガシー・イベントでは、void 値は空ストリングとしてパブリッシュされます。 「。 一方、新規イベントは以下のように void 値をパブリッシュします。nullイベント・メッセージ内。