Vispārējo emisiju aprēķina API

Microsoft Cloud for Sustainability Tehniskais samits 2024. gada maijs

Varat izmantot msdyn_runEmissionCalculationService API, lai aprēķinātu darbības emisijas, izmantojot aprēķinu modeli, neizveidojot aprēķina profilu. Kā abonents Microsoft Sustainability Manager varat izmantot šo URL, lai piekļūtu API:

{organization url}/api/data/v{version}/msdyn_runEmissionCalculationService

Šajā vietrādī URL organizācijas URL attiecas uz tās organizācijas Microsoft Sustainability Manager pamata vietrādi URL, kurā ir instalēta un kuram lietotājs var piekļūt. Versija attiecas uz tīmekļa API versiju (piemēram, 9.2).

Entītiju ID iegūšana

Ir daudz veidu, kā varat iegūt entītiju ID, piemēram, darbību datus un aprēķinu modeli. Tie ietver XRM WebAPI, klienta API un tieši caur entītijas URL Microsoft Sustainability Manager.

Ievades parametri

Kā pielāgots Dataverse API, vispārējā emisiju aprēķina API izpildlaiks ir ierobežots līdz divām minūtēm. Garākiem aprēķiniem iestāsies taimauts, tāpēc ievades lielums ir ierobežots saskaņā ar nākamo tabulu.

Nosaukums/vārds Tipi Vai jānorāda obligāti? Apraksts
activityIds Virknes masīvs Aprēķinos izmantojamo darbības datu ierakstu ID saraksts. Ievadā var iekļaut līdz 500 darbību ID.
calculationModelId String Emisiju aprēķinā izmantojamā aprēķina modeļa identifikators.
version String Nē. API versijas numurs identificē API versiju, kura ir jāizsauc. Pašlaik 1.0.0 ir vienīgā pieejamā versija. Ja tas nav norādīts, tiek izmantota jaunākā versija.

Izvades parametri

Augstākajā līmenī izvade ir JSON virkne, kas satur vispārējo emisiju izvades vienību sarakstu. Attiecībā uz katru atbalsttiesīgo darbību izlaides struktūra var ietvert novērtētās emisijas vai kļūdas, kas radušās aprēķinu laikā, pamatojoties uz to, vai aprēķins bijis sekmīgs. Vienmēr pārbaudiet izvades ieraksta karodziņu IsErrorRecord , pirms mēģināt tam piekļūt.

Vispārējās emisijas izlaides vienība

Vispārējā emisiju izlaides entītija nepastāv Dataverse. Tā ir attiecīgo atribūtu kolekcija no emisiju vienības un aprēķina kļūdas vienības. Vispārējā emisiju aprēķina API atgriež šo vienību sarakstu, un katra vienība atbilst attiecināmo darbību datu ierakstam ievadē.

Izvades vienībai ir šādi atribūti:

Nosaukums/vārds Tipi Apraksts
ActivityId String Aprēķinos izmantotā darbības datu ieraksta identifikators.
ActivityName String Aprēķinos izmantotā darbības datu ieraksta nosaukums.
IsErrorRecord Boolean Būla vērtība, kas norāda, vai šīs konkrētās darbības aprēķinā ir radušās kļūdas. Ja aprēķins ir patiess, aprēķins neizdevās, un radušās kļūdas var apskatīt, izmantojot atribūtu ErrorJson.
ErrorJson String JSON virkne, kas attēlo visas aprēķina kļūdas, kas radušās, apstrādājot šo konkrēto darbību. Šī vērtība ir nulle, ja IsErrorRecord ir aplams.
Nosaukums/vārds String Šai darbībai aprēķinātās emisijas nosaukums. Šī vērtība ir nulle, ja IsErrorRecord ir patiess.
CH4 Decimāls CH4 emisijas vērtība, kas aprēķināta šai darbībai. Šī vērtība ir 0, ja IsErrorRecord ir patiess vai ja emisija nesatur CH4.
CH4Vienība String Vienības nosaukums emisijas CH4 vērtībai, kas aprēķināta šai darbībai. Šī vērtība ir nulle, ja IsErrorRecord ir patiess vai ja emisija nesatur CH4.
CO2 Decimāls CO2 emisijas vērtība, kas aprēķināta šai darbībai. Šī vērtība ir 0, ja IsErrorRecord ir patiess vai ja emisija nesatur CO2.
CO2Vienība String Šai darbībai aprēķinātās CO2 emisijas vērtības vienības nosaukums. Šī vērtība ir nulle, ja IsErrorRecord ir patiess vai ja emisija nesatur CO2.
CO2e Decimāls Šai darbībai aprēķinātā CO2e emisijas vērtība. Šī vērtība ir 0, ja IsErrorRecord ir patiess vai ja emisija nesatur CO2e.
CO2eVienība String Šai darbībai aprēķinātās CO2e emisijas vērtības vienības nosaukums. Šī vērtība ir nulle, ja IsErrorRecord ir patiess vai ja emisija nesatur CO2e.
HFC Decimāls HFC emisijas vērtība, kas aprēķināta šai darbībai. Šī vērtība ir 0, ja IsErrorRecord ir patiess vai ja emisija nesatur HFC.
HFC mērvienība String HFC vienības nosaukums: emisijas vērtība, kas aprēķināta šai darbībai. Šī vērtība ir nulle, ja IsErrorRecord ir patiess vai ja emisija nesatur HFC.
N2O Decimāls N2O emisijas vērtība, kas aprēķināta šai darbībai. Šī vērtība ir 0, ja IsErrorRecord ir patiess vai ja emisija nesatur N2O.
N2OUnit String Vienības nosaukums N2O emisijas vērtībai, kas aprēķināta šai darbībai. Šī vērtība ir nulle, ja IsErrorRecord ir patiess vai ja emisija nesatur N2O.
NF3 Decimāls NF3 emisijas vērtība, kas aprēķināta šai darbībai. Šī vērtība ir 0, ja IsErrorRecord ir patiess vai ja emisija nesatur NF3.
NF3Vienība String Vienības nosaukums NF3 emisijas vērtībai, kas aprēķināta šai darbībai. Šī vērtība ir nulle, ja IsErrorRecord ir patiess vai ja emisija nesatur NF3.
PFC Decimāls PFC emisijas vērtība, kas aprēķināta šai darbībai. Šī vērtība ir 0, ja IsErrorRecord ir patiess vai ja emisija nesatur PFC.
PFCsUnit String PFC vienības nosaukums: emisijas vērtība, kas aprēķināta šai darbībai. Šī vērtība ir nulle, ja IsErrorRecord ir patiess vai ja emisija nesatur PFC.
SF6 Decimāls SF6 emisijas vērtība, kas aprēķināta šai darbībai. Šī vērtība ir 0, ja IsErrorRecord ir patiess vai ja emisija nesatur SF6.
SF6Vienība String Vienības nosaukums emisijas SF6 vērtībai, kas aprēķināta šai darbībai. Šī vērtība ir nulle, ja IsErrorRecord ir patiess vai ja emisija nesatur SF6.
Citas SEG Decimāls Citu siltumnīcefekta gāzu emisijas vērtība, kas aprēķināta šai darbībai. Šī vērtība ir 0, ja IsErrorRecord ir patiess vai ja emisija nesatur citas SEG.
Citas SEG vienības String Citu siltumnīcefekta gāzu vienības nosaukums Emisijas vērtība, kas aprēķināta šai darbībai. Šī vērtība ir nulle, ja IsErrorRecord ir patiess vai ja emisija nesatur citas SEG.

Piemēri

Tālāk sniegtajā piemērā API tiek izsaukts ar derīgu darbības datu ID, kā rezultātā tiek sniegta atbilde bez kļūdām.

Ievades:

{

  "activityDataIds": [
    "decc7c96-9180-ed11-aacf-000d3a1477fd”
  ],

  "calculationModelId": "0b533a50-399e-ec11-b400-00224823f2de",

  "version": "1.0.0"

}

Izvades:

[
{
"ActivityId": "decc7c96-9180-ed11-aacf-000d3a1477fd",
"ActivityName": "Passenger car",
"IsErrorRecord": false,
"ErrorJson": null,
"Name": "Employee Commuting 526",
"CH4": 2267.832,
"CH4Unit": "g",
"CO2": 107560.032,
"CO2Unit": "kg",
"CO2e": 108292.541736,
"CO2eUnit": kg,
"HFCs": 0,
"HFCsUnit": null,
"N2O": 2267.832,
"N2OUnit": "g",
"NF3": 0,
"NF3Unit": null,
"PFCs": 0,
"PFCsUnit": null,
"SF6": 0,
"SF6Unit": null,
"OtherGHGs": 0,
"OtherGHGsUnit": null
}
]

Tālāk sniegtajā piemērā API tiek izsaukts ar nederīgu darbības datu ID, kā rezultātā tiek saņemta atbilde uz kļūdu. Attiecīgajā darbības ierakstā trūkst izmaksu lauka, kas ir nepieciešams ievades aprēķina modelim. Tā rezultātā izvades ierakstā ir kļūda JSON, kas satur aprēķinu izņēmumu kaudzi, kas radās, novērtējot ierakstu. Radušos izņēmumu pakalpojuma kļūdas kods var palīdzēt lietotājam saprast, kas nogāja greizi. Šajā gadījumā EmissionCalculationActionFieldValueNullBlankException norāda, ka obligāts lauks ir tukšs.

Ievades:

{

  "activityDataIds": [
       "22a8b098-4b8b-ed11-aad1-000d3a5bc56a"
  ],

  "calculationModelId": "0b533a50-399e-ec11-b400-00224823f2de",

  "version": "1.0.0"

}

Izvades:

[
{ 
    "ActivityId": "22a8b098-4b8b-ed11-aad1-000d3a5bc56a", 
    "ActivityName": null, 
    "IsErrorRecord": true, 
    "ErrorJson": { 
      "ServiceErrorCode": "ActivityCalculationModelExecutionException", 
      "UserMessageParameters": [ 
        "Invalid Fugitive Emissions" 
      ], 
      "InnerException": { 
        "ServiceErrorCode": "EmissionCalculationActionFieldValueNullBlankException", 
        "UserMessageParameters": [ 
          "Action 1" 
        ], 
        "InnerException": { 
          "ServiceErrorCode": null, 
          "UserMessageParameters": null, 
          "InnerException": { 
            "ServiceErrorCode": null, 
            "UserMessageParameters": null, 
            "InnerException": null 
          } 
        } 
      } 
    }, 
    "Name": null, 
    "CH4": 0, 
    "CH4Unit": null, 
    "CO2": 0, 
    "CO2Unit": null, 
    "CO2e": 0, 
    "CO2eUnit": null, 
    "HFCs": 0, 
    "HFCsUnit": null, 
    "N2O": 0, 
    "N2OUnit": null, 
    "NF3": 0, 
    "NF3Unit": null, 
    "PFCs": 0, 
    "PFCsUnit": null, 
    "SF6": 0, 
    "SF6Unit": null, 
    "OtherGHGs": 0, 
    "OtherGHGsUnit": null 
  }] 
]

Pielāgotu API izsaukšana

Papildinformāciju skatiet rakstā Pielāgotu API izveide un lietošana.