Azure Logic Apps で HTTP + Swagger コネクタを使用して REST エンドポイントを呼び出すCall REST endpoints with HTTP + Swagger connector in Azure Logic Apps

ロジック アプリのワークフローで HTTP + Swagger アクションを使用すると、Swagger ドキュメントから REST エンドポイントへのファースト クラス コネクタを作成できます。You can create a first-class connector to any REST endpoint through a Swagger document when you use the HTTP + Swagger action in your logic app workflow. ロジック アプリ デザイナーの優れたエクスペリエンスを使用し、ロジック アプリを拡張して任意の REST エンドポイントを呼び出すこともできます。You can also extend logic apps to call any REST endpoint with a first-class Logic App Designer experience.

コネクタ付きのロジック アプリを作成する方法については、「新しいロジック アプリの作成」を参照してください。To learn how to create logic apps with connectors, see Create a new logic app.

トリガーまたはアクションとしての HTTP + Swagger の使用Use HTTP + Swagger as a trigger or an action

HTTP + Swagger トリガーおよびアクションは、HTTP アクションと同様に機能しますが、ロジック アプリ デザイナーでは、Swagger メタデータから API の構造と出力を公開することでエクスペリエンスが向上します。The HTTP + Swagger trigger and action work the same as the HTTP action but provide a better experience in Logic App Designer by exposing the API structure and outputs from the Swagger metadata. また、HTTP + Swagger コネクタをトリガーとして使用することもできます。You can also use the HTTP + Swagger connector as a trigger. ポーリング トリガーを実装する場合は、「Logic Apps から他の API、サービス、およびシステムを呼び出すカスタム API の作成」に記載されているポーリング パターンに従ってください。If you want to implement a polling trigger, follow the polling pattern that's described in Create custom APIs to call other APIs, services, and systems from logic apps.

では、ロジック アプリのトリガーとアクションについて詳しく説明します。Learn more about logic app triggers and actions.

ロジック アプリでワークフローのアクションとして HTTP + Swagger 操作を使用する方法の例を次に示します。Here's an example of how to use the HTTP + Swagger operation as an action in a workflow in a logic app.

  1. [新しいステップ] をクリックします。Select the New Step button.

  2. [アクションの追加] を選択します。Select Add an action.

  3. アクションの検索ボックスに「 swagger 」と入力して、HTTP + Swagger アクションを表示します。In the action search box, type swagger to list the HTTP + Swagger action.

    HTTP + Swagger アクションの選択

  4. Swagger ドキュメントの URL を入力します。Type the URL for a Swagger document:

    • ロジック アプリ デザイナーで使用するには、この URL が HTTPS エンドポイントであり、CORS が有効になっている必要があります。To work from the Logic App Designer, the URL must be an HTTPS endpoint and have CORS enabled.
    • Swagger ドキュメントがこの要件を満たしていない場合は、CORS を有効にした Azure Storage を使用してドキュメントを格納できます。If the Swagger document doesn't meet this requirement, you can use Azure Storage with CORS enabled to store the document.
  5. [次へ] をクリックし、Swagger ドキュメントを読み込んで表示します。Click Next to read and render from the Swagger document.

  6. HTTP 呼び出しに必要なすべてのパラメーターを追加します。Add in any parameters that are required for the HTTP call.

    Complete HTTP action

  7. ロジック アプリを保存して発行するには、デザイナーのツールバーの [保存] をクリックします。To save and publish your logic app, click Save on designer toolbar.

Azure Storage からの Swagger のホストHost Swagger from Azure Storage

ホストされていない Swagger ドキュメントや、デザイナーのセキュリティとクロス オリジンの要件を満たしていない Swagger ドキュメントを参照することが必要になることがあります。You might want to reference a Swagger document that's not hosted, or that doesn't meet the security and cross-origin requirements for the designer. この問題を解決するには、Swagger ドキュメントを Azure Storage に格納し、CORS を有効にすることで、ドキュメントを参照します。To resolve this issue, you can store the Swagger document in Azure Storage and enable CORS to reference the document.

Azure Storage で Swagger ドキュメントを作成、構成し、格納する手順を次に示します。Here are the steps to create, configure, and store Swagger documents in Azure Storage:

  1. Azure BLOB ストレージでストレージ アカウントを作成しますCreate an Azure storage account with Azure Blob storage. この手順を実行するには、アクセス許可を [パブリック アクセス] に設定します。To perform this step, set permissions to Public Access.

  2. BLOB で CORS を有効にします。Enable CORS on the blob.

    この PowerShell スクリプト を使用して、この設定を自動的に構成できます。To automatically configure this setting, you can use this PowerShell script.

  3. Swagger ファイルを BLOB にアップロードします。Upload the Swagger file to the blob.

    この手順は、Azure Portal から、または Azure ストレージ エクスプローラーなどのツールから実行できます。You can perform this step from the Azure portal or from a tool like Azure Storage Explorer.

  4. Azure BLOB ストレージ内のドキュメントへの HTTPS リンクを参照しますReference an HTTPS link to the document in Azure Blob storage.

    リンクは、次の形式を使用します。The link uses this format:


技術的な詳細Technical details

この HTTP + Swagger コネクタでサポートされているトリガーとアクションの詳細を次に示します。Following are the details for the triggers and actions that this HTTP + Swagger connector supports.

HTTP + Swagger トリガーHTTP + Swagger triggers

トリガーとは、ロジック アプリで定義されたワークフローの開始に使用できるイベントです。A trigger is an event that can be used to start the workflow that's defined in a logic app. HTTP + Swagger コネクタにはトリガーが 1 つあります。The HTTP + Swagger connector has one trigger. トリガーの詳細についてはこちらを参照してください。Learn more about triggers.

トリガーTrigger 説明Description
HTTP + SwaggerHTTP + Swagger HTTP 呼び出しを実行し、応答コンテンツを返しますMake an HTTP call and return the response content

HTTP + Swagger アクションHTTP + Swagger actions

アクションとは、ロジック アプリで定義されたワークフローによって実行される操作です。An action is an operation that's carried out by the workflow that's defined in a logic app. HTTP + Swagger コネクタには、使用可能なアクションが 1 つあります。The HTTP + Swagger connector has one possible action. アクションの詳細についてはこちらを参照してください。Learn more about actions.

ActionAction 説明Description
HTTP + SwaggerHTTP + Swagger HTTP 呼び出しを実行し、応答コンテンツを返しますMake an HTTP call and return the response content

アクションの詳細Action details

HTTP + Swagger コネクタには、使用可能なアクションが 1 つ用意されています。The HTTP + Swagger connector comes with one possible action. 各アクションの情報、必須および任意の入力フィールド、アクションの使用に伴う出力の詳細を次に示します。Following is information about each of the actions, their required and optional input fields, and the corresponding output details that are associated with their usage.

HTTP + SwaggerHTTP + Swagger

Swagger メタデータを使用して HTTP 送信要求を行います。Make an HTTP outbound request with assistance of Swagger metadata. アスタリスク (*) は、必須フィールドであることを意味します。An asterisk (*) means a required field.

Display nameDisplay name プロパティ名Property name 説明Description
メソッド*Method* methodmethod 使用する HTTP 動詞HTTP verb to use.
URI*URI* uriuri HTTP 要求の URIURI for the HTTP request.
headersHeaders headersheaders 含める HTTP ヘッダーの JSON オブジェクトA JSON object of HTTP headers to include.
本文Body bodybody HTTP 要求の本文The HTTP request body.
AuthenticationAuthentication 認証authentication 要求に使用する認証Authentication to use for request. 詳細については、「HTTP コネクタ」を参照してください。For more information, see the HTTP connector.

出力の詳細Output details

HTTP 応答HTTP response

プロパティ名Property Name データ型Data type 説明Description
headersHeaders objectobject 応答ヘッダーResponse headers
本文Body objectobject 応答オブジェクトResponse object
状態コードStatus Code intint HTTP 状態コードHTTP status code

HTTP 応答HTTP responses

さまざまなアクションを呼び出すと、特定の応答を受け取る場合があります。When making calls to various actions, you might get certain responses. 次の表に、対応する応答と説明を示します。Following is a table that outlines corresponding responses and descriptions.

NameName 説明Description
200200 OKOK
202202 承認済みAccepted
400400 正しくない要求Bad request
401401 権限がありませんUnauthorized
403403 許可されていませんForbidden
404404 見つかりませんNot Found
500500 内部サーバー エラー。Internal server error. 不明なエラーが発生しました。Unknown error occurred.

次の手順Next steps