Wysyła zapytania do zasobów zarządzanych przez usługę Azure Resource Manager pod kątem zakresów określonych w żądaniu.
POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2024-04-01
Parametry identyfikatora URI
| Nazwa |
W |
Wymagane |
Typ |
Opis |
|
api-version
|
query |
True
|
string
minLength: 1
|
Wersja interfejsu API do użycia dla tej operacji.
|
Treść żądania
| Nazwa |
Wymagane |
Typ |
Opis |
|
query
|
True
|
string
|
Zapytanie dotyczące zasobów.
|
|
facets
|
|
FacetRequest[]
|
Tablica żądań aspektu do obliczenia względem wyniku zapytania.
|
|
managementGroups
|
|
string[]
|
Grupy zarządzania platformy Azure, dla których ma zostać wykonane zapytanie. Przykład: [ "mg1", "mg2" ]
|
|
options
|
|
QueryRequestOptions
|
Opcje oceny zapytania
|
|
subscriptions
|
|
string[]
|
Subskrypcje platformy Azure, dla których ma zostać wykonane zapytanie.
|
Odpowiedzi
Zabezpieczenia
azure_auth
Przepływ protokołu OAuth2 usługi Azure Active Directory.
Typ:
oauth2
Flow:
implicit
Adres URL autoryzacji:
https://login.microsoftonline.com/common/oauth2/authorize
Zakresy
| Nazwa |
Opis |
|
user_impersonation
|
personifikacja konta użytkownika
|
Przykłady
Access a properties field
Przykładowe żądanie
POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2024-04-01
{
"query": "Resources | where type =~ 'Microsoft.Compute/virtualMachines' | summarize count() by tostring(properties.storageProfile.osDisk.osType)",
"subscriptions": [
"cfbbd179-59d2-4052-aa06-9270a38aa9d6"
]
}
from azure.identity import DefaultAzureCredential
from azure.mgmt.resourcegraph import ResourceGraphClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-resourcegraph
# USAGE
python resources_properties_query.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ResourceGraphClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.resources(
query={
"query": "Resources | where type =~ 'Microsoft.Compute/virtualMachines' | summarize count() by tostring(properties.storageProfile.osDisk.osType)",
"subscriptions": ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
},
)
print(response)
# x-ms-original-file: 2024-04-01/ResourcesPropertiesQuery.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armresourcegraph_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph"
)
// Generated from example definition: 2024-04-01/ResourcesPropertiesQuery.json
func ExampleClient_Resources_accessAPropertiesField() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armresourcegraph.NewClientFactory(cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewClient().Resources(ctx, armresourcegraph.QueryRequest{
Query: to.Ptr("Resources | where type =~ 'Microsoft.Compute/virtualMachines' | summarize count() by tostring(properties.storageProfile.osDisk.osType)"),
Subscriptions: []*string{
to.Ptr("cfbbd179-59d2-4052-aa06-9270a38aa9d6"),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armresourcegraph.ClientResourcesResponse{
// QueryResponse: armresourcegraph.QueryResponse{
// Count: to.Ptr[int64](2),
// Data: []any{
// map[string]any{
// "count": 7,
// "properties_storageProfile_osDisk_osType": "Linux",
// },
// map[string]any{
// "count": 23,
// "properties_storageProfile_osDisk_osType": "Windows",
// },
// },
// Facets: []armresourcegraph.FacetClassification{
// },
// ResultTruncated: to.Ptr(armresourcegraph.ResultTruncatedFalse),
// TotalRecords: to.Ptr[int64](2),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ResourceGraphClient } = require("@azure/arm-resourcegraph");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to queries the resources managed by Azure Resource Manager for scopes specified in the request.
*
* @summary queries the resources managed by Azure Resource Manager for scopes specified in the request.
* x-ms-original-file: 2024-04-01/ResourcesPropertiesQuery.json
*/
async function accessAPropertiesField() {
const credential = new DefaultAzureCredential();
const client = new ResourceGraphClient(credential);
const result = await client.resources({
query:
"Resources | where type =~ 'Microsoft.Compute/virtualMachines' | summarize count() by tostring(properties.storageProfile.osDisk.osType)",
subscriptions: ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
});
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Przykładowa odpowiedź
{
"count": 2,
"data": [
{
"count": 7,
"properties_storageProfile_osDisk_osType": "Linux"
},
{
"count": 23,
"properties_storageProfile_osDisk_osType": "Windows"
}
],
"facets": [],
"resultTruncated": "false",
"totalRecords": 2
}
Basic management group query
Przykładowe żądanie
POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2024-04-01
{
"managementGroups": [
"e927f598-c1d4-4f72-8541-95d83a6a4ac8",
"ProductionMG"
],
"query": "Resources | project id, name, type, location, tags | limit 3"
}
from azure.identity import DefaultAzureCredential
from azure.mgmt.resourcegraph import ResourceGraphClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-resourcegraph
# USAGE
python resources_mg_basic_query.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ResourceGraphClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.resources(
query={
"managementGroups": ["e927f598-c1d4-4f72-8541-95d83a6a4ac8", "ProductionMG"],
"query": "Resources | project id, name, type, location, tags | limit 3",
},
)
print(response)
# x-ms-original-file: 2024-04-01/ResourcesMgBasicQuery.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armresourcegraph_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph"
)
// Generated from example definition: 2024-04-01/ResourcesMgBasicQuery.json
func ExampleClient_Resources_basicManagementGroupQuery() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armresourcegraph.NewClientFactory(cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewClient().Resources(ctx, armresourcegraph.QueryRequest{
ManagementGroups: []*string{
to.Ptr("e927f598-c1d4-4f72-8541-95d83a6a4ac8"),
to.Ptr("ProductionMG"),
},
Query: to.Ptr("Resources | project id, name, type, location, tags | limit 3"),
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armresourcegraph.ClientResourcesResponse{
// QueryResponse: armresourcegraph.QueryResponse{
// Count: to.Ptr[int64](3),
// Data: []any{
// map[string]any{
// "name": "myNetworkInterface",
// "type": "microsoft.network/networkinterfaces",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG1/providers/Microsoft.Network/networkInterfaces/myNetworkInterface",
// "location": "centralus",
// "tags": map[string]any{
// "tag1": "Value1",
// },
// },
// map[string]any{
// "name": "myVnet",
// "type": "microsoft.network/virtualnetworks",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Network/virtualNetworks/myVnet",
// "location": "westus",
// "tags": map[string]any{
// },
// },
// map[string]any{
// "name": "myPublicIp",
// "type": "microsoft.network/publicipaddresses",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Network/publicIPAddresses/myPublicIp",
// "location": "westus",
// "tags": map[string]any{
// },
// },
// },
// Facets: []armresourcegraph.FacetClassification{
// },
// ResultTruncated: to.Ptr(armresourcegraph.ResultTruncatedFalse),
// TotalRecords: to.Ptr[int64](3),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ResourceGraphClient } = require("@azure/arm-resourcegraph");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to queries the resources managed by Azure Resource Manager for scopes specified in the request.
*
* @summary queries the resources managed by Azure Resource Manager for scopes specified in the request.
* x-ms-original-file: 2024-04-01/ResourcesMgBasicQuery.json
*/
async function basicManagementGroupQuery() {
const credential = new DefaultAzureCredential();
const client = new ResourceGraphClient(credential);
const result = await client.resources({
managementGroups: ["e927f598-c1d4-4f72-8541-95d83a6a4ac8", "ProductionMG"],
query: "Resources | project id, name, type, location, tags | limit 3",
});
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Przykładowa odpowiedź
{
"count": 3,
"data": [
{
"name": "myNetworkInterface",
"type": "microsoft.network/networkinterfaces",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG1/providers/Microsoft.Network/networkInterfaces/myNetworkInterface",
"location": "centralus",
"tags": {
"tag1": "Value1"
}
},
{
"name": "myVnet",
"type": "microsoft.network/virtualnetworks",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Network/virtualNetworks/myVnet",
"location": "westus",
"tags": {}
},
{
"name": "myPublicIp",
"type": "microsoft.network/publicipaddresses",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Network/publicIPAddresses/myPublicIp",
"location": "westus",
"tags": {}
}
],
"facets": [],
"resultTruncated": "false",
"totalRecords": 3
}
Basic query
Przykładowe żądanie
POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2024-04-01
{
"query": "Resources | project id, name, type, location, tags | limit 3",
"subscriptions": [
"cfbbd179-59d2-4052-aa06-9270a38aa9d6"
]
}
from azure.identity import DefaultAzureCredential
from azure.mgmt.resourcegraph import ResourceGraphClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-resourcegraph
# USAGE
python resources_basic_query.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ResourceGraphClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.resources(
query={
"query": "Resources | project id, name, type, location, tags | limit 3",
"subscriptions": ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
},
)
print(response)
# x-ms-original-file: 2024-04-01/ResourcesBasicQuery.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armresourcegraph_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph"
)
// Generated from example definition: 2024-04-01/ResourcesBasicQuery.json
func ExampleClient_Resources_basicQuery() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armresourcegraph.NewClientFactory(cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewClient().Resources(ctx, armresourcegraph.QueryRequest{
Query: to.Ptr("Resources | project id, name, type, location, tags | limit 3"),
Subscriptions: []*string{
to.Ptr("cfbbd179-59d2-4052-aa06-9270a38aa9d6"),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armresourcegraph.ClientResourcesResponse{
// QueryResponse: armresourcegraph.QueryResponse{
// Count: to.Ptr[int64](3),
// Data: []any{
// map[string]any{
// "name": "myNetworkInterface",
// "type": "microsoft.network/networkinterfaces",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG1/providers/Microsoft.Network/networkInterfaces/myNetworkInterface",
// "location": "centralus",
// "tags": map[string]any{
// "tag1": "Value1",
// },
// },
// map[string]any{
// "name": "myVnet",
// "type": "microsoft.network/virtualnetworks",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Network/virtualNetworks/myVnet",
// "location": "westus",
// "tags": map[string]any{
// },
// },
// map[string]any{
// "name": "myPublicIp",
// "type": "microsoft.network/publicipaddresses",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Network/publicIPAddresses/myPublicIp",
// "location": "westus",
// "tags": map[string]any{
// },
// },
// },
// Facets: []armresourcegraph.FacetClassification{
// },
// ResultTruncated: to.Ptr(armresourcegraph.ResultTruncatedFalse),
// TotalRecords: to.Ptr[int64](3),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ResourceGraphClient } = require("@azure/arm-resourcegraph");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to queries the resources managed by Azure Resource Manager for scopes specified in the request.
*
* @summary queries the resources managed by Azure Resource Manager for scopes specified in the request.
* x-ms-original-file: 2024-04-01/ResourcesBasicQuery.json
*/
async function basicQuery() {
const credential = new DefaultAzureCredential();
const client = new ResourceGraphClient(credential);
const result = await client.resources({
query: "Resources | project id, name, type, location, tags | limit 3",
subscriptions: ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
});
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Przykładowa odpowiedź
{
"count": 3,
"data": [
{
"name": "myNetworkInterface",
"type": "microsoft.network/networkinterfaces",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG1/providers/Microsoft.Network/networkInterfaces/myNetworkInterface",
"location": "centralus",
"tags": {
"tag1": "Value1"
}
},
{
"name": "myVnet",
"type": "microsoft.network/virtualnetworks",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Network/virtualNetworks/myVnet",
"location": "westus",
"tags": {}
},
{
"name": "myPublicIp",
"type": "microsoft.network/publicipaddresses",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Network/publicIPAddresses/myPublicIp",
"location": "westus",
"tags": {}
}
],
"facets": [],
"resultTruncated": "false",
"totalRecords": 3
}
Basic tenant query
Przykładowe żądanie
POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2024-04-01
{
"query": "Resources | project id, name, type, location, tags | limit 3"
}
from azure.identity import DefaultAzureCredential
from azure.mgmt.resourcegraph import ResourceGraphClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-resourcegraph
# USAGE
python resources_tenant_basic_query.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ResourceGraphClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.resources(
query={"query": "Resources | project id, name, type, location, tags | limit 3"},
)
print(response)
# x-ms-original-file: 2024-04-01/ResourcesTenantBasicQuery.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armresourcegraph_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph"
)
// Generated from example definition: 2024-04-01/ResourcesTenantBasicQuery.json
func ExampleClient_Resources_basicTenantQuery() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armresourcegraph.NewClientFactory(cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewClient().Resources(ctx, armresourcegraph.QueryRequest{
Query: to.Ptr("Resources | project id, name, type, location, tags | limit 3"),
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armresourcegraph.ClientResourcesResponse{
// QueryResponse: armresourcegraph.QueryResponse{
// Count: to.Ptr[int64](3),
// Data: []any{
// map[string]any{
// "name": "myNetworkInterface",
// "type": "microsoft.network/networkinterfaces",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG1/providers/Microsoft.Network/networkInterfaces/myNetworkInterface",
// "location": "centralus",
// "tags": map[string]any{
// "tag1": "Value1",
// },
// },
// map[string]any{
// "name": "myVnet",
// "type": "microsoft.network/virtualnetworks",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Network/virtualNetworks/myVnet",
// "location": "westus",
// "tags": map[string]any{
// },
// },
// map[string]any{
// "name": "myPublicIp",
// "type": "microsoft.network/publicipaddresses",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Network/publicIPAddresses/myPublicIp",
// "location": "westus",
// "tags": map[string]any{
// },
// },
// },
// Facets: []armresourcegraph.FacetClassification{
// },
// ResultTruncated: to.Ptr(armresourcegraph.ResultTruncatedFalse),
// TotalRecords: to.Ptr[int64](3),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ResourceGraphClient } = require("@azure/arm-resourcegraph");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to queries the resources managed by Azure Resource Manager for scopes specified in the request.
*
* @summary queries the resources managed by Azure Resource Manager for scopes specified in the request.
* x-ms-original-file: 2024-04-01/ResourcesTenantBasicQuery.json
*/
async function basicTenantQuery() {
const credential = new DefaultAzureCredential();
const client = new ResourceGraphClient(credential);
const result = await client.resources({
query: "Resources | project id, name, type, location, tags | limit 3",
});
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Przykładowa odpowiedź
{
"count": 3,
"data": [
{
"name": "myNetworkInterface",
"type": "microsoft.network/networkinterfaces",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG1/providers/Microsoft.Network/networkInterfaces/myNetworkInterface",
"location": "centralus",
"tags": {
"tag1": "Value1"
}
},
{
"name": "myVnet",
"type": "microsoft.network/virtualnetworks",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Network/virtualNetworks/myVnet",
"location": "westus",
"tags": {}
},
{
"name": "myPublicIp",
"type": "microsoft.network/publicipaddresses",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Network/publicIPAddresses/myPublicIp",
"location": "westus",
"tags": {}
}
],
"facets": [],
"resultTruncated": "false",
"totalRecords": 3
}
Complex query
Przykładowe żądanie
POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2024-04-01
{
"query": "Resources | project id, name, type, location | where type =~ 'Microsoft.Compute/virtualMachines' | summarize count() by location | top 3 by count_",
"subscriptions": [
"cfbbd179-59d2-4052-aa06-9270a38aa9d6"
]
}
from azure.identity import DefaultAzureCredential
from azure.mgmt.resourcegraph import ResourceGraphClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-resourcegraph
# USAGE
python resources_complex_query.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ResourceGraphClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.resources(
query={
"query": "Resources | project id, name, type, location | where type =~ 'Microsoft.Compute/virtualMachines' | summarize count() by location | top 3 by count_",
"subscriptions": ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
},
)
print(response)
# x-ms-original-file: 2024-04-01/ResourcesComplexQuery.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armresourcegraph_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph"
)
// Generated from example definition: 2024-04-01/ResourcesComplexQuery.json
func ExampleClient_Resources_complexQuery() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armresourcegraph.NewClientFactory(cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewClient().Resources(ctx, armresourcegraph.QueryRequest{
Query: to.Ptr("Resources | project id, name, type, location | where type =~ 'Microsoft.Compute/virtualMachines' | summarize count() by location | top 3 by count_"),
Subscriptions: []*string{
to.Ptr("cfbbd179-59d2-4052-aa06-9270a38aa9d6"),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armresourcegraph.ClientResourcesResponse{
// QueryResponse: armresourcegraph.QueryResponse{
// Count: to.Ptr[int64](3),
// Data: []any{
// map[string]any{
// "count_": 11,
// "location": "centralus",
// },
// map[string]any{
// "count_": 11,
// "location": "eastus",
// },
// map[string]any{
// "count_": 3,
// "location": "southcentralus",
// },
// },
// Facets: []armresourcegraph.FacetClassification{
// },
// ResultTruncated: to.Ptr(armresourcegraph.ResultTruncatedFalse),
// TotalRecords: to.Ptr[int64](3),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ResourceGraphClient } = require("@azure/arm-resourcegraph");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to queries the resources managed by Azure Resource Manager for scopes specified in the request.
*
* @summary queries the resources managed by Azure Resource Manager for scopes specified in the request.
* x-ms-original-file: 2024-04-01/ResourcesComplexQuery.json
*/
async function complexQuery() {
const credential = new DefaultAzureCredential();
const client = new ResourceGraphClient(credential);
const result = await client.resources({
query:
"Resources | project id, name, type, location | where type =~ 'Microsoft.Compute/virtualMachines' | summarize count() by location | top 3 by count_",
subscriptions: ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
});
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Przykładowa odpowiedź
{
"count": 3,
"data": [
{
"count_": 11,
"location": "centralus"
},
{
"count_": 11,
"location": "eastus"
},
{
"count_": 3,
"location": "southcentralus"
}
],
"facets": [],
"resultTruncated": "false",
"totalRecords": 3
}
Filter resources
Przykładowe żądanie
POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2024-04-01
{
"query": "Resources | project id, name, type, location | where type =~ 'Microsoft.Compute/virtualMachines' | limit 3",
"subscriptions": [
"cfbbd179-59d2-4052-aa06-9270a38aa9d6"
]
}
from azure.identity import DefaultAzureCredential
from azure.mgmt.resourcegraph import ResourceGraphClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-resourcegraph
# USAGE
python resources_filter_query.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ResourceGraphClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.resources(
query={
"query": "Resources | project id, name, type, location | where type =~ 'Microsoft.Compute/virtualMachines' | limit 3",
"subscriptions": ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
},
)
print(response)
# x-ms-original-file: 2024-04-01/ResourcesFilterQuery.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armresourcegraph_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph"
)
// Generated from example definition: 2024-04-01/ResourcesFilterQuery.json
func ExampleClient_Resources_filterResources() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armresourcegraph.NewClientFactory(cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewClient().Resources(ctx, armresourcegraph.QueryRequest{
Query: to.Ptr("Resources | project id, name, type, location | where type =~ 'Microsoft.Compute/virtualMachines' | limit 3"),
Subscriptions: []*string{
to.Ptr("cfbbd179-59d2-4052-aa06-9270a38aa9d6"),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armresourcegraph.ClientResourcesResponse{
// QueryResponse: armresourcegraph.QueryResponse{
// Count: to.Ptr[int64](3),
// Data: []any{
// map[string]any{
// "name": "myVm1",
// "type": "microsoft.compute/virtualmachines",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG1/providers/Microsoft.Compute/virtualMachines/myVm1",
// "location": "centralus",
// },
// map[string]any{
// "name": "myVirtualMachine",
// "type": "microsoft.compute/virtualmachines",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Compute/virtualMachines/myVirtualMachine",
// "location": "eastus",
// },
// map[string]any{
// "name": "testVm",
// "type": "microsoft.compute/virtualmachines",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG3/providers/Microsoft.Compute/virtualMachines/testVm",
// "location": "eastus",
// },
// },
// Facets: []armresourcegraph.FacetClassification{
// },
// ResultTruncated: to.Ptr(armresourcegraph.ResultTruncatedFalse),
// TotalRecords: to.Ptr[int64](3),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ResourceGraphClient } = require("@azure/arm-resourcegraph");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to queries the resources managed by Azure Resource Manager for scopes specified in the request.
*
* @summary queries the resources managed by Azure Resource Manager for scopes specified in the request.
* x-ms-original-file: 2024-04-01/ResourcesFilterQuery.json
*/
async function filterResources() {
const credential = new DefaultAzureCredential();
const client = new ResourceGraphClient(credential);
const result = await client.resources({
query:
"Resources | project id, name, type, location | where type =~ 'Microsoft.Compute/virtualMachines' | limit 3",
subscriptions: ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
});
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Przykładowa odpowiedź
{
"count": 3,
"data": [
{
"name": "myVm1",
"type": "microsoft.compute/virtualmachines",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG1/providers/Microsoft.Compute/virtualMachines/myVm1",
"location": "centralus"
},
{
"name": "myVirtualMachine",
"type": "microsoft.compute/virtualmachines",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Compute/virtualMachines/myVirtualMachine",
"location": "eastus"
},
{
"name": "testVm",
"type": "microsoft.compute/virtualmachines",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG3/providers/Microsoft.Compute/virtualMachines/testVm",
"location": "eastus"
}
],
"facets": [],
"resultTruncated": "false",
"totalRecords": 3
}
First page query
Przykładowe żądanie
POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2024-04-01
{
"options": {
"$skip": 0,
"$top": 3
},
"query": "Resources | where name contains 'test' | project id, name, type, location",
"subscriptions": [
"cfbbd179-59d2-4052-aa06-9270a38aa9d6"
]
}
from azure.identity import DefaultAzureCredential
from azure.mgmt.resourcegraph import ResourceGraphClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-resourcegraph
# USAGE
python resources_first_page_query.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ResourceGraphClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.resources(
query={
"options": {"$skip": 0, "$top": 3},
"query": "Resources | where name contains 'test' | project id, name, type, location",
"subscriptions": ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
},
)
print(response)
# x-ms-original-file: 2024-04-01/ResourcesFirstPageQuery.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armresourcegraph_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph"
)
// Generated from example definition: 2024-04-01/ResourcesFirstPageQuery.json
func ExampleClient_Resources_firstPageQuery() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armresourcegraph.NewClientFactory(cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewClient().Resources(ctx, armresourcegraph.QueryRequest{
Options: &armresourcegraph.QueryRequestOptions{
Skip: to.Ptr[int32](0),
Top: to.Ptr[int32](3),
},
Query: to.Ptr("Resources | where name contains 'test' | project id, name, type, location"),
Subscriptions: []*string{
to.Ptr("cfbbd179-59d2-4052-aa06-9270a38aa9d6"),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armresourcegraph.ClientResourcesResponse{
// QueryResponse: armresourcegraph.QueryResponse{
// SkipToken: to.Ptr("eyAibm8iOiAibHVjayIsICJidXQiOiAibmljZSIsICJ0cnkiOiAiISIgfQ=="),
// Count: to.Ptr[int64](3),
// Data: []any{
// map[string]any{
// "name": "yetanothertest_OsDisk_1_f396cbcb625a457bb69fe2abf5975820",
// "type": "microsoft.compute/disks",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG1/providers/Microsoft.Compute/disks/yetanothertest_OsDisk_1_f396cbcb625a457bb69fe2abf5975820",
// "location": "eastus",
// },
// map[string]any{
// "name": "TestAA",
// "type": "microsoft.automation/automationaccounts",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Automation/automationAccounts/TestAA",
// "location": "westcentralus",
// },
// map[string]any{
// "name": "TestRB",
// "type": "microsoft.automation/automationaccounts/runbooks",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Automation/automationAccounts/TestAA/runbooks/TestRB",
// "location": "westcentralus",
// },
// },
// Facets: []armresourcegraph.FacetClassification{
// },
// ResultTruncated: to.Ptr(armresourcegraph.ResultTruncatedFalse),
// TotalRecords: to.Ptr[int64](386),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ResourceGraphClient } = require("@azure/arm-resourcegraph");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to queries the resources managed by Azure Resource Manager for scopes specified in the request.
*
* @summary queries the resources managed by Azure Resource Manager for scopes specified in the request.
* x-ms-original-file: 2024-04-01/ResourcesFirstPageQuery.json
*/
async function firstPageQuery() {
const credential = new DefaultAzureCredential();
const client = new ResourceGraphClient(credential);
const result = await client.resources({
options: { skip: 0, top: 3 },
query: "Resources | where name contains 'test' | project id, name, type, location",
subscriptions: ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
});
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Przykładowa odpowiedź
{
"$skipToken": "eyAibm8iOiAibHVjayIsICJidXQiOiAibmljZSIsICJ0cnkiOiAiISIgfQ==",
"count": 3,
"data": [
{
"name": "yetanothertest_OsDisk_1_f396cbcb625a457bb69fe2abf5975820",
"type": "microsoft.compute/disks",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG1/providers/Microsoft.Compute/disks/yetanothertest_OsDisk_1_f396cbcb625a457bb69fe2abf5975820",
"location": "eastus"
},
{
"name": "TestAA",
"type": "microsoft.automation/automationaccounts",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Automation/automationAccounts/TestAA",
"location": "westcentralus"
},
{
"name": "TestRB",
"type": "microsoft.automation/automationaccounts/runbooks",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Automation/automationAccounts/TestAA/runbooks/TestRB",
"location": "westcentralus"
}
],
"facets": [],
"resultTruncated": "false",
"totalRecords": 386
}
Next page query
Przykładowe żądanie
POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2024-04-01
{
"options": {
"$skipToken": "eyAibm8iOiAibHVjayIsICJidXQiOiAibmljZSIsICJ0cnkiOiAiISIgfQ=="
},
"query": "Resources | where name contains 'test' | project id, name, type, location",
"subscriptions": [
"cfbbd179-59d2-4052-aa06-9270a38aa9d6"
]
}
from azure.identity import DefaultAzureCredential
from azure.mgmt.resourcegraph import ResourceGraphClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-resourcegraph
# USAGE
python resources_next_page_query.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ResourceGraphClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.resources(
query={
"options": {"$skipToken": "eyAibm8iOiAibHVjayIsICJidXQiOiAibmljZSIsICJ0cnkiOiAiISIgfQ=="},
"query": "Resources | where name contains 'test' | project id, name, type, location",
"subscriptions": ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
},
)
print(response)
# x-ms-original-file: 2024-04-01/ResourcesNextPageQuery.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armresourcegraph_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph"
)
// Generated from example definition: 2024-04-01/ResourcesNextPageQuery.json
func ExampleClient_Resources_nextPageQuery() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armresourcegraph.NewClientFactory(cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewClient().Resources(ctx, armresourcegraph.QueryRequest{
Options: &armresourcegraph.QueryRequestOptions{
SkipToken: to.Ptr("eyAibm8iOiAibHVjayIsICJidXQiOiAibmljZSIsICJ0cnkiOiAiISIgfQ=="),
},
Query: to.Ptr("Resources | where name contains 'test' | project id, name, type, location"),
Subscriptions: []*string{
to.Ptr("cfbbd179-59d2-4052-aa06-9270a38aa9d6"),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armresourcegraph.ClientResourcesResponse{
// QueryResponse: armresourcegraph.QueryResponse{
// SkipToken: to.Ptr("eyAibm8yIjogImx1Y2syIiwgImJ1dDIiOiAibmljZTIiLCAidHJ5MiI6ICIhIiB9"),
// Count: to.Ptr[int64](3),
// Data: []any{
// map[string]any{
// "name": "second_OsDisk_dddddbcb625a457bb69fe2abf5975820",
// "type": "microsoft.compute/disks",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG1/providers/Microsoft.Compute/disks/second_OsDisk_dddddbcb625a457bb69fe2abf5975820",
// "location": "eastus",
// },
// map[string]any{
// "name": "AATest",
// "type": "microsoft.automation/automationaccounts",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Automation/automationAccounts/AATest",
// "location": "westcentralus",
// },
// map[string]any{
// "name": "RBTest",
// "type": "microsoft.automation/automationaccounts/runbooks",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Automation/automationAccounts/TestAA/runbooks/RBTest",
// "location": "westcentralus",
// },
// },
// Facets: []armresourcegraph.FacetClassification{
// },
// ResultTruncated: to.Ptr(armresourcegraph.ResultTruncatedFalse),
// TotalRecords: to.Ptr[int64](386),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ResourceGraphClient } = require("@azure/arm-resourcegraph");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to queries the resources managed by Azure Resource Manager for scopes specified in the request.
*
* @summary queries the resources managed by Azure Resource Manager for scopes specified in the request.
* x-ms-original-file: 2024-04-01/ResourcesNextPageQuery.json
*/
async function nextPageQuery() {
const credential = new DefaultAzureCredential();
const client = new ResourceGraphClient(credential);
const result = await client.resources({
options: { skipToken: "eyAibm8iOiAibHVjayIsICJidXQiOiAibmljZSIsICJ0cnkiOiAiISIgfQ==" },
query: "Resources | where name contains 'test' | project id, name, type, location",
subscriptions: ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
});
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Przykładowa odpowiedź
{
"$skipToken": "eyAibm8yIjogImx1Y2syIiwgImJ1dDIiOiAibmljZTIiLCAidHJ5MiI6ICIhIiB9",
"count": 3,
"data": [
{
"name": "second_OsDisk_dddddbcb625a457bb69fe2abf5975820",
"type": "microsoft.compute/disks",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG1/providers/Microsoft.Compute/disks/second_OsDisk_dddddbcb625a457bb69fe2abf5975820",
"location": "eastus"
},
{
"name": "AATest",
"type": "microsoft.automation/automationaccounts",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Automation/automationAccounts/AATest",
"location": "westcentralus"
},
{
"name": "RBTest",
"type": "microsoft.automation/automationaccounts/runbooks",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Automation/automationAccounts/TestAA/runbooks/RBTest",
"location": "westcentralus"
}
],
"facets": [],
"resultTruncated": "false",
"totalRecords": 386
}
Query with a facet request
Przykładowe żądanie
POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2024-04-01
{
"facets": [
{
"expression": "location",
"options": {
"$top": 3,
"sortOrder": "desc"
}
},
{
"expression": "properties.storageProfile.osDisk.osType",
"options": {
"$top": 3,
"sortOrder": "desc"
}
},
{
"expression": "nonExistingColumn",
"options": {
"$top": 3,
"sortOrder": "desc"
}
},
{
"expression": "resourceGroup",
"options": {
"$top": 3,
"sortBy": "tolower(resourceGroup)",
"sortOrder": "asc"
}
},
{
"expression": "resourceGroup",
"options": {
"$top": 3,
"filter": "resourceGroup contains 'test'"
}
}
],
"query": "Resources | where type =~ 'Microsoft.Compute/virtualMachines' | project id, name, location, resourceGroup, properties.storageProfile.osDisk.osType | limit 5",
"subscriptions": [
"cfbbd179-59d2-4052-aa06-9270a38aa9d6"
]
}
from azure.identity import DefaultAzureCredential
from azure.mgmt.resourcegraph import ResourceGraphClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-resourcegraph
# USAGE
python resources_facet_query.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ResourceGraphClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.resources(
query={
"facets": [
{"expression": "location", "options": {"$top": 3, "sortOrder": "desc"}},
{"expression": "properties.storageProfile.osDisk.osType", "options": {"$top": 3, "sortOrder": "desc"}},
{"expression": "nonExistingColumn", "options": {"$top": 3, "sortOrder": "desc"}},
{
"expression": "resourceGroup",
"options": {"$top": 3, "sortBy": "tolower(resourceGroup)", "sortOrder": "asc"},
},
{"expression": "resourceGroup", "options": {"$top": 3, "filter": "resourceGroup contains 'test'"}},
],
"query": "Resources | where type =~ 'Microsoft.Compute/virtualMachines' | project id, name, location, resourceGroup, properties.storageProfile.osDisk.osType | limit 5",
"subscriptions": ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
},
)
print(response)
# x-ms-original-file: 2024-04-01/ResourcesFacetQuery.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armresourcegraph_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph"
)
// Generated from example definition: 2024-04-01/ResourcesFacetQuery.json
func ExampleClient_Resources_queryWithAFacetRequest() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armresourcegraph.NewClientFactory(cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewClient().Resources(ctx, armresourcegraph.QueryRequest{
Facets: []*armresourcegraph.FacetRequest{
{
Expression: to.Ptr("location"),
Options: &armresourcegraph.FacetRequestOptions{
Top: to.Ptr[int32](3),
SortOrder: to.Ptr(armresourcegraph.FacetSortOrderDesc),
},
},
{
Expression: to.Ptr("properties.storageProfile.osDisk.osType"),
Options: &armresourcegraph.FacetRequestOptions{
Top: to.Ptr[int32](3),
SortOrder: to.Ptr(armresourcegraph.FacetSortOrderDesc),
},
},
{
Expression: to.Ptr("nonExistingColumn"),
Options: &armresourcegraph.FacetRequestOptions{
Top: to.Ptr[int32](3),
SortOrder: to.Ptr(armresourcegraph.FacetSortOrderDesc),
},
},
{
Expression: to.Ptr("resourceGroup"),
Options: &armresourcegraph.FacetRequestOptions{
Top: to.Ptr[int32](3),
SortBy: to.Ptr("tolower(resourceGroup)"),
SortOrder: to.Ptr(armresourcegraph.FacetSortOrderAsc),
},
},
{
Expression: to.Ptr("resourceGroup"),
Options: &armresourcegraph.FacetRequestOptions{
Top: to.Ptr[int32](3),
Filter: to.Ptr("resourceGroup contains 'test'"),
},
},
},
Query: to.Ptr("Resources | where type =~ 'Microsoft.Compute/virtualMachines' | project id, name, location, resourceGroup, properties.storageProfile.osDisk.osType | limit 5"),
Subscriptions: []*string{
to.Ptr("cfbbd179-59d2-4052-aa06-9270a38aa9d6"),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armresourcegraph.ClientResourcesResponse{
// QueryResponse: armresourcegraph.QueryResponse{
// Count: to.Ptr[int64](5),
// Data: []any{
// map[string]any{
// "name": "myTestVm",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/B-TEST-RG/providers/Microsoft.Compute/virtualMachines/myTestVm",
// "location": "eastus",
// "properties_storageProfile_osDisk_osType": "Windows",
// "resourceGroup": "B-TEST-RG",
// },
// map[string]any{
// "name": "myTestAccountVm",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/c-rg/providers/Microsoft.Compute/virtualMachines/myTestAccountVm",
// "location": "westcentralus",
// "properties_storageProfile_osDisk_osType": "Windows",
// "resourceGroup": "c-rg",
// },
// map[string]any{
// "name": "yetanothertest",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/I-RG/providers/Microsoft.Compute/virtualMachines/yetanothertest",
// "location": "eastus",
// "properties_storageProfile_osDisk_osType": "Linux",
// "resourceGroup": "I-RG",
// },
// map[string]any{
// "name": "drafttest1bux4cv7a7q3aw",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/x-test-rg/providers/Microsoft.Compute/virtualMachines/drafttest1bux4cv7a7q3aw",
// "location": "southcentralus",
// "properties_storageProfile_osDisk_osType": "Linux",
// "resourceGroup": "x-test-rg",
// },
// map[string]any{
// "name": "testvmntp25370",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/y-rg/providers/Microsoft.Compute/virtualMachines/testvmntp25370",
// "location": "eastus",
// "properties_storageProfile_osDisk_osType": "Windows",
// "resourceGroup": "y-rg",
// },
// },
// Facets: []armresourcegraph.FacetClassification{
// &armresourcegraph.FacetResult{
// Count: to.Ptr[int32](3),
// Data: []any{
// map[string]any{
// "count": 3,
// "location": "eastus",
// },
// map[string]any{
// "count": 1,
// "location": "southcentralus",
// },
// map[string]any{
// "count": 1,
// "location": "westcentralus",
// },
// },
// Expression: to.Ptr("location"),
// ResultType: to.Ptr("FacetResult"),
// TotalRecords: to.Ptr[int64](3),
// },
// &armresourcegraph.FacetResult{
// Count: to.Ptr[int32](2),
// Data: []any{
// map[string]any{
// "count": 2,
// "properties_storageProfile_osDisk_osType": "Linux",
// },
// map[string]any{
// "count": 3,
// "properties_storageProfile_osDisk_osType": "Windows",
// },
// },
// Expression: to.Ptr("properties.storageProfile.osDisk.osType"),
// ResultType: to.Ptr("FacetResult"),
// TotalRecords: to.Ptr[int64](2),
// },
// &armresourcegraph.FacetError{
// Errors: []*armresourcegraph.ErrorDetails{
// {
// Code: to.Ptr("NoValidColumns"),
// Message: to.Ptr("No valid columns in facet expression."),
// },
// {
// Code: to.Ptr("InvalidColumnNames"),
// Message: to.Ptr("Invalid column names: [nonExistingColumn]."),
// },
// },
// Expression: to.Ptr("nonExistingColumn"),
// ResultType: to.Ptr("FacetError"),
// },
// &armresourcegraph.FacetResult{
// Count: to.Ptr[int32](3),
// Data: []any{
// map[string]any{
// "count": 1,
// "resourceGroup": "B-TEST-RG",
// },
// map[string]any{
// "count": 1,
// "resourceGroup": "c-rg",
// },
// map[string]any{
// "count": 1,
// "resourceGroup": "I-RG",
// },
// },
// Expression: to.Ptr("resourceGroup"),
// ResultType: to.Ptr("FacetResult"),
// TotalRecords: to.Ptr[int64](5),
// },
// &armresourcegraph.FacetResult{
// Count: to.Ptr[int32](2),
// Data: []any{
// map[string]any{
// "count": 1,
// "resourceGroup": "B-TEST-RG",
// },
// map[string]any{
// "count": 1,
// "resourceGroup": "x-test-rg",
// },
// },
// Expression: to.Ptr("resourceGroup"),
// ResultType: to.Ptr("FacetResult"),
// TotalRecords: to.Ptr[int64](2),
// },
// },
// ResultTruncated: to.Ptr(armresourcegraph.ResultTruncatedFalse),
// TotalRecords: to.Ptr[int64](5),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ResourceGraphClient } = require("@azure/arm-resourcegraph");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to queries the resources managed by Azure Resource Manager for scopes specified in the request.
*
* @summary queries the resources managed by Azure Resource Manager for scopes specified in the request.
* x-ms-original-file: 2024-04-01/ResourcesFacetQuery.json
*/
async function queryWithAFacetRequest() {
const credential = new DefaultAzureCredential();
const client = new ResourceGraphClient(credential);
const result = await client.resources({
facets: [
{ expression: "location", options: { top: 3, sortOrder: "desc" } },
{
expression: "properties.storageProfile.osDisk.osType",
options: { top: 3, sortOrder: "desc" },
},
{ expression: "nonExistingColumn", options: { top: 3, sortOrder: "desc" } },
{
expression: "resourceGroup",
options: { top: 3, sortBy: "tolower(resourceGroup)", sortOrder: "asc" },
},
{ expression: "resourceGroup", options: { top: 3, filter: "resourceGroup contains 'test'" } },
],
query:
"Resources | where type =~ 'Microsoft.Compute/virtualMachines' | project id, name, location, resourceGroup, properties.storageProfile.osDisk.osType | limit 5",
subscriptions: ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
});
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Przykładowa odpowiedź
{
"count": 5,
"data": [
{
"name": "myTestVm",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/B-TEST-RG/providers/Microsoft.Compute/virtualMachines/myTestVm",
"location": "eastus",
"properties_storageProfile_osDisk_osType": "Windows",
"resourceGroup": "B-TEST-RG"
},
{
"name": "myTestAccountVm",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/c-rg/providers/Microsoft.Compute/virtualMachines/myTestAccountVm",
"location": "westcentralus",
"properties_storageProfile_osDisk_osType": "Windows",
"resourceGroup": "c-rg"
},
{
"name": "yetanothertest",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/I-RG/providers/Microsoft.Compute/virtualMachines/yetanothertest",
"location": "eastus",
"properties_storageProfile_osDisk_osType": "Linux",
"resourceGroup": "I-RG"
},
{
"name": "drafttest1bux4cv7a7q3aw",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/x-test-rg/providers/Microsoft.Compute/virtualMachines/drafttest1bux4cv7a7q3aw",
"location": "southcentralus",
"properties_storageProfile_osDisk_osType": "Linux",
"resourceGroup": "x-test-rg"
},
{
"name": "testvmntp25370",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/y-rg/providers/Microsoft.Compute/virtualMachines/testvmntp25370",
"location": "eastus",
"properties_storageProfile_osDisk_osType": "Windows",
"resourceGroup": "y-rg"
}
],
"facets": [
{
"count": 3,
"data": [
{
"count": 3,
"location": "eastus"
},
{
"count": 1,
"location": "southcentralus"
},
{
"count": 1,
"location": "westcentralus"
}
],
"expression": "location",
"resultType": "FacetResult",
"totalRecords": 3
},
{
"count": 2,
"data": [
{
"count": 2,
"properties_storageProfile_osDisk_osType": "Linux"
},
{
"count": 3,
"properties_storageProfile_osDisk_osType": "Windows"
}
],
"expression": "properties.storageProfile.osDisk.osType",
"resultType": "FacetResult",
"totalRecords": 2
},
{
"errors": [
{
"code": "NoValidColumns",
"message": "No valid columns in facet expression."
},
{
"code": "InvalidColumnNames",
"message": "Invalid column names: [nonExistingColumn]."
}
],
"expression": "nonExistingColumn",
"resultType": "FacetError"
},
{
"count": 3,
"data": [
{
"count": 1,
"resourceGroup": "B-TEST-RG"
},
{
"count": 1,
"resourceGroup": "c-rg"
},
{
"count": 1,
"resourceGroup": "I-RG"
}
],
"expression": "resourceGroup",
"resultType": "FacetResult",
"totalRecords": 5
},
{
"count": 2,
"data": [
{
"count": 1,
"resourceGroup": "B-TEST-RG"
},
{
"count": 1,
"resourceGroup": "x-test-rg"
}
],
"expression": "resourceGroup",
"resultType": "FacetResult",
"totalRecords": 2
}
],
"resultTruncated": "false",
"totalRecords": 5
}
Random page query
Przykładowe żądanie
POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2024-04-01
{
"options": {
"$skip": 10,
"$top": 2
},
"query": "Resources | where name contains 'test' | project id, name, type, location",
"subscriptions": [
"cfbbd179-59d2-4052-aa06-9270a38aa9d6"
]
}
from azure.identity import DefaultAzureCredential
from azure.mgmt.resourcegraph import ResourceGraphClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-resourcegraph
# USAGE
python resources_random_page_query.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ResourceGraphClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.resources(
query={
"options": {"$skip": 10, "$top": 2},
"query": "Resources | where name contains 'test' | project id, name, type, location",
"subscriptions": ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
},
)
print(response)
# x-ms-original-file: 2024-04-01/ResourcesRandomPageQuery.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armresourcegraph_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph"
)
// Generated from example definition: 2024-04-01/ResourcesRandomPageQuery.json
func ExampleClient_Resources_randomPageQuery() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armresourcegraph.NewClientFactory(cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewClient().Resources(ctx, armresourcegraph.QueryRequest{
Options: &armresourcegraph.QueryRequestOptions{
Skip: to.Ptr[int32](10),
Top: to.Ptr[int32](2),
},
Query: to.Ptr("Resources | where name contains 'test' | project id, name, type, location"),
Subscriptions: []*string{
to.Ptr("cfbbd179-59d2-4052-aa06-9270a38aa9d6"),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armresourcegraph.ClientResourcesResponse{
// QueryResponse: armresourcegraph.QueryResponse{
// SkipToken: to.Ptr("eyAibm8iOiAibHVjayIsICJidXQiOiAibmljZSIsICJ0cnkiOiAiISIgfQ=="),
// Count: to.Ptr[int64](2),
// Data: []any{
// map[string]any{
// "name": "third_OsDisk_dddddbcb625a457bb69fe2abf5975820",
// "type": "microsoft.compute/disks",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG1/providers/Microsoft.Compute/disks/third_OsDisk_dddddbcb625a457bb69fe2abf5975820",
// "location": "eastus",
// },
// map[string]any{
// "name": "CCTest",
// "type": "microsoft.automation/automationaccounts",
// "id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Automation/automationAccounts/CCTest",
// "location": "westcentralus",
// },
// },
// Facets: []armresourcegraph.FacetClassification{
// },
// ResultTruncated: to.Ptr(armresourcegraph.ResultTruncatedFalse),
// TotalRecords: to.Ptr[int64](386),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ResourceGraphClient } = require("@azure/arm-resourcegraph");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to queries the resources managed by Azure Resource Manager for scopes specified in the request.
*
* @summary queries the resources managed by Azure Resource Manager for scopes specified in the request.
* x-ms-original-file: 2024-04-01/ResourcesRandomPageQuery.json
*/
async function randomPageQuery() {
const credential = new DefaultAzureCredential();
const client = new ResourceGraphClient(credential);
const result = await client.resources({
options: { skip: 10, top: 2 },
query: "Resources | where name contains 'test' | project id, name, type, location",
subscriptions: ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
});
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Przykładowa odpowiedź
{
"$skipToken": "eyAibm8iOiAibHVjayIsICJidXQiOiAibmljZSIsICJ0cnkiOiAiISIgfQ==",
"count": 2,
"data": [
{
"name": "third_OsDisk_dddddbcb625a457bb69fe2abf5975820",
"type": "microsoft.compute/disks",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG1/providers/Microsoft.Compute/disks/third_OsDisk_dddddbcb625a457bb69fe2abf5975820",
"location": "eastus"
},
{
"name": "CCTest",
"type": "microsoft.automation/automationaccounts",
"id": "/subscriptions/cfbbd179-59d2-4052-aa06-9270a38aa9d6/resourceGroups/RG2/providers/Microsoft.Automation/automationAccounts/CCTest",
"location": "westcentralus"
}
],
"facets": [],
"resultTruncated": "false",
"totalRecords": 386
}
Summarize resources by location
Przykładowe żądanie
POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2024-04-01
{
"query": "Resources | project id, name, type, location | summarize by location",
"subscriptions": [
"cfbbd179-59d2-4052-aa06-9270a38aa9d6"
]
}
from azure.identity import DefaultAzureCredential
from azure.mgmt.resourcegraph import ResourceGraphClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-resourcegraph
# USAGE
python resources_summarize_query.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ResourceGraphClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.resources(
query={
"query": "Resources | project id, name, type, location | summarize by location",
"subscriptions": ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
},
)
print(response)
# x-ms-original-file: 2024-04-01/ResourcesSummarizeQuery.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armresourcegraph_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph"
)
// Generated from example definition: 2024-04-01/ResourcesSummarizeQuery.json
func ExampleClient_Resources_summarizeResourcesByLocation() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armresourcegraph.NewClientFactory(cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewClient().Resources(ctx, armresourcegraph.QueryRequest{
Query: to.Ptr("Resources | project id, name, type, location | summarize by location"),
Subscriptions: []*string{
to.Ptr("cfbbd179-59d2-4052-aa06-9270a38aa9d6"),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armresourcegraph.ClientResourcesResponse{
// QueryResponse: armresourcegraph.QueryResponse{
// Count: to.Ptr[int64](3),
// Data: []any{
// map[string]any{
// "location": "centralus",
// },
// map[string]any{
// "location": "eastus",
// },
// map[string]any{
// "location": "westus",
// },
// },
// Facets: []armresourcegraph.FacetClassification{
// },
// ResultTruncated: to.Ptr(armresourcegraph.ResultTruncatedFalse),
// TotalRecords: to.Ptr[int64](3),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ResourceGraphClient } = require("@azure/arm-resourcegraph");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to queries the resources managed by Azure Resource Manager for scopes specified in the request.
*
* @summary queries the resources managed by Azure Resource Manager for scopes specified in the request.
* x-ms-original-file: 2024-04-01/ResourcesSummarizeQuery.json
*/
async function summarizeResourcesByLocation() {
const credential = new DefaultAzureCredential();
const client = new ResourceGraphClient(credential);
const result = await client.resources({
query: "Resources | project id, name, type, location | summarize by location",
subscriptions: ["cfbbd179-59d2-4052-aa06-9270a38aa9d6"],
});
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Przykładowa odpowiedź
{
"count": 3,
"data": [
{
"location": "centralus"
},
{
"location": "eastus"
},
{
"location": "westus"
}
],
"facets": [],
"resultTruncated": "false",
"totalRecords": 3
}
Definicje
AuthorizationScopeFilter
Wyliczenie
Określa, jaki poziom zasobów autoryzacji ma być zwracany na podstawie tego, które subskrypcje i grupy zarządzania są przekazywane jako zakresy.
| Wartość |
Opis |
|
AtScopeAndBelow
|
AtScopeAndBelow
|
|
AtScopeAndAbove
|
AtScopeAndAbove
|
|
AtScopeExact
|
AtScopeExact
|
|
AtScopeAboveAndBelow
|
AtScopeAboveAndBelow
|
FacetError
Objekt
Facet, którego wykonanie spowodowało błąd.
| Nazwa |
Typ |
Opis |
|
errors
|
ResourceGraphCommon.ErrorDetails[]
|
Tablica zawierająca wykryte błędy aspektów ze szczegółami.
|
|
expression
|
string
|
Wyrażenie aspektu, takie samo jak w odpowiadającym żądaniu aspektu.
|
|
resultType
|
string:
FacetError
|
Typ wyniku
|
FacetRequest
Objekt
Żądanie obliczenia dodatkowych statystyk (aspektów) w wynikach zapytania.
| Nazwa |
Typ |
Opis |
|
expression
|
string
|
Kolumna lub lista kolumn do podsumowania według
|
|
options
|
FacetRequestOptions
|
Opcje oceny aspektów
|
FacetRequestOptions
Objekt
Opcje oceny aspektów
| Nazwa |
Typ |
Domyślna wartość |
Opis |
|
$top
|
integer
(int32)
minimum: 1 maximum: 1000
|
|
Maksymalna liczba wierszy aspektów, które powinny być zwracane.
|
|
filter
|
string
|
|
Określa warunek filtru dla klauzuli "where", która będzie uruchamiana w wyniku zapytania głównego tuż przed rzeczywistym tworzeniem aspektów.
|
|
sortBy
|
string
|
|
Nazwa kolumny lub wyrażenie zapytania do sortowania. Wartości domyślne do zliczenia, jeśli nie są obecne.
|
|
sortOrder
|
FacetSortOrder
|
desc
|
Kolejność sortowania według wybranej kolumny (domyślnie zlicz).
|
FacetResult
Objekt
Pomyślnie wykonano aspekt zawierający dodatkowe statystyki dotyczące odpowiedzi zapytania.
| Nazwa |
Typ |
Opis |
|
count
|
integer
(int32)
|
Liczba rekordów zwróconych w odpowiedzi aspektowej.
|
|
data
|
|
Tablica JObject lub tabela zawierająca żądane aspekty. Występuje tylko wtedy, gdy aspekt jest prawidłowy.
|
|
expression
|
string
|
Wyrażenie aspektu, takie samo jak w odpowiadającym żądaniu aspektu.
|
|
resultType
|
string:
FacetResult
|
Typ wyniku
|
|
totalRecords
|
integer
(int64)
|
Liczba wszystkich rekordów w wynikach aspektu.
|
FacetSortOrder
Wyliczenie
Kolejność sortowania według wybranej kolumny (domyślnie zlicz).
| Wartość |
Opis |
|
asc
|
Asc
|
|
desc
|
Opis
|
QueryRequest
Objekt
Opisuje zapytanie do wykonania.
| Nazwa |
Typ |
Opis |
|
facets
|
FacetRequest[]
|
Tablica żądań aspektu do obliczenia względem wyniku zapytania.
|
|
managementGroups
|
string[]
|
Grupy zarządzania platformy Azure, dla których ma zostać wykonane zapytanie. Przykład: [ "mg1", "mg2" ]
|
|
options
|
QueryRequestOptions
|
Opcje oceny zapytania
|
|
query
|
string
|
Zapytanie dotyczące zasobów.
|
|
subscriptions
|
string[]
|
Subskrypcje platformy Azure, dla których ma zostać wykonane zapytanie.
|
QueryRequestOptions
Objekt
Opcje oceny zapytań
| Nazwa |
Typ |
Domyślna wartość |
Opis |
|
$skip
|
integer
(int32)
minimum: 0
|
|
Liczba wierszy do pominięcia od początku wyników. Zastępuje przesunięcie następnej strony, gdy właściwość $skipToken jest obecna.
|
|
$skipToken
|
string
|
|
Token kontynuacji dla stronicowania, przechwytywanie następnego rozmiaru i przesunięcia strony, a także kontekstu zapytania.
|
|
$top
|
integer
(int32)
minimum: 1 maximum: 1000
|
|
Maksymalna liczba wierszy zwracanych przez zapytanie. Zastępuje rozmiar strony, gdy właściwość $skipToken jest obecna.
|
|
allowPartialScopes
|
boolean
|
False
|
Dotyczy tylko zapytań na poziomie dzierżawy i grupy zarządzania, aby zdecydować, czy zezwalać na częściowe zakresy w przypadku przekroczenia dozwolonych limitów liczby subskrypcji.
|
|
authorizationScopeFilter
|
AuthorizationScopeFilter
|
AtScopeAndBelow
|
Określa, jaki poziom zasobów autoryzacji ma być zwracany na podstawie tego, które subskrypcje i grupy zarządzania są przekazywane jako zakresy.
|
|
resultFormat
|
ResultFormat
|
objectArray
|
Definiuje, w którym zwracany jest wynik zapytania w formacie.
|
QueryResponse
Objekt
Wynik zapytania.
| Nazwa |
Typ |
Opis |
|
$skipToken
|
string
|
Gdy wartość jest obecna, może zostać przekazana do kolejnego wywołania zapytania (wraz z tym samym zapytaniem i zakresami używanymi w bieżącym żądaniu), aby pobrać następną stronę danych.
|
|
count
|
integer
(int64)
|
Liczba rekordów zwróconych w bieżącej odpowiedzi. W przypadku stronicowania jest to liczba rekordów na bieżącej stronie.
|
|
data
|
|
Dane wyjściowe zapytania w tablicy JObject lub formacie tabeli.
|
|
facets
|
Facet[]:
|
Aspekty zapytań.
|
|
resultTruncated
|
ResultTruncated
|
Wskazuje, czy wyniki zapytania są obcinane.
|
|
totalRecords
|
integer
(int64)
|
Liczba wszystkich rekordów pasujących do zapytania.
|
ResourceGraphCommon.Error
Objekt
Informacje o błędzie.
| Nazwa |
Typ |
Opis |
|
code
|
string
|
Kod błędu identyfikujący określony błąd.
|
|
details
|
ResourceGraphCommon.ErrorDetails[]
|
Szczegóły błędu
|
|
message
|
string
|
Czytelny dla człowieka komunikat o błędzie.
|
ResourceGraphCommon.ErrorDetails
Objekt
Szczegóły błędu.
| Nazwa |
Typ |
Opis |
|
code
|
string
|
Kod błędu identyfikujący określony błąd.
|
|
message
|
string
|
Czytelny dla człowieka komunikat o błędzie.
|
ResourceGraphCommon.ErrorResponse
Objekt
Odpowiedź na błąd.
Wyliczenie
Definiuje, w którym zwracany jest wynik zapytania w formacie.
| Wartość |
Opis |
|
table
|
tabela
|
|
objectArray
|
objectArray
|
ResultTruncated
Wyliczenie
Wskazuje, czy wyniki zapytania są obcinane.
| Wartość |
Opis |
|
true
|
true
|
|
false
|
fałszywy
|