アプリケーションを一覧表示する

名前空間: microsoft.graph

この組織内のアプリケーションの一覧を取得します。 この API は agentIdentityBlueprint オブジェクトも返します。これは、#microsoft.graph.agentIdentityBlueprintの @odata.type プロパティによって識別されます。

注:

個人用 Microsoft アカウントに対して発行されたトークンを使ってこの API を呼び出すと、個人用 Microsoft アカウントが所有するアプリが返されます。 個人用 Microsoft アカウントでは、組織の概念はありません。 特定の個人用 Microsoft アカウントが所有するアプリケーションを一覧表示するには、Application.Read.All または Application.ReadWrite.All に加えて User.Read アクセス許可が必要です。

この API は、次の国内クラウド展開で使用できます。

グローバル サービス 米国政府機関 L4 米国政府機関 L5 (DOD) 21Vianet が運営する中国
✅ ✅ ✅ ✅

アクセス許可

この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。 アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、「アクセス許可のリファレンス」を参照してください。

アクセス許可の種類 最小特権アクセス許可 より高い特権のアクセス許可
委任 (職場または学校のアカウント) Application.Read.All Application.ReadWrite.All、Directory.ReadWrite.All、Directory.Read.All
委任 (個人用 Microsoft アカウント) Application.Read.All と User.Read Application.ReadWrite.All と User.Read
アプリケーション Application.Read.All Application.ReadWrite.OwnedBy、Application.ReadWrite.All、Directory.Read.All

重要

サインインしているユーザーが別のユーザーを操作している職場または学校アカウントを使用して委任されたアクセスを行うには、サポートされているMicrosoft Entraロールまたはこの操作に必要なアクセス許可を付与するカスタム ロールを割り当てる必要があります。 この操作では、必要最小限の特権のみを提供する次の組み込みロールがサポートされています。

  • 既定のユーザーアクセス許可を持つ管理者以外のメンバーまたはゲスト ユーザー
  • アプリケーション開発者 - 所有するアプリケーションのプロパティを読み取る
  • ディレクトリ リーダー - 標準プロパティの読み取り
  • グローバル セキュリティで保護されたアクセス管理者 - 標準プロパティの読み取り
  • グローバル閲覧者
  • ディレクトリ製作者
  • ハイブリッド ID 管理者
  • セキュリティ管理者
  • クラウド アプリケーション管理者
  • アプリケーション管理者

HTTP 要求

GET /applications

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

このメソッドは、応答のカスタマイズに役立つ $count、 $expand、 $filter、 $orderby、 $search、 $select、 $topOData クエリ パラメーター をサポートします。 一部のリレーションシップでは、 $filterもサポートされています。 既定のページ サイズと最大ページ サイズは、それぞれ 100 と 999 のアプリケーション オブジェクトです。 クエリの中には、ConsistencyLevel ヘッダーの設定を eventual および $count に使用した場合にのみサポートされるものもあります。 詳細については、「ディレクトリ オブジェクトの詳細クエリ機能」を参照してください。

既定では、この API は、すべてのアプリケーションを一覧表示するときに、keyCredentials プロパティにキーの値を返しません。 key で公開キー情報を取得するには、keyCredentials プロパティは、$select クエリで指定する必要があります。 たとえば、$select=id,appId,keyCredentials などです。

アプリケーションで $select を使用して keyCredentials を取得するには、テナントごとに 1 分あたり 150 要求の調整制限があります。

managerApplications プロパティは、既定では返されません。 取得するには、 $select=managerApplications を使用するか、他のプロパティと共に $select クエリに含めます。 たとえば、「 $select=id,appId,managerApplications 」のように入力します。

要求ヘッダー

名前 説明
Authorization ベアラー {token}。 必須です。 認証と認可についての詳細をご覧ください。
ConsistencyLevel 最終的。 このヘッダーと $count は、$search を使用する場合、または $filter の特別な使用をする場合に必要です。 ConsistencyLevel と $count の使用の詳細については、「ディレクトリ オブジェクトに対する高度なクエリ機能」を参照してください。

要求本文

このメソッドには、要求本文を指定しません。

応答

成功した場合、このメソッドは 200 OK 応答コードと、応答本文の application オブジェクトと agentIdentityBlueprint オブジェクトのコレクションを返します。

例

例 1: アプリケーションの一覧を取得する

要求

次の例は要求を示しています。

GET https://graph.microsoft.com/v1.0/applications

応答

次の例は応答を示しています。

注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。

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

{
  "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#applications",
  "value": [
    {
      "appId": "00000000-0000-0000-0000-000000000000",
      "identifierUris": [ "http://contoso/" ],
      "displayName": "My app",
      "publisherDomain": "contoso.com",
      "signInAudience": "AzureADMyOrg"
    }
  ]
}

例 2: アプリケーション数のみを取得する

要求

次の例は要求を示しています。 この要求では、$count が要求にあるため、ConsistencyLevel ヘッダーを eventual に設定する必要があります。 ConsistencyLevel と $count の使用の詳細については、「ディレクトリ オブジェクトに対する高度なクエリ機能」を参照してください。

注:$countおよび$searchのクエリパラメーターは、現在 Azure ADB2C テナントでは使用できません。

GET https://graph.microsoft.com/v1.0/applications/$count
ConsistencyLevel: eventual

応答

次の例は応答を示しています。

HTTP/1.1 200 OK
Content-type: text/plain

893

例 3: $filter と $top を使用して、「a」で始まる表示名のアプリケーションを 1 つ取得する (返されたオブジェクトの数も含む)

要求

次の例は要求を示しています。 この要求では、$orderby と $filter の両方のクエリ パラメーターがあるため、ConsistencyLevel ヘッダーを eventual および $count=true クエリ文字列に設定することが必要です。 ConsistencyLevel と $count の使用の詳細については、「ディレクトリ オブジェクトに対する高度なクエリ機能」を参照してください。

注:$countおよび$searchのクエリパラメーターは、現在 Azure ADB2C テナントでは使用できません。

GET https://graph.microsoft.com/v1.0/applications?$filter=startswith(displayName, 'a')&$count=true&$top=1&$orderby=displayName
ConsistencyLevel: eventual

応答

次の例は応答を示しています。

注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。

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

{
  "@odata.context":"https://graph.microsoft.com/v1.0/$metadata#applications",
  "@odata.count":1,
  "value":[
    {
      "appId": "00000000-0000-0000-0000-000000000000",
      "identifierUris": [ "http://contoso/" ],
      "displayName":"a",
      "publisherDomain": "contoso.com",
      "signInAudience": "AzureADMyOrg"
    }
  ]
}

例 4: $search を使用して、表示名に「Web」の文字が含まれるアプリケーションを取得する (返されたオブジェクトの数も含む)

要求

次の例は要求を示しています。 この要求では、$search と $count=true のクエリ文字列が要求内にあるため、ConsistencyLevel ヘッダーを eventual に設定する必要があります。 ConsistencyLevel と $count の使用の詳細については、「ディレクトリ オブジェクトに対する高度なクエリ機能」を参照してください。

注:$countおよび$searchのクエリパラメーターは、現在 Azure ADB2C テナントでは使用できません。

GET https://graph.microsoft.com/v1.0/applications?$search="displayName:Web"&$count=true&$select=appId,identifierUris,displayName,publisherDomain,signInAudience
ConsistencyLevel: eventual

応答

次の例は応答を示しています。

注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。

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

{
  "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#applications(appId,identifierUris,displayName,publisherDomain,signInAudience)",
  "@odata.count":1396,
  "value":[
    {
      "appId": "00000000-0000-0000-0000-000000000000",
      "identifierUris": [ "http://contoso/" ],
      "displayName":"'DotNetWeb-App' ",
      "publisherDomain": "contoso.com",
      "signInAudience": "AzureADMyOrg"
    }
  ]
}

例 5: 所有者が 2 人未満のアプリケーションを取得する

要求

次の例は要求を示しています。 この要求では、$count が要求にあるため、ConsistencyLevel ヘッダーを eventual に設定する必要があります。 ConsistencyLevel と $count の使用の詳細については、「ディレクトリ オブジェクトに対する高度なクエリ機能」を参照してください。

注:$countおよび$searchのクエリパラメーターは、現在 Azure ADB2C テナントでは使用できません。

GET https://graph.microsoft.com/v1.0/applications?$filter=owners/$count eq 0 or owners/$count eq 1&$count=true&$select=id,displayName
ConsistencyLevel: eventual

応答

次の例は応答を示しています。

注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。

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

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#applications(id,displayName)",
    "@odata.count": 3,
    "value": [
        {
            "id": "89e9e6c6-a7de-4ac0-8eed-12bd867d8f27",
            "displayName": "Box"
        },
        {
            "id": "c6cb7240-c684-4e24-93f5-eb29d0d9f43b",
            "displayName": "LinkedIn"
        },
        {
            "id": "d7151835-284e-4416-adc6-96fef8a77690",
            "displayName": "BrowserStack"
        }
    ]
}

例 6: API スキームを使用して identifierUris を使用してアプリケーションを取得する

要求

次の例は要求を示しています。 この要求では、$count が要求にあるため、ConsistencyLevel ヘッダーを eventual に設定する必要があります。 ConsistencyLevel と $count の使用の詳細については、「ディレクトリ オブジェクトに対する高度なクエリ機能」を参照してください。

GET https://graph.microsoft.com/v1.0/applications?$filter=identifierUris/any(x:startswith(x,'api://'))&$count=true
ConsistencyLevel: eventual

応答

次の例は応答を示しています。

注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。

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

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#applications",
    "@odata.count": 15067,
    "@odata.nextLink": "https://graph.microsoft.com/v1.0/applications?$filter=identifierUris%2fany(x%3astartswith(x%2c%27api%3a%2f%2f%27))&$count=true&$skiptoken=m~AQAoOzAxOTk3MTE1OTYyMDQ4MGE4YzE0ZjlkNWM0Y2ViMjE5OzswOzA7Ow",
    "@microsoft.graph.tips": "Use $select to choose only the properties your app needs, as this can lead to performance improvements. For example: GET applications?$select=addIns,api",
    "value": [
        {
            "id": "000101ef-c7d0-47a0-83bd-d234347da0f3",
            "identifierUris": [
                "api://000101ef-c7d0-47a0-83bd-d234347da0f3"
            ]
        }
    ]
}