Custom API Actionカードを構築する

Custom API Action(CAPIA)は、エンドユーザーが対象サービスへの認証済みHTTPリクエストを作成できる、コネクターのアクションカードです。

ベースURLはコネクターのコードに埋め込まれるため、エンドユーザーは相対URLを追加するだけです。その上で、必要に応じてheaderquery、およびリクエストbodyに必要なオブジェクトを手動で作成します。

CAPIAは、サービスからのデータをステータスコード(Status Code)ヘッダー(Headers)本文(Body)の3つの出力として返します。

  1. ページ右上端の新規フロー(+ New Flow)(Flows)をクリックし、フロー(+ New Flow)タブでフローを作成します。

  2. アクション(Action)をクリックします。

  3. ツールバーの保存(Save)をクリックし、フローにCustom API Actionという名前を付けます。

  4. フローの説明フィールドにMake an authenticated HTTP request to the {your service} APIと入力します。フローを通過するすべてのデータを保存(Save all data that passes through the Flow)オプションを選択し、保存(Save)をクリックします。

  5. Connector Actionカードのオプションの追加(Add Options)をクリックします。

  6. フィールドの追加(Add Field)をクリックし、Request Typeというラベルのフィールドと、ドロップダウン:静的な値(Dropdown: Static Values)のタイプを追加します。

  7. オプションの追加(Add Option)をクリックし、ユーザーがAPI向けに選択できる各リクエストタイプ(GETPATCHPOSTPUTDELETE)の行を追加します。オプション(Option)フィールドと値(Value)フィールドには同じテキストを入力します。デフォルトを選択する必要はありません。

  8. フィールドに必須(Required)のマークが付けられていることを確認し、保存(Save)をクリックします。

  9. Connector Action(Add Inputs)カードの入力の追加(Add Inputs)(Connector Action)をクリックします。

  10. フィールドの追加(Add Field)をクリックし、次のフィールドとデータタイプを追加して保存(Save)をクリックします。

    • Relative URLテキスト(Text)および必須(Required)

    • Queryオブジェクト(Object)

    • Headersオブジェクト(Object)

    • Bodyオブジェクト(Object)

  11. 相対URL(Relative URL)入力の入力検証を追加します。これにより、クロスサイトリクエストフォージェリ(CSRF)攻撃などの脆弱性を防止できます。

    1. Text Atカードをフローの最初のカードとして追加します。

    2. Connector Actionカードの相対的URL(Relative URL)出力をText Atカードのテキスト入力にドラッグします。

    3. Text Atカードで入力の位置を0に設定します。

    4. エラー処理のReturn Error Ifカードをフローの2番目のカードとして追加します。

    5. Text Atカードからの文字出力をReturn Error If(value a)カードの値a(value a)(Return Error If)入力にドラッグします。

    6. Return Error Ifカードの比較オプションを次と等しくない:(not equal)に設定します。

    7. Return Error Ifカードの/値 b(value b)入力を設定します。

    8. メッセージ入力として、Return Error IfカードにRelative URL must include a leading '/'.と入力します。

    9. Return Error Ifカードの400statusCode入力を設定します。

  12. Flow Control関数から、Call Flowカードをフローの3番目のカードとして追加します。

  13. フローの選択(Choose Flow)をクリックします。

  14. 事前に作成したhttpHelperフローを選択します。カードには、httpHelperフローに定義されている入力が自動的に取り込まれます。

  15. Connector Action(Relative URL)カードの相対URL(Relative URL)(Connector Action)出力をCall Flow(relative_url)カードのrelative_url(Call Flow)入力にドラッグします。

  16. Connector Action(Request Type)カードのリクエストタイプ(Request Type)(Connector Action)出力をCall Flow(request_method)カードのrequest_method(Call Flow)入力にドラッグします。

  17. Connector Action(Query)カードのクエリ(Query)(Connector Action)出力をCall Flow(query)カードのquery(Call Flow)入力にドラッグします。

  18. Connector Action(Headers)カードのヘッダー(Headers)(Connector Action)出力をCall Flow(headers)カードのheaders(Call Flow)入力にドラッグします。

  19. Connector Action(Body)カードの本文(Body)(Connector Action)出力をCall Flow(body)カードのbody(Call Flow)入力にドラッグします。

  20. Call Flowカードの出力には、httpHelperフローの出力と同じキーを定義する必要もあります。

    • status_code数値(Number)

    • headersオブジェクト(Object)

    • bodyオブジェクト(Object)

  21. 返答出力(Return Outputs)カードのオプションの追加(Add Outputs)をクリックします。

  22. フィールドの追加(Add Field)をクリックして、次の3つの新規フィールドとデータタイプを追加し、保存(Save)をクリックします。

    • Status Code数値(Number)

    • Headersオブジェクト(Object)

    • Bodyオブジェクト(Object)

  23. Call Flowカードの出力を返答出力(Return Outputs)カードの対応する入力にドラッグします。

  24. コネクターのAuthping(auth)カードの認証(auth)(Authping)オブジェクトをCall Flow(Connection)カードの接続(Connection)(Call Flow)入力フィールドにドラッグします。

  25. フローを保存し、テストダイアログにリクエストメソッド、相対URL、その他の必要データを手動で追加してテストします。

次の手順

revoke方式を構築する