Voorbeelden van OData-query's voor Cloud for Sustainability API (preview)
Belangrijk
Een gedeelte van of alle functionaliteit is beschikbaar als onderdeel van een preview-release. De inhoud en functionaliteit zijn aan verandering onderhevig.
OData (Open Data Protocol) is een gegevenstoegangsprotocol dat is gebaseerd op kernprotocollen zoals HTTP. Het maakt gebruik van algemeen aanvaarde methodologieën zoals REST voor het web. U kunt verschillende bibliotheken en tools gebruiken om OData-services te gebruiken.
U kunt een aantal van deze veel gevraagde voorbeeldquery′s bekijken zodat u uw eigen implementaties kunt bouwen op basis van de Microsoft Cloud for Sustainability API.
Wijzig de queryvoorbeelden om ze te laten werken in uw doelomgevingen:
{serviceRoot}:
https://api.mcfs.microsoft.com/api/v1.0/instances/{instanceId}
{instanceId}: De GUID van de Cloud for Sustainability-omgeving die u wilt opvragen, zoals 20aec369-f1c8-4814-a89d-4d449dd7e8a1.
{serviceRootM365}:
{serviceRoot}/m365
{serviceRootAzure}:
{serviceRoot}/enrollments/{enrollmentId}
{enrollmentId}: De inschrijvings-id, ook wel factureringsaccount-id genoemd. Voorbeeld: 12345678.
{tenantId}: tenant-id voor Microsoft 365.
Notitie
Sommige API-query's bevatten veel resultaten en zijn verdeeld over meerdere pagina's. De API retourneert maximaal 1000 resultaten per pagina. Als er meer resultaten beschikbaar zijn, retourneert de API een eigenschap @odata.nextLink met een URL naar de volgende pagina met resultaten.
EnrollmentEmission-entiteit (voor Azure-uitstoot)
Vertegenwoordigt de uitstootgegevens voor een factureringsaccount, ook wel inschrijving genoemd.
Eigenschap | Type | Aantekeningen |
---|---|---|
dateKey | int32 | Datum in jjjjmmdd-indeling; dd is altijd 01. |
enrollmentId | string | Ook wel factureringsaccount-id genoemd. |
orgName | string | |
subscriptionId | string | |
subscriptionName | string | |
azureServiceName | string | |
subService | string | Bijvoorbeeld: Azure Storage of Azure Compute. |
azureRegionName | string | |
bereik | string | |
scopeId | int32 | |
totalEmissions | dubbel |
Voorbeeldquery's voor de entiteit EnrollmentEmission (voor Azure-uitstoot)
Querytype | Voorbeeld |
---|---|
Uitstoot per inschrijving | {serviceRootAzure}/emissions |
Bepaalde velden selecteren | {serviceRootAzure}/emissions?$select=enrollmentId,totalEmissions,scopeId |
Aantal opnemen | {serviceRootAzure}/emissions?$count=true |
Aantal resultaten beperken | {serviceRootAzure}/emissions?$top=100 |
Paginering | {serviceRootAzure}/emissions?$skip=100&$top=50 |
Filteren op scope | {serviceRootAzure}/emissions?$filter=ScopeId eq 1 |
Filteren en aggregeren | {serviceRootAzure}/emissions?$apply=filter(ScopeId eq 1)/aggregate($count as Count, totalEmissions with average as Average, totalEmissions with sum as Sum) |
Filteren en groeperen | {serviceRootAzure}/emissions?$apply=filter(totalEmissions gt 0.05)/groupby((ScopeId), aggregate($count as Count))` |
Microsoft365Emission-entiteit (voor M365-uitstoot)
Vertegenwoordigt Microsoft 365-datacentrumuitstoot die is gekoppeld aan de volgende toepassingen:
- Exchange Online
- SharePoint
- OneDrive
- Microsoft Teams
- Word
- Excel
- PowerPoint
- Outlook
Eigenschappen | Type | Aantekeningen |
---|---|---|
dateKey | int32 | Datum in jjjjmmdd-indeling; dd is altijd 01. |
tenantId | string | |
tenantName | string | |
officeRegionName | string | Microsoft 365-datacentrumregio |
bereik | string | een van de volgende: Scope1 , Scope2 , Scope3 |
totalEmissions | dubbel |
Voorbeeldquery's voor de entiteit Microsoft365Emission (voor M365-uitstoot)
Querytype | Voorbeeld |
---|---|
Uitstoot voor tenant | {serviceRootM365}/tenantemissions |
Bepaalde velden selecteren | {serviceRootM365}/emissions?$select=tenantId,totalEmissions,scope |
Aantal opnemen | {serviceRootM365}/tenantemissions?$count=true |
Aantal resultaten beperken | {serviceRootM365}/tenantemissions?$top=100 |
Paginering | {serviceRootM365}/tenantemissions?$skip=100&$top=50 |
Filteren op scope | {serviceRootM365}/tenantemissions?$filter=Scope eq 'FILLMEIN' |
Filteren en aggregeren | {serviceRootserviceRootM365Azure}/tenantemissions?$apply=filter(scope eq 'FILLMEIN')/aggregate($count as Count, totalEmissions with average as Average, totalEmissions with sum as Sum) |
Filteren en groeperen | {serviceRootM365}/tenantemissions?$apply=filter(totalEmissions gt 0.05)/groupby((Scope), aggregate($count as Count))` |
EnrollmentUsage-entitit (voor Azure-uitstoot)
Vertegenwoordigt een berekende gebruiksfactor van Microsoft Cloud-resources.
Eigenschap | Type | Aantekeningen |
---|---|---|
dateKey | int32 | Datum in jjjjmmdd-indeling; dd is altijd 01. |
enrollmentId | string | Ook wel factureringsaccount-id genoemd. |
orgName | string | |
subscriptionId | string | |
subscriptionName | string | |
subService | string | Bijvoorbeeld: Azure Storage of Azure Compute. |
azureRegionName | string | |
gebruikt | dubbel | Ga voor meer informatie over de berekeningsmethodologie van Microsoft naar Microsoft Cloud for Sustainability API-berekeningsmethodologie. |
Voorbeeldquery's voor de entiteit EnrollmentUsage
Querytype | Voorbeeld | Notitie |
---|---|---|
Alle gebruiksgegevens | {serviceRootAzure}/usage | |
Totaal gebruik per maand per abonnement | {serviceRootAzure}/usage?$apply=groupby((SubscriptionName,DateKey),aggregate(usage with sum as TotalUsage))&$orderby=SubscriptionName,DateKey |
EnrollmentProjection-entiteit (voor Azure-uitstoot)
Vertegenwoordigt de verwachte uitstoot voor de rest van het kalenderjaar, gebaseerd op een voortschrijdend gemiddelde van de voorafgaande vijf maanden. Bedoeld voor visualisaties op jaarbasis.
Eigenschap | Type | Aantekeningen |
---|---|---|
dateKey | int32 | Datum in jjjjmmdd-indeling; dd is altijd 01. |
enrollmentId | string | Ook wel factureringsaccount-id genoemd. |
actualEmissions | dubbel | Alleen opgenomen voor datums in het verleden. |
projectedEmissions | dubbel | Gebaseerd op een voortschrijdend gemiddelde van de voorafgaande vijf maanden. |
actualUsage | dubbel | Alleen opgenomen voor datums in het verleden. |
projectedUsage | dubbel | Gebaseerd op een voortschrijdend gemiddelde van de voorafgaande vijf maanden. |
Voorbeeldquery's voor de entiteit EnrollmentProjection (voor Azure-uitstoot)
Querytype | Voorbeeld | Notitie |
---|---|---|
Projecties na 7-2022 | {serviceRootAzure}/projections?$filter=dateKey gt 20220701 | |
Alle projectie voor jaar | {serviceRootAzure}/projections |
Belangrijk
De Microsoft Cloud for Sustainability API is momenteel in preview en kan wijzigingen ondergaan. Uw historische uitstootcijfers worden mogelijk ook bijgewerkt zodra Microsoft verbeteringen aanbrengt in de nauwkeurigheid en volledigheid van gegevens.
Veelgestelde vragen
Hoe berekent Microsoft uitstoot en gebruik?
Ga voor informatie over de berekeningsmethodologie van Microsoft naar Microsoft Cloud for Sustainability API-berekeningsmethodologie.
Wat is Rownum?
De API gebruikt rownum voor consistente paginering. De waarde kan worden gewijzigd, dus uw toepassing mag er niet afhankelijk van zijn.
Wat is een inschrijvings-id?
Een inschrijvings-id verwijst naar een factureringsaccount-id. Zoek uw inschrijvings-id en factureringsaccount-id in de Azure-portal.
Hoe verkrijg ik een autorisatietoken voor mijn doelomgeving?
De API vereist een OAuth-autorisatietoken. Wij adviseren gebruik te maken van de Microsoft-verificatiebibliotheek (MSAL).
Kunt u meer informatie verschaffen over hoe nextLink voor paginering moet worden gebruikt?
De API retourneert een @odata.nextLink
-eigenschap als er meer resultaten zijn dan er in de huidige respons zijn geretourneerd. Uw app moet nog een GET uitvoeren op deze nextLink om de volgende pagina met resultaten te krijgen. De laatste pagina bevat geen nextLink.
Bekijk dit codevoorbeeld voor meer informatie over paginering met een OData-clientbibliotheek.
Zie ook
Overzicht van Cloud for Sustainability APIBerekeningsmethodologie voor Microsoft Cloud for Sustainability APIMicrosoft Cloud for Sustainability API