サブスクリプションを一覧表示するList subscriptions

アプリ ID、ユーザー、およびテナントでのユーザーの役割に基づいて、Webhook サブスクリプションのプロパティとリレーションシップを取得します。Retrieve the properties and relationships of webhook subscriptions, based on the app ID, the user, and the user's role with a tenant.

アクセス許可Permissions

この API は、次のアクセス許可スコープをサポートしています。アクセス許可の選択方法などに関する詳細については、「アクセス許可」を参照してください。This API supports the following permission scopes; to learn more, including how to choose permissions, see Permissions.

アクセス許可の種類Permission type アクセス許可 (特権の小さいものから大きいものへ)Permissions (from least to most privileged)
委任されたアクセス許可 (職場または学校のアカウント)Delegated permission (work or school account) サブスクリプションの作成に必要なロール、または Subscription.Read.All (後述)。Role required to create subscription or Subscription.Read.All (see below).
委任されたアクセス許可 (個人用 Microsoft アカウント)Delegated permission (personal Microsoft account) サブスクリプションの作成に必要なロール、または Subscription.Read.All (後述)。Role required to create subscription or Subscription.Read.All (see below).
アプリケーションのアクセス許可Application permission サブスクリプションの作成に必要なロールです。Role required to create subscription.

応答の結果は、呼び出し元アプリのコンテキストによって異なります。Response results are based on the context of the calling app. 次に、一般的なシナリオの概要を示します。The following is a summary of the common scenarios:

基本シナリオBasic scenarios

ほとんどの場合、アプリケーションは、現在サインインしているユーザーかディレクトリ (職場アカウントや学校アカウント) 内のすべてのユーザーに対してそのアプリケーションが元々作成していたサブスクリプションを取得しようとします。Most commonly, an application wants to retrieve subscriptions that it originally created for the currently signed-in user, or for all users in the directory (work/school accounts). このようなシナリオでは、アプリがサブスクリプションを作成するために元々使用していたアクセス許可以外には、特別なアクセス許可は必要ありません。These scenarios do not require any special permissions beyond the ones the app used originally to create its subscriptions.

呼び出し元アプリのコンテキストContext of the calling app 応答内容Response contains
サインイン ユーザーに代わってアプリが呼び出しを実行している (委任されたアクセス許可)。App is calling on behalf of the signed-in user (delegated permission).
- および --and-
サブスクリプションの作成に必要な元のアクセス許可をアプリが持っている。App has the original permission required to create the subscription.

注: これは、個人用の Microsoft アカウントと職場や学校のアカウントの両方に適用されます。Note: This applies to both personal Microsoft accounts and work/school accounts.
このアプリによって作成された、サインイン ユーザーのみのサブスクリプション。Subscriptions created by this app for the signed-in user only.
アプリがそのアプリのために呼び出しを実行している (アプリケーションのアクセス許可)。App is calling on behalf of itself (application permission).
- および --and-
サブスクリプションの作成に必要な元のアクセス許可をアプリが持っている。App has the original permission required to create the subscription.

注: これは、職場や学校のアカウントにのみ適用されます。Note: This applies to work/school accounts only.
このアプリによって作成された、アプリ自体またはディレクトリ内の任意のユーザーのサブスクリプション。Subscriptions created by this app for itself or for any user in the directory.

高度なシナリオAdvanced scenarios

場合によっては、アプリは、他のアプリによって作成されたサブスクリプションを取得しようとします。In some cases, an app wants to retrieve subscriptions created by other apps. たとえば、ユーザーが、自分に代わって任意のアプリによって作成されたすべてのサブスクリプションを確認しようとすることがあります。For example, a user wants to see all subscriptions created by any app on their behalf. また、管理者が、ディレクトリ内のすべてのアプリによって作成されたすべてのサブスクリプションを確認しようとすることがあります。Or, an administrator may want to see all subscriptions from all apps in their directory. このような場合、委任されたアクセス許可の Subscription.Read.All が必要になります。For such scenarios, a delegated permission Subscription.Read.All is required.

呼び出し元アプリのコンテキストContext of the calling app 応答内容Response contains
サインイン ユーザーに代わってアプリが呼び出しを実行している (委任されたアクセス許可)。App is calling on behalf of the signed-in user (delegated permission). ユーザーは管理者ではないThe user is a non-admin.
- および --and-
Subscription.Read.All アクセス許可をアプリが持っているApp has the permission Subscription.Read.All

注: これは、個人用の Microsoft アカウントと職場や学校のアカウントの両方に適用されます。Note: This applies to both personal Microsoft accounts and work/school accounts.
任意のアプリによって作成された、サインイン ユーザーのみのサブスクリプション。Subscriptions created by any app for the signed-in user only.
サインイン ユーザーに代わってアプリが呼び出しを実行している (委任されたアクセス許可)。App is calling on behalf of the signed-in user (delegated permission). ユーザーは管理者であるThe user is an admin.
- および --and-
Subscription.Read.All アクセス許可をアプリが持っているApp has the permission Subscription.Read.All

注: これは、職場や学校のアカウントにのみ適用されます。Note: This applies to work/school accounts only.
任意のアプリによって作成された、ディレクトリ内の任意のユーザーのサブスクリプション。Subscriptions created by any app for any user in the directory.

HTTP 要求HTTP request

GET /subscriptions

オプションのクエリ パラメーターOptional query parameters

このメソッドは、応答をカスタマイズするための OData クエリ パラメーターをサポートしていません。This method does not support the OData Query Parameters to help customize the response.

要求ヘッダーRequest headers

名前Name 種類Type 説明Description
AuthorizationAuthorization stringstring ベアラー {トークン}。必須。Bearer {token}. Required.

要求本文Request body

このメソッドには、要求本文を指定しません。Do not supply a request body for this method.

応答Response

成功した場合、このメソッドは 200 OK 応答コードと、応答本文で subscription オブジェクトの一覧を返します。If successful, this method returns a 200 OK response code and a list of subscription objects in the response body.

Example

要求Request
GET https://graph.microsoft.com/v1.0/subscriptions
応答Response

応答の例を下に示します。Here's an example of the response. 簡潔にするために、切り詰められている場合があります。Note that it may be truncated for brevity. 実際の呼び出しからは、サポートされているプロパティのうち、要求と呼び出し元のコンテキストに適しているものすべてが返されます。All supported properties appropriate for the request and the calling context will be returned from an actual call.

HTTP/1.1 200 OK
Content-type: application/json
Content-length: 586

{
  "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#subscriptions",
  "value": [
    {
      "id": "0fc0d6db-0073-42e5-a186-853da75fb308",
      "resource": "Users",
      "applicationId": "24d3b144-21ae-4080-943f-7067b395b913",
      "changeType": "updated,deleted",
      "clientState": null,
      "notificationUrl": "https://webhookappexample.azurewebsites.net/api/notifications",
      "expirationDateTime": "2018-03-12T05:00:00Z",
      "creatorId": "8ee44408-0679-472c-bc2a-692812af3437"
    }
  ]
}

複数ページにわたるデータを要求が返す場合は、結果を管理しやすくするため、応答に @odata.nextLink プロパティが含まれます。When a request returns multiple pages of data, the response includes an @odata.nextLink property to help you manage the results. 詳細については、「アプリで Microsoft Graph データをページングする」を参照してください。To learn more, see Paging Microsoft Graph data in your app.