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

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

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

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

回答コード

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

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

ステータスコード Shopify Flowのコード処理方法
200 Success Shopify Flowは、POSTリクエストがアプリによって処理されたものと判断します。
202 Success Shopify Flowは、POSTリクエストがアプリによって承諾されたものと判断します。
4XX Client errors

アプリがRetry-Afterヘッダーを使用せずに429 (too many requests) ステータスコードを送信した場合、Shopify Flowは、間隔を増やしながら、最大24時間にわたってHTTPリクエスト (POST) を再送します。

アプリが (待機時間を指定する) Retry-Afterヘッダーを使用して429 (too many requests) ステータスコードを送信した場合、Shopify Flowは、その待機時間 (秒単位) が経過してからHTTPリクエスト (POST) を再送します。

アプリがその他の4XXコードを送信した場合、Shopify Flowは、障害が発生したものと判断し、POSTリクエストを再送しません。

5XX Server errors Shopify 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を指定します。URLにパラメーターを渡す必要がある場合、ヘッダー表にパラメーターを指定します。
    3. 本文フィールドに、サーバーに送信するコンテンツを追加します。メッセージの送信には、関連するお客様、注文、または商品の詳細を含めると便利です。詳細を含めるには、テンプレート変数を使用する必要があります。
    4. [Save] をクリック

関連リンク

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

無料体験を試す