Anyflow Embed Docs
管理画面を開く
  • 👋イントロダクション
    • はじめに
    • 初期セットアップ
    • 用語集
  • 🔰トライアルツアー
    • トライアルツアー初級編
      • STEP1|アカウント作成 〜 ソリューション作成
      • STEP2|エンドユーザー変数
      • STEP3|ifステップ
      • STEP4|変数の活用、デバッグ
      • 動画チュートリアル
    • トライアルツアー中級編
      • STEP1 | 独自のアクションを追加する
      • STEP2 | My Event を理解する
      • STEP3 | My Event を実装する
    • トライアルツアーが終わったら
  • 🍳レシピ
    • CRM
      • SalesforceのToDoデータを取得する
      • Salesforceの取引先データを取得する
      • Salesforceの取引先データを登録する
      • Salesforceの商談を取得する
      • Salesforceのリードを取得する
      • HubSpotのコンタクトデータを取得する
      • HubSpotの会社データを取得する
      • HubSpotの取引データを取得する
    • コミュニケーション
      • Slack チャンネルにファイルをアップロードする
      • Slack チャンネルのメンバー情報一覧を取得する
      • 独自のSlackBotを設定する
    • 人事労務
      • SmartHRの部署データを取得する
      • SmartHRの従業員データを取得する
      • freee人事労務の従業員データを取得する
      • freee人事労務の勤怠データを取得する
    • 会計
      • freee会計の事業所データを取得する
      • freee会計の取引先データを取得する
      • freee会計の取引データを取得する
      • freeeコネクタのスコープを変更する
    • グループウェア
      • Google DriveのOAuthアプリを作成する
  • 🎨ソリューションエディタ
    • ソリューションエディタとは
    • トリガー
      • 自社プロダクト起点
        • Clickトリガー
        • Requestトリガー
          • Responseステップ
        • My Eventトリガー
          • アクセストークンの発行
        • Webhookトリガー
        • Request / My Event / Webhook トリガーの違い
      • 外部プロダクト起点
        • ポーリングトリガー
        • リアルタイムトリガー
      • スケジューラートリガー
      • トリガー条件
    • アクション
      • APIの呼び出し
        • 専用アクション
        • カスタムアクション
        • HTTPアクション
      • データの変換
        • Pythonアクション
        • 変数アクション
        • リストアクション
        • 日付と時刻アクション
        • CSVアクション
      • データの記録
        • キーバリューストア(KVS)アクション
        • ログアクション
        • メールアクション
    • ロジック
      • if
      • 繰り返し
      • エラー監視
      • 停止
    • 変数
      • 標準変数
      • エンドユーザー変数
    • 共通仕様
      • スキーマ定義
      • 固定リストと動的リスト
      • Formula
  • 🖼️ウィザードエディタ
    • ウィザードエディタとは
    • ウィジェット
      • アシスト
      • 複数選択アシスト
      • テーブルアシスト
      • チェックボックス
      • マッピング
      • コンディション
      • CSV(ファイル全体)
      • CSV項目(ヘッダーのみ)
    • ウィザードの仕様
    • 詳細設定
      • Markdown記法
      • テキストの入力パターンを指定する
      • デフォルト値を指定する
  • 🔌コネクタ
    • 対応コネクタ一覧
    • SaaSコネクタ固有の注意点
      • SaaS側でIPアドレス制限をしている場合
      • 自社独自のOAuthクライアントが必須のSaaS
      • cybozu.com製品で認証エラーとなる場合
      • kintoneコネクタとkintone(OAuth)コネクタの違い
      • ZoomコネクタとZoom(カスタム)コネクタの違い
      • SlackBotコネクタの違い
      • 2種類のSmartHRコネクタについて
    • OAuth画面をカスタムする
  • 🚀リリース
    • テスト
    • デプロイ
    • デプロイ環境
    • エンドユーザーへの提供方法
    • 自社プロダクトへの組み込み
      • JWTや公開鍵を生成する
      • SDK組み込みツアー
    • Anyflowドメインでの提供
  • 🧰運用/保守
    • 実行履歴
      • エンドユーザー向け実行履歴
      • ベンダー向け実行履歴
    • エラーへの対応
      • 連携先アプリの認証エラー
      • アクションの自動リトライ
      • ソリューションの再実行
    • イベント通知
    • ソリューション実行の上限値
    • ソリューションの削除
  • 📄ポリシー
    • 障害時の対応
    • エンドユーザーの問い合わせ
    • サービスレベル/稼働率
    • サービスの責任範囲
    • セキュリティポリシー
  • ⚙️Anyflow SDK
    • Anyflow SDK v0.13.0
      • エラータイプ
      • リファレンス
      • マイグレーションガイド
      • よくあるご質問
  • ⚙️Anyflow API
    • Vender Server API
      • Open API Specification
    • End User API
      • Open API Specification
    • Webhook
      • Open API Specification
GitBook提供
このページ内
  • 概要
  • HTTP コネクタで利用可能なアクション
  • 「リクエストを送信」アクションの入力フィールド
  • レスポンスタイプの違い
  • 利用例
  • Slack チャンネルのメンバー情報一覧を取得する「リクエストを送信」アクション例
  1. ソリューションエディタ
  2. アクション
  3. APIの呼び出し

HTTPアクション

前へカスタムアクション次へデータの変換

最終更新 1 か月前

概要

HTTP コネクタは任意のエンドポイントに対して HTTP リクエストを送信できるコネクタです。Anyflow Embed がコネクタとして提供していない外部ツールの API を利用します。

HTTP コネクタは、Anyflow Embed のほとんどのコネクタのサポートでサポートされているカスタムアクションを、特定のコネクタに縛られることなく、柔軟に利用できるようにしたものになります。

のドキュメントも必要に応じて参照ください。


HTTP コネクタで利用可能なアクション

HTTP コネクタでは、現在以下のアクションを利用可能です。

  • リクエストを送信

    • HTTP リクエストで独自のアクションを構築します。


「リクエストを送信」アクションの入力フィールド

カスタムアクションの設定入力フィールドの詳細について説明します。

入力フィールド

説明

表示名

作成するアクションに名前をつけます。

HTTPメソッド

呼び出す API エンドポイントの HTTP メソッドです。

リクエストURI

呼び出す API エンドポイントの URI です。

リクエストURLパラメーター

URL パラメーターを渡すことが可能です。

リクエストヘッダー

HTTP リクエストヘッダーを指定。

レスポンスヘッダー定義

API が返すと期待される HTTP レスポンスヘッダーを Anyflow Embed に説明します。これは出力値のデータツリーを生成するために使用します。

レスポンスタイプ

API が返すと期待される出力スキーマを Anyflow Embed に説明します。これは、出力値のデータツリーを生成するために使用します。

レスポンスボディ定義

API が返すレスポンスをソリューション内で利用したいフィールドを定義します。

レスポンスタイプの違い

  • json:多くの場合はこちらを選択します。レスポンスはAnyflowによりツリー構造として解釈され、ソリューション内で利用できます。

  • raw:レスポンスとしてファイルが返却されるAPIなどで、レスポンスがツリー構造ではない場合やAnyflowとしての解釈が不要な場合はこちらを選択します。デフォルトでは、rawのレスポンスは文字列型の変数に格納されます。

📘ヒント

rawのレスポンス実態が文字列ではない場合、は変数アクションを使って適切な型の変数を作成し、そこにrawのレスポンスを格納することで、ソリューション内で正しく扱うことができます。

ヒント


利用例

Slack チャンネルのメンバー情報一覧を取得する「リクエストを送信」アクション例

Slack チャンネルに参加しているメンバーの一覧を取得する「リクエストを送信」アクションを構築してみましょう。

ヒント

選択したアクションに名前を付けます。 今回は「メンバー一覧取得」というカスタムアクション名を入力します。 この名前は、アクション名の下部分に表示されます。

呼び出す API のエンドポイントに基づいて、リクエストの HTTP メソッドを選択します。 Slack API のドキュメントを確認すると、HTTP メソッドが記載されています。 今回の場合、conversations.membersがGET メソッドを使用することを示しています。

HTTP メソッドを選択すると、アクションに関連する入力フィールドが表示されます。

リクエスト URI にはhttps://slack.com/api/conversations.membersと入力します。

送信するリクエストを定義します。 この API エンドポイントでは、tokenの他にchannelをパラメーターとして渡す必要があります。

リクエスト URL パラメーターを設定します。

リクエストヘッダーに Slack Botの認証トークンを設定します。

Slack Bot の認証トークンはSlackBotのOAuth Tokensの項目から取得できます。

取得したトークンをヘッダーに設定します。

レスポンスタイプを選択します。 選択後、レスポンスボディを定義する入力フィールドが表示されます。

レスポンスボディを定義します。 まず、 Slack API のドキュメントにて、どんなレスポンス構造になっているかを確認します。

次に、Common successful response のJSON をコピーし、Anyflow Embed で「JSONで追加」を選択します。

定義する項目について

後続の処理の中で使用したい項目のみを定義します。 ドキュメントに明記されている項目を全て定義する必要はありません。 ここで定義した項目は、後続の処理で利用可能です。

これでHTTP コネクタの「リクエストを送信」アクションが完成したので、テスト実行をしてみましょう。 トリガーなしでアクションを迅速にテストしたい場合は、Click トリガーを使用してテストします。

上記アクションをテスト実行した際、アクションに渡された入力をテスト履歴から確認可能です。

また、Slack APIから返された詳細な出力値を確認し、APIコールが成功したかがどうか確認可能です。

こちらの呼び出しは成功したようです。

rawのレスポンス実態が文字列ではない場合、はを使って適切な型の変数を作成し、そこにrawのレスポンスを格納することで、ソリューション内で正しく扱うことができます。

例:rawの実態がFile型なので、File型の変数に格納する

この例では独自のSlackBotを作成したうえで、そのBotのTokenを使ってAPIを呼び出します。 独自のSlackBotを用意されていない方はを参照してください。

Slack APIドキュメント:conversations.members
conversations.members の URL エンドポイントを追加します
Slack APIドキュメント:conversations.membersのArguments
キーと値を入力します。
キーと値を入力します。
レスポンスタイプを選択すると、入力フィールドが表示されます。
Slack APIドキュメント:conversations.membersのExample responses
「JSONで追加」のモーダル
「JSONで追加」を行った後の状態
テスト履歴: 入力値
テスト履歴: 出力値
🎨
カスタムアクション
変数アクション
こちら
例:rawの実態がFile型なので、File型の変数に格納する
1439
キーと値を入力します。
734
`conversations.members` のURLエンドポイントを追加します
キーと値を入力します。
レスポンスタイプを選択すると、入力フィールドが表示されます。
734
「JSONで追加」のモーダル
「JSONで追加」を行った後の状態
テスト履歴: 入力値
:テスト履歴: 出力値