HTTPリクエストをワークフローに送信する
外部ウェブサーバー、APIエンドポイント、およびURLにHTTPリクエストを送信するワークフローを作成します。たとえば、メッセージングサービスへのメッセージの送信や、プロジェクト管理アプリでのアイテムの作成を実行するワークフローを作成できます。
HTTPリクエストは、以下のHTTPメソッドをサポートできます。
- Get - サーバーからの情報に関するリクエストを送信します。
- Delete - サーバーからリソースを削除します。
- Head - サーバーのHTTPレスポンスヘッダーを取得します。
- Options - サーバーでサポートされているオプションと機能を取得します。
- Patch - サーバー上のリソースを部分的に更新します。
- Put - サーバー上のリソースを更新します。
- Post - サーバー上のリソースを作成するか、置き換えます。
回答コード
Flowは、HTTPリクエストを送信してから最大で30秒間、アプリからのHTTPステータスコードによる応答を待ちます。Flowは、30秒が経過してもアプリからの応答が得られない場合、アプリとの接続を閉じ、リクエストを再送します。
Flowは、応答を受け取ると、次のようにコードを処理します。
ステータスコード | Flowがステータスコードを処理する方法 |
---|---|
200 Success | Flowは、POSTリクエストがアプリによって処理されたものと判断します。 |
202 Success | Flowは、POSTリクエストがアプリによって承諾されたものと判断します。 |
4XX Client errors |
アプリがRetry-Afterヘッダーを使用せずに429 (過剰なリクエスト) ステータスコードを送信した場合、Flowは、間隔を増やしながら、最大24時間にわたってHTTPリクエスト (POST) を再送します。 アプリが (待機時間を指定する) Retry-Afterヘッダーを使用して429 (過剰なリクエスト) ステータスコードを送信した場合、Flowは、その待機時間 (秒単位) が経過してからHTTPリクエスト (POST) を再送します。
アプリがその他の4XXコードを送信した場合、Flowは、障害が発生したものと判断し、POSTリクエストを再送しません。 |
5XX Server errors | Flowは、間隔を増やしながら、最大24時間にわたってHTTPリクエスト (POST) を再送します。 |
その他のステータスコード | この表に記載されていないコードをアプリが返した場合、Shopify Plusは、障害が発生したものと判断し、POSTリクエストを再送しません。 |
制限事項
このHTTPリクエストアクションと、Flowコネクターで作成されるアプリアクションを混同しないでください。どちらの機能もHTTPリクエストを送信しますが、両者には違いがあります。例えば、このアクションで送信されるHTTPリクエストには、ヘッダーにaction_run_id
が含まれません。
このアクションは、202ステータスコードを、リクエストが処理されたものとして扱うことは、既知の問題です。
HTTPリクエストを送信する
- ワークフローで、[アクションを追加する] をクリックします。
- [HTTPリクエストを送信する] を選択します。
-
HTTPメソッドセクションで、以下の手順に従ってフィールドに入力します。
- HTTPメソッドのうちの1つを選択します。
- URLフィールドに、サーバーのURLを入力します。
- オプション: APIに情報を加える際に、URLに追加する情報が必要な場合は、以下の手順を実行します。 - APIを使用してヘッダー内の情報が必要な場合は、ヘッダーの表でパラメーターを指定してURLに加えます。APIを使用してヘッダーまたはURLパスのいずれかに情報を追加できる場合は、ヘッダーを使用します。このオプションによって、URLパスに情報を追加するよりも高い安全性を保てます。
- APIを使用してURLパスの情報が必要な場合は、URLのパス部分にテンプレート変数を追加します。URLのパス部分とは、3つ目のスラッシュの後にある部分のことです。たとえば、
https://shopify.com/{{order.id}}
というURLのパス部分は{{order.id}}
です。
ヘッダーフィールドに、キーと値のペアを追加します。キーまたは値にテンプレート変数を追加することもできます。
本文フィールドに、サーバーに送信するコンテンツを追加します。メッセージを送信する場合は、メッセージにお客様、注文、商品の詳細を含めておくと役立ちます。詳細を含めるには、テンプレート変数を使用する必要があります。
[保存] をクリック