Data REST API 開発者ガイド
IBM® Maximo 在庫最適化データREST API 開発者ガイドでは、RESTデータAPIの使用方法と適用方法について説明しています。
概要
RESTベースのAPIは 、 IBM Maximo Inventory Optimization Dataアプリケーションとのやり取りに使用できます。
Data API へのアクセス
データAPIリファレンス・ドキュメントにアクセスするには、 IBM マキシモ 在庫最適化 データAPI にアクセスしてください。
データ統合
分析と最適化を実行できるように、ERPと IBM Maximo Inventory Optimization の間でデータを移動する必要があります。 データAPIは、開発者がERPと IBM Maximo Inventory Optimization Inventoryをシームレスに通信するためのインターフェースを提供します。 HTTPS。
データ ダウンロード API は 、 IBM Maximo Inventory Optimization からエクスポートされた変更を取得し、クライアント ERP に統合します。 また、日次または月次のデータ更新のトリガーとしても使用され、データを IBM Maximo Inventory Optimization にロードします。
API による抽出およびエクスポートを使用すると、抽出とエクスポートの効率が上がり、また、安全に自動化されます。
API の概要
APIとは、Application Programming Interfaceの略で、APIを使用することで、アプリケーション内の機能がその製品以外の他のアプリケーションでも利用可能になります。 API は、2 つのソフトウェア間でやり取りするためのインターフェースです。
パブリックAPIを利用することで、開発者が顧客に代わって IBM Maximo Inventory Optimizationを他の社内システムや外部システムと統合することができます。
APIを使用することで、ユーザーは IBM Maximo在庫最適化ソフトウェアを自社のビジネスプロセスに統合し、それらのプロセスをより効率的に自動化することができます。
site.data.keyword.iot_mmio_full_notm API は、RESTful Web サービスとして実装されます。 REST (Representational State Transfer) は、ソフトウェア・アーキテクチャー・スタイルです。 RESTは HTTP通信など、特定の制約に縛られているため、比較的安定したプログラミングが可能です。
データ API では何ができますか?
- データの送信
IBM Maximo Inventory Optimization API を使用することで、コネクタがデータを IBM Maximo Inventory Optimizationに自動転送することが可能になります。 各 MIO データタイプには、関連する API エンドポイントがあります。
- データのリフレッシュ
データは毎日または月末 (EOM) に更新できます。 IBM Maximo Inventory Optimization を利用することで、データの更新リクエストをさらに自動化することができます。
- データの取得
エクスポートされたデータ・セットの検索を自動化することもできます。これにより、手元にあるすべての情報が正確で最新のものになります。
- データの削除
転送またはアップロードが失敗した場合は、特定のペイロードを削除する要求を行うことができます。
セキュリティー
IBM Maximo 在庫最適化 API は、 HTTPS プロトコル(Hypertext Transfer Protocol Secure)を使用します。 このプロトコルは、インターネットを介した通信を暗号化し、認証を要求し、データのプライバシーと保全性を保護します。
認証には API キーが必要です。 API の認証は環境に固有であるため、クライアントが複数の環境にアクセスできる場合は、異なる API キー資格情報が必要になります。
クライアント固有の鍵は環境ごとに生成されます。 サンドボックス環境に使用される API キーは、実稼働環境にアクセスするために使用される API キーとは異なります。
- 認証は API キーを使用して行われます。
- API キーは、数字、大文字、および小文字で構成される 32 文字以上です。 API キーは、サポート要求によって変更できます。
- Maximo在庫最適化API は、ウェブアプリケーションファイアウォール(WAF)で保護されています。 適用されるルールは、大量の反復要求を制限し、ブルート・フォース・アタックおよび DDOS に対する緩和を行います。
- HTTPSで暗号化された通信。
参照資料
参照資料の内容
- エンドポイントの簡単な説明
- パラメーターの指定
- Curl コマンドの例
- 入力フォーマットの情報
- 応答のフォーマット
- HTTP 状況およびエラー・コード API の応答フォーマットは JSON (JavaScript Object Notation) です。 一部のエンドポイントでは、JSON 要求本体も要求されます。
あなたのプログラムは何をする必要がありますか?
IBM Maximo 在庫最適化 API を使用する際には、その使用から最大限の利益を引き出すための推奨手順に従う必要があります。 これらのステップの概要を以下に示します。
- ERP を抽出して Maximo Inventory Optimization にアップロード
- ERP/EAM から API 形式にデータを抽出します。 詳細については、「 .CSV Extracts for Upload( 抽出物のアップロード用設定)」を参照してください。
- すべてのファイルを1つの .zip ファイルにまとめる。
- .zip のファイルを /dataapi/upload/zip endpoint にアップロードします。
- .zip ファイルが正常にアップロードされていることを確認してください。
- MIOのエクスポートとダウンロード
- ダウンロード・エンドポイントを定期的に照会します。 ビジネス・ユーザーによって決定される頻度。 推奨は 1 時間ごとです。 頻度は 24 時間を超えないようにしてください。
- .zip ファイルをダウンロードしてエクスポートする。
- .zip ファイルの内容を抽出します。
- テキスト・ファイルから ERP/EAM への変更のインポート
EOM (月末) 更新
貴社のソフトウェアは、貴社のERPからさまざまな抽出を行い、 IBM Maximo Inventory Optimization APIエンドポイントを使用して、これらの抽出データを IBM Maximo Inventory Optimizationにアップロードして処理します。 月末には、ERP と IBM Maximo Inventory Optimization 間のデータの整合性を確保するために、データの更新が必要です。
EOMリフレッシュは、 EOM
エンドポイントに POST
リクエストを発行することで呼び出されます
POST
/refresh/eom
ステータスエンドポイントに GET
リクエストを発行して、完全性を確認します。
GET
/refresh/status
MIOの推奨事項をダウンロード
Maximo Inventory Optimization から推奨事項がエクスポートされると、ダウンロード可能な状態になります。 必要に応じて、「使用可能なダウンロード (Available Downloads)」エンドポイントを使用して、ダウンロードせずにダウンロードできるかどうかを確認できます。
GET
/download/available.
Maximo Inventory Optimization からは、さまざまなエクスポートが可能です。例えば、再注文レベルやリードタイムなどです。 ソフトウェア実装段階では 、Maximo Inventory Optimizationのユーザーがどのエクスポートを使用するかを決定します。 最低限、 Maximo Inventory Optimization から再注文レベルのエクスポートが実装されています。
Maximo Inventory Optimization からエクスポートされた推奨事項をダウンロードするには、ダウンロードしたいエクスポートタイプのコードとともに、 GET
リクエストをダウンロードエンドポイントに送信します。
exportTypeCode
に使用するコードは、実装プロセスをサポートする IBMが提供します。 IBMと相談し、お客様の特定の構成に適した正しいコードを取得してください。GET
/download {exportTypeCode} }.
指定されたエクスポートタイプにおける各エクスポートプロファイルのCSVファイルを含む .zip ファイルが返されます。 新規バッチ (ダウンロードされていないバッチ) のみが含まれます。
エラー処理
失敗したアップロード
いずれかの Upload API にファイルが送信されると、応答は常に固有 ID を返します。これはペイロード ID と呼ばれます。 ファイルを受信すると、API はファイルのフォーマットを素早く検証します。 エラーが検出されると、ペイロード ID とともにエラー・コードが返されます。
アップロードでエラー・コードが返された場合は、以下の手順で問題を修正する必要があります。
- アップロードAPIに
DELETE
コールを送信します。- 失敗したアップロードのペイロード ID を指定します。
DELETE
/upload {payLoadID} }.
- これは、抽出データが次のデータ更新に組み込まれないようにするために行います。
- 影響を受けた抽出データを再アップロードします。
- アップロードステータスエンドポイントに
GET
コールを行い、アップロードが成功したことを確認します。 GET
/upload/status {payloadID}.
失敗したデータ更新
データ・リフレッシュが失敗した場合 (EOM または差分リフレッシュ実行のいずれか)、データベース・リストアが必要になります。
IBM この問題を解決するにはサポートが必要ですので 、 のMaximo在庫最適化サポートチーム IBM までご連絡ください。
アップロード用に.CSV抽出ファイルを設定する
データアップロードAPIコントローラのエンドポイントにより、 IBM Maximo Inventory Optimizationのクライアントは適切な .CSV ファイルをアップロードすることができます。 これらのファイル内のレコードは、処理され、各入力テーブルに適用されます。
詳しくは、参照記事「Data Upload API」を参照してください。
.CSV ファイルの構成についてクライアントを正確に導くために、同じデータアップロードエンドポイントに GET
コールを行うことができます。 コネクタ、 ステータス、および削除のエンドポイントでは呼び出しはできません。
リクエスト例 - アクティビティアップロードAPIへのGETリクエスト
リクエスト例 - アクティビティアップロードAPIへのGETリクエストcurl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer ZGVtbzo4MTdlYWU3MDFkMjQ1YmE4NzMzZGIyZDEzZmZhMzZhZQ'
GET
でデータアップロードAPIエンドポイントにリクエストを行うと、JSON形式の応答が返されます。
返信は、対応する .CSV アップロードファイルに含めるフィールドを列挙したオブジェクト配列です。 応答は、どのフィールドが必須であり、どのフィールドがオプションであるかを示します。
以前の GET リクエストに対する応答の例
[
{
"column": "DIVISION",
"mandatory": true
},
{
"column": "PKG_HDR_NO",
"mandatory": true },
{
"column": "DISTRICT_CD",
"mandatory": true
},
...
]
提供された例を見ると、Activity Upload API エンドポイントを使用してアップロードする .CSV ファイルには、 DIVISION
、 PKG_HDR_NO
、 DISTRICT_CD
のフィールドがあることが分かります。 これらのフィールドは必須項目としてリストアップされているため、ファイル内に存在していなければなりません。
GET
コールを各データアップロード (コネクタ、 ステータス、および削除エンドポイントを除く)に送信することで、開発者は抽出物の最適な構成方法についてガイダンスを得ることができます。
詳しいリファレンスについては、『Get Column API』を参照してください。
アップロードのルール (.CSV 抽出データ)
IBM Maximo Inventory Optimization のデータ アップロード API にアップロードされるファイル (抽出) は、いくつかの特定のルールに従う必要があります。
- UTF-8 でエンコードされている必要があります。
- ファイルの最初の行は、ヘッダー列名でなければなりません。
- 特定の列名は、どのエンドポイントにアップロードするかによって異なります。
- 各行のフィールドの数は、ヘッダーのフィールドの数と一致している必要があります。
- 二重引用符をテキスト修飾子として使用します。