REFERENCE
開発者リファレンス
認証、API、SDK、Flow Agent のプロセッサ、パラメータ解決のリファレンスです。
HTTP Request
外部 API へ HTTP リクエストを送り、応答をフローに取り込みます。
HTTP Request は HTTP で外部 API を呼び出すプロセッサーです。
基本的な使い方
HTTP Request は設定された URL、メソッド、ヘッダー、本文からリクエストを組み立てて送信し、応答を
httpResponse変数に保存します。後続のプロセッサーがそれを利用できます。データ連携、外部サービスとの接続、webhook、外部認証など、他システムとやり取りする場面で使います。設定項目
ノードのプロパティパネルです。
Name
キャンバス上に表示される名前です。ワークフロー内でこのプロセッサーを識別するために使います。
Description
このプロセッサーの用途を補足し、ワークフローの読みやすさを高めます。
Properties
URL(必須)
リクエストの送信先アドレスです。Literal、Expression、Template の値の種類に対応しています。詳しくはExpression の概要 — 値の取得を参照してください。
Method(必須)
HTTP メソッドです。GET、POST、PUT、DELETE、PATCH などに対応しています。
Parse JSON(必須)
JSON 形式の応答を自動で解析するかどうかです。既定は無効です。有効にすると
httpResponseオブジェクトにjson項目が追加されます。Body
リクエストの本文です。主に POST や PUT で使います。Literal、Expression、Template の値の種類に対応しています。詳しくはExpression の概要 — 値の取得を参照してください。
Header
追加の HTTP リクエストヘッダーです。必要な数だけ追加でき、Authorization や Content-Type がよく使われます。
内部的には、ヘッダーは独立した項目ではありません。このプロセッサーは
url、method、body、parseJson以外のすべての config キーを HTTP ヘッダーとして送信し、ヘッダー名はキーそのものになります。Workflow CRD では次のように書きます。- name: url
value: "https://api.sendgrid.com/v3/mail/send"
- name: method
value: POST
- name: parseJson
value: "false"
- name: Content-Type
value: application/json
- name: Authorization
expression: '"Bearer " + vars.sendgridApiKey'つまりヘッダーの値も他の config と同様に Expression に対応しており、キーをワークフローの変数に置いてここで組み立てられます。設定に直書きする必要はありません。
出力:httpResponse
成功すると応答は
httpResponseという固定名の変数に入ります(名前は変更できません)。常に 3 つのフィールドがあります。フィールド 内容 httpResponse.statusCodeHTTP ステータスコード httpResponse.body応答本文(文字列そのまま) httpResponse.headers応答ヘッダー Parse JSONがオンのときはhttpResponse.jsonが加わり、body を解析したオブジェクトが入ります。実際の例
ユーザーが入力した番号で ToDo を 1 件引き、タイトルを返します。
項目 値 URL Expression: 'https://dummyjson.com/todos/' + prevMessageMethod GETParse JSON オン 後ろに置く Push Message では、Message に Expression で
httpResponse.json.todoを指定します。POST の場合は Method を
POSTにし、Body を Expression で組み立て(例:JSON.stringify({ name: userName }))、Header にContent-Type: application/jsonを追加します。注意事項
- URL にはプロトコル(
http://またはhttps://)が必要です。 - 応答のステータスコードが 400 以上のときは Failure に進み、ステータスと内容がエラーに入ります。
- Parse JSON がオンでも、body の解析に失敗したことは失敗ではありません。ノードは Success に進み、
httpResponse.jsonが存在しないだけです。使う前に存在を確認してください。 - Body と Header はどちらも Expression に対応し、フロー内の変数をリクエストに載せられます。
- URL にはプロトコル(