HTTP connector - HTTP経由でリクエストを送信アクション

このページは機械翻訳により提供されています。翻訳内容と英語版に相違がある場合は、英語版が優先されます。

HTTP経由でリクエストを送信アクションを使用すると、APIエンドポイントにHTTPリクエストを送信できます。 ガイド付きセットアップを開始をクリックしてHTTPウィザードを使用してアクションを設定するか、手動で設定をクリックして手動で設定するかを選択できます。

このアクションを設定する前に、HTTPコネクションを作成する必要があります。

暗黙的な再試行

このアクションは、GET、HEAD、PUT、およびDELETEリクエスト中にリクエストがタイムアウトした場合、暗黙的な再試行を試みます。 これにより、リクエストを自動的に再試行して一時的なネットワークの問題に対処します。 再試行を無効化フィールドを使用して、暗黙的な再試行を無効にできます。

入力

機密データ

トークンユーザー名またはパスワードクライアントID/シークレットなどの機密情報を、このアクションの入力フィールドにハードコードしないでください。 代わりに、それらをコネクションに保存するか、シークレットマネージャーを使用します。

Workatoは次のシークレットマネージャーをサポートしています:

詳細については、セキュリティのベストプラクティスドキュメントを参照してください。

入力フィールド説明
リクエスト名このAPIリクエストの動作について、人が読める説明を入力します。
リクエストメソッド、リクエストURL、リクエストペイロード、およびヘッダーなど、リクエストに関連する情報を含みます。

このフィールドを自動的に設定するにはWorkato HTTPウィザードでアクションを作成するセクションを、マルチパートペイロード用にこのフィールドを設定するにはマルチパートペイロードを操作するセクションを参照してください。
応答レスポンスタイプ、エンコーディング、およびヘッダーなど、レスポンスに関連する情報を含みます。

このフィールドを自動的に設定するにはWorkato HTTPウィザードでアクションを作成するセクションを、マルチパートペイロード用にこのフィールドを設定するにはマルチパートレスポンスを受信するセクションを参照してください。
2xx以外のレスポンスコードを成功としてマーク(レスポンス)2xx以外のレスポンスを成功としてマークするかどうかを選択します。 HTTP connectorは、デフォルトで2xx以外のレスポンスコードをエラーとして扱います。 これにより、エラー処理ステップがない限り、ジョブは停止します。
レスポンスを待機このHTTPアクションを長時間アクションとして指定するかどうかを選択します。 このフィールドはパブリックベータ版です。

詳細については、HTTPアクションを長時間アクションとして設定するセクションを参照してください。
レスポンスタイムアウト(秒)Workatoがレスポンスを待機する最大時間を秒単位で設定します。 この時間枠内にレスポンスが到着しない場合、ジョブは失敗します。 11~3600秒の整数である必要があります。 デフォルトは3600秒(1時間)です。 このフィールドはパブリックベータ版であり、レスポンスを待機はいに設定されている場合にのみ使用できます。
再試行を無効化失敗したリクエストの自動再試行を無効にするかどうかを選択します。 再試行すべきでない操作で重複リクエストを防ぐには、このオプションを使用します。
ストリーミングを有効化HTTPレスポンスをレシピ内の次のアクションにストリーミングするかどうかを選択します。 Workatoは最大2 GBのレスポンスをストリーミングします。 ストリーミングされたレスポンスは、ファイルストリーミングをサポートしないアクションを含む、後続の任意のアクションに渡すことができます。 このフィールドは、レスポンスを待機はいに設定されている場合にのみ使用できます。

スキーマ型とRaw JSONリクエストボディ

リクエストコンテンツタイプ入力フィールドでJSONリクエストボディオプションを選択すると、Workatoは提供されたサンプルJSONに基づいて入力スキーマを生成します。 これにより、各フィールドを個別に設定できます。 また、Formulaモードを利用してフィールドの値を操作することもできます。 たとえば、三項演算子やskipを使用して、条件付きでフィールドを含める、または省略できます。

スキーマ型JSONリクエストボディFormulaモードを使用した入力フィールド値の操作

ただし、メッセージの形式を完全にカスタマイズしたい場合があります。 この場合、代わりにRaw JSONリクエストボディを選択できます。これにより、JSONペイロード構造を直接入力して操作できます。

Raw JSONリクエストボディRaw JSONリクエストボディ

HTTPアクションを長時間アクションとして設定する

頻繁なタイムアウトが予想される場合、またはリクエストが120秒を超えると予想される場合は、レスポンスを待機フィールドをはいに設定して、このHTTPアクションを長時間アクションとして指定できます。 Response timeout (seconds)(レスポンスタイムアウト(秒))フィールドを使用して、Workatoがレスポンスを待機する時間を設定します。

パブリックベータ

HTTP経由でリクエストを送信アクションのレスポンスを待機フィールドは、WorkatoのHTTP connectorのすべてのユーザーが利用できるベータ機能です。

レスポンスを待機レスポンスを待機

次の表は、レスポンスを待機フィールドが有効な場合の主な違いを説明しています:

"レスポンスを待機"なし"レスポンスを待機"あり
リクエストタイムアウト最大120秒Response timeout (seconds)(レスポンスタイムアウト(秒))フィールドを使用して設定できます。 11~3600秒の整数である必要があります。 デフォルトは3600秒(1時間)です。
レスポンスサイズ最大200 MBのソフトレスポンスサイズ制限2 GBの厳格なレスポンスサイズ制限
コネクションタイプすべてのHTTPコネクションタイプが可能OPAを使用するコネクションを除き、すべてのコネクションタイプがサポートされています
ジョブ処理キュー内のジョブは順番に処理されますジョブは順番に処理されない場合があります

Workatoでは、まずレスポンスを待機を無効にした状態で開始し、タイムアウトが発生した場合にアクションを編集して設定を有効にすることをお勧めします。

HTTPレスポンスをストリーミングする

HTTPレスポンスをレシピ内の次のアクションにストリーミングするには、レスポンスを待機ストリーミングを有効化はいに設定します。

最大2 GBのレスポンスがサポートされています。 ストリーミングされたレスポンスは、ファイルストリーミングをサポートしないアクションを含む、レシピ内の後続の任意のアクションに渡すことができます。

出力

出力フィールド説明
ステータスコードAPIレスポンスのステータスコード。
本文レスポンスのボディコンテンツ。
エラーリクエストで発生したエラー。
ヘッダーレスポンスセクションの設定に基づいて、レスポンスから抽出されたヘッダーに関する情報を含みます。
応答レスポンスセクションの設定に基づいて、レスポンスに関する情報を含みます。

Workato HTTPウィザードでアクションを作成する

Workato HTTPウィザードは、各設定手順を案内することで、HTTPアクションの設定プロセスを効率化します。

多くの場合、ウィザードはエンドポイントに合わせた推奨HTTP設定を自動的に提供し、手動設定の必要性をなくします。 また、ウィザード内でコネクションを直接テストできるため、アクションを確定する前にエンドポイントが期待どおりに応答することを確認できます。

この例では、Workato HTTPウィザードを使用して、ServiceNowのインシデントを取得という名前のアクションを作成します。

HTTPメソッドとリクエストURLを指定する

このHTTPアクションでAPIのHTTPメソッドとリクエストURLを指定するには、次の手順を完了します:

1

ガイド付きセットアップを開始をクリックしてHTTPウィザードを開きます。

セットアップウィザードの終了

このプロセス中はいつでも、ガイド付きセットアップをスキップをクリックしてアクションを手動で設定することで、セットアップウィザードを終了できます。 同様に、アクションを手動で設定することにした場合でも、ガイド付きセットアップを再開をクリックしてHTTPウィザードを使用できます。

2

呼び出す予定のAPIエンドポイントのHTTPメソッドを選択するには、メソッドドロップダウンメニューを使用します。 この例ではGETを使用します。

HTTPメソッドとリクエストURLを指定HTTPメソッドとリクエストURLを指定

3

リクエストURLフィールドにAPIエンドポイントの絶対URLを入力します。

または、コネクション設定でベースURLを設定している場合は、このフィールドに相対URLを入力します。 たとえば、ベースURLがhttps://api.example.com/で絶対URLがhttps://api.example.com/users/123の場合、相対URLはusers/123です。

この例では、ServiceNowの既存のインシデントレコードを表示する予定です。 ServiceNowドキュメントによると、これは次のエンドポイントを使用するGET呼び出しです:

plaintext
https://<instance>.service-now.com/api/now/v1/table/incident

URL内の<instance>を、使用しているServiceNowインスタンスの特定の名前に置き換えます。

HTTPメソッドとリクエストURLの設定HTTPメソッドとリクエストURLの設定

4

次へをクリックします。

サンプルリクエストを設定して送信する

特定のエンドポイントでは、Workatoはそのまま使用、カスタマイズ、または削除して手動で独自に作成できるサンプルリクエストを提供します。

次のいずれかのオプションを使用してサンプルリクエストを設定します:

  • Workatoの推奨リクエスト設定を変更せずに使用します。
  • 要件に合わせてWorkatoの推奨リクエスト設定をカスタマイズします。
  • Workatoの推奨リクエスト設定を削除し、リクエストを手動で作成します。

AWS HTTP

Access keyやIAM role authなどのAWS認証方法を使用する場合、追加の認証パラメーターを付加する必要はありません。 AWSドキュメントでは、これらは多くの場合AUTHPARAMSと表記されます。

HTTP設定を確認する

リクエストが成功すると、次のことが確認されます:

  • コネクションが正常に設定されています。
  • APIエンドポイントが正しいです。
  • すべての必須リクエストボディフィールドが含まれており、有効な値が含まれています。

リクエストとレスポンスの設定をWorkato HTTPアクションに適用するには、設定を適用をクリックします。

HTTPアクションに適用された設定HTTPアクションに適用された設定

HTTP設定を確定する

設定が機能することを確認した後、対応するパラメーターの横にある列にデータピルをマッピングするか、これらのフィールドに固定値を手動で入力できます。

マルチパートペイロードを操作する

HTTP経由でリクエストを送信アクションは、単一のHTTPリクエストまたはレスポンスで、異なるコンテンツタイプの複数のデータ片を送受信するマルチパートペイロードをサポートしています。

次のマルチパートタイプを使用できます:

タイプペイロードコンテンツユースケースの例
マルチパートフォームフォームフィールド(テキスト)とファイルアップロードの組み合わせcustomer namedate、およびamountフィールドを含む請求書PDFをアップロードします。
マルチパート代替異なる形式の同じコンテンツの複数バージョンプレーンテキストとHTMLの両方のバージョンを含むメールを送信します。
マルチパートダイジェスト複数の完全なメールメッセージ(RFC822形式)複数のメッセージを含むメーリングリストダイジェストを処理します。
マルチパート混合関連性のない複数の独立したファイルまたはデータ複数の契約PDFと条件のJSON概要を1つのリクエストで送信します。
マルチパート関連Content-IDでリンクされた主要コンテンツとサポートリソース添付PDFファイルを含むSOAP XMLエンベロープ、または埋め込み画像を含むHTMLメールを送信します。
マルチパートバイト範囲
(レスポンスのみ)
同じファイルの複数のバイト範囲(フラグメント)再開可能なダウンロードまたはビデオストリーミングを処理します。

マルチパートペイロードを設定するには、次のセクションを参照してください:

制限事項

Workatoは、HTTP経由でリクエストを送信アクションでネストされたマルチパートペイロードをサポートしていません。

マルチパートフォームリクエストを送信する

マルチパートフォームリクエストを送信するために、HTTP経由でリクエストを送信アクションのリクエストセクションを設定するには、次の手順を完了します:

INFO

他のタイプのマルチパートリクエストを送信するには、マルチパート代替、ダイジェスト、混合、および関連リクエストを送信するセクションを参照してください。

1

手動で設定をクリックします。

2

リクエストセクションに移動し、メソッドドロップダウンメニューを使用して、マルチパートフォームリクエストをサポートする次のいずれかのメソッドを選択します:

  • POST
  • PUT
  • PATCH
  • DELETE
3

リクエストURLフィールドにAPIエンドポイントの絶対URLを入力します。 または、コネクション設定でベースURLを設定している場合は、相対URLを入力します。 たとえば、ベースURLがhttps://api.example.com/で絶対URLがhttps://api.example.com/users/123の場合、相対URLはusers/123です。

4

リクエストコンテンツタイプドロップダウンメニューを使用して、Multipart formを選択します。

5

リクエストボディスキーマフィールドに移動し、フィールドを手動で追加をクリックして新しいフィールドを追加ダイアログを開きます。

6

名前フィールドにフィールドの名前を入力します。 たとえば、File1です。

7

ファイル添付ドロップダウンメニューを使用して、はいを選択します。

リクエストボディフィールドを追加リクエストボディフィールドを追加

8

フィールドを追加をクリックします。 これにより、使用できる要素専用の"ヘッダー"が追加されます。

マルチパートリクエストで複数のヘッダーが必要な場合は、ファイルを添付せずにこの要素を使用できます。

リクエストボディスキーマとリクエストスキーマフィールドリクエストボディスキーマとリクエストスキーマフィールド

9

+ フィールドを追加をクリックし、前の手順を繰り返して、マルチパートリクエストで送信する追加ファイル用のフィールドを作成します。

マルチパートフォーム以外のマルチパートリクエストを送信するために、HTTP経由でリクエストを送信アクションのリクエストセクションを設定するには、次の手順を完了します:

1

手動で設定をクリックします。

2

リクエストセクションに移動し、メソッドドロップダウンメニューを使用して、マルチパートフォームリクエストをサポートする次のいずれかのメソッドを選択します:

  • POST
  • PUT
  • PATCH
  • DELETE
3

リクエストURLフィールドにAPIエンドポイントの絶対URLを入力します。 または、コネクション設定でベースURLを設定している場合は、相対URLを入力します。 たとえば、ベースURLがhttps://api.example.com/で絶対URLがhttps://api.example.com/users/123の場合、相対URLはusers/123です。

4

リクエストコンテンツタイプドロップダウンメニューを使用して、次のいずれかを選択します:

  • Multipart alternative
  • Multipart digest
  • Multipart mixed
  • Multipart related

各マルチパートタイプの詳細については、マルチパートペイロードの操作セクションを参照してください。

5

リクエストパーツセクションに移動します。 このセクションでは、リクエストの複数のパーツを定義します。各パーツには独自のヘッダーとボディコンテンツがあります。

リクエストパーツセクションリクエストパーツセクション

6

...(省略記号)をクリックして、Fixed listまたはDynamic listを選択します。

パーツの総数とそのコンテンツが分かっている場合は、固定リストを選択します。 パーツの数またはそのコンテンツがリストに依存する場合は、動的リストを選択します。

7
8

ヘッダーセクションに移動します。 このセクションでは、各リクエストパーツのヘッダーを定義します。

ヘッダーセクションヘッダーセクション

9

...(省略記号)をクリックして、Fixed listまたはDynamic listを選択します。

ヘッダーの総数とそのコンテンツが分かっている場合は、固定リストを選択します。 ヘッダーの数またはそのコンテンツがリストに依存する場合は、動的リストを選択します。

10
11

Raw bodyフィールドにパーツのコンテンツを入力します。

12

任意です。 リクエストがDELETE操作の場合は、リクエストURLパラメーターセクションに移動してURLパラメーターを定義します。

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

リクエストに含める各URLパラメーターについて、次の手順を繰り返します:

1

URLパラメーターを追加をクリックします。

2

パラメーター名を入力します。

13

リクエストヘッダーセクションに移動します。 このセクションでは、個々のパーツではなくリクエスト全体に適用されるヘッダーを定義します。

リクエストヘッダーセクションリクエストヘッダーセクション

14

ヘッダーを追加をクリックし、リクエストに含める各ヘッダーのヘッダー名を入力します。

15

任意です。 マルチパートタイプがrelatedの場合は、次の追加フィールドを設定します:

マルチパート関連フィールド
1

ルートパーツのヘッダーで定義されていない場合は、ルートタイプフィールドにルートパーツのコンテンツタイプを入力します。

2

ルートパーツが最初のパーツでない場合は、ルートContent-IDフィールドにルートパーツのContent-IDを入力します。

3

Start-Infoフィールドに、複合オブジェクトを処理するための追加情報を入力します。

たとえば、次の値を入力した場合:

Application/X-FixedRecord

-o ps

Workatoは次のContent-Typeヘッダーを生成します:

http
Content-Type: multipart/related; boundary=f32f23tv-dydb-46c2-aa18-5e0792f9a0b0; type="Application/X-FixedRecord"; start="<[email protected]>"; start-info="-o ps"

ヘッダーboundaryに関する情報については、次の手順を参照してください。

16

任意です。 Boundaryフィールドにペイロードのカスタム境界を入力します。 このフィールドを空白のままにすると、Workatoは境界を自動的に生成します。

このフィールドの最大長は70文字で、次をサポートしています:

  • 英数字(AZaz09
  • アポストロフィ('
  • 括弧(( )
  • プラス(+
  • アンダースコア(_
  • カンマ(,
  • ハイフン(-
  • ピリオド(.
  • スラッシュ(/
  • コロン(:
  • 等号(=
  • 疑問符(?

マルチパートレスポンスを受信する

マルチパートレスポンスを受信するために、HTTP経由でリクエストを送信アクションのレスポンスセクションを設定するには、次の手順を完了します:

1

レスポンスコンテンツタイプドロップダウンメニューを使用して、マルチパートを選択します。

WorkatoはレスポンスのContent-Typeヘッダーから境界を自動的に検出します。

たとえば、APIが次を返す場合、Workatoは----Boundary123を抽出し、それを使用してレスポンスパーツを解析します:

http
Content-Type: multipart/mixed; boundary=----Boundary123

境界がない場合、Workatoはエラーをスローします。

2

エンコーディング方法を選択するには、エンコーディングドロップダウンメニューを使用します。

3

HTTPレスポンスヘッダーセクションとマルチパートパーツヘッダーセクションの両方で、次の手順を完了します。 HTTPレスポンスヘッダーセクションではレスポンスレベルで抽出するヘッダーを定義し、マルチパートパーツヘッダーセクションでは個々のパーツから抽出するヘッダーを定義します。

4

2xx以外のレスポンスを成功としてマークするかどうかを選択するには、2xx以外のレスポンスコードを成功としてマークしますか?ドロップダウンメニューを使用します。 WorkatoのHTTP connectorは、デフォルトで2xx以外のレスポンスコードをエラーとして扱います。 これにより、エラー処理ステップがない限り、ジョブは停止します。

出力データツリーは、定義したヘッダーで更新されます。 例:

HTTP経由でリクエストを送信の出力ツリーHTTP経由でリクエストを送信出力ツリー

最終更新日: