HTTPリクエストをワークフローに送信する

外部ウェブサーバー、APIエンドポイント、およびURLにHTTPリクエストを送信するワークフローを作成します。たとえば、メッセージングサービスへのメッセージの送信や、プロジェクト管理アプリでのアイテムの作成を実行するワークフローを作成できます。

HTTPリクエストは、以下のHTTPメソッドをサポートできます。

  • Get - サーバーからの情報に関するリクエストを送信します。
  • Delete - サーバーからリソースを削除します。
  • Head - サーバーのHTTPレスポンスヘッダーを取得します。
  • Options - サーバーでサポートされているオプションと機能を取得します。
  • Patch - サーバー上のリソースを部分的に更新します。
  • Put - サーバー上のリソースを更新します。
  • Post - サーバー上のリソースを作成するか、置き換えます。

回答コード

Flowは、HTTPリクエストを送信してから最大で30秒間、アプリからのHTTPステータスコードによる応答を待ちます。Flowは、30秒が経過してもアプリからの応答が得られない場合、アプリとの接続を閉じ、リクエストを再送します。

Flowは、応答を受け取ると、次のようにコードを処理します。

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リクエストを送信する

  1. ワークフローで、[アクションを追加する] をクリックします。
  2. [HTTPリクエストを送信する] を選択します。
  3. HTTPメソッドセクションで、以下の手順に従ってフィールドに入力します。

    1. HTTPメソッドのうちの1つを選択します。
    2. URLフィールドに、サーバーのURLを入力します。
    3. オプション: APIに情報を加える際に、URLに追加する情報が必要な場合は、以下の手順を実行します。 - APIを使用してヘッダー内の情報が必要な場合は、ヘッダーの表でパラメーターを指定してURLに加えます。APIを使用してヘッダーまたはURLパスのいずれかに情報を追加できる場合は、ヘッダーを使用します。このオプションによって、URLパスに情報を追加するよりも高い安全性を保てます。
    4. APIを使用してURLパスの情報が必要な場合は、URLのパス部分にテンプレート変数を追加します。URLのパス部分とは、3つ目のスラッシュの後にある部分のことです。たとえば、https://shopify.com/{{order.id}}というURLのパス部分は{{order.id}}です。
  4. ヘッダーフィールドに、キーと値のペアを追加します。キーまたは値にテンプレート変数を追加することもできます。

  5. 本文フィールドに、サーバーに送信するコンテンツを追加します。メッセージを送信する場合は、メッセージにお客様、注文、商品の詳細を含めておくと役立ちます。詳細を含めるには、テンプレート変数を使用する必要があります。

  6. [保存] をクリック

関連リンク

Shopifyで販売を開始する準備はできていますか?

無料体験を試す