Professional Documents
Culture Documents
IoT device
Warning
Connected object, not including associated digital services (use of network, datacenter, virtual
machines or other terminals not included)
Warning
Characteristics
Embedded impacts
Impacts criteria
adp no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#iot-device 1/4
2/2/24, 8:13 PM IoT device - Boavizta API documentation
gwppb
gwppf no
gwpplu no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#iot-device 2/4
2/2/24, 8:13 PM IoT device - Boavizta API documentation
mips no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#iot-device 3/4
2/2/24, 8:13 PM IoT device - Boavizta API documentation
Methodology
IoT device impacts are the sum of the impacts of the functional blocks that compose them.
criteria criteria
iot_device embedded = ∑ f unctional_block embedded
{f unctional_blocks}
Usage impact
Only power consumption is implemented.
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#iot-device 4/4
2/2/24, 8:13 PM Boavizta API documentation
About Boavizta
Boavizta is a working group with a mission to make the environmental impacts
assessment of ICT/digital technologies in organizations more reliable, easier and
faster.
It also organizes the co-construction of expert and updated resources under open / free
licenses:
Tools to implement ICT/digital environmental impacts assessment (such as this API). See
https://boavizta.org/tools.
These digital "commons" cover digital infrastructures, equipment and services, and allow full
life cycle / multi-criteria assessments.
https://boavizta.org/
https://doc.api.boavizta.org 1/2
2/2/24, 8:13 PM Boavizta API documentation
https://doc.api.boavizta.org 2/2
2/2/24, 8:13 PM Q&A - Boavizta API documentation
Q&A
General
How does the API data set differ from other Boavizta' data set?
While the digital product carbon footprint repository aggregates non-transparent manufacturer
data, the API reports impacts via an open, auditable and improvable bottom-up approach. Our
impacts factors relies on peered reviewed publications taken from scientific or industrial
literature.
How the API data differs to other datasets (like Negaoctet or Ecoinvent for example)?
The API is not intended to offer the same level of quality as paid databases. However, it allows
anyone to evaluate the impacts of digital assets in a free, automated, open, auditable and
community-improvable way.
Methodology
How does the API compute environmental impacts related to raw material acquisition,
manufacture, transport and end of life?
Those impacts are retrieved with a bottom-up approach when possible. The impacts are
evaluated according to the technical configuration of the components sent by the user or
completed by the API. Note that end of life is not taken into account in this approach for now.
We want to take them into account. However, we lack open impact factors to do so. If you have
ideas to fill this gap, please let us know.
When a bottom-up approach is not possible we rely on non-specific impact factors per type of
equipment.
Usage impacts are retrieved by multiplying a power over a duration with an impact factor
relative to the place of use of the evaluated asset.
https://doc.api.boavizta.org/q%26a/ 1/3
2/2/24, 8:13 PM Q&A - Boavizta API documentation
Electrical consumption can either be given by the user or modeled according to the context of
use and the technical configuration of the asset.
The technical configuration of cloud instances are pre-recorded in the API. Their impacts are
computed through the bottom-up process. The electricity is modeled from the technical
configuration and the context of usage given by the user.
The API implements two methods to amortize embedded impacts Either the total embedded
impact is given or a linear amortization over the life cycle of the assets can be applied.
The API returns impacts regardless of the level of detail given by the user. To do this, two
strategies are possible:
Default data can be used depending on the "archetype" selected by the user
See: Archetype
Technical
How can I use the API?
Python : https://pypi.org/project/boaviztapi-sdk/
Rust : https://github.com/Boavizta/boaviztapi-sdk-rust
https://doc.api.boavizta.org/q%26a/ 2/3
2/2/24, 8:13 PM Q&A - Boavizta API documentation
See: Deploy
Contribution
How to contribute or point inconsistencies / errors in the dataset?
Methodology: Open issues on our GitHub to criticize, propose improvements, or extend the
scope of our methodology.
https://doc.api.boavizta.org/q%26a/ 3/3
2/2/24, 8:13 PM Get the impacts of a cpu - Boavizta API documentation
This page presents basic queries that can be used to retrieve impacts of a CPU. See the
detailed documentation for the other components.
You use curl in command line to query Boavizta demo (public) API.
Query :
curl -X 'POST' \
'https://api.boavizta.org/v1/component/cpu?verbose=false' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"name": "intel xeon gold 6134"
}'
https://doc.api.boavizta.org/getting_started/cpu_component/ 1/12
2/2/24, 8:13 PM Get the impacts of a cpu - Boavizta API documentation
Results
{
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 23.78,
"min": 23.78,
"max": 23.78,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 900.0,
"min": 57.19,
"max": 2814.0
}
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.0204,
"min": 0.0204,
"max": 0.0204,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 0.00016,
"min": 3.292e-05,
"max": 0.0006604
}
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 352.9,
"min": 352.9,
"max": 352.9,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 30000.0,
"min": 32.33,
"max": 1164000.0,
"warnings": [
"Uncertainty from technical characteristics is very
important. Results should be interpreted with caution (see min and max values)"
]
}
}
https://doc.api.boavizta.org/getting_started/cpu_component/ 2/12
2/2/24, 8:13 PM Get the impacts of a cpu - Boavizta API documentation
}
}
The impacts for the default criteria (gwp, pe, adp) since no impact is specified
The usage impacts of the CPU during the life duration, since no duration is given
Error margins are provided in the form of min & max values for both embedded and usage
impacts
curl -X 'POST' \
'https://api.boavizta.org/v1/component/cpu?verbose=true&criteria=gwp' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"name": "intel xeon gold 6134"
}'
https://doc.api.boavizta.org/getting_started/cpu_component/ 3/12
2/2/24, 8:13 PM Get the impacts of a cpu - Boavizta API documentation
Results
{
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 23.78,
"min": 23.78,
"max": 23.78,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 900.0,
"min": 57.19,
"max": 2814.0
}
}
},
"verbose": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 23.78,
"min": 23.78,
"max": 23.78,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 900.0,
"min": 57.19,
"max": 2814.0
}
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": "not implemented",
"use": "not implemented"
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": "not implemented",
"use": "not implemented"
}
},
"units": {
"value": 1.0,
"status": "ARCHETYPE",
"min": 1.0,
"max": 1.0
https://doc.api.boavizta.org/getting_started/cpu_component/ 4/12
2/2/24, 8:13 PM Get the impacts of a cpu - Boavizta API documentation
},
"die_size": {
"value": 694,
"status": "COMPLETED",
"unit": "mm2",
"source": "Max value of cpu_manufacture
https://en.wikichip.org/wiki/intel/microarchitectures/skylake_(server)#Extreme_Cor
: Completed from name name based on https://github.com/cloud-carbon-
footprint/cloud-carbon-coefficients/tree/main/data.",
"min": 694,
"max": 694
},
"model_range": {
"value": "Xeon Gold",
"status": "COMPLETED",
"source": "Completed from name name based on
https://github.com/cloud-carbon-footprint/cloud-carbon-
coefficients/tree/main/data.",
"min": "Xeon Gold",
"max": "Xeon Gold"
},
"manufacturer": {
"value": "Intel",
"status": "COMPLETED",
"source": "Completed from name name based on
https://github.com/cloud-carbon-footprint/cloud-carbon-
coefficients/tree/main/data.",
"min": "Intel",
"max": "Intel"
},
"family": {
"value": "Skylake",
"status": "COMPLETED",
"source": "Completed from name name based on
https://github.com/cloud-carbon-footprint/cloud-carbon-
coefficients/tree/main/data.",
"min": "Skylake",
"max": "Skylake"
},
"name": {
"value": "Intel Xeon Gold 6134",
"status": "COMPLETED",
"source": "fuzzy match",
"min": "Intel Xeon Gold 6134",
"max": "Intel Xeon Gold 6134"
},
"duration": {
"value": 26280.0,
"unit": "hours"
},
"avg_power": {
"value": 94.624,
"status": "COMPLETED",
"unit": "W",
"min": 94.624,
"max": 94.624
},
"time_workload": {
"value": 50.0,
"status": "ARCHETYPE",
"unit": "%",
https://doc.api.boavizta.org/getting_started/cpu_component/ 5/12
2/2/24, 8:13 PM Get the impacts of a cpu - Boavizta API documentation
"min": 0.0,
"max": 100.0
},
"usage_location": {
"value": "EEE",
"status": "DEFAULT",
"unit": "CodSP3 - NCS Country Codes - NATO"
},
"use_time_ratio": {
"value": 1.0,
"status": "ARCHETYPE",
"unit": "/1",
"min": 1.0,
"max": 1.0
},
"hours_life_time": {
"value": 26280.0,
"status": "ARCHETYPE",
"unit": "hours",
"min": 26280.0,
"max": 26280.0
},
"params": {
"value": {
"a": 35.5688,
"b": 0.2438,
"c": 9.6694,
"d": -0.6087
},
"status": "COMPLETED",
"source": "From CPU model range"
},
"gwp_factor": {
"value": 0.38,
"status": "DEFAULT",
"unit": "kg CO2eq/kWh",
"source":
"https://www.sciencedirect.com/science/article/pii/S0306261921012149",
"min": 0.023,
"max": 1.13161
}
}
}
Result :
This query returns will only compute the gwp impact since we add the criteria=gwp flag.
You can see that the API has completed the needed value from the cpu name. We parse
and fuzzymatch the cpu name with our dataset of cpu to identify tdp , cores_unit ,
family ...
The usage impact has been assessed using a default level of workload of 50% with the
consumption profile of a xeon gold (completed from cpu name ).
https://doc.api.boavizta.org/getting_started/cpu_component/ 6/12
2/2/24, 8:13 PM Get the impacts of a cpu - Boavizta API documentation
curl -X 'POST' \
'https://api.boavizta.org/v1/component/cpu?
verbose=true&criteria=gwp&criteria=adp' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"core_units": 24,
"family": "skylake"
}'
https://doc.api.boavizta.org/getting_started/cpu_component/ 7/12
2/2/24, 8:13 PM Get the impacts of a cpu - Boavizta API documentation
Results
{
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 22.22,
"min": 22.22,
"max": 22.22,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 1800.0,
"min": 110.1,
"max": 5419.0
}
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.0204,
"min": 0.0204,
"max": 0.0204,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 0.0003,
"min": 6.341e-05,
"max": 0.001272
}
}
},
"verbose": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 22.22,
"min": 22.22,
"max": 22.22,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 1800.0,
"min": 110.1,
"max": 5419.0
}
},
"adp": {
https://doc.api.boavizta.org/getting_started/cpu_component/ 8/12
2/2/24, 8:13 PM Get the impacts of a cpu - Boavizta API documentation
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.0204,
"min": 0.0204,
"max": 0.0204,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 0.0003,
"min": 6.341e-05,
"max": 0.001272
}
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": "not implemented",
"use": "not implemented"
}
},
"units": {
"value": 1.0,
"status": "ARCHETYPE",
"min": 1.0,
"max": 1.0
},
"core_units": {
"value": 24,
"status": "INPUT"
},
"die_size": {
"value": 615.0,
"status": "COMPLETED",
"unit": "mm2",
"source": "Average value of Skylake with 24 cores",
"min": 615.0,
"max": 615.0
},
"family": {
"value": "Skylake",
"status": "CHANGED"
},
"duration": {
"value": 26280.0,
"unit": "hours"
},
"avg_power": {
"value": 182.23,
"status": "COMPLETED",
"unit": "W",
"min": 182.23,
"max": 182.23
},
"time_workload": {
"value": 50.0,
"status": "ARCHETYPE",
"unit": "%",
"min": 0.0,
https://doc.api.boavizta.org/getting_started/cpu_component/ 9/12
2/2/24, 8:13 PM Get the impacts of a cpu - Boavizta API documentation
"max": 100.0
},
"usage_location": {
"value": "EEE",
"status": "DEFAULT",
"unit": "CodSP3 - NCS Country Codes - NATO"
},
"use_time_ratio": {
"value": 1.0,
"status": "ARCHETYPE",
"unit": "/1",
"min": 1.0,
"max": 1.0
},
"hours_life_time": {
"value": 26280.0,
"status": "ARCHETYPE",
"unit": "hours",
"min": 26280.0,
"max": 26280.0
},
"params": {
"value": {
"a": 171.2,
"b": 0.0354,
"c": 36.89,
"d": -10.13
},
"status": "ARCHETYPE"
},
"gwp_factor": {
"value": 0.38,
"status": "DEFAULT",
"unit": "kg CO2eq/kWh",
"source":
"https://www.sciencedirect.com/science/article/pii/S0306261921012149",
"min": 0.023,
"max": 1.13161
},
"adp_factor": {
"value": 6.42317e-08,
"status": "DEFAULT",
"unit": "kg Sbeq/kWh",
"source": "ADEME Base IMPACTS \u00ae",
"min": 1.324e-08,
"max": 2.65575e-07
}
}
}
This query returns will compute the gwp and adp impacts since we add the
criteria=gwp&criteria=adp flags.
The API will correct skylake to Skylake (CHANGED) and complete the missing attributes
from the given attributes (COMPLETED) or by default ones (ARCHETYPE).
https://doc.api.boavizta.org/getting_started/cpu_component/ 10/12
2/2/24, 8:13 PM Get the impacts of a cpu - Boavizta API documentation
curl -X 'POST' \
'https://api.boavizta.org/v1/component/cpu?
verbose=false&criteria=gwp&duration=2' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"name": "intel xeon gold 6134",
"usage":{
"usage_location": "FRA",
"avg_power": 120
}}'
Results
{
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 0.00181,
"min": 0.00181,
"max": 0.00181,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 0.02352,
"min": 0.02352,
"max": 0.02352
}
}
}
}
The API will use an electrical consumption of 120 Watt/hours for 2 hours (since duration is
set at 2)
Usage impacts will be assessed for the French electrical mix impacts
https://doc.api.boavizta.org/getting_started/cpu_component/ 11/12
2/2/24, 8:13 PM Get the impacts of a cpu - Boavizta API documentation
In this query we set a custom usage to an intel xeon gold 6134 with a TDP of 130 Watt. The
average electrical consumption is retrieved.
curl -X 'POST' \
'https://api.boavizta.org/v1/component/cpu?verbose=false&criteria=gwp' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"name": "intel xeon gold 6134",
"tdp": 130,
"usage":{
"hours_use_time": 2,
"usage_location": "FRA",
"time_workload": 30
}}'
Results
{
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 23.78,
"min": 23.78,
"max": 23.78,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 193.6,
"min": 193.6,
"max": 193.6
}
}
}
}
The API will use the xeon gold consumption profile adapted for a TDP of 130 Watt with a
level of workload of 30% for 2 hours to retrieve the electrical consumption of the CPU.
https://doc.api.boavizta.org/getting_started/cpu_component/ 12/12
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
This page presents basic queries that can be used to retrieve impacts.
You use curl in command line to query Boavizta demo (public) API.
Query:
https://doc.api.boavizta.org/getting_started/single_server/ 1/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
Results
{
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 900.0,
"min": 461.8,
"max": 2089.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 8000.0,
"min": 405.2,
"max": 28890.0
}
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.14,
"min": 0.09758,
"max": 0.2132,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 0.0013,
"min": 0.0002333,
"max": 0.00678
}
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 13000.0,
"min": 6138.0,
"max": 27090.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 300000.0,
"min": 229.0,
"max": 11950000.0,
"warnings": [
"Uncertainty from technical characteristics is very
important. Results should be interpreted with caution (see min and max values)"
]
}
}
https://doc.api.boavizta.org/getting_started/single_server/ 2/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
}
}
The impacts for the default criteria (gwp, pe, adp) since no impact is specified
The usage impacts of the server during its life duration, since no duration is given
Error margins are provided in the form of min & max values for both embedded and usage
impacts
Query:
https://doc.api.boavizta.org/getting_started/single_server/ 3/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
Results
{
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 900.0,
"min": 461.8,
"max": 2089.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 8000.0,
"min": 405.2,
"max": 28890.0
}
}
},
"verbose": {
"duration": {
"value": 35040.0,
"unit": "hours"
},
"ASSEMBLY-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 6.68,
"min": 6.68,
"max": 6.68,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
},
"units": {
"value": 1,
"status": "ARCHETYPE",
"min": 1,
"max": 1
},
"duration": {
"value": 35040.0,
"unit": "hours"
}
},
"CPU-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
https://doc.api.boavizta.org/getting_started/single_server/ 4/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"embedded": {
"value": 40.0,
"min": 21.84,
"max": 163.6,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 10000.0,
"min": 587.5,
"max": 28900.0
}
}
},
"units": {
"value": 2.0,
"status": "ARCHETYPE",
"min": 2.0,
"max": 2.0
},
"die_size": {
"value": 521.0,
"status": "COMPLETED",
"unit": "mm2",
"source": "Average value for all families",
"min": 41.2,
"max": 3640.0
},
"duration": {
"value": 35040.0,
"unit": "hours"
},
"avg_power": {
"value": 364.46,
"status": "COMPLETED",
"unit": "W",
"min": 364.46,
"max": 364.46
},
"time_workload": {
"value": 50.0,
"status": "ARCHETYPE",
"unit": "%",
"min": 0.0,
"max": 100.0
},
"usage_location": {
"value": "EEE",
"status": "DEFAULT",
"unit": "CodSP3 - NCS Country Codes - NATO"
},
"use_time_ratio": {
"value": 1.0,
"status": "ARCHETYPE",
"unit": "/1",
"min": 1.0,
"max": 1.0
},
"hours_life_time": {
"value": 35040.0,
https://doc.api.boavizta.org/getting_started/single_server/ 5/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"status": "COMPLETED",
"unit": "hours",
"source": "from device",
"min": 35040.0,
"max": 35040.0
},
"params": {
"value": {
"a": 171.2,
"b": 0.0354,
"c": 36.89,
"d": -10.13
},
"status": "ARCHETYPE"
},
"gwp_factor": {
"value": 0.38,
"status": "DEFAULT",
"unit": "kg CO2eq/kWh",
"source":
"https://www.sciencedirect.com/science/article/pii/S0306261921012149",
"min": 0.023,
"max": 1.13161
}
},
"RAM-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 490.0,
"min": 209.2,
"max": 1179.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 8000.0,
"min": 263.7,
"max": 36040.0
}
}
},
"units": {
"value": 8.0,
"status": "ARCHETYPE",
"min": 6.0,
"max": 10.0
},
"capacity": {
"value": 32.0,
"status": "ARCHETYPE",
"unit": "GB",
"min": 32.0,
"max": 32.0
},
"density": {
"value": 1.2443636363636363,
"status": "COMPLETED",
https://doc.api.boavizta.org/getting_started/single_server/ 6/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"unit": "GB/cm2",
"source": "Average of 11 rows",
"min": 0.625,
"max": 2.375
},
"duration": {
"value": 35040.0,
"unit": "hours"
},
"avg_power": {
"value": 72.704,
"status": "COMPLETED",
"unit": "W",
"min": 54.52799999999999,
"max": 90.88
},
"time_workload": {
"value": 50.0,
"status": "ARCHETYPE",
"unit": "%",
"min": 0.0,
"max": 100.0
},
"usage_location": {
"value": "EEE",
"status": "DEFAULT",
"unit": "CodSP3 - NCS Country Codes - NATO"
},
"use_time_ratio": {
"value": 1.0,
"status": "ARCHETYPE",
"unit": "/1",
"min": 1.0,
"max": 1.0
},
"hours_life_time": {
"value": 35040.0,
"status": "COMPLETED",
"unit": "hours",
"source": "from device",
"min": 35040.0,
"max": 35040.0
},
"params": {
"value": {
"a": 9.088
},
"status": "COMPLETED",
"source": "(ram_electrical_factor_per_go : 0.284) *
(ram_capacity: 32.0) "
},
"gwp_factor": {
"value": 0.38,
"status": "DEFAULT",
"unit": "kg CO2eq/kWh",
"source":
"https://www.sciencedirect.com/science/article/pii/S0306261921012149",
"min": 0.023,
"max": 1.13161
}
},
https://doc.api.boavizta.org/getting_started/single_server/ 7/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"SSD-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 50.0,
"min": 23.53,
"max": 281.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
},
"units": {
"value": 1.0,
"status": "ARCHETYPE",
"min": 1.0,
"max": 2.0
},
"capacity": {
"value": 1000.0,
"status": "ARCHETYPE",
"unit": "GB",
"min": 1000.0,
"max": 1000.0
},
"density": {
"value": 54.8842105263158,
"status": "COMPLETED",
"unit": "GB/cm2",
"source": "Average of 19 rows",
"min": 16.4,
"max": 128.0
},
"duration": {
"value": 35040.0,
"unit": "hours"
}
},
"POWER_SUPPLY-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 150.0,
"min": 48.6,
"max": 243.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
},
"units": {
"value": 2.0,
"status": "ARCHETYPE",
https://doc.api.boavizta.org/getting_started/single_server/ 8/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"min": 2.0,
"max": 2.0
},
"unit_weight": {
"value": 2.99,
"status": "ARCHETYPE",
"unit": "kg",
"min": 1.0,
"max": 5.0
},
"duration": {
"value": 35040.0,
"unit": "hours"
}
},
"CASE-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 150.0,
"min": 85.9,
"max": 150.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
},
"units": {
"value": 1,
"status": "ARCHETYPE",
"min": 1,
"max": 1
},
"case_type": {
"value": "rack",
"status": "ARCHETYPE"
},
"duration": {
"value": 35040.0,
"unit": "hours"
}
},
"MOTHERBOARD-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 66.1,
"min": 66.1,
"max": 66.1,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
https://doc.api.boavizta.org/getting_started/single_server/ 9/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
},
"units": {
"value": 1,
"status": "ARCHETYPE",
"min": 1,
"max": 1
},
"duration": {
"value": 35040.0,
"unit": "hours"
}
},
"avg_power": {
"value": 581.42812,
"status": "COMPLETED",
"unit": "W",
"min": 502.78559999999993,
"max": 728.544
},
"usage_location": {
"value": "EEE",
"status": "DEFAULT",
"unit": "CodSP3 - NCS Country Codes - NATO"
},
"use_time_ratio": {
"value": 1.0,
"status": "ARCHETYPE",
"unit": "/1",
"min": 1.0,
"max": 1.0
},
"hours_life_time": {
"value": 35040.0,
"status": "COMPLETED",
"unit": "hours",
"source": "from device",
"min": 35040.0,
"max": 35040.0
},
"other_consumption_ratio": {
"value": 0.33,
"status": "ARCHETYPE",
"unit": "ratio /1",
"min": 0.2,
"max": 0.6
},
"gwp_factor": {
"value": 0.38,
"status": "DEFAULT",
"unit": "kg CO2eq/kWh",
"source":
"https://www.sciencedirect.com/science/article/pii/S0306261921012149",
"min": 0.023,
"max": 1.13161
},
"units": {
"value": 1,
"status": "ARCHETYPE",
"min": 1,
"max": 1
}
https://doc.api.boavizta.org/getting_started/single_server/ 10/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
}
}
It will return:
The total embedded impacts for each component (like RAM, CPU, SSD a.s.o)
Since no duration is given, the usage impacts of the server during the life duration of the
server
The value of the attributes used for the calculation for each component (i.e. the detailed
configuration)
Query :
curl -X 'POST' \
'https://api.boavizta.org/v1/server/?
verbose=false&archetype=platform_compute_medium' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"model": {
"type": "rack"
},
"configuration": {
"cpu": {
"units": 2,
"core_units": 12,
"die_size_per_core": 245
},
"ram": [
{
"units": 12,
"capacity": 64,
"density": 1.79
}
],
"disk": [
{
"units": 4,
"type": "ssd",
"capacity": 400,
"density": 50.6
https://doc.api.boavizta.org/getting_started/single_server/ 11/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
}
],
"power_supply": {
"units": 2,
"unit_weight": 2.99
}
}
}'
https://doc.api.boavizta.org/getting_started/single_server/ 12/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
Results
{
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 1606.0,
"min": 1606.0,
"max": 1606.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 10000.0,
"min": 563.4,
"max": 36960.0
}
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.1659,
"min": 0.1659,
"max": 0.1659,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 0.0017,
"min": 0.0003243,
"max": 0.008674
}
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 20880.0,
"min": 20880.0,
"max": 20880.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 300000.0,
"min": 318.4,
"max": 15290000.0,
"warnings": [
"Uncertainty from technical characteristics is very
important. Results should be interpreted with caution (see min and max values)"
]
}
}
https://doc.api.boavizta.org/getting_started/single_server/ 13/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
}
}
Since no criteria flags are specified, the API returns the impacts of the server for the
default criteria (adp, pe, gwp).
Since no duration is given, the API returns the impacts for the all life duration of the server.
In this specific case, the average power consumption of the machine is given by the user
( `avg_powers )
The API returns impacts, updated to reflect your own server usage. Since
criteria=gwp&criteria=adp flags are specified, the API returns the impacts of the server for
adp and gwp.
Query :
curl -X 'POST' \
'https://api.boavizta.org/v1/server/?
verbose=true&archetype=platform_compute_medium&duration=8760' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"model": {},
"configuration": {},
"usage":{
"usage_location": "FRA",
"avg_power": 250
}
}'
https://doc.api.boavizta.org/getting_started/single_server/ 14/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
Results
{
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 240.0,
"min": 115.5,
"max": 522.2,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 214.6,
"min": 214.6,
"max": 214.6
}
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.036,
"min": 0.0244,
"max": 0.05329,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 0.0001064,
"min": 0.0001064,
"max": 0.0001064
}
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 3200.0,
"min": 1535.0,
"max": 6773.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 24720.0,
"min": 24720.0,
"max": 24720.0
}
}
},
"verbose": {
"duration": {
"value": 8760.0,
https://doc.api.boavizta.org/getting_started/single_server/ 15/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"unit": "hours"
},
"ASSEMBLY-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 1.67,
"min": 1.67,
"max": 1.67,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 3.525e-07,
"min": 3.525e-07,
"max": 3.525e-07,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 17.15,
"min": 17.15,
"max": 17.15,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
},
"units": {
"value": 1,
"status": "ARCHETYPE",
"min": 1,
"max": 1
},
"duration": {
"value": 8760.0,
"unit": "hours"
}
},
"CPU-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
https://doc.api.boavizta.org/getting_started/single_server/ 16/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"value": 10.0,
"min": 5.459,
"max": 40.91,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 2400.0,
"min": 146.9,
"max": 7226.0
}
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.0102,
"min": 0.0102,
"max": 0.01021,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 0.0004,
"min": 8.454e-05,
"max": 0.001696
}
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 150.0,
"min": 89.96,
"max": 566.8,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 100000.0,
"min": 83.01,
"max": 2989000.0
}
}
},
"units": {
"value": 2.0,
"status": "ARCHETYPE",
"min": 2.0,
"max": 2.0
},
"die_size": {
"value": 521.0,
"status": "COMPLETED",
"unit": "mm2",
"source": "Average value for all families",
"min": 41.2,
"max": 3640.0
https://doc.api.boavizta.org/getting_started/single_server/ 17/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
},
"duration": {
"value": 8760.0,
"unit": "hours"
},
"avg_power": {
"value": 364.46,
"status": "COMPLETED",
"unit": "W",
"min": 364.46,
"max": 364.46
},
"time_workload": {
"value": 50.0,
"status": "ARCHETYPE",
"unit": "%",
"min": 0.0,
"max": 100.0
},
"usage_location": {
"value": "EEE",
"status": "DEFAULT",
"unit": "CodSP3 - NCS Country Codes - NATO"
},
"use_time_ratio": {
"value": 1.0,
"status": "ARCHETYPE",
"unit": "/1",
"min": 1.0,
"max": 1.0
},
"hours_life_time": {
"value": 35040.0,
"status": "COMPLETED",
"unit": "hours",
"source": "from device",
"min": 35040.0,
"max": 35040.0
},
"params": {
"value": {
"a": 171.2,
"b": 0.0354,
"c": 36.89,
"d": -10.13
},
"status": "ARCHETYPE"
},
"gwp_factor": {
"value": 0.38,
"status": "DEFAULT",
"unit": "kg CO2eq/kWh",
"source":
"https://www.sciencedirect.com/science/article/pii/S0306261921012149",
"min": 0.023,
"max": 1.13161
},
"adp_factor": {
"value": 6.42317e-08,
"status": "DEFAULT",
"unit": "kg Sbeq/kWh",
https://doc.api.boavizta.org/getting_started/single_server/ 18/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
https://doc.api.boavizta.org/getting_started/single_server/ 19/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"value": 100000.0,
"min": 37.26,
"max": 3727000.0
}
}
},
"units": {
"value": 8.0,
"status": "ARCHETYPE",
"min": 6.0,
"max": 10.0
},
"capacity": {
"value": 32.0,
"status": "ARCHETYPE",
"unit": "GB",
"min": 32.0,
"max": 32.0
},
"density": {
"value": 1.2443636363636363,
"status": "COMPLETED",
"unit": "GB/cm2",
"source": "Average of 11 rows",
"min": 0.625,
"max": 2.375
},
"duration": {
"value": 8760.0,
"unit": "hours"
},
"avg_power": {
"value": 72.704,
"status": "COMPLETED",
"unit": "W",
"min": 54.52799999999999,
"max": 90.88
},
"time_workload": {
"value": 50.0,
"status": "ARCHETYPE",
"unit": "%",
"min": 0.0,
"max": 100.0
},
"usage_location": {
"value": "EEE",
"status": "DEFAULT",
"unit": "CodSP3 - NCS Country Codes - NATO"
},
"use_time_ratio": {
"value": 1.0,
"status": "ARCHETYPE",
"unit": "/1",
"min": 1.0,
"max": 1.0
},
"hours_life_time": {
"value": 35040.0,
"status": "COMPLETED",
"unit": "hours",
https://doc.api.boavizta.org/getting_started/single_server/ 20/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
https://doc.api.boavizta.org/getting_started/single_server/ 21/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
https://doc.api.boavizta.org/getting_started/single_server/ 22/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.012,
"min": 0.00415,
"max": 0.02075,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 530.0,
"min": 176.0,
"max": 880.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
},
"units": {
"value": 2.0,
"status": "ARCHETYPE",
"min": 2.0,
"max": 2.0
},
"unit_weight": {
"value": 2.99,
"status": "ARCHETYPE",
"unit": "kg",
"min": 1.0,
"max": 5.0
},
"duration": {
"value": 8760.0,
"unit": "hours"
}
},
"CASE-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 38.0,
"min": 21.48,
"max": 37.5,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"adp": {
"unit": "kgSbeq",
https://doc.api.boavizta.org/getting_started/single_server/ 23/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
https://doc.api.boavizta.org/getting_started/single_server/ 24/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"max": 0.0009225,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 209.0,
"min": 209.0,
"max": 209.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
},
"units": {
"value": 1,
"status": "ARCHETYPE",
"min": 1,
"max": 1
},
"duration": {
"value": 8760.0,
"unit": "hours"
}
},
"avg_power": {
"value": 250.0,
"status": "INPUT",
"unit": "W"
},
"usage_location": {
"value": "FRA",
"status": "INPUT",
"unit": "CodSP3 - NCS Country Codes - NATO"
},
"use_time_ratio": {
"value": 1.0,
"status": "ARCHETYPE",
"unit": "/1",
"min": 1.0,
"max": 1.0
},
"hours_life_time": {
"value": 35040.0,
"status": "COMPLETED",
"unit": "hours",
"source": "from device",
"min": 35040.0,
"max": 35040.0
},
"gwp_factor": {
"value": 0.098,
"status": "COMPLETED",
"unit": "kg CO2eq/kWh",
https://doc.api.boavizta.org/getting_started/single_server/ 25/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"source":
"https://www.sciencedirect.com/science/article/pii/S0306261921012149",
"min": 0.098,
"max": 0.098
},
"adp_factor": {
"value": 4.85798e-08,
"status": "COMPLETED",
"unit": "kg Sbeq/kWh",
"source": "ADEME Base IMPACTS \u00ae",
"min": 4.85798e-08,
"max": 4.85798e-08
},
"pe_factor": {
"value": 11.289,
"status": "COMPLETED",
"unit": "MJ/kWh",
"source": "ADPf / (1-%renewable_energy)",
"min": 11.289,
"max": 11.289
},
"units": {
"value": 1,
"status": "ARCHETYPE",
"min": 1,
"max": 1
}
}
}
Usage impacts are assessed with the specific impacts of the French electrical grid.
The server impacts are assessed for a usage of 1 year (since duration is set at 8785
hours).
Embedded impacts will be allocated on 1 year (since duration is set at 8785 hours).
In this case, the average electrical consumption is unknown. We use the level of workload
( time_workload ) of the machine as a proxy for the power consumption.
Query :
curl -X 'POST' \
'https://api.boavizta.org/v1/server/?verbose=true&duration=8760' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
https://doc.api.boavizta.org/getting_started/single_server/ 26/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"model": {},
"configuration": {},
"usage":{
"usage_location": "FRA",
"time_workload": 90
}
}'
https://doc.api.boavizta.org/getting_started/single_server/ 27/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
Results
{
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 240.0,
"min": 115.5,
"max": 522.2,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 650.0,
"min": 565.2,
"max": 803.5
}
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.036,
"min": 0.0244,
"max": 0.05329,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 0.00032,
"min": 0.0002802,
"max": 0.0003983
}
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 3200.0,
"min": 1535.0,
"max": 6773.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 75000.0,
"min": 65110.0,
"max": 92560.0
}
}
},
"verbose": {
"duration": {
"value": 8760.0,
https://doc.api.boavizta.org/getting_started/single_server/ 28/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"unit": "hours"
},
"ASSEMBLY-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 1.67,
"min": 1.67,
"max": 1.67,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 3.525e-07,
"min": 3.525e-07,
"max": 3.525e-07,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 17.15,
"min": 17.15,
"max": 17.15,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
},
"units": {
"value": 1,
"status": "ARCHETYPE",
"min": 1,
"max": 1
},
"duration": {
"value": 8760.0,
"unit": "hours"
}
},
"CPU-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
https://doc.api.boavizta.org/getting_started/single_server/ 29/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"value": 10.0,
"min": 5.459,
"max": 40.91,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 848.4,
"min": 848.4,
"max": 848.4
}
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.0102,
"min": 0.0102,
"max": 0.01021,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 0.0004206,
"min": 0.0004206,
"max": 0.0004206
}
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 150.0,
"min": 89.96,
"max": 566.8,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 97730.0,
"min": 97730.0,
"max": 97730.0
}
}
},
"units": {
"value": 2.0,
"status": "ARCHETYPE",
"min": 2.0,
"max": 2.0
},
"die_size": {
"value": 521.0,
"status": "COMPLETED",
"unit": "mm2",
"source": "Average value for all families",
"min": 41.2,
"max": 3640.0
https://doc.api.boavizta.org/getting_started/single_server/ 30/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
},
"duration": {
"value": 8760.0,
"unit": "hours"
},
"avg_power": {
"value": 494.12,
"status": "COMPLETED",
"unit": "W",
"min": 494.12,
"max": 494.12
},
"time_workload": {
"value": 90.0,
"status": "INPUT",
"unit": "%"
},
"usage_location": {
"value": "FRA",
"status": "INPUT",
"unit": "CodSP3 - NCS Country Codes - NATO"
},
"use_time_ratio": {
"value": 1.0,
"status": "ARCHETYPE",
"unit": "/1",
"min": 1.0,
"max": 1.0
},
"hours_life_time": {
"value": 35040.0,
"status": "COMPLETED",
"unit": "hours",
"source": "from device",
"min": 35040.0,
"max": 35040.0
},
"params": {
"value": {
"a": 171.2,
"b": 0.0354,
"c": 36.89,
"d": -10.13
},
"status": "ARCHETYPE"
},
"gwp_factor": {
"value": 0.098,
"status": "COMPLETED",
"unit": "kg CO2eq/kWh",
"source":
"https://www.sciencedirect.com/science/article/pii/S0306261921012149",
"min": 0.098,
"max": 0.098
},
"adp_factor": {
"value": 4.85798e-08,
"status": "COMPLETED",
"unit": "kg Sbeq/kWh",
"source": "ADEME Base IMPACTS \u00ae",
"min": 4.85798e-08,
https://doc.api.boavizta.org/getting_started/single_server/ 31/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"max": 4.85798e-08
},
"pe_factor": {
"value": 11.289,
"status": "COMPLETED",
"unit": "MJ/kWh",
"source": "ADPf / (1-%renewable_energy)",
"min": 11.289,
"max": 11.289
}
},
"RAM-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 120.0,
"min": 52.29,
"max": 294.7,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 500.0,
"min": 280.9,
"max": 780.2
}
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.0066,
"min": 0.003808,
"max": 0.01229,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 0.00025,
"min": 0.0001392,
"max": 0.0003867
}
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 1600.0,
"min": 662.7,
"max": 3679.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 58000.0,
"min": 32350.0,
https://doc.api.boavizta.org/getting_started/single_server/ 32/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"max": 89870.0
}
}
},
"units": {
"value": 8.0,
"status": "ARCHETYPE",
"min": 6.0,
"max": 10.0
},
"capacity": {
"value": 32.0,
"status": "ARCHETYPE",
"unit": "GB",
"min": 32.0,
"max": 32.0
},
"density": {
"value": 1.2443636363636363,
"status": "COMPLETED",
"unit": "GB/cm2",
"source": "Average of 11 rows",
"min": 0.625,
"max": 2.375
},
"duration": {
"value": 8760.0,
"unit": "hours"
},
"avg_power": {
"value": 72.704,
"status": "COMPLETED",
"unit": "W",
"min": 54.52799999999999,
"max": 90.88
},
"time_workload": {
"value": 90.0,
"status": "INPUT",
"unit": "%"
},
"usage_location": {
"value": "FRA",
"status": "INPUT",
"unit": "CodSP3 - NCS Country Codes - NATO"
},
"use_time_ratio": {
"value": 1.0,
"status": "ARCHETYPE",
"unit": "/1",
"min": 1.0,
"max": 1.0
},
"hours_life_time": {
"value": 35040.0,
"status": "COMPLETED",
"unit": "hours",
"source": "from device",
"min": 35040.0,
"max": 35040.0
},
https://doc.api.boavizta.org/getting_started/single_server/ 33/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"params": {
"value": {
"a": 9.088
},
"status": "COMPLETED",
"source": "(ram_electrical_factor_per_go : 0.284) *
(ram_capacity: 32.0) "
},
"gwp_factor": {
"value": 0.098,
"status": "COMPLETED",
"unit": "kg CO2eq/kWh",
"source":
"https://www.sciencedirect.com/science/article/pii/S0306261921012149",
"min": 0.098,
"max": 0.098
},
"adp_factor": {
"value": 4.85798e-08,
"status": "COMPLETED",
"unit": "kg Sbeq/kWh",
"source": "ADEME Base IMPACTS \u00ae",
"min": 4.85798e-08,
"max": 4.85798e-08
},
"pe_factor": {
"value": 11.289,
"status": "COMPLETED",
"unit": "MJ/kWh",
"source": "ADPf / (1-%renewable_energy)",
"min": 11.289,
"max": 11.289
}
},
"SSD-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 12.0,
"min": 5.882,
"max": 70.24,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.0004,
"min": 0.0002638,
"max": 0.002202,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
https://doc.api.boavizta.org/getting_started/single_server/ 34/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 140.0,
"min": 72.55,
"max": 870.8,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
},
"units": {
"value": 1.0,
"status": "ARCHETYPE",
"min": 1.0,
"max": 2.0
},
"capacity": {
"value": 1000.0,
"status": "ARCHETYPE",
"unit": "GB",
"min": 1000.0,
"max": 1000.0
},
"density": {
"value": 54.8842105263158,
"status": "COMPLETED",
"unit": "GB/cm2",
"source": "Average of 19 rows",
"min": 16.4,
"max": 128.0
},
"duration": {
"value": 8760.0,
"unit": "hours"
}
},
"POWER_SUPPLY-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 36.0,
"min": 12.15,
"max": 60.75,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.012,
https://doc.api.boavizta.org/getting_started/single_server/ 35/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"min": 0.00415,
"max": 0.02075,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 530.0,
"min": 176.0,
"max": 880.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
},
"units": {
"value": 2.0,
"status": "ARCHETYPE",
"min": 2.0,
"max": 2.0
},
"unit_weight": {
"value": 2.99,
"status": "ARCHETYPE",
"unit": "kg",
"min": 1.0,
"max": 5.0
},
"duration": {
"value": 8760.0,
"unit": "hours"
}
},
"CASE-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 38.0,
"min": 21.48,
"max": 37.5,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.005,
"min": 0.00505,
https://doc.api.boavizta.org/getting_started/single_server/ 36/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"max": 0.006918,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 550.0,
"min": 307.2,
"max": 550.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
},
"units": {
"value": 1,
"status": "ARCHETYPE",
"min": 1,
"max": 1
},
"case_type": {
"value": "rack",
"status": "ARCHETYPE"
},
"duration": {
"value": 8760.0,
"unit": "hours"
}
},
"MOTHERBOARD-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 16.52,
"min": 16.52,
"max": 16.52,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.0009225,
"min": 0.0009225,
"max": 0.0009225,
"warnings": [
"End of life is not included in the calculation"
]
https://doc.api.boavizta.org/getting_started/single_server/ 37/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
},
"use": "not implemented"
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 209.0,
"min": 209.0,
"max": 209.0,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
},
"units": {
"value": 1,
"status": "ARCHETYPE",
"min": 1,
"max": 1
},
"duration": {
"value": 8760.0,
"unit": "hours"
}
},
"avg_power": {
"value": 753.87592,
"status": "COMPLETED",
"unit": "W",
"min": 658.3776,
"max": 936.0
},
"time_workload": {
"value": 90.0,
"status": "INPUT",
"unit": "%"
},
"usage_location": {
"value": "FRA",
"status": "INPUT",
"unit": "CodSP3 - NCS Country Codes - NATO"
},
"use_time_ratio": {
"value": 1.0,
"status": "ARCHETYPE",
"unit": "/1",
"min": 1.0,
"max": 1.0
},
"hours_life_time": {
"value": 35040.0,
"status": "COMPLETED",
"unit": "hours",
"source": "from device",
"min": 35040.0,
"max": 35040.0
},
"other_consumption_ratio": {
https://doc.api.boavizta.org/getting_started/single_server/ 38/39
2/2/24, 8:13 PM Get the impacts of a server - Boavizta API documentation
"value": 0.33,
"status": "ARCHETYPE",
"unit": "ratio /1",
"min": 0.2,
"max": 0.6
},
"gwp_factor": {
"value": 0.098,
"status": "COMPLETED",
"unit": "kg CO2eq/kWh",
"source":
"https://www.sciencedirect.com/science/article/pii/S0306261921012149",
"min": 0.098,
"max": 0.098
},
"adp_factor": {
"value": 4.85798e-08,
"status": "COMPLETED",
"unit": "kg Sbeq/kWh",
"source": "ADEME Base IMPACTS \u00ae",
"min": 4.85798e-08,
"max": 4.85798e-08
},
"pe_factor": {
"value": 11.289,
"status": "COMPLETED",
"unit": "MJ/kWh",
"source": "ADPf / (1-%renewable_energy)",
"min": 11.289,
"max": 11.289
},
"units": {
"value": 1,
"status": "ARCHETYPE",
"min": 1,
"max": 1
}
}
}
The API will create a consumption profile based on the default characteristics and apply it
for an average level of workload of 90%
The server impacts are assessed for a usage of 1 year (since duration is set at 8785
hours).
Embedded impacts will be allocated on 1 year (since duration is set at 8785 hours).
https://doc.api.boavizta.org/getting_started/single_server/ 39/39
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
This page presents basic queries that can be used to retrieve impacts of cloud instance (AWS
use case).
You use curl in command line to query Boavizta demo (public) API.
Query:
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 1/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
Results
[
"a1.medium",
"a1.large",
"a1.xlarge",
"a1.2xlarge",
"a1.4xlarge",
"a1.metal",
"c1.medium",
"c1.xlarge",
"c3.large",
"c3.xlarge",
"c3.2xlarge",
"c3.4xlarge",
"c3.8xlarge",
"c4.large",
"c4.large.elasticsearch",
"c4.xlarge",
"c4.xlarge.elasticsearch",
"c4.2xlarge",
"c4.2xlarge.elasticsearch",
"c4.4xlarge",
"c4.4xlarge.elasticsearch",
"c4.8xlarge",
"c4.8xlarge.elasticsearch",
"c5.large",
"c5.large.elasticsearch",
"c5.xlarge",
"c5.xlarge.elasticsearch",
"c5.2xlarge",
"c5.2xlarge.elasticsearch",
"c5.4xlarge",
"c5.4xlarge.elasticsearch",
"c5.9xlarge",
"c5.9xlarge.elasticsearch",
"c5.12xlarge",
"c5.18xlarge",
"c5.18xlarge.elasticsearch",
"c5.24xlarge",
"c5.metal",
"c5a.large",
"c5a.xlarge",
"c5a.2xlarge",
"c5a.4xlarge",
"c5a.8xlarge",
"c5a.12xlarge",
"c5a.16xlarge",
"c5a.24xlarge",
"c5ad.large",
"c5ad.xlarge",
"c5ad.2xlarge",
"c5ad.4xlarge",
"c5ad.8xlarge",
"c5ad.12xlarge",
"c5ad.16xlarge",
"c5ad.24xlarge",
"c5d.large",
"c5d.xlarge",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 2/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"c5d.2xlarge",
"c5d.4xlarge",
"c5d.9xlarge",
"c5d.12xlarge",
"c5d.18xlarge",
"c5d.24xlarge",
"c5d.metal",
"c5n.large",
"c5n.xlarge",
"c5n.2xlarge",
"c5n.4xlarge",
"c5n.9xlarge",
"c5n.18xlarge",
"c5n.metal",
"c6a.large",
"c6a.xlarge",
"c6a.2xlarge",
"c6a.4xlarge",
"c6a.8xlarge",
"c6a.12xlarge",
"c6a.16xlarge",
"c6a.24xlarge",
"c6a.32xlarge",
"c6a.48xlarge",
"c6a.metal",
"c6g.medium",
"c6g.large",
"c6g.large.elasticsearch",
"c6g.xlarge",
"c6g.xlarge.elasticsearch",
"c6g.2xlarge",
"c6g.2xlarge.elasticsearch",
"c6g.4xlarge",
"c6g.4xlarge.elasticsearch",
"c6g.8xlarge",
"c6g.8xlarge.elasticsearch",
"c6g.12xlarge",
"c6g.12xlarge.elasticsearch",
"c6g.16xlarge",
"c6g.metal",
"c6gd.medium",
"c6gd.large",
"c6gd.xlarge",
"c6gd.2xlarge",
"c6gd.4xlarge",
"c6gd.8xlarge",
"c6gd.12xlarge",
"c6gd.16xlarge",
"c6gd.metal",
"c6gn.medium",
"c6gn.large",
"c6gn.xlarge",
"c6gn.2xlarge",
"c6gn.4xlarge",
"c6gn.8xlarge",
"c6gn.12xlarge",
"c6gn.16xlarge",
"c6i.large",
"c6i.xlarge",
"c6i.2xlarge",
"c6i.4xlarge",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 3/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"c6i.8xlarge",
"c6i.12xlarge",
"c6i.16xlarge",
"c6i.24xlarge",
"c6i.32xlarge",
"c6i.metal",
"c6id.large",
"c6id.xlarge",
"c6id.2xlarge",
"c6id.4xlarge",
"c6id.8xlarge",
"c6id.12xlarge",
"c6id.16xlarge",
"c6id.24xlarge",
"c6id.32xlarge",
"c6id.metal",
"c6in.large",
"c6in.xlarge",
"c6in.2xlarge",
"c6in.4xlarge",
"c6in.8xlarge",
"c6in.12xlarge",
"c6in.16xlarge",
"c6in.24xlarge",
"c6in.32xlarge",
"c6in.metal",
"c7a.medium",
"c7a.large",
"c7a.xlarge",
"c7a.2xlarge",
"c7a.4xlarge",
"c7a.8xlarge",
"c7a.12xlarge",
"c7a.16xlarge",
"c7a.24xlarge",
"c7a.32xlarge",
"c7a.48xlarge",
"c7a.metal-48xl",
"c7g.medium",
"c7g.large",
"c7g.xlarge",
"c7g.2xlarge",
"c7g.4xlarge",
"c7g.8xlarge",
"c7g.12xlarge",
"c7g.16xlarge",
"c7g.metal",
"c7gd.medium",
"c7gd.large",
"c7gd.xlarge",
"c7gd.2xlarge",
"c7gd.4xlarge",
"c7gd.8xlarge",
"c7gd.12xlarge",
"c7gd.16xlarge",
"c7gn.medium",
"c7gn.large",
"c7gn.xlarge",
"c7gn.2xlarge",
"c7gn.4xlarge",
"c7gn.8xlarge",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 4/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"c7gn.12xlarge",
"c7gn.16xlarge",
"c7i.large",
"c7i.xlarge",
"c7i.2xlarge",
"c7i.4xlarge",
"c7i.8xlarge",
"c7i.12xlarge",
"c7i.16xlarge",
"c7i.24xlarge",
"c7i.48xlarge",
"cc2.8xlarge",
"cr1.8xlarge",
"d2.xlarge",
"d2.2xlarge",
"d2.4xlarge",
"d2.8xlarge",
"d3.xlarge",
"d3.2xlarge",
"d3.4xlarge",
"d3.8xlarge",
"d3en.xlarge",
"d3en.2xlarge",
"d3en.4xlarge",
"d3en.6xlarge",
"d3en.8xlarge",
"d3en.12xlarge",
"dc2.large",
"dc2.8xlarge",
"dl1.24xlarge",
"ds2.xlarge",
"ds2.8xlarge",
"f1.2xlarge",
"f1.4xlarge",
"f1.16xlarge",
"g2.2xlarge",
"g2.8xlarge",
"g3.4xlarge",
"g3.8xlarge",
"g3.16xlarge",
"g3s.xlarge",
"g4ad.xlarge",
"g4ad.2xlarge",
"g4ad.4xlarge",
"g4ad.8xlarge",
"g4ad.16xlarge",
"g4dn.xlarge",
"g4dn.2xlarge",
"g4dn.4xlarge",
"g4dn.8xlarge",
"g4dn.12xlarge",
"g4dn.16xlarge",
"g4dn.metal",
"g5.xlarge",
"g5.2xlarge",
"g5.4xlarge",
"g5.8xlarge",
"g5.12xlarge",
"g5.16xlarge",
"g5.24xlarge",
"g5.48xlarge",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 5/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"g5g.xlarge",
"g5g.2xlarge",
"g5g.4xlarge",
"g5g.8xlarge",
"g5g.16xlarge",
"g5g.metal",
"h1.2xlarge",
"h1.4xlarge",
"h1.8xlarge",
"h1.16xlarge",
"hpc7g.4xlarge",
"hpc7g.8xlarge",
"hpc7g.16xlarge",
"hs1.8xlarge",
"i2.large",
"i2.xlarge",
"i2.xlarge.elasticsearch",
"i2.2xlarge",
"i2.2xlarge.elasticsearch",
"i2.4xlarge",
"i2.8xlarge",
"i3.large",
"i3.large.elasticsearch",
"i3.xlarge",
"i3.xlarge.elasticsearch",
"i3.2xlarge",
"i3.2xlarge.elasticsearch",
"i3.4xlarge",
"i3.4xlarge.elasticsearch",
"i3.8xlarge",
"i3.8xlarge.elasticsearch",
"i3.16xlarge",
"i3.16xlarge.elasticsearch",
"i3.metal",
"i3en.large",
"i3en.xlarge",
"i3en.2xlarge",
"i3en.3xlarge",
"i3en.6xlarge",
"i3en.12xlarge",
"i3en.24xlarge",
"i3en.metal",
"i4g.large",
"i4g.xlarge",
"i4g.2xlarge",
"i4g.4xlarge",
"i4g.8xlarge",
"i4g.16xlarge",
"i4i.large",
"i4i.xlarge",
"i4i.2xlarge",
"i4i.4xlarge",
"i4i.8xlarge",
"i4i.16xlarge",
"i4i.32xlarge",
"i4i.metal",
"im4gn.large",
"im4gn.xlarge",
"im4gn.2xlarge",
"im4gn.4xlarge",
"im4gn.8xlarge",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 6/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"im4gn.16xlarge",
"inf1.xlarge",
"inf1.2xlarge",
"inf1.6xlarge",
"inf1.24xlarge",
"inf2.xlarge",
"inf2.8xlarge",
"inf2.24xlarge",
"inf2.48xlarge",
"is4gen.medium",
"is4gen.large",
"is4gen.xlarge",
"is4gen.2xlarge",
"is4gen.4xlarge",
"is4gen.8xlarge",
"db.m1.medium",
"m1.medium",
"db.m1.small",
"m1.small",
"db.m1.large",
"m1.large",
"db.m1.xlarge",
"m1.xlarge",
"db.m2.xlarge",
"m2.xlarge",
"db.m2.2xlarge",
"m2.2xlarge",
"db.m2.4xlarge",
"m2.4xlarge",
"cache.m3.medium",
"db.m3.medium",
"m3.medium",
"m3.medium.elasticsearch",
"db.m3.large",
"m3.large",
"m3.large.elasticsearch",
"db.m3.xlarge",
"m3.xlarge",
"m3.xlarge.elasticsearch",
"db.m3.2xlarge",
"m3.2xlarge",
"m3.2xlarge.elasticsearch",
"cache.m4.large",
"db.m4.large",
"m4.large",
"m4.large.elasticsearch",
"cache.m4.xlarge",
"db.m4.xlarge",
"m4.xlarge",
"m4.xlarge.elasticsearch",
"cache.m4.2xlarge",
"db.m4.2xlarge",
"m4.2xlarge",
"m4.2xlarge.elasticsearch",
"cache.m4.4xlarge",
"db.m4.4xlarge",
"m4.4xlarge",
"m4.4xlarge.elasticsearch",
"cache.m4.10xlarge",
"db.m4.10xlarge",
"m4.10xlarge",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 7/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"m4.10xlarge.elasticsearch",
"db.m4.16xlarge",
"m4.16xlarge",
"m5.large",
"cache.m5.large",
"db.m5.large",
"m5.large.elasticsearch",
"m5.xlarge",
"cache.m5.xlarge",
"db.m5.xlarge",
"m5.xlarge.elasticsearch",
"m5.2xlarge",
"cache.m5.2xlarge",
"db.m5.2xlarge",
"m5.2xlarge.elasticsearch",
"m5.4xlarge",
"cache.m5.4xlarge",
"db.m5.4xlarge",
"m5.4xlarge.elasticsearch",
"db.m5.8xlarge",
"m5.8xlarge",
"m5.12xlarge",
"cache.m5.12xlarge",
"db.m5.12xlarge",
"m5.12xlarge.elasticsearch",
"m5.16xlarge",
"db.m5.16xlarge",
"m5.24xlarge",
"cache.m5.24xlarge",
"db.m5.24xlarge",
"m5.metal",
"m5a.large",
"m5a.xlarge",
"m5a.2xlarge",
"m5a.4xlarge",
"m5a.8xlarge",
"m5a.12xlarge",
"m5a.16xlarge",
"m5a.24xlarge",
"m5ad.large",
"m5ad.xlarge",
"m5ad.2xlarge",
"m5ad.4xlarge",
"m5ad.8xlarge",
"m5ad.12xlarge",
"m5ad.16xlarge",
"m5ad.24xlarge",
"m5d.large",
"m5d.xlarge",
"m5d.2xlarge",
"m5d.4xlarge",
"m5d.8xlarge",
"m5d.12xlarge",
"m5d.16xlarge",
"m5d.24xlarge",
"m5d.metal",
"m5dn.large",
"m5dn.xlarge",
"m5dn.2xlarge",
"m5dn.4xlarge",
"m5dn.8xlarge",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 8/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"m5dn.12xlarge",
"m5dn.16xlarge",
"m5dn.24xlarge",
"m5dn.metal",
"m5n.large",
"m5n.xlarge",
"m5n.2xlarge",
"m5n.4xlarge",
"m5n.8xlarge",
"m5n.12xlarge",
"m5n.16xlarge",
"m5n.24xlarge",
"m5n.metal",
"m5zn.large",
"m5zn.xlarge",
"m5zn.2xlarge",
"m5zn.3xlarge",
"m5zn.6xlarge",
"m5zn.12xlarge",
"m5zn.metal",
"m6a.large",
"m6a.xlarge",
"m6a.2xlarge",
"m6a.4xlarge",
"m6a.8xlarge",
"m6a.12xlarge",
"m6a.16xlarge",
"m6a.24xlarge",
"m6a.32xlarge",
"m6a.48xlarge",
"m6a.metal",
"m6g.medium",
"cache.m6g.large",
"db.m6g.large",
"m6g.large",
"m6g.large.elasticsearch",
"cache.m6g.xlarge",
"db.m6g.xlarge",
"m6g.xlarge",
"m6g.xlarge.elasticsearch",
"cache.m6g.2xlarge",
"db.m6g.2xlarge",
"m6g.2xlarge",
"m6g.2xlarge.elasticsearch",
"cache.m6g.4xlarge",
"db.m6g.4xlarge",
"m6g.4xlarge",
"m6g.4xlarge.elasticsearch",
"cache.m6g.8xlarge",
"db.m6g.8xlarge",
"m6g.8xlarge",
"m6g.8xlarge.elasticsearch",
"cache.m6g.12xlarge",
"db.m6g.12xlarge",
"m6g.12xlarge",
"m6g.12xlarge.elasticsearch",
"cache.m6g.16xlarge",
"db.m6g.16xlarge",
"m6g.16xlarge",
"m6g.metal",
"m6gd.medium",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 9/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"m6gd.large",
"m6gd.xlarge",
"m6gd.2xlarge",
"m6gd.4xlarge",
"m6gd.8xlarge",
"m6gd.12xlarge",
"m6gd.16xlarge",
"m6gd.metal",
"m6i.large",
"m6i.xlarge",
"m6i.2xlarge",
"m6i.4xlarge",
"m6i.8xlarge",
"m6i.12xlarge",
"m6i.16xlarge",
"m6i.24xlarge",
"m6i.32xlarge",
"m6i.metal",
"m6id.large",
"m6id.xlarge",
"m6id.2xlarge",
"m6id.4xlarge",
"m6id.8xlarge",
"m6id.12xlarge",
"m6id.16xlarge",
"m6id.24xlarge",
"m6id.32xlarge",
"m6id.metal",
"m6idn.large",
"m6idn.xlarge",
"m6idn.2xlarge",
"m6idn.4xlarge",
"m6idn.8xlarge",
"m6idn.12xlarge",
"m6idn.16xlarge",
"m6idn.24xlarge",
"m6idn.32xlarge",
"m6idn.metal",
"m6in.large",
"m6in.xlarge",
"m6in.2xlarge",
"m6in.4xlarge",
"m6in.8xlarge",
"m6in.12xlarge",
"m6in.16xlarge",
"m6in.24xlarge",
"m6in.32xlarge",
"m6in.metal",
"m7a.medium",
"m7a.large",
"m7a.xlarge",
"m7a.2xlarge",
"m7a.4xlarge",
"m7a.8xlarge",
"m7a.12xlarge",
"m7a.16xlarge",
"m7a.24xlarge",
"m7a.32xlarge",
"m7a.48xlarge",
"m7a.metal-48xl",
"m7g.medium",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 10/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"m7g.large",
"m7g.xlarge",
"m7g.2xlarge",
"m7g.4xlarge",
"m7g.8xlarge",
"m7g.12xlarge",
"m7g.16xlarge",
"m7g.metal",
"m7gd.medium",
"m7gd.large",
"m7gd.xlarge",
"m7gd.2xlarge",
"m7gd.4xlarge",
"m7gd.8xlarge",
"m7gd.12xlarge",
"m7gd.16xlarge",
"m7i.large",
"m7i.xlarge",
"m7i.2xlarge",
"m7i.4xlarge",
"m7i.8xlarge",
"m7i.12xlarge",
"m7i.16xlarge",
"m7i.24xlarge",
"m7i.48xlarge",
"m7i-flex.large",
"m7i-flex.xlarge",
"m7i-flex.2xlarge",
"m7i-flex.4xlarge",
"m7i-flex.8xlarge",
"mac1.metal",
"mac2.metal",
"p2.xlarge",
"p2.8xlarge",
"p2.16xlarge",
"p3.2xlarge",
"p3.8xlarge",
"p3.16xlarge",
"p3dn.24xlarge",
"p4d.24xlarge",
"p4de.24xlarge",
"p5.48xlarge",
"db.r3.large",
"r3.large",
"r3.large.elasticsearch",
"db.r3.xlarge",
"r3.xlarge",
"r3.xlarge.elasticsearch",
"cache.r3.2xlarge",
"db.r3.2xlarge",
"r3.2xlarge",
"r3.2xlarge.elasticsearch",
"db.r3.4xlarge",
"r3.4xlarge",
"r3.4xlarge.elasticsearch",
"db.r3.8xlarge",
"r3.8xlarge",
"r3.8xlarge.elasticsearch",
"cache.r4.large",
"db.r4.large",
"r4.large",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 11/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"r4.large.elasticsearch",
"cache.r4.xlarge",
"db.r4.xlarge",
"r4.xlarge",
"r4.xlarge.elasticsearch",
"cache.r4.2xlarge",
"db.r4.2xlarge",
"r4.2xlarge",
"r4.2xlarge.elasticsearch",
"cache.r4.4xlarge",
"db.r4.4xlarge",
"r4.4xlarge",
"r4.4xlarge.elasticsearch",
"cache.r4.8xlarge",
"db.r4.8xlarge",
"r4.8xlarge",
"r4.8xlarge.elasticsearch",
"cache.r4.16xlarge",
"db.r4.16xlarge",
"r4.16xlarge",
"r4.16xlarge.elasticsearch",
"cache.r5.large",
"db.r5.large",
"r5.large",
"r5.large.elasticsearch",
"cache.r5.xlarge",
"db.r5.xlarge",
"r5.xlarge",
"r5.xlarge.elasticsearch",
"cache.r5.2xlarge",
"db.r5.2xlarge",
"r5.2xlarge",
"r5.2xlarge.elasticsearch",
"cache.r5.4xlarge",
"db.r5.4xlarge",
"r5.4xlarge",
"r5.4xlarge.elasticsearch",
"db.r5.8xlarge",
"r5.8xlarge",
"cache.r5.12xlarge",
"db.r5.12xlarge",
"r5.12xlarge",
"r5.12xlarge.elasticsearch",
"db.r5.16xlarge",
"r5.16xlarge",
"cache.r5.24xlarge",
"db.r5.24xlarge",
"r5.24xlarge",
"r5.metal",
"r5a.large",
"r5a.xlarge",
"r5a.2xlarge",
"r5a.4xlarge",
"r5a.8xlarge",
"r5a.12xlarge",
"r5a.16xlarge",
"r5a.24xlarge",
"r5ad.large",
"r5ad.xlarge",
"r5ad.2xlarge",
"r5ad.4xlarge",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 12/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"r5ad.8xlarge",
"r5ad.12xlarge",
"r5ad.16xlarge",
"r5ad.24xlarge",
"r5b.large",
"r5b.xlarge",
"r5b.2xlarge",
"r5b.4xlarge",
"r5b.8xlarge",
"r5b.12xlarge",
"r5b.16xlarge",
"r5b.24xlarge",
"r5b.metal",
"r5d.large",
"r5d.xlarge",
"r5d.2xlarge",
"r5d.4xlarge",
"r5d.8xlarge",
"r5d.12xlarge",
"r5d.16xlarge",
"r5d.24xlarge",
"r5d.metal",
"r5dn.large",
"r5dn.xlarge",
"r5dn.2xlarge",
"r5dn.4xlarge",
"r5dn.8xlarge",
"r5dn.12xlarge",
"r5dn.16xlarge",
"r5dn.24xlarge",
"r5dn.metal",
"r5n.large",
"r5n.xlarge",
"r5n.2xlarge",
"r5n.4xlarge",
"r5n.8xlarge",
"r5n.12xlarge",
"r5n.16xlarge",
"r5n.24xlarge",
"r5n.metal",
"r6a.large",
"r6a.xlarge",
"r6a.2xlarge",
"r6a.4xlarge",
"r6a.8xlarge",
"r6a.12xlarge",
"r6a.16xlarge",
"r6a.24xlarge",
"r6a.32xlarge",
"r6a.48xlarge",
"r6a.metal",
"r6g.medium",
"cache.r6g.large",
"db.r6g.large",
"r6g.large",
"r6g.large.elasticsearch",
"cache.r6g.xlarge",
"db.r6g.xlarge",
"r6g.xlarge",
"r6g.xlarge.elasticsearch",
"cache.r6g.2xlarge",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 13/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"db.r6g.2xlarge",
"r6g.2xlarge",
"r6g.2xlarge.elasticsearch",
"cache.r6g.4xlarge",
"db.r6g.4xlarge",
"r6g.4xlarge",
"r6g.4xlarge.elasticsearch",
"cache.r6g.8xlarge",
"r6g.8xlarge",
"r6g.8xlarge.elasticsearch",
"cache.r6g.12xlarge",
"db.r6g.12xlarge",
"r6g.12xlarge",
"r6g.12xlarge.elasticsearch",
"cache.r6g.16xlarge",
"db.r6g.16xlarge",
"r6g.16xlarge",
"r6g.metal",
"r6gd.medium",
"r6gd.large",
"r6gd.large.elasticsearch",
"r6gd.xlarge",
"r6gd.xlarge.elasticsearch",
"r6gd.2xlarge",
"r6gd.2xlarge.elasticsearch",
"r6gd.4xlarge",
"r6gd.4xlarge.elasticsearch",
"r6gd.8xlarge",
"r6gd.8xlarge.elasticsearch",
"r6gd.12xlarge",
"r6gd.12xlarge.elasticsearch",
"r6gd.16xlarge",
"r6gd.16xlarge.elasticsearch",
"r6gd.metal",
"r6i.large",
"r6i.xlarge",
"r6i.2xlarge",
"r6i.4xlarge",
"r6i.8xlarge",
"r6i.12xlarge",
"r6i.16xlarge",
"r6i.24xlarge",
"r6i.32xlarge",
"r6i.metal",
"r6id.large",
"r6id.xlarge",
"r6id.2xlarge",
"r6id.4xlarge",
"r6id.8xlarge",
"r6id.12xlarge",
"r6id.16xlarge",
"r6id.24xlarge",
"r6id.32xlarge",
"r6id.metal",
"r6idn.large",
"r6idn.xlarge",
"r6idn.2xlarge",
"r6idn.4xlarge",
"r6idn.8xlarge",
"r6idn.12xlarge",
"r6idn.16xlarge",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 14/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"r6idn.24xlarge",
"r6idn.32xlarge",
"r6idn.metal",
"r6in.large",
"r6in.xlarge",
"r6in.2xlarge",
"r6in.4xlarge",
"r6in.8xlarge",
"r6in.12xlarge",
"r6in.16xlarge",
"r6in.24xlarge",
"r6in.32xlarge",
"r6in.metal",
"r7a.medium",
"r7a.large",
"r7a.xlarge",
"r7a.2xlarge",
"r7a.4xlarge",
"r7a.8xlarge",
"r7a.12xlarge",
"r7a.16xlarge",
"r7a.24xlarge",
"r7a.32xlarge",
"r7a.48xlarge",
"r7a.metal-48xl",
"r7g.medium",
"r7g.large",
"r7g.xlarge",
"r7g.2xlarge",
"r7g.4xlarge",
"r7g.8xlarge",
"r7g.12xlarge",
"r7g.16xlarge",
"r7g.metal",
"r7gd.medium",
"r7gd.large",
"r7gd.xlarge",
"r7gd.2xlarge",
"r7gd.4xlarge",
"r7gd.8xlarge",
"r7gd.12xlarge",
"r7gd.16xlarge",
"r7iz.large",
"r7iz.xlarge",
"r7iz.2xlarge",
"r7iz.4xlarge",
"r7iz.8xlarge",
"r7iz.12xlarge",
"r7iz.16xlarge",
"r7iz.32xlarge",
"ra3.4xlarge",
"ra3.16xlarge",
"t1.micro",
"cache.t2.micro",
"db.t2.micro",
"cache.t2.small",
"db.t2.small",
"t2.micro",
"t2.micro.elasticsearch",
"t2.nano",
"t2.small",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 15/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"t2.small.elasticsearch",
"db.t2.large",
"cache.t2.medium",
"db.t2.medium",
"t2.large",
"t2.medium",
"t2.medium.elasticsearch",
"db.t2.xlarge",
"t2.xlarge",
"db.t2.2xlarge",
"t2.2xlarge",
"db.t3.large",
"t3.large",
"cache.t3.medium",
"db.t3.medium",
"t3.medium",
"t3.medium.elasticsearch",
"cache.t3.micro",
"db.t3.micro",
"t3.micro",
"t3.nano",
"cache.t3.small",
"db.t3.small",
"t3.small",
"t3.small.elasticsearch",
"db.t3.xlarge",
"t3.xlarge",
"db.t3.2xlarge",
"t3.2xlarge",
"t3a.large",
"t3a.medium",
"t3a.micro",
"t3a.nano",
"t3a.small",
"t3a.xlarge",
"t3a.2xlarge",
"t4g.large",
"t4g.medium",
"t4g.micro",
"t4g.nano",
"t4g.small",
"t4g.xlarge",
"t4g.2xlarge",
"trn1.2xlarge",
"trn1.32xlarge",
"trn1n.32xlarge",
"u-12tb1.112xlarge",
"u-12tb1.metal",
"u-18tb1.112xlarge",
"u-18tb1.metal",
"u-24tb1.112xlarge",
"u-24tb1.metal",
"u-3tb1.56xlarge",
"u-6tb1.56xlarge",
"u-6tb1.112xlarge",
"u-6tb1.metal",
"u-9tb1.112xlarge",
"u-9tb1.metal",
"vt1.3xlarge",
"vt1.6xlarge",
"vt1.24xlarge",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 16/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"db.x1.16xlarge",
"x1.16xlarge",
"db.x1.32xlarge",
"x1.32xlarge",
"db.x1e.xlarge",
"x1e.xlarge",
"db.x1e.2xlarge",
"x1e.2xlarge",
"db.x1e.4xlarge",
"x1e.4xlarge",
"db.x1e.8xlarge",
"x1e.8xlarge",
"db.x1e.16xlarge",
"x1e.16xlarge",
"db.x1e.32xlarge",
"x1e.32xlarge",
"x2gd.medium",
"x2gd.large",
"x2gd.xlarge",
"x2gd.2xlarge",
"x2gd.4xlarge",
"x2gd.8xlarge",
"x2gd.12xlarge",
"x2gd.16xlarge",
"x2gd.metal",
"x2idn.16xlarge",
"x2idn.24xlarge",
"x2idn.32xlarge",
"x2idn.metal",
"x2iedn.xlarge",
"x2iedn.2xlarge",
"x2iedn.4xlarge",
"x2iedn.8xlarge",
"x2iedn.16xlarge",
"x2iedn.24xlarge",
"x2iedn.32xlarge",
"x2iedn.metal",
"x2iezn.2xlarge",
"x2iezn.4xlarge",
"x2iezn.6xlarge",
"x2iezn.8xlarge",
"x2iezn.12xlarge",
"x2iezn.metal",
"db.z1d.large",
"z1d.large",
"db.z1d.xlarge",
"z1d.xlarge",
"db.z1d.2xlarge",
"z1d.2xlarge",
"db.z1d.3xlarge",
"z1d.3xlarge",
"db.z1d.6xlarge",
"z1d.6xlarge",
"db.z1d.12xlarge",
"z1d.12xlarge",
"z1d.metal"
]
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 17/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
The usage impact for 1 year (since duration=8760 ) of compute at 50% of load for a
r6g.medium instance type in europe
Query:
Results
{
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 5.4,
"min": 3.063,
"max": 9.26,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 18.0,
"min": 0.9733,
"max": 63.85
}
}
}
}
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 18/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
Warning
Note that these are the components of the entire server, not the instance. To get the impact or
the attribute of the component for the specific instance, divide the impact of each component
by the number of instances hosted on the server.
Query :
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 19/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
Results
{
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 5.4,
"min": 3.063,
"max": 9.26,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 18.0,
"min": 0.9733,
"max": 63.85
}
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.00057,
"min": 0.0003965,
"max": 0.0008337,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 3e-06,
"min": 5.603e-07,
"max": 1.498e-05
}
}
},
"verbose": {
"units": {
"value": 1,
"status": "ARCHETYPE",
"min": 1,
"max": 1
},
"vcpu": {
"value": 1.0,
"status": "ARCHETYPE"
},
"memory": {
"value": 8.0,
"status": "ARCHETYPE",
"unit": "GB"
},
"avg_power": {
"value": 5.354039687499999,
"status": "COMPLETED",
"unit": "W",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 20/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"min": 4.8307125,
"max": 6.44095
},
"duration": {
"value": 8760.0,
"unit": "hours"
},
"ASSEMBLY-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 0.02609,
"min": 0.02609,
"max": 0.02609,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 5.508e-09,
"min": 5.508e-09,
"max": 5.508e-09,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
},
"units": {
"value": 1,
"status": "ARCHETYPE",
"min": 1,
"max": 1
},
"duration": {
"value": 8760.0,
"unit": "hours"
}
},
"CPU-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 0.07465,
"min": 0.07465,
"max": 0.07465,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 21/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"value": 6.0,
"min": 0.3533,
"max": 17.38
}
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 7.97e-05,
"min": 7.97e-05,
"max": 7.97e-05,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 1e-06,
"min": 2.034e-07,
"max": 4.08e-06
}
}
},
"units": {
"value": 1.0,
"status": "ARCHETYPE",
"min": 1.0,
"max": 1.0
},
"core_units": {
"value": 64,
"status": "COMPLETED",
"source": "Completed from name name based on
https://docs.google.com/spreadsheets/d/1DqYgQnEDLQVQm5acMAhLgHLD8xXCG9BIrk-
_Nv6jF3k/edit#gid=224728652.",
"min": 64,
"max": 64
},
"die_size": {
"value": 457,
"status": "COMPLETED",
"unit": "mm2",
"source": "Value of cpu_manufacture
https://en.wikichip.org/wiki/annapurna_labs/alpine/alc12b00 : Completed from
name name based on
https://docs.google.com/spreadsheets/d/1DqYgQnEDLQVQm5acMAhLgHLD8xXCG9BIrk-
_Nv6jF3k/edit#gid=224728652.",
"min": 457,
"max": 457
},
"model_range": {
"value": "Graviton2",
"status": "COMPLETED",
"source": "Completed from name name based on
https://docs.google.com/spreadsheets/d/1DqYgQnEDLQVQm5acMAhLgHLD8xXCG9BIrk-
_Nv6jF3k/edit#gid=224728652.",
"min": "Graviton2",
"max": "Graviton2"
},
"manufacturer": {
"value": "Annapurna Labs",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 22/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"status": "COMPLETED",
"source": "Completed from name name based on
https://docs.google.com/spreadsheets/d/1DqYgQnEDLQVQm5acMAhLgHLD8xXCG9BIrk-
_Nv6jF3k/edit#gid=224728652.",
"min": "Annapurna Labs",
"max": "Annapurna Labs"
},
"family": {
"value": "Graviton2",
"status": "COMPLETED",
"source": "Completed from name name based on
https://docs.google.com/spreadsheets/d/1DqYgQnEDLQVQm5acMAhLgHLD8xXCG9BIrk-
_Nv6jF3k/edit#gid=224728652.",
"min": "Graviton2",
"max": "Graviton2"
},
"name": {
"value": "Annapurna Labs Graviton2",
"status": "COMPLETED",
"source": "fuzzy match",
"min": "Annapurna Labs Graviton2",
"max": "Annapurna Labs Graviton2"
},
"tdp": {
"value": 150,
"status": "COMPLETED",
"unit": "W",
"source": "Completed from name name based on
https://docs.google.com/spreadsheets/d/1DqYgQnEDLQVQm5acMAhLgHLD8xXCG9BIrk-
_Nv6jF3k/edit#gid=224728652.",
"min": 150,
"max": 150
},
"threads": {
"value": 64,
"status": "COMPLETED",
"source": "Completed from name name based on
https://docs.google.com/spreadsheets/d/1DqYgQnEDLQVQm5acMAhLgHLD8xXCG9BIrk-
_Nv6jF3k/edit#gid=224728652.",
"min": 64,
"max": 64
},
"duration": {
"value": 8760.0,
"unit": "hours"
},
"avg_power": {
"value": 1.75359375,
"status": "COMPLETED",
"unit": "W",
"min": 1.75359375,
"max": 1.75359375
},
"time_workload": {
"value": 50.0,
"status": "ARCHETYPE",
"unit": "%",
"min": 0.0,
"max": 100.0
},
"usage_location": {
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 23/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"value": "EEE",
"status": "DEFAULT",
"unit": "CodSP3 - NCS Country Codes - NATO"
},
"use_time_ratio": {
"value": 1.0,
"status": "ARCHETYPE",
"unit": "/1",
"min": 1.0,
"max": 1.0
},
"hours_life_time": {
"value": 35040.0,
"status": "COMPLETED",
"unit": "hours",
"source": "from device",
"min": 35040.0,
"max": 35040.0
},
"workloads": {
"value": [
{
"load_percentage": 0,
"power_watt": 18.0
},
{
"load_percentage": 10,
"power_watt": 48.0
},
{
"load_percentage": 50,
"power_watt": 112.5
},
{
"load_percentage": 100,
"power_watt": 153.0
}
],
"status": "COMPLETED",
"unit": "workload_rate:W"
},
"params": {
"value": {
"a": 76.2719009422506,
"b": 0.06416377550196647,
"c": 20.45110311208281,
"d": -2.8366153241302814
},
"status": "COMPLETED",
"source": "From TDP"
},
"gwp_factor": {
"value": 0.38,
"status": "DEFAULT",
"unit": "kg CO2eq/kWh",
"source":
"https://www.sciencedirect.com/science/article/pii/S0306261921012149",
"min": 0.023,
"max": 1.13161
},
"adp_factor": {
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 24/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"value": 6.42317e-08,
"status": "DEFAULT",
"unit": "kg Sbeq/kWh",
"source": "ADEME Base IMPACTS \u00ae",
"min": 1.324e-08,
"max": 2.65575e-07
}
},
"RAM-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 3.9,
"min": 2.179,
"max": 7.366,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 120.0,
"min": 7.324,
"max": 360.4
}
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.00021,
"min": 0.0001587,
"max": 0.0003072,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 2e-05,
"min": 4.216e-06,
"max": 8.457e-05
}
}
},
"units": {
"value": 16.0,
"status": "ARCHETYPE",
"min": 16.0,
"max": 16.0
},
"capacity": {
"value": 32.0,
"status": "ARCHETYPE",
"unit": "GB",
"min": 32.0,
"max": 32.0
},
"density": {
"value": 1.2443636363636363,
"status": "COMPLETED",
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 25/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"unit": "GB/cm2",
"source": "Average of 11 rows",
"min": 0.625,
"max": 2.375
},
"duration": {
"value": 8760.0,
"unit": "hours"
},
"avg_power": {
"value": 2.272,
"status": "COMPLETED",
"unit": "W",
"min": 2.272,
"max": 2.272
},
"time_workload": {
"value": 50.0,
"status": "ARCHETYPE",
"unit": "%",
"min": 0.0,
"max": 100.0
},
"usage_location": {
"value": "EEE",
"status": "DEFAULT",
"unit": "CodSP3 - NCS Country Codes - NATO"
},
"use_time_ratio": {
"value": 1.0,
"status": "ARCHETYPE",
"unit": "/1",
"min": 1.0,
"max": 1.0
},
"hours_life_time": {
"value": 35040.0,
"status": "COMPLETED",
"unit": "hours",
"source": "from device",
"min": 35040.0,
"max": 35040.0
},
"params": {
"value": {
"a": 9.088
},
"status": "COMPLETED",
"source": "(ram_electrical_factor_per_go : 0.284) *
(ram_capacity: 32.0) "
},
"gwp_factor": {
"value": 0.38,
"status": "DEFAULT",
"unit": "kg CO2eq/kWh",
"source":
"https://www.sciencedirect.com/science/article/pii/S0306261921012149",
"min": 0.023,
"max": 1.13161
},
"adp_factor": {
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 26/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"value": 6.42317e-08,
"status": "DEFAULT",
"unit": "kg Sbeq/kWh",
"source": "ADEME Base IMPACTS \u00ae",
"min": 1.324e-08,
"max": 2.65575e-07
}
},
"POWER_SUPPLY-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 0.57,
"min": 0.1898,
"max": 0.9492,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 0.00019,
"min": 6.484e-05,
"max": 0.0003242,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
},
"units": {
"value": 2.0,
"status": "ARCHETYPE",
"min": 2.0,
"max": 2.0
},
"unit_weight": {
"value": 2.99,
"status": "ARCHETYPE",
"unit": "kg",
"min": 1.0,
"max": 5.0
},
"duration": {
"value": 8760.0,
"unit": "hours"
}
},
"CASE-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 27/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
"value": 0.59,
"min": 0.3355,
"max": 0.5859,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 7.9e-05,
"min": 7.891e-05,
"max": 0.0001081,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
}
},
"units": {
"value": 1,
"status": "ARCHETYPE",
"min": 1,
"max": 1
},
"case_type": {
"value": "rack",
"status": "ARCHETYPE"
},
"duration": {
"value": 8760.0,
"unit": "hours"
}
},
"MOTHERBOARD-1": {
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 0.2582,
"min": 0.2582,
"max": 0.2582,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented"
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 1.441e-05,
"min": 1.441e-05,
"max": 1.441e-05,
"warnings": [
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 28/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 29/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
}
}
Query:
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 30/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
Results
{
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 0.0012,
"min": 0.0006994,
"max": 0.002114,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 0.00086,
"min": 0.0007735,
"max": 0.001031
}
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": {
"value": 1.31e-07,
"min": 9.054e-08,
"max": 1.903e-07,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 4.2e-10,
"min": 3.834e-10,
"max": 5.112e-10
}
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": {
"value": 0.016,
"min": 0.009094,
"max": 0.02717,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 0.099,
"min": 0.0891,
"max": 0.1188
}
}
}
}
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 31/32
2/2/24, 8:13 PM Get the impacts of a cloud instance (AWS) - Boavizta API documentation
Since no criteria flags are specified, the API returns the impacts of the instance for the
default criteria (adp, pe, gwp).
Since duration is set at 2 and time_workload is provided, the query usage can be translated
as such :
I used a r6g.medium in a french data center for 2 hours half of the time in IDLE
mode and half of the time at 50% of workload
https://doc.api.boavizta.org/getting_started/single_cloud_instance/ 32/32
2/2/24, 8:13 PM Get started with consumption profiles - Boavizta API documentation
This page presents basic queries that can be used to generate and use consumption profiles.
You use curl in command line to query Boavizta demo (public) API.
curl -X 'POST' \
'https://api.boavizta.org/v1/consumption_profile/cpu' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"cpu": {
"name": "intel xeon gold 6134",
"tdp": 130
}
}'
Result :
The API will select the average xeon gold consumption profile and adapt it with a TDP of 130
Watt.
{
"a": 35.5688,
"b": 0.2438,
"c": 9.6694,
"d": -0.6087
}
https://doc.api.boavizta.org/getting_started/consumption_profile/ 1/2
2/2/24, 8:13 PM Get started with consumption profiles - Boavizta API documentation
curl -X 'POST' \
'https://api.boavizta.org/v1/consumption_profile/cpu' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"cpu": {
"name": "intel xeon gold 6134"
},
"workload": [
{
"load_percentage": 0,
"power_watt": 50
},
{
"load_percentage": 10,
"power_watt": 100
},
{
"load_percentage": 50,
"power_watt": 180
},
{
"load_percentage": 100,
"power_watt": 245
}
]
}'
Result :
The API will select the average xeon gold consumption profile and adapt it to match the given
datapoints
{
"a": 105.9490625645529,
"b": 0.08276489427342926,
"c": 19.892145752325938,
"d": -0.7237683566860724
}
https://doc.api.boavizta.org/getting_started/consumption_profile/ 2/2
2/2/24, 8:13 PM Get started with terminal and peripherals - Boavizta API documentation
This page presents basic queries that can be used to retrieve impacts of terminal and
peripherals.
You use curl in command line to query Boavizta demo (public) API.
Query :
curl -X 'GET' \
'https://api.boavizta.org/v1/terminal/laptop?verbose=false' \
-H 'accept: application/json'
https://doc.api.boavizta.org/getting_started/end_user_devices/ 1/5
2/2/24, 8:13 PM Get started with terminal and peripherals - Boavizta API documentation
Results
{
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 181.0,
"min": 181.0,
"max": 181.0,
"warnings": [
"Generic data used for impact calculation."
]
},
"use": "not implemented"
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": "not implemented",
"use": "not implemented"
},
"pe": {
"unit": "MJ",
"description": "Consumption of primary energy",
"embedded": "not implemented",
"use": "not implemented"
}
}
}
The impacts for the default criteria (gwp, pe, adp) since no impact is specified
The usage impacts of the laptop during its life duration, since no duration is given
Error margins are provided in the form of min & max values for both embedded and usage
impacts
curl -X 'POST' \
'http://localhost:5000/v1/terminal/desktop?
verbose=true&duration=8760&criteria=gwp&criteria=adp' \
https://doc.api.boavizta.org/getting_started/end_user_devices/ 2/5
2/2/24, 8:13 PM Get started with terminal and peripherals - Boavizta API documentation
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"usage": {
"avg_power":70,
"use_time_ratio":0.3,
"usage_location": "FRA"
}
}'
https://doc.api.boavizta.org/getting_started/end_user_devices/ 3/5
2/2/24, 8:13 PM Get started with terminal and peripherals - Boavizta API documentation
Results
{
"impacts": {
"gwp": {
"unit": "kgCO2eq",
"description": "Total climate change",
"embedded": {
"value": 277.0,
"min": 277.0,
"max": 277.0,
"warnings": [
"Generic data used for impact calculation."
]
},
"use": {
"value": 18.03,
"min": 18.03,
"max": 18.03
}
},
"adp": {
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources",
"embedded": "not implemented",
"use": {
"value": 8.937e-06,
"min": 8.937e-06,
"max": 8.937e-06
}
}
},
"verbose": {
"duration": {
"value": 8760.0,
"unit": "hours"
},
"avg_power": {
"value": 70.0,
"status": "INPUT",
"unit": "W"
},
"usage_location": {
"value": "FRA",
"status": "INPUT",
"unit": "CodSP3 - NCS Country Codes - NATO"
},
"use_time_ratio": {
"value": 0.3,
"status": "INPUT",
"unit": "/1"
},
"gwp_factor": {
"value": 0.098,
"status": "COMPLETED",
"unit": "kg CO2eq/kWh",
"source":
"https://www.sciencedirect.com/science/article/pii/S0306261921012149",
"min": 0.098,
https://doc.api.boavizta.org/getting_started/end_user_devices/ 4/5
2/2/24, 8:13 PM Get started with terminal and peripherals - Boavizta API documentation
"max": 0.098
},
"adp_factor": {
"value": 4.85798e-08,
"status": "COMPLETED",
"unit": "kg Sbeq/kWh",
"source": "ADEME Base IMPACTS \u00ae",
"min": 4.85798e-08,
"max": 4.85798e-08
},
"type": {
"value": "pro",
"status": "ARCHETYPE"
},
"units": {
"value": 1,
"status": "ARCHETYPE",
"min": 1,
"max": 1
}
}
}
The impacts for both gwp and adp criteria since criteria=gwp&criteria=adp
The API will use an average electrical consumption of 70 Watt/hours 30% of the time
(since use_time_ratio=0.3 ) for one year (since duration is set at 8760 hours).
Usage impacts will be assessed for the French electrical mix impacts since
usage_location='FRA'
Embedded impacts will be allocated on one year (since duration is set at 8760 hours).
For further information see : The explanation page on terminal and peripherals
https://doc.api.boavizta.org/getting_started/end_user_devices/ 5/5
2/2/24, 8:13 PM Boavizta database - Boavizta API documentation
Data is gathered from manufacturer declarations. The dataset can be found in the
environmental-footprint-data GitHub repo.
Data integration
Warning
For now, Boavizta API is not integrated with Boavizta database since the API do not use
manufactures declarations. However, this database is one of the resources used to build the
data and methods available in the API.
Data gathering
The data is gathered either manually or via Boavizta's scrapper.
Data sources
The data is gathered from :
Apple
Dell
HP
Lenovo
Lexmark
Seagate
https://doc.api.boavizta.org/Explanations/boavizta_db/ 1/2
2/2/24, 8:13 PM Boavizta database - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/boavizta_db/ 2/2
2/2/24, 8:13 PM Impacts criteria - Boavizta API documentation
Impacts criteria
Here is the list of impacts criteria implemented in the API. You can select the list of criteria you
want to request to the API in the query.
Info
Depending on the asset you want to assess, some criteria might not be available.
Source : https://en.wikipedia.org/wiki/Global_warming_potential
Unit : kgCO2e
pe - Primary energy
What : Primary energy (PE) is an energy form found in nature that has not been subjected to
any human engineered conversion process. It is energy contained in raw fuels, and other forms
of energy, including waste, received as input to a system. Primary energy can be non-renewable
or renewable.
Source : https://en.wikipedia.org/wiki/Primary_energy
Unit : MJ
https://doc.api.boavizta.org/Explanations/impacts/ 1/5
2/2/24, 8:13 PM Impacts criteria - Boavizta API documentation
Source: https://www.sciencedirect.com/topics/engineering/abiotic-depletion-potential
Unit : KgSbeq
resource:
The_Abiotic_Depletion_Potential_Background_Updates_and_Future
lu - Land use
https://doc.api.boavizta.org/Explanations/impacts/ 2/5
2/2/24, 8:13 PM Impacts criteria - Boavizta API documentation
Unit : No dimension
Unit : m3 eq.
https://doc.api.boavizta.org/Explanations/impacts/ 3/5
2/2/24, 8:13 PM Impacts criteria - Boavizta API documentation
Unit : kg
Unit : kg SB eq.
Unit : MJ
ap - Acidification
what : Acidification
Unit : CTUe
Unit : CTUh
https://doc.api.boavizta.org/Explanations/impacts/ 4/5
2/2/24, 8:13 PM Impacts criteria - Boavizta API documentation
Unit : CTUh
Unit : kg P eq.
Unit : kg N eq.
https://doc.api.boavizta.org/Explanations/impacts/ 5/5
2/2/24, 8:13 PM Embedded impacts - Boavizta API documentation
Info
Embedded impacts include the impacts occurring during raw material extraction, manufacture,
transport and end of life phases.
Components impacts
Variable components impacts
The impacts of variable components are assessed from the component characteristics.
CPU
RAM
DISK (SSD)
Warning
DISK (HDD)
MOTHERBOARD
POWER SUPPLY
ASSEMBLY
Warning
Device impacts
https://doc.api.boavizta.org/Explanations/embedded_methodology/ 1/3
2/2/24, 8:13 PM Embedded impacts - Boavizta API documentation
The data and methods are specified for each device in their dedicated page.
Server
Cloud instances
1. Bottom-up approach
Embedded impacts are assessed at component level and aggregated at device level with a
bottom-up approach.
Warning
In this case, end of life is not taken into account for now.
If component impacts cannot be assessed, we use non-specific impacts factors at device level.
Warning
In this case, all the life cycle is taken into account including end of life.
Allocation
Embedded impacts can be reported with several allocation strategies.
When no specific duration is given, the total embedded impacts of the asset are given.
embedded_impacts = total_impact
When a duration is given as a query parameter, we allocate the embedded impacts linearly on
this duration.
https://doc.api.boavizta.org/Explanations/embedded_methodology/ 2/3
2/2/24, 8:13 PM Embedded impacts - Boavizta API documentation
Resources
Boavizta server impacts measurement methodology
https://doc.api.boavizta.org/Explanations/embedded_methodology/ 3/3
2/2/24, 8:13 PM Methodology - Boavizta API documentation
Usage methodology
Usage impacts can be assessed at device or component level from usage configuration.
Usage impacts are measured by multiplying a duration, a ratio of usage, an impact factor, and
an electrical consumption :
Characteristics
https://doc.api.boavizta.org/Explanations/usage/usage/ 1/2
2/2/24, 8:13 PM Methodology - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/usage/usage/ 2/2
2/2/24, 8:13 PM Duration - Boavizta API documentation
Duration
Usage impacts are assessed for a specific time duration given by the user as a query
parameter.
When no duration is given, the impacts are measured for the all lifespans of the device.
Usage ratio
The usage ratio is the proportion of time the device is used during the given duration. When a
device is always used, the usage ratio is 1. When a device is never used, the usage ratio is 0.
https://doc.api.boavizta.org/Explanations/usage/duration/ 1/2
2/2/24, 8:13 PM Duration - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/usage/duration/ 2/2
2/2/24, 8:13 PM Electrical impacts factors - Boavizta API documentation
User declaration
Users can give their own impact factors.
Warning
We recommend using impact factors describing your national or regional electrical mix. An
impact factor constructed from a market-based approach should not be used.
Info
usage_location are given in a trigram format, according to the list of the available countries.
You can find bellow the data source and methodology used for each impact criteria.
Source :
For Europe (2019): Quantification of the carbon intensity of electricity produced and used
in Europe
Source :
https://doc.api.boavizta.org/Explanations/usage/elec_factors/ 1/3
2/2/24, 8:13 PM Electrical impacts factors - Boavizta API documentation
PE impact factor are not available in open access. We use the consumption of fossil resources
per kwh (APDf/kwh) per country and extrapolate this consumption to renewable energy :
https://doc.api.boavizta.org/Explanations/usage/elec_factors/ 2/3
2/2/24, 8:13 PM Electrical impacts factors - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/usage/elec_factors/ 3/3
2/2/24, 8:13 PM Electrical consumption - Boavizta API documentation
Electrical consumption
Given
If available, user should send the electrical consumption of his components or devices in
Watt/hour ( avg_power ). Since the power will be extrapolated on the all duration, the power
given should be the average power of the device or component over the given duration.
Modeling
Sometime user doesn't have access to the electrical consumption of their component or
device, and we don't want to use a default value taken from an archetype.
If so, the API can use the percentage of component' or device' resource usage as a proxy for
the electrical consumption. We refer to this percentage as a workload of the component or
device. The API is able to convert a workload into a power consumption with consumption
profiles.
To learn more about how we build consumption profile see consumption profile page.
An average workloads can be given. A workload of 10% will mean : "I used my component or
device in average at 10% of its maximum workload"
A Workload can also be given as a dictionary to specify the percentage of time spent at each
desired workload level. The following
[
{
"load_percentage": 10,
"time_percentage": 50
},
{
https://doc.api.boavizta.org/Explanations/usage/elec_conso/ 1/3
2/2/24, 8:13 PM Electrical consumption - Boavizta API documentation
"load_percentage": 50,
"time_percentage": 20
},
{
"load_percentage": 100,
"time_percentage": 30
}
]
100%
50%
10%
0% (IDLE)
off
Power consumptions :
https://doc.api.boavizta.org/Explanations/usage/elec_conso/ 2/3
2/2/24, 8:13 PM Electrical consumption - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/usage/elec_conso/ 3/3
2/2/24, 8:13 PM Countries - Boavizta API documentation
Country Codes
Below are the geographic areas available for the electricity impact factors. Each area is
described by a trigram (used by the API)
Country Trigram
0-Global WOR
1-Europe EEE
Albania ALB
Algeria DZA
Angola AGO
Argentina ARG
Armenia ARM
Australia AUS
Austria AUT
Azerbaijan AZE
Bahrain BHR
Bangladesh BGD
Belarus BLR
Belgium BEL
Benin BEN
https://doc.api.boavizta.org/Explanations/usage/countries/ 1/8
2/2/24, 8:13 PM Countries - Boavizta API documentation
Country Trigram
Bolivia BOL
Botswana BWA
Brazil BRA
Brunei BRN
Bulgaria BGR
Cambodia KHM
Cameroon CMR
Canada CAN
Chile CHL
China CHN
Colombia COL
Congo COG
Croatia HRV
Cuba CUB
Cyprus CYP
Denmark DNK
https://doc.api.boavizta.org/Explanations/usage/countries/ 2/8
2/2/24, 8:13 PM Countries - Boavizta API documentation
Country Trigram
DR Congo COD
Ecuador ECU
Egypt EGY
El Salvador SLV
Eritrea ERI
Estonia EST
Ethiopia ETH
Finland FIN
France FRA
Gabon GAB
Georgia GEO
Germany DEU
Ghana GHA
Greece GRC
Guatemala GTM
Haiti HTI
Honduras HND
Honduras HND
https://doc.api.boavizta.org/Explanations/usage/countries/ 3/8
2/2/24, 8:13 PM Countries - Boavizta API documentation
Country Trigram
Hungary HUN
Iceland ISL
India IND
Indonesia IDN
Iran IRN
Iraq IRQ
Ireland IRL
Israel ISR
Italy ITA
Jamaica JAM
Japan JPN
Jordan JOR
Kazakhstan KAZ
Kenya KEN
Kuwait KWT
Kyrgyzstan KGZ
Latvia LVA
Lebanon LBN
https://doc.api.boavizta.org/Explanations/usage/countries/ 4/8
2/2/24, 8:13 PM Countries - Boavizta API documentation
Country Trigram
Lithuania LTU
Luxembourg LUX
Malaysia MYS
Malta MLT
Mexico MEX
Moldova MDA
Mongolia MNG
Morocco MAR
Mozambique MOZ
Myanmar MMR
Namibia NAM
Nepal NPL
Netherlands NLD
Nicaragua NIC
Nigeria NGA
https://doc.api.boavizta.org/Explanations/usage/countries/ 5/8
2/2/24, 8:13 PM Countries - Boavizta API documentation
Country Trigram
Norway NOR
Oman OMN
Pakistan PAK
Panama PAN
Paraguay PRY
Peru PER
Philippines PHL
Poland POL
Portugal PRT
Qatar QAT
Romania ROU
Senegal SEN
Serbia SCG
Singapore SGP
Slovakia SVK
Slovenia SVN
https://doc.api.boavizta.org/Explanations/usage/countries/ 6/8
2/2/24, 8:13 PM Countries - Boavizta API documentation
Country Trigram
Spain ESP
Sudan SDN
Sweden SWE
Switzerland CHE
Taiwan TWN
Tajikistan TJK
Tanzania TZA
Thailand THA
Togo TGO
Tunisia TUN
Turkey TUR
Turkmenistan TKM
Ukraine UKR
https://doc.api.boavizta.org/Explanations/usage/countries/ 7/8
2/2/24, 8:13 PM Countries - Boavizta API documentation
Country Trigram
Uruguay URY
Uzbekistan UZB
Venezuela VEN
Vietnam VNM
Yemen YEM
Zambia ZMB
Zimbabwe ZWE
https://doc.api.boavizta.org/Explanations/usage/countries/ 8/8
2/2/24, 8:13 PM Consumption profiles - Boavizta API documentation
Consumption profile
Warning
Error margins are not yet implemented for the consumption profile.
The completion strategy of the consumption profile is specified for each device or component
when implemented.
You will find the details of each of the consumption profiles in the respective components and
device pages. Consumption profile are implemented for :
CPU
RAM
Server
Cloud instances
Dataset
The consumption profiles are produced empirically from spot measurements at different
workload levels on different architectures. We rely on the data described here:
Energizta project aims to build a collaborative database to refine the consumption profiles
usable in the API.
https://doc.api.boavizta.org/Explanations/consumption_profile/ 1/2
2/2/24, 8:13 PM Consumption profiles - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/consumption_profile/ 2/2
2/2/24, 8:13 PM Auto-complete - Boavizta API documentation
Any calculation using the API is made easier thanks to the data auto-complete strategy. Any
valid input should return an impacts evaluation, even though it is lacking some detailed
information about the component, device or cloud instance. Given the user inputs, the API finds
the best strategy to fill any missing attributes for the computation.
COMPELETE : The API infer the value based on the user inputs (e.g. manufacturer and
family for a CPU name ).
DEFAULT : The API use a default value for those missing attributes (e.g. europe for the
default usage_location ). The default values can be set in the configuration file.
CHANGED : The API can change the value of an attribute to make the computation possible.
This happens when you provide a value that is close to the value of an attribute but not
exactly the same. For example, if you provide a family that is not in the database but is
close to a family in the database, the API will change the family to the closest name in
the database.
The documentation about how attributes are auto-completed is given on each asset's
documentation page.
All attributes that are auto-completed by the API can be found in the verbose information.
Attributes with a status of ARCHETYPE , DEFAULT or COMPLETED are respectively using an
archetype value, a default value or using an inferred value given user inputs.
Example on a CPU
To provide a response to the following query that is lacking key information to compute the
embedded impacts, some attributes will be auto-completed by the API.
curl -X 'POST' \
'https://api.boavizta.org/v1/component/cpu?verbose=false&allocation=TOTAL' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"manufacturer": "Intel",
https://doc.api.boavizta.org/Explanations/auto_complete/ 1/2
2/2/24, 8:13 PM Auto-complete - Boavizta API documentation
"family": "Haswell"
}'
{
...
"core_units": {
"value": 24,
"status": "ARCHETYPE",
"min": 1,
"max": 64
},
"die_size_per_core": {
"value": 0.35,
"status": "COMPLETED",
"unit": "mm2",
"source":
"https://en.wikichip.org/wiki/intel/microarchitectures/haswell_(client)#Octadeca-
core",
"min": 0.35,
"max": 0.44
},
"family": {
"value": "haswell",
"status": "CHANGED"
},
"time_workload": {
"value": 50,
"status": "ARCHETYPE",
"unit": "%",
"min": 0,
"max": 100
},
"usage_location": {
"value": "EEE",
"status": "DEFAULT",
"unit": "CodSP3 - NCS Country Codes - NATO"
}
...
}
die_size_per_core is set by COMPLETED since the value is inferred from the user inputs.
time_workload is set by ARCHETYPE since the value is taken from the archetype.
https://doc.api.boavizta.org/Explanations/auto_complete/ 2/2
2/2/24, 8:17 PM Archetypes - Boavizta API documentation
Archetypes
To create profiles for device with pre-recorded configuration components and usage. For
example : a medium storage server
Each type of device or component have a default archetype which can be changed in the
configuration file.
Example
Example
POST /v1/server?archetype=compute_medium
{
"configuration": {
...
},
"usage": {
...
https://doc.api.boavizta.org/Explanations/archetypes/ 1/2
2/2/24, 8:17 PM Archetypes - Boavizta API documentation
}
}
In this case the missing values will be completed with the values taken from a
compute_medium server.
https://doc.api.boavizta.org/Explanations/archetypes/ 2/2
2/2/24, 8:17 PM Verbose - Boavizta API documentation
Verbose
In the interest of transparency of our methods, data and source, all data used by the API can be
described in the response to a request if the option verbose is set as true
"impacts": {
"gwp": {
"other": {
"value": 64.7,
"significant_figures": 3,
"min": 12.3,
"max": 298
},
"use": {
"value": 1200,
"significant_figures": 2,
"min": 37,
"max": 5700
},
"unit": "kgCO2eq",
"description": "Total climate change"
},
"adp": {
"other": {
"value": 0.041,
"significant_figures": 2,
"min": 0.02,
"max": 0.082
},
"use": {
"value": 0.000205,
"significant_figures": 3,
"min": 0.0000211,
"max": 0.0017
},
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources"
},
"pe": {
"other": {
"value": 937,
"significant_figures": 3,
"min": 199,
https://doc.api.boavizta.org/Explanations/verbose/ 1/2
2/2/24, 8:17 PM Verbose - Boavizta API documentation
"max": 4140
},
"use": {
"value": 41100,
"significant_figures": 4,
"min": 20.75,
"max": 2989000
},
"unit": "MJ",
"description": "Consumption of primary energy"
}
}
Boattribute
For each attribute used in the evaluation process, we return :
Its value
Its unit
Its status :
COMPLETED: the value has set by the API according to user inputs
CHANGED: the value has been given by the user and has been changed by the API
ARCHETYPE: the default value has been set by the API from the archetype
The source of data in case the data has been COMPLETED or CHANGED and sometimes
when the DEFAULT value comes from a secondary source.
"gwp_factor": {
"value": 0.38,
"status": "DEFAULT",
"unit": "kg CO2eq/kWh",
"source":
"https://www.sciencedirect.com/science/article/pii/S0306261921012149 :
\nAverage of 27 european countries",
"min": 0.023,
"max": 0.9
}
https://doc.api.boavizta.org/Explanations/verbose/ 2/2
2/2/24, 8:17 PM Error margin - Boavizta API documentation
Error margin
Warning
Info
All environmental impacts are returned with a min and max values.
Warning
We do not take into account the error margin from the impact factors in the API.
Error margins are set when DEFAULT values are used. For example, if you do not provide the
usage location of a device, the API will use the default usage location of the device.In this case
we set a minimal (min) and maximal value (max) based on the available usage location and
compute the impact with the minimal and maximal value to report a min and max impacts
values.
https://doc.api.boavizta.org/Explanations/error_margin/ 1/2
2/2/24, 8:17 PM Error margin - Boavizta API documentation
Error margins are set when ARCHETYPE values are used. For example, if you do not provide any
information on your CPU, we will use the value of the attribute taken from the archetype. If the
archetype provide a min and a max value for this specific attribute, those values will be used to
compute min and max impacts values.
Rounding
Impact values are rounded depending on the distance between min and max values. The bigger
the difference, the more aggressive the rounding. To adapt the intensity of the rounding, we use
an uncertainty percentage which can be set in configuration file. The default value is 10%. The
lower the uncertainty percentage, the lower aggressive the rounding.
You can set a minimal and maximal significant digit for the rounding in the configuration file.
https://doc.api.boavizta.org/Explanations/error_margin/ 2/2
2/2/24, 8:17 PM Components - Boavizta API documentation
Component
A component is the smallest element of the api. It is an abstract object which can represent a
physical component (CPU, RAM, SSD, ...) or a specific process (Assembly). They are
characterized by technical characteristics. Their impacts can be assessed.
Available components
CPU
SSD
RAM
Motherboard
Assembly
Power supply
HDD
https://doc.api.boavizta.org/Explanations/components/component/ 1/2
2/2/24, 8:17 PM Components - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/components/component/ 2/2
2/2/24, 8:17 PM CPU - Boavizta API documentation
CPU
Characteristics
https://doc.api.boavizta.org/Explanations/components/cpu/ 1/7
2/2/24, 8:17 PM CPU - Boavizta API documentation
Complete
The following completion strategies can be used
If CPU name is given, model_range , tdp , die_size and family can be retrieved from a fuzzy
matching on our cpu name repository.
Warning
Note that the cpu name repository is not complete and the completion can return a different cpu
than the one given by the user. You can set a threshold for the fuzzy matching in the config file to
control the behavior of the fuzzy matching.
Otherwise, if family is given, die_size can be retrieved from a fuzzy matching on our cpu
repository.
If several cpu matches the given family , we use the core_units attributes : * If core_units
matches one to many cpu, the average value is given and min and max value are used as min
and max fields. * If core_units does not match any cpu, we infer the die_size with a rule of
three or a linear regression (when multiple cpus are available). * If core_units is not provided,
the average value is given and min and max value are used as min and max fields.
https://doc.api.boavizta.org/Explanations/components/cpu/ 2/7
2/2/24, 8:17 PM CPU - Boavizta API documentation
Embedded impacts
Impacts criteria
gwppb no
gwppf no
gwpplu no
ir no
lu no
odp no
pm no
pocp no
wu no
mips no
adpe no
adpf no
ap no
ctue no
https://doc.api.boavizta.org/Explanations/components/cpu/ 3/7
2/2/24, 8:17 PM CPU - Boavizta API documentation
ctuh_c no
ctuh_nc no
epf no
epm no
ept no
Impact factors
criteria criteria
CPU embedded = (CPU core_units ∗ CPU die_size_per_core + 0.491) ∗ CPU embedded_die + CP
with:
gwp
CPU
embedded_die
kgCO2eq/cm2 1.97
CPU
adp
kgSbeq/cm2 5.80E-07
embedded_die
pe
CPU
embedded_die
MJ/cm2 26.50
gwp
CPU
embedded_base
kgCO2eq 9.14
CPU
adp
embedded_base
kgSbeq 2.04E-02
MJ 156.00
pe
CPU
embedded_base
Info
If there are more than 1 CPU we multiply CPU embedded by the number of CPU given in units .
criteria
https://doc.api.boavizta.org/Explanations/components/cpu/ 4/7
2/2/24, 8:17 PM CPU - Boavizta API documentation
Usage impacts
Both power consumption and consumption profile are implemented.
Warning
We apply a log regression to fit data points (workload, power) starting from a default
consumption profile that can be found using the CPU model_range . This process can (in some
cases) yield very low or negative power values due to wrong input data or model initialization.
That is why there is a minimum power consumption limit set to 1W for any input workload.
If model_range is given or is completed from the cpu_name , we use the averaged parameter
for the specific model range.
manufacturer model_range a b c d
https://doc.api.boavizta.org/Explanations/components/cpu/ 5/7
2/2/24, 8:17 PM CPU - Boavizta API documentation
150
100
50
0 20 40 60 80 100
workload (%)
200
150
100
50
0 20 40 60 80 100
workload (%)
https://doc.api.boavizta.org/Explanations/components/cpu/ 6/7
2/2/24, 8:17 PM CPU - Boavizta API documentation
If the TDP is given we use the average power consumption per unit of TDP (given by TEADS)
multiplied by the given TDP as power measurement and compute a model adaptation as
describe above.
https://doc.api.boavizta.org/Explanations/components/cpu/ 7/7
2/2/24, 8:17 PM RAM - Boavizta API documentation
RAM
Characteristics
Complete
The following variables can be completed
density
if process or/and manufacturer are given, density can be retrieved from a fuzzy matching
on our ram repository. If several ram matches the given process or/and manufacturer the
https://doc.api.boavizta.org/Explanations/components/ram/ 1/4
2/2/24, 8:17 PM RAM - Boavizta API documentation
average value is given and min and max value are used as min and max fields.
Embedded impacts
Impacts criteria
gwppb no
gwppf no
gwpplu no
ir no
lu no
odp no
pm no
pocp no
wu no
mips no
adpe no
adpf no
ap no
https://doc.api.boavizta.org/Explanations/components/ram/ 2/4
2/2/24, 8:17 PM RAM - Boavizta API documentation
ctue no
ctuh_c no
ctuh_nc no
epf no
epm no
ept no
Impact factors
with:
kgCO2eq/cm2 2.20
gwp
RAM
embedded_die
RAM
adp
kgSbeq/cm2 6.30E-05
embedded_die
MJ/cm2 27.30
pe
RAM
embedded_die
gwp
RAM
embedded_base
kgCO2eq 5.22
RAM
adp
kgSbeq 1.69E-03
embedded_base
pe
RAM
embedded_base
MJ 74.00
https://doc.api.boavizta.org/Explanations/components/ram/ 3/4
2/2/24, 8:17 PM RAM - Boavizta API documentation
Info
Usage impact
Both power consumption and consumption profile are implemented.
Consumption profile
The RAM consumption profile is of the form : consumption_profile(workload) = a *
capacity
As a first approximation, we use a uniform consumption profile since the stress test data used
show a rather uniform consumption. Consequently, the workload won't be used.
New stress test data specifically on RAM calls should be conducted to specify this
consumption profile.
To determine a we averaged the electrical consumption of RAM per GB. With the process we
came up with a=0.284
https://doc.api.boavizta.org/Explanations/components/ram/ 4/4
2/2/24, 8:17 PM SSD - Boavizta API documentation
SSD
Characteristics
Embedded impacts
Impacts criteria
https://doc.api.boavizta.org/Explanations/components/ssd/ 1/4
2/2/24, 8:17 PM SSD - Boavizta API documentation
gwppb no
gwppf no
gwpplu no
ir no
lu no
odp no
pm no
pocp no
wu no
mips no
adpe no
adpf no
ap no
ctue no
ctuh_c no
ctuh_nc no
epf no
https://doc.api.boavizta.org/Explanations/components/ssd/ 2/4
2/2/24, 8:17 PM SSD - Boavizta API documentation
epm no
ept no
Impact factors
density
if manufacturer is given, density can be retrieved from a fuzzy matching on our ssd
repository. If several ssd matches the given manufacturer the average value is given and min
and max value are used as min and max fields.
Manufacture impact
For one SSD the embedded impact is:
with:
gwp
SSD
embedded_die
kgCO2eq/cm2 2.20
SSD
adp
kgSbeq/cm2 6.30E-05
embedded_die
pe
SSD
embedded_die
MJ/cm2 27.30
kgCO2eq 6.34
gwp
SSD
embedded_base
SSD
adp
kgSbeq 5.63E-04
embedded_base
MJ 76.90
pe
SSD
embedded_base
https://doc.api.boavizta.org/Explanations/components/ssd/ 3/4
2/2/24, 8:17 PM SSD - Boavizta API documentation
Info
Usage impact
Only power consumption is implemented.
https://doc.api.boavizta.org/Explanations/components/ssd/ 4/4
2/2/24, 8:17 PM HDD - Boavizta API documentation
HDD
Characteristics
Embedded impacts
Impacts criteria
gwppb no
gwppf no
gwpplu no
ir no
https://doc.api.boavizta.org/Explanations/components/hdd/ 1/3
2/2/24, 8:17 PM HDD - Boavizta API documentation
lu no
odp no
pm no
pocp no
wu no
mips no
adpe no
adpf no
ap no
ctue no
ctuh_c no
ctuh_nc no
epf no
epm no
ept no
Impact factors
kgCO2eq 31.10
gwp
HDD
embedded
https://doc.api.boavizta.org/Explanations/components/hdd/ 2/3
2/2/24, 8:17 PM HDD - Boavizta API documentation
HDD
adp
kgSbeq 2.50E-04
embedded
pe
HDD
embedded
MJ 276.00
Info
Usage impact
Only power consumption is implemented.
https://doc.api.boavizta.org/Explanations/components/hdd/ 3/3
2/2/24, 8:17 PM Motherboard - Boavizta API documentation
Motherboard
Characteristics
Embedded impacts
Impacts criteria
gwppb no
gwppf no
gwpplu no
ir no
lu no
odp no
pm no
https://doc.api.boavizta.org/Explanations/components/motherboard/ 1/3
2/2/24, 8:17 PM Motherboard - Boavizta API documentation
pocp no
wu no
mips no
adpe no
adpf no
ap no
ctue no
ctuh_c no
ctuh_nc no
epf no
epm no
ept no
Impact factors
gwp
motherboard
embedded
kgCO2eq 66.10
motherboard
adp
kgSbeq 3.69E-03
embedded
pe
motherboard
embedded
MJ 836.00
https://doc.api.boavizta.org/Explanations/components/motherboard/ 2/3
2/2/24, 8:17 PM Motherboard - Boavizta API documentation
Usage impact
Only power consumption is implemented.
https://doc.api.boavizta.org/Explanations/components/motherboard/ 3/3
2/2/24, 8:17 PM Power supply - Boavizta API documentation
Power supply
Characteristics
Embedded impacts
Impacts criteria
gwppb no
gwppf no
gwpplu no
ir no
https://doc.api.boavizta.org/Explanations/components/power_supply/ 1/3
2/2/24, 8:17 PM Power supply - Boavizta API documentation
lu no
odp no
pm no
pocp no
wu no
mips no
adpe no
adpf no
ap no
ctue no
ctuh_c no
ctuh_nc no
epf no
epm no
ept no
Impact factors
criteria criteria
power_supply embedded = power_supply unit_weight ∗ power_supply embedded_weight
with :
https://doc.api.boavizta.org/Explanations/components/power_supply/ 2/3
2/2/24, 8:17 PM Power supply - Boavizta API documentation
kgCO2eq/kg 24.30
gwp
power_supply
embedded_weight
power_supply
adp
embedded_weight
kgSbeq/kg 8.30E-03
pe
power_supply
embedded_weight
MJ/kg 352.00
Info
If there are more than 1 power we multiply power_supply embedded by the number of power
criteria
Usage impact
Only power consumption is implemented. This shouldn't be used in most cases since the
electricity consume by a power supply is consume on behalf of other components.
https://doc.api.boavizta.org/Explanations/components/power_supply/ 3/3
2/2/24, 8:17 PM Assembly - Boavizta API documentation
Assembly
Characteristics
Embedded impacts
Impacts criteria
gwppb no
gwppf no
gwpplu no
ir no
lu no
odp no
pm no
pocp no
https://doc.api.boavizta.org/Explanations/components/assembly/ 1/2
2/2/24, 8:17 PM Assembly - Boavizta API documentation
wu no
mips no
adpe no
adpf no
ap no
ctue no
ctuh_c no
ctuh_nc no
epf no
epm no
ept no
Impact factors
gwp
assembly
embedded
kgCO2eq 6.68
assembly
adp
kgSbeq 1.41E-06
embedded
MJ 68.60
pe
assembly
embedded
https://doc.api.boavizta.org/Explanations/components/assembly/ 2/2
2/2/24, 8:17 PM Case - Boavizta API documentation
Case or Enclosure
Characteristics
Embedded impacts
Impacts criteria
gwppb no
gwppf no
gwpplu no
ir no
lu no
https://doc.api.boavizta.org/Explanations/components/case/ 1/3
2/2/24, 8:17 PM Case - Boavizta API documentation
odp no
pm no
pocp no
wu no
mips no
adpe no
adpf no
ap no
ctue no
ctuh_c no
ctuh_nc no
epf no
epm no
ept no
Impact factors
criteria criteria
enclosure embedded = rack embedded
https://doc.api.boavizta.org/Explanations/components/case/ 2/3
2/2/24, 8:17 PM Case - Boavizta API documentation
criteria
blade_enclosure embedded
criteria criteria
enclosure embedded = blade embedded +
16
With :
gwp
rack
embedded
kgCO2eq 150
rack
adp
kgSbeq 2.02E-02
embedded
pe
rack
embedded
MJ 2 200.00
gwp
blade
embedded
kgCO2eq 30.90
blade
adp
embedded
kgSbeq 6.72E-04
MJ 435.00
pe
blade
embedded
gwp
blade_enclosure
embedded
kgCO2eq 880.00
blade_enclosure
adp
kgSbeq 4.32E-01
embedded
MJ 12 700.00
pe
blade_enclosure
embedded
Usage impacts
Only power consumption is implemented. In most cases, enclosure doesn't consume
electricity.
https://doc.api.boavizta.org/Explanations/components/case/ 3/3
2/2/24, 8:17 PM Functional block (IoT) - Boavizta API documentation
Functional block
Warning
Connected object, not including associated digital services (use of network, datacenter, virtual
machines or other terminals not included)
Warning
Characteristics
https://doc.api.boavizta.org/Explanations/components/functional_blocks/ 1/11
2/2/24, 8:17 PM Functional block (IoT) - Boavizta API documentation
Embedded impacts
We use the screening approach proposed by Pirson and Bol in : 'Assessing the embodied
carbon footprint of IoT edge devices with a bottom-up life-cycle approach', 2021; Thibault
Pirson et David Bol (Université catholique de Louvain, ICTEAM/ECS, Louvain-la-Neuve,
Belgique). Each functional block can be described by its hardware specification level
(hsl_level).
We invite you to read the paper for more details. This approach was initially designed for gwp. It
has been adapted to other impacts criteria by TIDE.
https://doc.api.boavizta.org/Explanations/components/functional_blocks/ 2/11
2/2/24, 8:17 PM Functional block (IoT) - Boavizta API documentation
Impacts criteria
adp no
gwppb
gwppf no
gwpplu no
https://doc.api.boavizta.org/Explanations/components/functional_blocks/ 3/11
2/2/24, 8:17 PM Functional block (IoT) - Boavizta API documentation
mips no
https://doc.api.boavizta.org/Explanations/components/functional_blocks/ 4/11
2/2/24, 8:17 PM Functional block (IoT) - Boavizta API documentation
Methodology
Embedded impacts of a functional block is the sum of the manufacturing and end of life
impacts which are described in the following tables :
Manufacture
https://doc.api.boavizta.org/Explanations/components/functional_blocks/ 5/11
2/2/24, 8:17 PM Functional block (IoT) - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/components/functional_blocks/ 6/11
2/2/24, 8:17 PM Functional block (IoT) - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/components/functional_blocks/ 7/11
2/2/24, 8:17 PM Functional block (IoT) - Boavizta API documentation
End of life
https://doc.api.boavizta.org/Explanations/components/functional_blocks/ 8/11
2/2/24, 8:17 PM Functional block (IoT) - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/components/functional_blocks/ 9/11
2/2/24, 8:17 PM Functional block (IoT) - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/components/functional_blocks/ 10/11
2/2/24, 8:17 PM Functional block (IoT) - Boavizta API documentation
Usage impact
Usage impacts are not implemented at functional level, but at the level of the iot device.
https://doc.api.boavizta.org/Explanations/components/functional_blocks/ 11/11
2/2/24, 8:17 PM Devices - Boavizta API documentation
Device
A device is characterized by zero to many component(s) and a usage. Its impacts can be
assessed.
Available devices
Server
https://doc.api.boavizta.org/Explanations/devices/devices/ 1/2
2/2/24, 8:17 PM Devices - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/devices/devices/ 2/2
2/2/24, 8:17 PM Server - Boavizta API documentation
Server
Characteristics
Server usage
In addition to the characteristics available for usage, you can use the following:
https://doc.api.boavizta.org/Explanations/devices/server/ 1/5
2/2/24, 8:17 PM Server - Boavizta API documentation
Complete
The following components are completed with the characteristics taken from the archetype :
CPU
RAM
SSD
HDD
power supplies
case
Embedded impacts
Impacts criteria
https://doc.api.boavizta.org/Explanations/devices/server/ 2/5
2/2/24, 8:17 PM Server - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/devices/server/ 3/5
2/2/24, 8:17 PM Server - Boavizta API documentation
Bottom-up approach
criteria criteria
server embedded = ∑ component embedded
{components}
criteria
= cpu_units ∗ CPU embedded
criteria
+ ram_units ∗ RAM embedded
criteria
+ ssd_units ∗ SSD embedded
criteria
+ hdd_units ∗ HDD
embedded
criteria
+ motherboard embedded
criteria
+ power_supply_units ∗ power_supply embedded
criteria
+ assembly embedded
criteria
+ enclosure embedded
lu No dimension -147.0
wu m3 eq. -3710.0
mips kg 10600.0
adpf MJ 51500.0
https://doc.api.boavizta.org/Explanations/devices/server/ 4/5
2/2/24, 8:17 PM Server - Boavizta API documentation
Usage impact
Both power consumption and consumption profile are implemented.
Consumption profile
A server consumption profile is of the form :
CP CPU (workload) and CP RAM (workload) depend on the technical characteristics of the
RAM and CPU. other_consumption_ratio is used to account for the electrical consumption
of the other components (other than RAM and CPU).
https://doc.api.boavizta.org/Explanations/devices/server/ 5/5
2/2/24, 8:17 PM End user devices - Boavizta API documentation
General description
Terminals & peripherals may have several types (typically pro and perso ).
Embedded impacts
pe no
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 1/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
Usage impact
We use the classic usage method. Default, minimal and maximal power consumptions are
given for each device.
Laptop
Laptop has two types : pro and perso .
Embedded impacts
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 2/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 3/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
Usage
Pro
Perso
Desktop
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 4/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
Embedded impacts
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 5/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
Usage
Pro
Perso
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 6/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
the given
duration.
Tablet
Embedded impacts
lu No dimension -1.34
wu m3 eq. -84.6
mips kg 279.0
adpf MJ 1000.0
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 7/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
Usage
Smartphone
Embedded impacts
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 8/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
lu No dimension -2.27
wu m3 eq. -107.0
mips kg 250.0
adpf MJ 1110.0
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 9/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
Usage
Television
television has two types : pro and perso .
Embedded impacts
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 10/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
Usage
Pro
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 11/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
is used during
the given
duration.
Perso
USB stick
Embedded impacts
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 12/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
lu No dimension -0.285
wu m3 eq. -2.02
mips kg 20.0
adpf MJ 82.0
Usage
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 13/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
consumption
per hour
External SSD
Embedded impacts
lu No dimension -1.05
wu m3 eq. -4.78
mips kg 264.0
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 14/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
adpf MJ 1430.0
Usage
External HDD
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 15/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
Embedded impacts
lu No dimension -3.09
wu m3 eq. -488.0
mips kg 96.5
adpf MJ 225.0
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 16/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
Usage
Monitor
Embedded impacts
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 17/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
lu No dimension -101.0
wu m3 eq. -640.0
mips kg 423.0
adpf MJ 1300.0
Usage
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 18/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
consumption
per hour
Box
Embedded impacts
lu No dimension -46.3
wu m3 eq. -422.0
mips kg 257.0
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 19/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
adpf MJ 525.0
Usage
Smartwatch
In progress...
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 20/21
2/2/24, 8:17 PM End user devices - Boavizta API documentation
Embedded impacts
Usage
https://doc.api.boavizta.org/Explanations/devices/terminals_%26_peripherals/ 21/21
2/2/24, 8:17 PM IoT device - Boavizta API documentation
IoT device
Warning
Connected object, not including associated digital services (use of network, datacenter, virtual
machines or other terminals not included)
Warning
Characteristics
Embedded impacts
Impacts criteria
adp no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/ 1/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
gwppb
gwppf no
gwpplu no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/ 2/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
mips no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/ 3/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
Methodology
IoT device impacts are the sum of the impacts of the functional blocks that compose them.
criteria criteria
iot_device embedded = ∑ f unctional_block embedded
{f unctional_blocks}
Usage impact
Only power consumption is implemented.
https://doc.api.boavizta.org/Explanations/devices/iot_devices/ 4/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
IoT device
Warning
Connected object, not including associated digital services (use of network, datacenter, virtual
machines or other terminals not included)
Warning
Characteristics
Embedded impacts
Impacts criteria
adp no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#characteristics 1/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
gwppb
gwppf no
gwpplu no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#characteristics 2/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
mips no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#characteristics 3/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
Methodology
IoT device impacts are the sum of the impacts of the functional blocks that compose them.
criteria criteria
iot_device embedded = ∑ f unctional_block embedded
{f unctional_blocks}
Usage impact
Only power consumption is implemented.
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#characteristics 4/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
IoT device
Warning
Connected object, not including associated digital services (use of network, datacenter, virtual
machines or other terminals not included)
Warning
Characteristics
Embedded impacts
Impacts criteria
adp no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#embedded-impacts 1/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
gwppb
gwppf no
gwpplu no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#embedded-impacts 2/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
mips no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#embedded-impacts 3/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
Methodology
IoT device impacts are the sum of the impacts of the functional blocks that compose them.
criteria criteria
iot_device embedded = ∑ f unctional_block embedded
{f unctional_blocks}
Usage impact
Only power consumption is implemented.
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#embedded-impacts 4/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
IoT device
Warning
Connected object, not including associated digital services (use of network, datacenter, virtual
machines or other terminals not included)
Warning
Characteristics
Embedded impacts
Impacts criteria
adp no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#impacts-criteria 1/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
gwppb
gwppf no
gwpplu no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#impacts-criteria 2/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
mips no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#impacts-criteria 3/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
Methodology
IoT device impacts are the sum of the impacts of the functional blocks that compose them.
criteria criteria
iot_device embedded = ∑ f unctional_block embedded
{f unctional_blocks}
Usage impact
Only power consumption is implemented.
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#impacts-criteria 4/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
IoT device
Warning
Connected object, not including associated digital services (use of network, datacenter, virtual
machines or other terminals not included)
Warning
Characteristics
Embedded impacts
Impacts criteria
adp no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#methodology 1/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
gwppb
gwppf no
gwpplu no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#methodology 2/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
mips no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#methodology 3/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
Methodology
IoT device impacts are the sum of the impacts of the functional blocks that compose them.
criteria criteria
iot_device embedded = ∑ f unctional_block embedded
{f unctional_blocks}
Usage impact
Only power consumption is implemented.
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#methodology 4/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
IoT device
Warning
Connected object, not including associated digital services (use of network, datacenter, virtual
machines or other terminals not included)
Warning
Characteristics
Embedded impacts
Impacts criteria
adp no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#usage-impact 1/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
gwppb
gwppf no
gwpplu no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#usage-impact 2/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
mips no
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#usage-impact 3/4
2/2/24, 8:17 PM IoT device - Boavizta API documentation
Methodology
IoT device impacts are the sum of the impacts of the functional blocks that compose them.
criteria criteria
iot_device embedded = ∑ f unctional_block embedded
{f unctional_blocks}
Usage impact
Only power consumption is implemented.
https://doc.api.boavizta.org/Explanations/devices/iot_devices/#usage-impact 4/4
2/2/24, 8:17 PM Services - Boavizta API documentation
Service
A service is characterized by one to many devices and a usage. Its impacts can be assessed.
Available sevices
Cloud instances
https://doc.api.boavizta.org/Explanations/services/services/ 1/2
2/2/24, 8:17 PM Services - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/services/services/ 2/2
2/2/24, 8:17 PM Cloud instances - Boavizta API documentation
Cloud instances
Characteristics
Cloud instance characteristics are pre-recorded as archetypes. The API will complete the
following characteristics depending on the cloud provider and cloud instance name given by
the user :
To add a new cloud instance to the API please refer to the cloud instance contribution guide.
In addition to the characteristics available for usage, you can use the following:
https://doc.api.boavizta.org/Explanations/services/cloud/ 1/4
2/2/24, 8:17 PM Cloud instances - Boavizta API documentation
RAM and
CPU
Embedded impacts
Impacts criteria
https://doc.api.boavizta.org/Explanations/services/cloud/ 2/4
2/2/24, 8:17 PM Cloud instances - Boavizta API documentation
Method
Embedded impacts of cloud instances are assessed based on the physical characteristics of
the bare metal server hosting the instance (also named platform in this documentation). The
API allocate a portion of the impacts of each component to the instance based on the ratio of
the instance characteristics to the server characteristics :
memory
For RAM : RAM instance
embedded embedded instance
= RAM server ×
RAM server
ssd_storage
For SSD storage : SSD embedded
instance
embedded
= SSD server ×
ssd_storage
instance
server
The API will sum the embedded impacts of each component to get the embedded impacts of
the instance :
https://doc.api.boavizta.org/Explanations/services/cloud/ 3/4
2/2/24, 8:17 PM Cloud instances - Boavizta API documentation
criteria criteria
server embedded = ∑ component embedded
{components}
criteria
= cpu_units ∗ CPU embedded
criteria
+ ram_units ∗ RAM embedded
criteria
+ ssd_units ∗ SSD embedded
criteria
+ hdd_units ∗ HDD embedded
criteria
+ motherboard embedded
criteria
+ power_supply_units ∗ power_supply embedded
criteria
+ assembly embedded
criteria
+ enclosure embedded
When component impacts are not available, the API will use the generic impacts of the server
and allocate the impacts to the instance based on the ratio of the instance vCPU to the server
total vCPU :
vCPU instance
Instance embedded = Server embedded ×
vCPU server
Usage impacts
Usage impact of cloud instance are measured only from its consumption profile.
Consumption profile
A cloud instance consumption profile is of the form :
vCPU instance
CP instance (workload) = (CP CPU_server (workload) ∗ + CP RAM_server (w
vCPU server
https://doc.api.boavizta.org/Explanations/services/cloud/ 4/4
2/2/24, 8:17 PM Useful resources - Boavizta API documentation
Useful resources
From Boavizta
From others
NegaOctet public database on Base Empreinte® ADEME (Requires a free account)
https://doc.api.boavizta.org/Explanations/useful_resources/ 1/2
2/2/24, 8:17 PM Useful resources - Boavizta API documentation
https://doc.api.boavizta.org/Explanations/useful_resources/ 2/2
2/2/24, 8:17 PM Routes - Boavizta API documentation
Routes
Impacts routes
The impact routes are used to retrieve the impacts of a given usage and configuration for a
given device or component. They represent the main feature of the API.
Query parameters
They all have the same query parameters. If no query parameters are provided, the default
values will be used.
GET
https://doc.api.boavizta.org/Reference/routes/ 1/12
2/2/24, 8:17 PM Routes - Boavizta API documentation
Requesting the route with a GET method will return the impacts with the values taken from the
archetype.
https://doc.api.boavizta.org/Reference/routes/ 2/12
2/2/24, 8:17 PM Routes - Boavizta API documentation
POST
Requesting the route with a POST method will return the impacts with the values taken from
the body. Missing values will be taken from the archetype or set by default. The format section
of the documentation details the format of the body for each route.
https://doc.api.boavizta.org/Reference/routes/ 3/12
2/2/24, 8:17 PM Routes - Boavizta API documentation
https://doc.api.boavizta.org/Reference/routes/ 4/12
2/2/24, 8:17 PM Routes - Boavizta API documentation
Utils routes
Utils routes are used to retrieve the list of possible values for some parameters, to retrieve the
list of archetypes for a given asset or to use some specific features.
https://doc.api.boavizta.org/Reference/routes/ 5/12
2/2/24, 8:17 PM Routes - Boavizta API documentation
given
instance
https://doc.api.boavizta.org/Reference/routes/ 6/12
2/2/24, 8:17 PM Routes - Boavizta API documentation
given
archetype
https://doc.api.boavizta.org/Reference/routes/ 7/12
2/2/24, 8:17 PM Routes - Boavizta API documentation
with their
route prefix
https://doc.api.boavizta.org/Reference/routes/ 8/12
2/2/24, 8:17 PM Routes - Boavizta API documentation
archetype fo
a given
external_ssd
name
https://doc.api.boavizta.org/Reference/routes/ 9/12
2/2/24, 8:17 PM Routes - Boavizta API documentation
https://doc.api.boavizta.org/Reference/routes/ 10/12
2/2/24, 8:17 PM Routes - Boavizta API documentation
a
power_supp
https://doc.api.boavizta.org/Reference/routes/ 11/12
2/2/24, 8:17 PM Routes - Boavizta API documentation
case type
https://doc.api.boavizta.org/Reference/routes/ 12/12
2/2/24, 8:17 PM Return format - Boavizta API documentation
Return format
Impact formats
The API returns the impacts in a JSON dictionary format. The impacts are returned in the
following format:
"impacts": {
"gwp": {
"other": {
"value": 64.7,
"significant_figures": 3,
"min": 12.3,
"max": 298
},
"use": {
"value": 1200,
"significant_figures": 2,
"min": 37,
"max": 5700
},
"unit": "kgCO2eq",
"description": "Total climate change"
},
"adp":{...},
...
}
Verbose
If verbose is set to true, the response will contain more information about the impacts. In the
case of a device, the impacts for each component will be returned.
"verbose": {
"ASSEMBLY-1": {...},
"CPU-1": {
"impacts": {
"gwp": {
"other": {
"value": 64.7,
"significant_figures": 3,
"min": 12.3,
"max": 298
},
"use": {
"value": 1200,
"significant_figures": 2,
https://doc.api.boavizta.org/Reference/format/return_format/ 1/3
2/2/24, 8:17 PM Return format - Boavizta API documentation
"min": 37,
"max": 5700
},
"unit": "kgCO2eq",
"description": "Total climate change"
},
"adp": {
"other": {
"value": 0.041,
"significant_figures": 2,
"min": 0.02,
"max": 0.082
},
"use": {
"value": 0.000205,
"significant_figures": 3,
"min": 0.0000211,
"max": 0.0017
},
"unit": "kgSbeq",
"description": "Use of minerals and fossil ressources"
},
"pe": {
"other": {
"value": 937,
"significant_figures": 3,
"min": 199,
"max": 4140
},
"use": {
"value": 41100,
"significant_figures": 4,
"min": 20.75,
"max": 2989000
},
"unit": "MJ",
"description": "Consumption of primary energy"
}
},
"die_size_per_core": {
"value": 0.47078947368421054,
"status": "COMPLETED",
"unit": "mm2",
"source": "Average for all families",
"min": 0.07,
"max": 1.02
},
...},
"RAM-1": {...},
"SSD-1": {...},
"POWER_SUPPLY-1": {...},
"CASE-1": {...},
"MOTHERBOARD-1": {...}
https://doc.api.boavizta.org/Reference/format/return_format/ 2/3
2/2/24, 8:17 PM Return format - Boavizta API documentation
Boattributes
In addition to the impacts, the response will contain the boattributes of the components. The
boattributes are the attributes that are used to calculate the impacts. They contain the value,
the error margin (in the form of min & max values), the unit, the status and the source of the
value.
"die_size_per_core": {
"value": 0.47078947368421054,
"status": "COMPLETED",
"unit": "mm2",
"source": "Average for all families",
"min": 0.07,
"max": 1.02
},
https://doc.api.boavizta.org/Reference/format/return_format/ 3/3
2/2/24, 8:17 PM Usage - Boavizta API documentation
Usage
Info
Usage impacts can be measured at device or component level from usage configuration. In the
GET router, the usage configuration is set with default values. In the POST router, the usage
configuration can be given by the user.
{
"usage": {...}
}
General
avg_power is given Watt. The usage location is given as a trigram (see available country code).
The duration is given in day, hours and years (units are cumulative) * elec_factors is given as a
dictionary. Only gwp is given in kgCO2eq/kWh* the other will be completed by the API.
{
"usage": {
"days_use_time": 1,
"hours_use_time": 1,
"years_use_time": 1,
"usage_location": "FRA",
"avg_power": 120,
"elec_factors": {
"gwp": 0.1
}
}
}
Modeled
When avg_power is unknown, it can be retrieved from time_workload . We refer to this as
modeled electrical consumption. The feature is available for the following routes :
POST /v1/server/
https://doc.api.boavizta.org/Reference/format/usage/ 1/4
2/2/24, 8:17 PM Usage - Boavizta API documentation
{
"usage": {
"time_workload": 50,
"other_consumption_ratio": 0.33
},
"configuration": {
"cpu": {
"name": "Intel Xeon Gold 6138f"
},
"ram": {
"capacity": 32
}
}
}
{
"usage": {
"time_workload": [
{
"time_percentage": 50,
"load_percentage": 0
},
{
"time_percentage": 25,
"load_percentage": 60
},
{
"time_percentage": 25,
"load_percentage": 100
}
]
},
"configuration": {
"cpu": {
"name": "Intel Xeon Gold 6138f"
},
"ram": {
"capacity": 32
}
}
}
time_workload is given as a percentage at RAM and CPU level. The electrical consumption will
be model for a load of 50% for CPU and 30% for the RAM
https://doc.api.boavizta.org/Reference/format/usage/ 2/4
2/2/24, 8:17 PM Usage - Boavizta API documentation
{
"usage": {
"other_consumption_ratio": 0.33
},
"configuration": {
"cpu": {
"name": "Intel Xeon Gold 6138f",
"usage":{
"time_workload": 50
}
},
"ram": {
"capacity": 32,
"usage":{
"time_workload": 30
}
}
}
}
POST /v1/component/ram
time_workload is given in percentage at RAM level. The electrical consumption will be model for
32GB of RAM at 50% of load
{
"capacity": 32,
"usage": {
"days_use_time": 1,
"usage_location": "FRA",
"time_workload": 50
}
}
POST /v1/component/cpu
time_workload is given in percentage at CPU level. The electrical consumption will be model for
a CPU with a TDP of 120 Watt at 50% of load
{
"tdp": "120",
"usage": {
"days_use_time": 1,
"usage_location": "FRA",
"time_workload": 50,
}
}
time_workload is given in percentage at CPU level. The electrical consumption will be model for
a Xeon Gold CPU at 50% of load
https://doc.api.boavizta.org/Reference/format/usage/ 3/4
2/2/24, 8:17 PM Usage - Boavizta API documentation
{
"name": "Intel Xeon Gold 6138f",
"usage": {
"days_use_time": 1,
"usage_location": "FRA",
"time_workload": 50,
}
}
time_workload is given in percentage at CPU level. The electrical consumption will be model for
a Xeon Gold CPU with a TDP of 220 Watt at 50% of load
{
"name": "Intel Xeon Gold 6138f",
"tdp": 220,
"usage": {
"days_use_time": 1,
"usage_location": "FRA",
"time_workload": 50,
}
}
https://doc.api.boavizta.org/Reference/format/usage/ 4/4
2/2/24, 8:17 PM Server - Boavizta API documentation
DeviceServer route
POST /v1/server/
A server input is composed of 3 different objects : model , configuration , usage
{
"model":{},
"configuration":{},
"usage":{}
}
{}
or
{
"model":{},
"configuration":{},
"usage":{}
}
Configuration
Minimal configuration
If any of those following components aren't sent, a default component will be added to the
configuration.
Complete input
The Dell R740 is a good example of a well-defined server configuration input. Specific needed
data are sent to apply the bottom-up methodology.
{
"configuration":
{
https://doc.api.boavizta.org/Reference/format/server_route/ 1/3
2/2/24, 8:17 PM Server - Boavizta API documentation
"cpu":
{
"units": 2,
"core_units": 24,
"die_size_per_core": 245
},
"ram":
[
{
"units": 12,
"capacity": 32,
"density": 1.79
}
],
"disk":
[
{
"units": 1,
"type": "ssd",
"capacity": 400,
"density": 50.6
}
],
"power_supply":
{
"units": 2,
"unit_weight": 2.99
}
}
}
Incomplete input
Some required attributes are unknown, but some component attributes are given so specific
die size can be retrieved by the API
{
"configuration":
{
"cpu":
{
"units": 2,
"core_units": 24,
"family": "Skylake"
},
"ram":
[
{
"units": 12,
"capacity": 32,
"manufacturer": "Samsung"
}
],
"disk":
[
{
https://doc.api.boavizta.org/Reference/format/server_route/ 2/3
2/2/24, 8:17 PM Server - Boavizta API documentation
"units": 1,
"type": "ssd",
"capacity": 400,
"manufacturer": "Samsung"
}
],
"power_supply":
{
"units": 2
}
}
}
Usage
See usage
GET /v1/server
See archetypes documentation
https://doc.api.boavizta.org/Reference/format/server_route/ 3/3
2/2/24, 8:18 PM Cloud - Boavizta API documentation
Cloud
Warning
Warning
Note that the verbose object will return the components of the entire server, not the instance. To
get the impact or the attribute of the component for the specific instance, divide the impact of
each component by the number of instances hosted on the server.
GET /v1/cloud/
The GET router will return the default impacts of a cloud instance. The query is composed of
minimum two query parameters : a provider and an instance_type .
/v1/cloud/?provider=aws&instance_type=r6g.medium
usage will be set with default values, model and configuration are retrieve from the pre-
register instance_type .
POST /v1/cloud/
The POST router lets you set the usage variables. You need to set a provider and an
instance_type . usage is optional.
{
"provider": "aws",
"instance_type": "r6g.medium",
"usage": {}
}
Usage
https://doc.api.boavizta.org/Reference/format/cloud_route/ 1/2
2/2/24, 8:18 PM Cloud - Boavizta API documentation
usage for cloud instances are particular. Most of the needed attributes are pre-registered in
the instance_type . You should set :
usage_location
time_workload
Duration :
hours_use_time
days_use_time
years_use_time
Examples
{
"provider": "aws",
"instance_type": "r6g.medium",
"usage":{
"hours_use_time": 2,
"usage_location": "FRA",
"time_workload": [
{
"time_percentage": 50,
"load_percentage": 0
},
{
"time_percentage": 25,
"load_percentage": 60
},
{
"time_percentage": 25,
"load_percentage": 100
}
]
}
}
{
"provider": "aws",
"instance_type": "r6g.medium",
"usage": {
"hours_use_time": 2,
"usage_location": "FRA",
"time_workload": 34
}
}
https://doc.api.boavizta.org/Reference/format/cloud_route/ 2/2
2/2/24, 8:18 PM Components - Boavizta API documentation
Component routes
Available components :
cpu
ram
power-supply
ssd
hdd
case
motherboard
assembly
POST /v1/component/<component_name>
You can send an empty component. In this case, only archetype values will be used
{}
You can set a units. If so, all the impacts will be multiplied by the number of units.
{
"units": 2
}
POST /v1/component/cpu
{
"core_units": 24,
"die_size_per_core": 245
}
Incomplete CPU, die-size will be retrieved with the cpu family and core_units
{
"core_units": 24,
https://doc.api.boavizta.org/Reference/format/component_route/ 1/3
2/2/24, 8:18 PM Components - Boavizta API documentation
"family": "Skylake",
}
Incomplete CPU, family will be retrieved from cpu name, die-size will be retrieved with the cpu
family and core_units
{
"core_units": 24,
"name": "Intel Xeon Gold 6138f",
}
POST /v1/component/ssd
{
"capacity": 400,
"density": 50.6
}
{
"capacity": 500,
"manufacturer": "Samsung",
}
POST /v1/component/ram
{
"capacity": 32,
"density": 1.79
}
{
"capacity": 32,
"manufacturer": "Samsung",
"process": 30.0
}
Incomplete RAM, die-size will be retrieved with the manufacturer name and the process
POST /v1/component/hdd
https://doc.api.boavizta.org/Reference/format/component_route/ 2/3
2/2/24, 8:18 PM Components - Boavizta API documentation
{}
POST /v1/component/motherboard
{}
POST /v1/component/power_supply
{
"unit_weight": 10
}
POST /v1/component/case
{
"case_type": "rack"
}
{
"case_type": "blade"
}
{}
Usage
See usage
https://doc.api.boavizta.org/Reference/format/component_route/ 3/3
2/2/24, 8:18 PM End user devices - Boavizta API documentation
Available device :
laptop
desktop
monitor
smartphone
tablet
television
box
usb_stick
external_ssd
external_hdd
POST /v1/user_terminal/<name>
You can send an empty device. In this case, archetype's values will be used
{}
For some devices, you can set a type. See end user device for more information about types.
{
"type": 2
}
Usage
{
"usage":{...}
}
See usage
https://doc.api.boavizta.org/Reference/format/end_user_devices_route/ 1/2
2/2/24, 8:18 PM End user devices - Boavizta API documentation
https://doc.api.boavizta.org/Reference/format/end_user_devices_route/ 2/2
2/2/24, 8:18 PM Deploy - Boavizta API documentation
Deploy
with docker
with docker-compose
version: "3.9"
services:
boaviztapi:
image: ghcr.io/boavizta/boaviztapi:latest
environment:
- SPECIAL_MESSAGE="<p>my welcome message in HTML format</p>"
ports:
- "5000:5000"
boaviztapi-doc:
image: ghcr.io/boavizta/boaviztapi-doc:latest
environment:
- API_URL=http://boaviztapi_url.com
ports:
- "8080:8080"
with pip
from source
Prerequisite
https://doc.api.boavizta.org/Reference/deploy/ 1/2
2/2/24, 8:18 PM Deploy - Boavizta API documentation
Setup pipenv
$ pipenv install -d
$ pipenv shell
Development server uses uvicorn and fastapi, you can launch development server with the
uvicorn CLI.
CORS
By default, all origin are allowed. If you need to limit them set env value ALLOWED_ORIGINS with
the following format : ALLOWED_ORIGINS = '["url1", "url2", ...]'
Example :
ALLOWED_ORIGINS='["https://datavizta.boavizta.org","https://boavizta.org"]'
Special message
You can customize the home page with a special message by setting the env value
`SPECIAL_MESSAGE in HTML format.
SDK
python-sdk : https://pypi.org/project/boaviztapi-sdk/
rust-sdk : https://github.com/Boavizta/boaviztapi-sdk-rust
https://doc.api.boavizta.org/Reference/deploy/ 2/2
2/2/24, 8:18 PM Configuration - Boavizta API documentation
The config file located at data/config.json is used to set default values for the following
parameters.
Default location
The default location will be used if the user does not specify a usage_location in the request.
The parameter is used to complete the impact of electricity.
default_location: "EEE"
Default archetype
The default archetype will be used if the user does not specify an archetype in the request.
Note that it must match an existing archetype ID in the archetype files.
default_cpu: "DEFAULT"
default_server: "compute_medium"
Default_criteria
The default criteria will be used if the user does not specify the criteria in the request.
min_sig_fig: 1
<<<<<<< HEAD If set to 1, the results will be rounded at least to 1 significant figures.
https://doc.api.boavizta.org/Reference/config/ 1/2
2/2/24, 8:18 PM Configuration - Boavizta API documentation
max_sig_fig: 5
Uncertainty percentage
Uncertainty percentage is used to adapt the intensity of the rounding. The lower the uncertainty
percentage, the lower aggressive the rounding.
uncertainty: 10
cpu_name_fuzzymatch_threshold: 62
>>>>>>> 0416dde5deaffdb14496936b91c5c66b64570f9d
https://doc.api.boavizta.org/Reference/config/ 2/2
2/2/24, 8:18 PM Release notes - Boavizta API documentation
Release notes
v1.2.1
What's Changed
Adding new cloud instances is now easier. Simply define the resources they reserve and
identify the server archetype on which the instance will be hosted. Refer to the contribution
documentation for more information.
Internal changes
Externalizing impacts computation outside the asset's model by creating a service for this
purpose (boaviztapi/service/impacts_computation.py)
Improve impact model (boaviztapi/model/impact.py). All the assets keep the impacts as
an attribute once they have been calculated. Performance is significantly improved in the
event of a verbose call.
Bug fixes
Power consumption was modelled for one component unit. Consumption was only
multiplied by the number of components when calculating impacts at device level. The
consumption of the component now reflects the consumption of all the units.
https://github.com/Boavizta/boaviztapi/issues/256
https://github.com/Boavizta/boaviztapi/issues/257
https://github.com/Boavizta/boaviztapi/pull/243
https://github.com/Boavizta/boaviztapi/pull/248
Breaking changes
Previously, the verbose returned the impacts of each platform's components in their
entirety. Now, only the impacts associated with the instance are returned for each
https://doc.api.boavizta.org/release_notes/ 1/10
2/2/24, 8:18 PM Release notes - Boavizta API documentation
Contributors
New Contributors
Other contributors
v1.1.0
What's Changed
Add independent Dockerfile by @JacobValdemar in
https://github.com/Boavizta/boaviztapi/pull/239
Contributors
v1.0.0
New features
Add warnings
https://doc.api.boavizta.org/release_notes/ 2/10
2/2/24, 8:18 PM Release notes - Boavizta API documentation
Adding utils routers (list available data for string fields, archetypes routers, etc.)
Users can now add a special message to the home page of the API
Internal changes
Breaking changes
Cloud routers
BEFORE
NOW
We have only one route for all cloud providers (e.g. /v1/cloud/instance )
Each route has a parameter called provider (in the url for GET requests, in the body for
POST requests).
BEFORE
{
"usage": {
"hours_use_time": 2,
https://doc.api.boavizta.org/release_notes/ 3/10
2/2/24, 8:18 PM Release notes - Boavizta API documentation
}
}
NOW
We compute usage impacts over the duration and allocate embedded impacts on the
duration over the lifetime of the device.
We introduce the notion of use_time_ratio which is the proportion of time the device is
used during the given duration. When a device is always used, the usage ratio is 1. When a
device is never used, the usage ratio is 0.
{
"usage": {
"use_time_ratio": 0.5,
}
}
Impacts format
BEFORE
"gwp": {
"manufacture": 1900,
"use": 260,
"unit": "kgCO2eq"
},
or
"manufacture_impacts": {
"gwp": {
"value": 23.8,
"unit": "kgCO2eq"
},
"pe": {
"value": 353,
"unit": "MJ"
},
"adp": {
"value": 0.02,
"unit": "kgSbeq"
}
}
}
NOW
https://doc.api.boavizta.org/release_notes/ 4/10
2/2/24, 8:18 PM Release notes - Boavizta API documentation
"impacts": {
"gwp": {
"embedded": {
"value": 6.68,
"min": 6.68,
"max": 6.68,
"warnings": [
"End of life is not included in the calculation"
]
},
"use": "not implemented",
"unit": "kgCO2eq",
"description": "Total climate change"
},
Verbose format
BEFORE
"USAGE": {
...
"usage_impacts": {
...
}
"avg_power": {
"value": 94.62364134445255,
"unit": "W",
"status": "COMPLETED",
"source": null
},
...
}
NOW
For each component, all attributes are now at the same level in the dictionary.
Usage attributes are now at the same level as the other attributes
"CPU-1": {
"impacts": {
"gwp": {
"embedded": {
"value": 64.7,
"significant_figures": 3,
"min": 24.6,
"max": 149,
https://doc.api.boavizta.org/release_notes/ 5/10
2/2/24, 8:18 PM Release notes - Boavizta API documentation
"warnings": [
"End of life is not included in the calculation"
]
},
"use": {
"value": 160,
"significant_figures": 2,
"min": 160,
"max": 160
},
"unit": "kgCO2eq",
"description": "Total climate change"
}
},
"die_size_per_core": {
"value": 0.47078947368421054,
"status": "COMPLETED",
"unit": "mm2",
"source": "Average for Skylake",
"min": 0.07,
"max": 1.02
}
...
}
Contributors
GPU impacts
Add multiple impact factors for depending on the engraving process size
v0.2.2
What's Changed
https://doc.api.boavizta.org/release_notes/ 6/10
2/2/24, 8:18 PM Release notes - Boavizta API documentation
New Contributors
v0.2
Goal
v0.2 contains significant changes to the code to facilitate the addition of new features. The
main additional functionality is the ability to model the power consumption of certain
components, servers and cloud instances from their configuration.
Improvements
Model electrical consumption from technical characteristics and usage context for CPU,
RAM, Server and Cloud instance
Adding source, units and status for each attributes in verbose mode
Documentation improvements
Screen impacts
https://doc.api.boavizta.org/release_notes/ 7/10
2/2/24, 8:18 PM Release notes - Boavizta API documentation
Workplace impacts
IoT impacts
GPU impacts
v0.1.2
Bug
missing W to kW conversion
hour_electical_consumption should be given in Watt. When avg_power was directly given (in
watt) the value was used in Wh. The electrical impacts factor requires kWh.
Correction
PR
https://github.com/Boavizta/boaviztapi/pull/93
V0.1.1
Goal
The V0.1.1 adds new CPU data and electrical impact factors.
Improvements
https://doc.api.boavizta.org/release_notes/ 8/10
2/2/24, 8:18 PM Release notes - Boavizta API documentation
Screen impacts
Workplace impacts
IoT impacts
v0.1
Goal
The V0.1.0 introduces the notions of archetypes, verbose and units. An implementation of AWS
instances impacts have been implemented. Impact of usage have also been developed.
Functionalities
Verbose option
Bug fix
Work on documentation
Screen impacts
Workplace impacts
IoT impacts
V0
Goal
The V0 is the MVP of Boavizta tools api. It aims at giving access to the server bottom-up
methodology measuring the scope 3 of servers explain in this article :
https://doc.api.boavizta.org/release_notes/ 9/10
2/2/24, 8:18 PM Release notes - Boavizta API documentation
https://boavizta.cmakers.io/blog/numerique-et-environnement-comment-evaluer-l-empreinte-
de-la-fabrication-d-un-serveur-au-dela-des-emissions-de-gaz-a-effet-de-se?
token=2112aecb183b1b5d27e137abc61e0f0d39fabf99
Project setup
Functionalities
Retrieve the manufacture impact of servers from its characteristics with the bottom-up
methodology
Complete the server or component characteristic if incomplete data are sent by the user
Bug fix
https://doc.api.boavizta.org/release_notes/ 10/10
2/2/24, 8:18 PM Add a cloud provider - Boavizta API documentation
This guide will help you add a new cloud provider into BoaviztAPI.
To add new cloud instances please refer to this documentation: Add a cloud instance
https://doc.api.boavizta.org/contributing/cloud_provider/ 1/2
2/2/24, 8:18 PM Add a cloud provider - Boavizta API documentation
https://doc.api.boavizta.org/contributing/cloud_provider/ 2/2
2/2/24, 8:18 PM Add a cloud instance - Boavizta API documentation
This guide will help you add new cloud instances for a cloud provider that is already supported
by BoaviztAPI.
Platform
The platform is the bare metal server that host the instance. Since we compute the impacts of
the instance as a portion of the bare metal server, we need to know its architecture.
https://doc.api.boavizta.org/contributing/cloud_instance/ 1/2
2/2/24, 8:18 PM Add a cloud instance - Boavizta API documentation
The platform field must match one of the id of the available server archetypes. You can
either use :
a generic server among the server archetypes that are already supported by BoaviztAPI.
You can find the list of supported platforms in the servers.csv file located at
boaviztapi/data/archetypes/servers.csv or by requesting the list of server archetypes
using the API endpoint /v1/server/archetypes .
add a new platform to the platforms.csv file. See Add a new server archetype.
Note
It is often impossible to find the exact architecture of the bare metal server. When so use a
generic server architecture that matches the instance purpose (storage, compute, memory etc.)
Value ranges
Some values can be inputted using ranges like the following: default;min;max . For example, if
the value is 2;1;8 , it means that the default value is 2 and the range is from 1 to 8 .
https://doc.api.boavizta.org/contributing/cloud_instance/ 2/2
2/2/24, 8:18 PM Add a server - Boavizta API documentation
This guide will help you add a new server to the server archetypes. To learn more about server
archetypes, please refer to the archetypes documentation.
manufacturer Server
manufacturer
1
CPU.name CPU name
https://doc.api.boavizta.org/contributing/server/ 1/3
2/2/24, 8:18 PM Add a server - Boavizta API documentation
https://doc.api.boavizta.org/contributing/server/ 2/3
2/2/24, 8:18 PM Add a server - Boavizta API documentation
WARNINGS Warnings
Value ranges
Some values can be inputted using ranges like the following: default;min;max . For example, if
the value is 4;2;8 , it means that the default value is 4 and the range is from 2 to 8 .
1. If CPU.name is set and the CPU is available in cpu_specs.csv, you do not need to fill in the other
CPU attributes. The API will complete them based on the CPU.name.
https://doc.api.boavizta.org/contributing/server/ 3/3
2/2/24, 8:18 PM Add a CPU - Boavizta API documentation
This guide will help you add a new CPU into BoaviztAPI.
release_date 2019-07-07
https://doc.api.boavizta.org/contributing/cpu/ 1/3
2/2/24, 8:18 PM Add a CPU - Boavizta API documentation
https://doc.api.boavizta.org/contributing/cpu/ 2/3
2/2/24, 8:18 PM Add a CPU - Boavizta API documentation
information
See on GitHub
1. Either die_size or die_size + io_die_size when the chip has an I/O die area. Not all CPU have an I/O
die area.
https://doc.api.boavizta.org/contributing/cpu/ 3/3