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 raadplegen, bijvoorbeeld 20aec369-f1c8-4814-a89d-4d449dd7e8a1.
{serviceRootM365}:
{serviceRoot}/m365
{serviceRootAzure}:
{serviceRoot}/enrollments/{enrollmentId}
{enrollmentId}: De inschrijvings-ID, ook wel bekend als de ID van het factureringsaccount. Voorbeeld: 12345678.
{tenantId}: Microsoft 365 huurder-ID.
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 | Hetzelfde als TP-naam of Bovenliggende naam. |
subscriptionId | string | Id van het abonnement. |
subscriptionName | string | De naam van het abonnement. |
azureServiceName | string | Naam van een Azure-service, bijvoorbeeld App Service |
subService | string | Bijvoorbeeld: Azure Storage of Azure Compute. |
azureRegionName | string | Azure-regio waar de service wordt geïmplementeerd. |
bereik | string | Broeikasgasbereik, bijvoorbeeld scope 1, scope 2 of scope 3. |
scopeId | int32 | Id van het bereik |
totalEmissions | dubbel | Totale uitstoot voor een record (mtCO2e). |
Voorbeeldquery's voor de entiteit EnrollmentEmission (voor Azure-uitstoot)
Querytype | Voorbeeld |
---|---|
Uitstoot per inschrijving | {serviceRootAzure}/emissies |
Bepaalde velden selecteren | {serviceRootAzure}/emissies?$select=inschrijvings-ID,totale emissies,scope-ID |
Aantal opnemen | {serviceRootAzure}/emissies?$count=true |
Aantal resultaten beperken | {serviceRootAzure}/emissies?$top=100 |
Paginering | {serviceRootAzure}/emissies?$skip=100&$top=50 |
Filteren op scope | {serviceRootAzure}/emissies?$filter=ScopeId eq 1 |
Filteren en aggregeren | {serviceRootAzure}/emissies?$apply=filter(ScopeId eq 1)/aggregate($count als Aantal, totaleEmissies met gemiddelde als Gemiddelde, totaleEmissies met som als Som) |
Filteren en groeperen | {serviceRootAzure}/emissies?$apply=filter(totaleEmissies gt 0.05)/groupby((ScopeId), aggregate($count als Count))` |
Entiteit Microsoft365Emission (voor Microsoft 365-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 | Id van de tenant. |
tenantName | string | Naam van de tenant. |
officeRegionName | string | Microsoft 365-datacentrumregio. |
bereik | string | Broeikasgasbereik, bijvoorbeeld scope 1, scope 2 of scope 3. |
totalEmissions | dubbel | Totale uitstoot voor een record (mtCO2e). |
Voorbeeldquery's voor de entiteit Microsoft365Emission (voor Microsoft 365-uitstoot)
Querytype | Voorbeeld |
---|---|
Uitstoot voor tenant | {serviceRootM365}/huurdermissies |
Bepaalde velden selecteren | {serviceRootM365}/emissies?$select=tenantId,totaleEmissies,bereik |
Aantal opnemen | {serviceRootM365}/tenantemissies?$count=true |
Aantal resultaten beperken | {serviceRootM365}/tenantemissies?$top=100 |
Paginering | {serviceRootM365}/tenantemissies?$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 als Count, totalEmissions met gemiddelde als Average, totalEmissions met sum als Sum) |
Filteren en groeperen | {serviceRootM365}/tenantemissions?$apply=filter(totalEmissions gt 0.05)/groupby((Scope), aggregate($count als 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 | Hetzelfde als TP-naam of Bovenliggende naam. |
subscriptionId | string | Id van het abonnement. |
subscriptionName | string | De naam van het abonnement. |
subService | string | Bijvoorbeeld: Azure Storage of Azure Compute. |
azureRegionName | string | Azure-regio waar de service wordt geïmplementeerd. |
gebruikt | dubbel | Totaal gebruik van de record. Heeft de eenheid niet omdat deze het genormaliseerde gebruik van de service in de opgegeven regio vertegenwoordigt. |
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}/gebruik | |
Totaal gebruik per maand per abonnement | {serviceRootAzure}/usage?$apply=groupby((Abonnementsnaam,Datumsleutel),aggregate(gebruik met som als Totaalgebruik))&$orderby=Abonnementsnaam,Datumsleutel |
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 (mtCO2e). |
projectedEmissions | dubbel | Gebaseerd op een voortschrijdend gemiddelde van de afgelopen vijf maanden of minder, op basis van de feitelijk beschikbare gegevens voor het lopende jaar (mtCO2e). |
actualUsage | dubbel | Alleen opgenomen voor datums in het verleden. |
projectedUsage | dubbel | Gebaseerd op een voortschrijdend gemiddelde van de afgelopen vijf maanden of minder, op basis van de feitelijk beschikbare gegevens voor het lopende jaar. |
Voorbeeldquery's voor de entiteit EnrollmentProjection (voor Azure-uitstoot)
Querytype | Voorbeeld | Notitie |
---|---|---|
Projecties na 7-2022 | {serviceRootAzure}/projecties?$filter=dateKey gt 20220701 | |
Alle projecties voor jaar | {serviceRootAzure}/projecties |
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. Vind uw inschrijvings-ID en factureringsaccount-ID in het Azure portaal.
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.
Gerelateerde informatie
- Overzicht van Cloud for Sustainability API
- Microsoft Cloud for Sustainability API-berekeningsmethodologie
- Microsoft Cloud for Sustainability API