Share via


Quickstart: Resource Graph-query uitvoeren met rest API

In deze quickstart wordt beschreven hoe u een Azure Resource Graph-query met REST API uitvoert en de resultaten weergeeft. De REST API-elementen zijn een URI die de API-versie en aanvraagbody bevat die de query bevat. In de voorbeelden wordt Azure CLI gebruikt om u aan te melden bij Azure en waarmee uw account wordt geverifieerd om opdrachten uit te voeren az rest .

Als u niet bekend bent met REST API, begint u met de Azure REST API-verwijzing voor een algemeen begrip van REST API, in het bijzonder van aanvraag-URI en aanvraagbody. Zie Azure Resource Graph REST API voor de specificaties van Azure Resource Graph.

Vereisten

Verbinding maken met Azure

Maak vanuit een Visual Studio Code-terminalsessie verbinding met Azure. Als u meer dan één abonnement hebt, voert u de opdrachten uit om context in te stellen op uw abonnement. Vervang {subscriptionID} door de id van uw Azure-abonnement.

az login

# Run these commands if you have multiple subscriptions
az account list --output table
az account set --subscription {subscriptionID}

Gebruik az login zelfs als u PowerShell gebruikt, omdat in de voorbeelden Azure CLI az rest-opdrachten worden gebruikt.

De syntaxis van de REST API controleren

Er zijn twee elementen voor het uitvoeren van REST API-opdrachten: de REST API-URI en de aanvraagbody. Ga naar Resources voor meer informatie. Als u een query wilt uitvoeren op beheergroep, gebruikt managementGroups u in plaats van subscriptions. Als u een query wilt uitvoeren op de hele tenant, laat u zowel de als subscriptions de managementGroups eigenschappen van de aanvraagtekst weg.

In het volgende voorbeeld ziet u de syntaxis van de REST API-URI om een query uit te voeren voor een Azure-abonnement.

POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2022-10-01

Er is een aanvraagbody nodig om een query uit te voeren met REST API. Het volgende voorbeeld is de JSON om een aanvraagbodybestand te maken.

{
  "subscriptions": [
    "{subscriptionID}"
  ],
  "query": "Resources | project name, type | limit 5"
}

Resource Graph-query uitvoeren

In de voorbeelden wordt dezelfde az rest opdracht gebruikt, maar u wijzigt de hoofdtekst van de aanvraag om verschillende resultaten te krijgen. In de voorbeelden worden resources weergegeven, resources gesorteerd op de name eigenschap en resources gesorteerd op basis van de name eigenschap en het aantal resultaten beperkt.

Als u alle queryvoorbeelden wilt uitvoeren, gebruikt u de volgende az rest opdracht voor uw shell-omgeving:

az rest --method post --uri https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2022-10-01 --body `@request-body.json

In PowerShell is de backtick (`) nodig om de at sign (@) te escapen om een bestandsnaam voor de aanvraagbody op te geven.

Vervang in elk voorbeeld van de aanvraagtekst door {subscriptionID} uw Azure-abonnements-id. Voer de volgende opdracht uit om uw Azure-abonnements-id op te halen voor de aanvraagbody:

az account show --query id --output tsv

Resources weergeven

Maak in Visual Studio Code een nieuw bestand met de naam request-body.json. Kopieer en plak de volgende JSON in het bestand en sla het bestand op.

De query retourneert vijf Azure-resources met de name en resource type van elke resource.

{
  "subscriptions": [
    "{subscriptionID}"
  ],
  "query": "Resources | project name, type | limit 5"
}

Omdat dit queryvoorbeeld geen sorteeraanpassing biedt, levert order byhet uitvoeren van deze query meerdere keren een andere set resources per aanvraag op.

Order by name property

Werk request-body.json bij met de volgende code waarmee de query wordt gewijzigd in order by de name eigenschap. Sla het bestand op en gebruik de az rest opdracht om de query uit te voeren.

{
  "subscriptions": [
    "{subscriptionID}"
  ],
  "query": "Resources | project name, type | limit 5 | order by name asc"
}

Als u deze query meerdere keren uitvoert, levert dit een andere set resources per aanvraag op.

De volgorde van de queryopdrachten is belangrijk. In dit voorbeeld komt order by na limit. Met deze opdrachtvolgorde worden de queryresultaten beperkt tot vijf resources en worden ze vervolgens gesorteerd.

Order by name property and limit results

Werk request-body.json bij met de volgende code naar order by de name eigenschap en vervolgens limit naar de top vijf resultaten. Sla het bestand op en gebruik dezelfde az rest opdracht om de query uit te voeren.

{
  "subscriptions": [
    "{subscriptionID}"
  ],
  "query": "Resources | project name, type | order by name asc | limit 5"
}

Als de query meerdere keren wordt uitgevoerd, ervan uitgaande dat er niets in uw omgeving is gewijzigd, zijn de geretourneerde resultaten consistent en gerangschikt door de name eigenschap, maar beperkt tot de top vijf resultaten.

Resources opschonen

Meld u af bij uw Azure CLI-sessie.

az logout

Volgende stappen

In deze quickstart hebt u het Azure Resource Graph REST API-eindpunt gebruikt om een query uit te voeren. Ga verder naar de pagina met details van de querytaal voor meer informatie over de taal van Resource Graph.