Classic/VPC環境で利用できます。
Workflowメニューは、API Templateに登録された APIを活用して Workflowを作成して管理するメニューです。直観的な UI編集ツールを使って希望する Workflowを簡単に作成できます。また、Workflowに Scheduleを設定して自動で実行されるように管理でき、Workflowの実行履歴と実行の成否、レスポンス時間などが確認できます。
Workflow作成
Workflowを作成する方法は次の通りです。
- NAVERクラウドプラットフォームコンソールで、
> Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。 - [Workflow作成] ボタンをクリックします。
- 作成するワークフローの名前を入力します。
- ワークフロータブで希望するワークフローを構成します。
- [位置編集] ボタンをクリックすると、Entityの順序を変更できます。
- [展開する] ボタンをクリックすると、Entity情報画面を閉じて Workflowの構成図のみ確認できます。
- 新規 Entityを追加するには、 [+] アイコンをクリックし、必要な Entityをクリックします。
- API: 呼び出す APIを指定する Entity
- if: 比較演算子を活用した条件を設定する Entity
- Loop: 繰り返し条件を設定する Entity
- Set properties: Properties値を設定する Entity
- 作成した Entityを削除するには、 [Entity削除] ボタンをクリックします。
- 「start」エンティティと「finish」エンティティは必須エンティティであるため、削除できません。
- 構成したワークフローが正常に動作するか確認するには、 [テストを実行] ボタンをクリックします。
- [Workflow作成] ボタンをクリックします。
Entityタイプと Entityの編集方法は、Entityをご参照ください。
Entity
Entityは Workflowを構成する最小単位で、3段階の下位構造で構成できます。
Entityのタイプ
Workflowの Entityタイプは次の通りです。
- Start: Workflowの開始地点を明示するための Entityです。Workflowの作成時に自動で作成され、削除できません。Workflowの Endpointを呼び出す際に requestに入っている Parameter、Header、Bodyを編集できます。これを活用してパラメータを取得し、動作に使用できます。
- End: Workflowの終了地点を明示するための Entityです。Workflowの作成時に自動で作成され、削除できません。Workflowの Endpointを呼び出す際に返される request入れる Header、Bodyを編集できます。Propertyを活用して
${propertyKey}形式で値を入力すると、実際に返す際にこの Property値に置き換えられて送られます。 - API: 呼び出す APIを指定する Entityです。既に作成済みの Workflowの Endpointを入力し、Workflowをネストできます。
- IF: 比較演算子による条件を設定する Entityです。サポートする演算子は<、<=、>、=>、==、=です。
- Loop: 繰り返し条件を設定する Entityです。単純繰り返しと JsonArrayListを cursor値にした繰り返しが行えます。最大繰り返し回数は1,000回に制限されます。
- Set Properties: Propertyは、Workflow動作時に共通してアクセスできる変数です。Set Properties Entityを使用すると、Propertyに値を入力でき、四則演算子を用いて値を演算できます。これを活用して responseの中から使用する値を取得し、これを End entityで返させることができます。まず Propertyを作成し、Set Properties Entityを利用して特定の Entityの Pathにアクセスし、当該値を Propertyに保存する方式です。
Entityの編集
Workflow構成で Entityを追加するには、 [+] アイコンをクリックし、必要な Entityをクリックします。

Start
Workflowの開始地点を明示するための Entityです。Workflowの作成時に自動で作成され、削除できません。
Workflowの Endpointを呼び出す際に requestに入っている Parameter、Header、Bodyを編集できます。これを活用してパラメータを取得し、動作に使用できます。例えば、Endpointを呼び出す際に Query parameterで「date」という値を送る場合、この値を Workflowで使用するには、Start Entityに「date」という query parameterを設定する必要があります。
End
Workflowの終了地点を明示するための Entityです。Workflowの作成時に自動で作成され、削除できません。Workflowの Endpointを呼び出す際に返される responseに入れる Header、Bodyを編集できます。Bodyを json形式の文字列に設定し、Keyや valueなどを Propertyとして活用して${propertyKey}形式で値を入力すると、実際に返す際はそのプロパティに保存された値に置き換えられて送られます。
-
END entity body
{ "result": "${propertyKey}" } -
Workflow endpoint response
{ "result": "propertyValue" }
API
呼び出す APIを設定する Entityです。直接 API情報を入力したり、既に登録済みの APIを呼び出すことができます。また、ユーザーが作成した Workflowも読み込むことができるため、Microservice単位の Workflowを作成して必要な Workflowを適切に組み合わせることができます。
API Entityを追加する方法は次の通りです。
- Workflow構成図で [+] アイコンをクリックし、APIをクリックします。
- 画面右側の Entity Nameに名前を入力します。
- Request領域に API情報を入力します。
- API Templateメニューに登録した API情報を持ってくるには、API Templateの [読み込み] ボタンをクリックします。
- 既に作成済みのワークフロー情報を読み込むには、Workflowの [読み込み] ボタンをクリックします。
IF
比較演算子を活用して条件を設定する Entityです。例えば、APIの呼び出しにより得た結果が特定の値以上か、以下である場合、次に実行するタスクを設定できます。条件の設定時にサポートする演算子は「- <、<=、>、=>、==、=」です。
IF Entityを追加する方法は次の通りです。
- Workflow構成図で [+] アイコンをクリックし、ifをクリックします。
- 画面右側の Condition領域に関連情報を入力します。
- Logical: and、or関数を選択。1つ以上の条件が追加された場合にのみ選択できる
- Operand 1st: 条件選択。Propertiesに追加された Key値の中から選択できる
- Comparison: 比較演算子を選択
- Operand 2nd: 基準値を入力
- 条件を設定し、 [追加] ボタンをクリックします。
- 画面左側の Entity構成図の [位置編集] ボタンをクリックし、IF Entity下位に実行する Entityを移動させます。
- IF条件が満足する場合に実行するタスクです。
Loop
特定のタスクに対する繰り返し条件を設定する Entityです。最大繰り返し回数は1,000回に制限されます。
Loop Entityを追加する方法は次の通りです。
- Workflow構成図で [+] アイコンをクリックし、Loopをクリックします。
- 画面右側の Condition領域に関連情報を入力します。
- [forEach] Type: Json Array形式の複数のデータを繰り返し処理できる。APIの Responseで Json Array List形式を取得し、インスタンスごとに繰り返しタスクが必要な場合に使用。この場合、Targetは Json Array形式の Propertyである必要があり、Json Array Propertyには前の段階で使用する Responseの Json Array Listを入れる
- [count] Type: 単純繰り返し回数を直接設定。countの選択時に表示される入力領域に繰り返す回数を入力
- ignore Error: エラー発生時に中止するかどうかを設定。有効にする場合、エラーが発生しても次の段階に進む
ユースケース)
- forEachの Cursor value領域
//targetList propertyに入っている値 [ { "servername":"a", "ip":"aaa.bbb.ccc.ddd" }, { "servername":"b", "ip":"bbb.bbb.ccc.ddd" } ]
targetListという Json Array形式の Propertyがあり、前の段階で API responseまたは Startから渡されたパラメータを、SetPropertiesを使用して targetListに保存したと仮定します。
2つの jsonObjectを持つそれぞれの Listを繰り返し処理したい場合、typeで forEachを選択し、targetで **${targetList}**を選択します。Loopは、2つの json Objectに対して以下のような形で繰り返しタスクを実行します。
//forEach loop 1回目
"cursor":{
"servername":"a",
"ip":"aaa.bbb.ccc.ddd"
}
//forEach loop2回目
"cursor":{
"servername":"b",
"ip":"bbb.bbb.ccc.ddd"
}
Loopは各 jsonObjectにアクセスできますが、Loopの下位にある、実際に繰り返し処理をすることになる Entityでは cursorの値にアクセスできません。そのため、Loopで繰り返すたびに Propertyに cursorの値を入れて下位 Entityで使用できるようにします。
以下は、servernameが bの場合を探す特定のタスクを実行する例です。
- 当該値を保存して渡す「servername」という Propertyを作成します。
- Loopの Cursor Valueで Property > ${servername}を選択し、Cursor valueタブでは${cursor.servername}を選択します。
- イテレーションが実行されるたびに、「servername」 Propertyに targetの現在繰り返し中の cursorの servernameが保存される
- Loopの下位に IF Entityを追加して情報を入力します。
- Operand1st: ${servername}
- Comparison: ==(Equal)
- Operand2nd: 直接入力、b
繰り返しが開始される際に、当該 Targetの cursor.servernameを「servername」 Propertyに保存した後、Loop下位の Entityが「servername」 Propertyを使用する形でデータを処理することになります。
Set Properties
Propertyは、Workflow内で共通して使用する Propertyを管理する Entityです。これは2つの機能を提供します。
基本的に Set Properties Entityを利用すると、Properties管理画面で設定した Propertiesに APIの演算結果を入れることができます。1つ目の APIから渡された値を2つ目の APIに渡す場合や、Workflowの実行時に繰り返し使用する特定の値がある場合、Propertyで管理します。
次に Operational Functionとして Propertyの値を演算して加工できます。基本的な四則演算などを提供し、各 Propertyの種類ごとに実行できる演算は異なります。
Basic Set Properties
- Workflow構成図で [+] アイコンをクリックし、Set propertiesをクリックします。
- Entity Nameに名前を入力します。
- 関連情報を入力し、 [追加] ボタンをクリックします。
- Property: 事前に設定した変数に設定できる。Propertiesの管理画面で作成した Propertyリストが表示される
- Entity: 取得する Entity値を指定できる。Start Entityと追加された API Entityリストが表示され、Request Parameter、Request Header、Response Header、Response Bodyの値を取得できる
- Key: 取得する値を直接入力するか、選択できる。json objectに限り、key1.key2.key3の形式でアクセスできます。
Operational Function
- Workflow構成図で [+] アイコンをクリックし、Set propertiesをクリックします。
- SetPropertiesの画面下部で Operational Function用テーブルの操作を行います。
- Entity Nameに名前を入力します。
- 関連情報を入力し、 [追加] ボタンをクリックします。
- Property: 演算後の結果値が保存される Propertyを設定。この Propertyの種類は、演算した値を格納できる必要がある
- Operator: 実行する演算の種類を選択。Propertyの種類によって変わる
- String Property: concat(文字列をつなげて並ぶ)
- Json Array: add(値の追加)、clear(配列 clear)、delete(値の削除)
- Json Object: add(追加)、delete(削除)
- Long、Integer、Double: add(足し算)、sub(引き算)、mul(掛け算)、div(割り算)、sum(合計)
- Operand: 実際に演算に使用される値を持つ被演算子。Operatorの種類によって1つか2つ、あるいはない場合もある。
Properties
Propertiesは Workflowで使用可能な変数の値で、Workflowのすべての Entityからこの Propertiesに入っている値を照会したり、読み込むことができます。Propertiesで設定した値は、${property key}の形式で他の Entityから参照できます。また、これにより APIの演算結果を入れて Loop Entityの cursor valueとして活用したり、If Entityの条件文に活用するなど様々な方法で使用できます。
Workflowで共通して使用する Propertiesを設定する方法は、次の通りです。
- NAVERクラウドプラットフォームコンソールで、
> Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。 - Workflow名をクリックして Workflow編集画面に移動します。
- 画面右上の [Properties] ボタンをクリックします。
- Propertiesの管理画面が表示されたら、Workflowで使用する変数を設定します。
- String、Long、Integer,Double、Json Array、Json Object形式をサポートします。
- [追加] ボタンをクリックします。
Workflow実行結果の確認
Workflowの実行結果をモニタリングできます。Workflowの実行履歴を Scatter Chartで表示し、これにより Workflowの成否と実行時間の分布を一目で把握できます。
Workflowの実行結果を確認する方法は次の通りです。
- NAVERクラウドプラットフォームコンソールで、
> Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。 - 実行履歴を確認する Workflowの [結果を見る] ボタンをクリックします。
- 特定の時間帯の実行履歴を確認するには、Scatter Chartで
アイコンをクリックし、希望する領域を指定します。 - 結果 IDをクリックして詳細結果を確認します。
実行履歴は1か月間保管されます。1か月が過ぎた履歴は自動で削除されます。詳細は1週間保存されます。
自動実行スケジュールの設定
Workflowの実行周期を設定する方法は次の通りです。
- NAVERクラウドプラットフォームコンソールで、
> Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。 - 実行周期を設定する Workflowを選択し、 [Schedule] ボタンをクリックします。
- スケジュールの設定画面が表示されたら、開始・終了期間を設定します。
- Cron expression入力領域に自動実行周期をクロン形式で入力します。
- Request情報を入力します。
- [適用] ボタンをクリックします。
Authorityの管理
NCP Signature認証と AWS Signature認証のためのキー情報を登録できます。
API Workflowでは、NCP Signatureを一度登録しておくと別途 Signature設定手続きなしで、簡単に NAVERクラウドプラットフォームの APIを呼び出すことができます。NCP Signatureを登録する方法を基準に説明します。
- NAVERクラウドプラットフォームコンソールで、
> Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。 - [Authority] ボタンをクリックします。
- Authorityの管理画面が表示されたら、NCP Signatureの [登録] ボタンをクリックします。
- Access Keyと Secret Keyを入力します。
- NCP Signatureの Access Keyと Secret Keyを確認する方法は、API認証キーをご参照ください。
- [保存] ボタンをクリックします。
- 同じ方法で AWS Signatureを登録できます。
- 登録された Workflowが1つ以上存在すると、 [Authority] ボタンが有効になります。
Workflowの管理
Workflowを変更・削除する方法と、既存 Workflow情報を活用して新しい Workflowを作成する方法を説明します。
Workflowのコピー
既存 Workflow情報をコピーして新規 Workflowを作成する方法は次の通りです。
- NAVERクラウドプラットフォームコンソールで、
> Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。 - コピーする Workflowを選択し、 [レプリケーション作成] ボタンをクリックします。
- 選択した Workflowと同じ値が入力された Workflowの作成画面が表示されます。
- Workflow情報を変更し、 [Workflow作成] ボタンをクリックします。
Workflowの変更
Workflowを変更する方法は次の通りです。
- NAVERクラウドプラットフォームコンソールで、
> Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。 - 変更する Workflowを選択し、 [変更] ボタンをクリックします。
- Workflowの変更画面が表示されたら、Workflowを変更し、 [Workflow変更] ボタンをクリックします。
Workflowの削除
Workflowを削除する方法は次の通りです。
- NAVERクラウドプラットフォームコンソールで、
> Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。 - 削除する Workflowを選択し、 [削除] ボタンをクリックします。
- 削除画面が表示されたら、 [確認] ボタンをクリックします。