Application InsightsのAPIを叩くにはAPI Explorerを使うと便利

# はじめに
AzureのApplication InsightsからREST APIでデータ取得するプログラムを開発しました。この時にAPI Explorerの存在を知り、リクエストパラメータを組み立てるのに便利だったので使い方を紹介します。

# API Explorerとは
Application InsightsのREST APIをWebブラウザ上から実行できるツール。Microsoftが提供する。
画面上でパラメータを入力すると、REST APIのリクエスト文字列を表示してくれる。

# 使い方
1. [Application Insights REST API](https://dev.applicationinsights.io)にアクセスする。
2. 画面上部のタブから「API Explorer」をクリックする。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/295135/926fcc5e-64d6-9a33-f757-a58ee8df628d.png)

3. `Application ID`、`API Key`に自環境のID、Keyを入力する。
![2020-12-03 10.41.54 dev.applicationinsights.io 1ce5fecaf7c8 - コピー.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/295135/ec06451b-d003-d523-b374-053e6cf528f0.png)

    入力する `Application ID`、`API Key`はApplication Insightsの`APIアクセス`の画面（下の画像）から確認できる。
    - `Application ID`： 下の画面の`アプリケーションID`の値
    - `API Key`： 下の画面でAPIキーを作成する時に表示される値。(作成のタイミングでしか確認できないので注意)  
※ APIキーの作成時、アクセス許可を「利用統計情報の読み取り」にすること。(下の画面上でアクセス許可に`テレメトリを読み取る`が表示されていればOK)

    ![2020-12-02 15.36.45 portal.azure.com a51bb03187ed - コピー.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/295135/4b6b5ce5-b6d8-72c7-087c-dd72c7596c0b.png)

4. パラメータを入力し、リクエスト実行する。
`Parameters`に任意の値を設定し、画面下部の`Fetch`をクリックするとAPIが実行される。
※ 各パラメータの空欄をクリックすると、パラメータ候補や入力例が表示さるため入力しやすい。
![2020-12-03 11.07.30 dev.applicationinsights.io b56a77b5df8f - コピー - コピー.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/295135/76cd8875-d477-22f5-aa01-b078facb000b.png)

5. `Response`を確認する。
画面右下の`Response`にAPIの実行結果が表示されるので、期待する結果が得られているか確認する。
![スクリーンショット 2020-12-03 111552.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/295135/882fd232-c7d9-fb9e-de00-8e0289cfa7c8.png)


6. `Request`を確認する。
画面右上の`Request`に指定したパラメータが含まれるREST APIのリクエスト文字列やヘッダ情報が表示されるので、これをコピーして自作プログラムに利用できる。
![2020-12-03 11.07.30 dev.applicationinsights.io b56a77b5df8f - コピー (2) - コピー - コピー.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/295135/d31c283a-7811-103a-1f5e-34039f17e148.png)

    ※ 上のタブの`cURL`を表示すると、curlのコマンド文字列が表示される。
![スクリーンショット 2020-12-03 112951.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/295135/aefe66e2-6e07-8671-fac6-3f123da06180.png)


# その他
## ログの取得
上記はデフォルトで表示されるメトリック取得のAPIで説明しましたが、同様にログを取得するリクエストも作成できます。

1. 画面左の`GET /query`をクリックする。
![2020-12-03 11.38.32 dev.applicationinsights.io 0d6f67b49a48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/295135/d9d8e4db-f8af-10b2-803d-9d1a49556307.png)

2. `Query`にクエリ文字列を入力して`Fetch`をクリック。
![2020-12-03 11.48.16 dev.applicationinsights.io 693ba6cc46b1 - コピー.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/295135/754b44ed-6c3a-0e08-d145-b76186c00d4a.png)
`Response`にAPIの実行結果が表示される。
`Request`にURLエスケープされたリクエストパラメータが生成されるので、これをコピーして自作プログラムに利用できる。
![2020-12-03 11.49.55 dev.applicationinsights.io 0d948fcb6580 - コピー.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/295135/a3802bf9-9d76-ad8e-589b-f3b44f80a4d9.png)


# まとめ
APIのリクエスト作成時、リファレンスを見ながら各パラメータを組み立てて確認するのは結構面倒です。API Explorerを使うと簡単にAPIリクエストを実行、確認できて便利です。

# 商標
- Microsoft、Azureは米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
- その他記載の会社名、製品名、サービス名等はそれぞれの会社の商標または登録商標です。