4.15. REST API¶
REST APIについて説明します。
4.15.1. REST APIについて¶
IM-BPM for Accel Platformが提供するREST APIは、HTTPプロトロルを使用しプロセスの実行に関する様々な処理を呼び出すことが可能です。
REST APIはコンテンツタイプとして、application/json (JSON)形式のみ対応しています。
REST APIとして利用可能な機能は以下のとおりです。
- デプロイ
- プロセスエンジン情報の取得
- 実行状態の操作
- フォームデータの操作
- アクティビティ履歴の操作
- 履歴詳細に対する操作
- プロセスインスタンス履歴に対する操作
- ユーザタスクに関する操作
- 変数操作履歴
- ジョブの操作
- 全体管理情報の取得
- 差配管理
- プロパティリソースへのアクセス
- プロセス定義情報に対する操作
- プロセスインスタンスに対する操作
- シグナルに関する操作
- ユーザタスクに関する操作
- インポート/エクスポート
4.15.2. 認証方式¶
REST APIは以下の認証方式に対応しています。
Cookieに紐づくセッションの認証状態に依存する方式
アプリケーションサーバが発行するセッションIDおよびアカウントコンテキストの状態に依存する方式です。コンテキストの状態を確認後、認可によるチェックが行われます。Basic認証
Basic認証による認証方式です。認証後、ログイン状態として扱われ認可によるチェックが行われます。OAuth認証
OAuth2.0の仕様に準拠した認証フローによる認証方式です。認証後、ログイン状態として扱われ認可によるチェックが行われます。
コラム
Basic認証を利用する場合には、httpsプロトコルの利用を強く推奨します。
4.15.3. 認可¶
REST APIは全ての呼び出し先に対し認可リソースを持ちます。
intra-mart Accel Platform認可設定において、IM-BPM REST API認可種別が存在します。
注意
IM-BPM for Accel Platformの画面では、画面表示に必要となる情報を全てREST API経由で取得しています。
その為、認可設定の変更により画面が正常に動作しなくなる場合があります。
4.15.4. エンドポイント¶
REST APIは認証方式によって、呼び出し先のエンドポイントが異なります。
Cookieに紐づくセッションの認証状態に依存する方式
http(s)://{HOST}:{PORT}/{CONTEXT_PATH}/api/bpm/....プロトコル、ホスト名、ポート番号、コンテキストパスは環境にあわせて置き換えてください。例:Basic認証
http(s)://{HOST}:{PORT}/{CONTEXT_PATH}/api/basic/bpm/....プロトコル、ホスト名、ポート番号、コンテキストパスは環境にあわせて置き換えてください。例:OAuth認証
http(s)://{HOST}:{PORT}/{CONTEXT_PATH}/api/bearer/bpm/....プロトコル、ホスト名、ポート番号、コンテキストパスは環境にあわせて置き換えてください。例:
4.15.5. Swagger¶
REST APIはSwagger Specに対応しています。
intra-mart Accel Platformに組み込まれているSwagger UIを通じてREST APIの確認、実行ができます。
Swagger UIは、以下のURLから確認できます。
http(s)://{HOST}:{PORT}/{CONTEXT_PATH}/swagger_ui/?url=/{CONTEXT_PATH}/api-docs/im_bpm_restプロトコル、ホスト名、ポート番号、コンテキストパスは環境にあわせて置き換えてください。例:
コラム
Swagger Specを元に、Swagger CodeGenを利用するとREST APIクライアントコードの自動生成を行うことが可能です。
Swagger CodeGenにより作成されたスタブコードの動作保証は行っておりません。
4.15.6. REST APIドキュメント¶
APIの詳細に関しては、REST APIドキュメントを御覧ください。