APIの抽出
抽出APIを使用して Maximo Inventory Optimization からデータを取得し、さらなる分析、保存、またはデータレイクやERPシステムなどの他のシステムへの統合を行うことができます。 このAPIは、異なる期間のデータ抽出、ページネーション、フィルタリングをサポートしており、大規模なデータセットの取得と管理方法に柔軟性を提供します。
概説
Extract API は、 以下の種類のデー タ へのア ク セ ス を提供 し ます。
- エクスポート
- 顧客のERPシステムにエクスポートされるデータ。
- スナップショット
- 月末やデルタリフレッシュなど、特定の時点におけるシステムの状態を表すデータ。
- 主要データ
- データの現在の状態、例えば、アイテムデータ、ストアアイテムデータ、銘柄、領収書など。
エンドポイント
Extract API は、以下の情報カテゴリのメタデータやデータを取得するためのエンドポイントをいくつか提供しています。
- エクスポート
- 輸出は 、Maximo Inventory Optimization から顧客のERPシステムにエクスポートされたデータを表します。
GET /dataapi/extract/meta/exportsエンドポイントは、プロファイル・キー、カラム名、説明などの詳細を含む、すべてのエクスポート・プロファイルに関するメタデータを返します。GET /dataapi/extract/meta/exports/{profile}エンドポイントは、特定のエクスポート・プロファイルのメタデータを返します。 メタデータには、カラム名、データタイプ、説明が含まれる。GET /dataapi/extract/data/exports/{profile}エンドポイントは、特定のプロファイルのエクスポートされたデータを CSV ファイルで返します。 デフォルトでは、直近の月末(EOM)リフレッシュ以降にエクスポートされたすべてのデータが返されます。
- スナップショット
- スナップショットは、特定の時点(通常は毎月末)のデータの状態をキャプチャします。
GET /dataapi/extract/meta/snapshot/itemsはアイテムのスナップショットのメタデータを返す。 このメタデータには、アイテムのスナップショットで使用可能なフィールドが含まれます。GET|POST /dataapi/extract/data/snapshot/itemsは指定された日付範囲のアイテムスナップショットデータを返す。 POSTリクエストを行うことで、返されるカラムの数を制限することができる。POST /dataapi/extract/data/snapshot/items/filter」は、高度なフィルタが適用されたアイテムのスナップショットデータを返します。 フィルターは'SET_ITEMテーブルに適用される。GET /dataapi/extract/meta/snapshot/storeitemsは、ストア・アイテムのスナップショットのメタデータを返す。GET|POST /dataapi/extract/data/snapshot/storeitemsは、指定された日付範囲のストアアイテムスナップショットデータを返す。POSTリクエストは、返されるカラムの数を制限することができる。POST /dataapi/extract/data/snapshot/storeitems/filterエンドポイントは、'SET_ITEMテーブルに対して検証された、フィルターが適用されたストアアイテムのスナップショットデータを返します。GET /dataapi/extract/meta/snapshot/deltaitemsエンドポイントは、デルタ・アイテムのスナップショットのメタデータを返す。GET|POST /dataapi/extract/data/snapshot/deltaitemsエンドポイントは、指定された日付範囲のデルタ項目スナップショット・データを返します。POSTリクエストは、返されるカラムの数を制限することができる。POST /dataapi/extract/data/snapshot/deltaitems/filterエンドポイントは、'SET_ITEMテーブルに対して検証された、フィルターが適用されたデルタ項目のスナップショットデータを返す。
- 主要データ
- 主なデータは、アイテム、ストアアイテム、銘柄、レシートの現在の状態を表します。
GET /dataapi/extract/meta/itemsエンドポイントは、利用可能なカラムや説明を含むアイテムデータのメタデータを返します。GET|POST /dataapi/extract/data/items」はCSV形式の項目データを返す。POSTリクエストで、返されるカラムの数を制限することができる。POST /dataapi/extract/data/items/filterエンドポイントは、'SET_ITEMテーブルに対して検証された、高度なフィルターが適用されたアイテムデータを返します。GET /dataapi/extract/meta/storeitemsエンドポイントは、ストアアイテムデータのメタデータを返す。GET|POST /dataapi/extract/data/storeitemsエンドポイントは、CSV 形式のストアアイテムデータを返す。POSTリクエストで、返されるカラムの数を制限することができる。POST /dataapi/extract/data/storeitems/filterエンドポイントは、'SET_ITEMテーブルに対して検証された、高度なフィルターが適用されたストアアイテムデータを返します。GET /dataapi/extract/meta/issuesエンドポイントは、issue データのメタデータを返します。GET|POST /dataapi/extract/data/issuesエンドポイントは、issueデータをCSV形式で返します。POSTリクエストで、返されるカラムの数を制限することができる。POST /dataapi/extract/data/issues/filterエンドポイントは、'BASE_ISSUEテーブルに対して検証された、高度なフィルタが適用されたissueデータを返します。GET /dataapi/extract/meta/receiptsエンドポイントは、受信データのメタデータを返す。GET|POST /dataapi/extract/data/receiptsエンドポイントはレシートデータを CSV 形式で返す。 POSTリクエストを行うことで、返されるカラムの数を制限することができる。POST /dataapi/extract/data/receipts/filterエンドポイントは、「BASE_RECEIPTテーブルに対して検証された、高度なフィルターが適用されたレシートデータを返す。
主要パラメーター
- 日付範囲パラメータ
- fromデータ抽出期間の開始を指定する(含む)。 ISO8601形式を使用し、YYYY-MM-DDTHH:mm:ss.sssとなります。
- toデータ抽出期間の終了を指定する(排他的)。 指定がない場合は、現在の日付と時刻が使われる。
- リフレッシュの種類と期間
- refreshTypeデータ・リフレッシュのタイプを定義します。
- eom月末リフレッシュを返します。
- deltaデルタ(増分)リフレッシュを返します。
- 期間
- 数何期間を含めるかを示す。
- 定義済みの文字列
- 最新のリフレッシュ以降の現在のリターンデータ。
- 前期の最終リターンデータ。
- all利用可能なすべてのデータを返す。 大きなデータセットを返すかもしれないので、注意して使用すること。
- 拡張フィルター
- データに複雑な条件を適用する。 plain textまたは'base64eエンコードされたフィルターが使用できる。 filterEncodedフラグは、フィルターが「base64エンコードされているかどうかを示す。
データフォーマット
- 応答フォーマット
- デフォルトでは、APIは'.csvフォーマットでデータを返す。 .CSVファイルは、Accept-Encodingヘッダーを'GZIPに設定することで、オプションで圧縮することができる。
- メタデータ・フォーマット
- メタデータは'.json形式で返され、これにはカラム名、タイプ、説明が含まれる。
要求ヘッダー
APIにリクエストするとき、特に大きなデータセットをダウンロードするときは、以下のヘッダーを含めること。
Accept-Encoding: gzip
このパラメータは、コンテンツを圧縮して転送するデータ量を減らし、ダウンロードを高速化します。
サンプル・ユース・ケース
- 月次データスナップショット
- APIを使用して、例えば2021年7月1日から2021年8月1日までの直近1ヶ月のデータを抽出することができます。
refreshType=eomと'period=1パラメーターを使用することで、APIは前月のリフレッシュからのデータのスナップショットを返す。 - リアルタイム変更
- 最新の更新以降に発生した変更のみを抽出するには、'
refreshType=deltaと 'period=0を使用する。 これらのパラメータは、インクリメンタルな変更を追跡する必要があるアプリケーションに有用である。
- フィルター付き輸出
POSTメソッドを使えば、必要なカラムだけを指定できるので、転送されるデータ量が減り、処理を効率化できる。
エラー処理
HTTP 429 - Too Many Requests
このエラーは、複数の抽出要求が同時に行われた場合に発生する。 一度に実行できる抽出リクエストは1つだけです。