Autopilot (preview 3) ADD-ONADD-ON
This feature is currently in preview. That means that we believe the feature is good enough to start using, but:
- There might still be bugs or edge cases we haven't covered.
- The documentation and error messages might be less detailed.
- We might need to make further changes in the API surface.
We need the ability to iterate quickly on preview versions, so we offer less guarantees of stability. When we make changes to the preview version, we will release a new version, and you must migrate to this new version within three months. Read more about API versioning at Climatiq here.For this reason, preview endpoints are not available without explicitly opting in. If you would like to opt-in to this preview feature, please contact us.
For an overview of how to integrate v1-preview3
into your application, we have added an
Autopilot integration guide to guide you through the
process.
To see the changes since v1-preview2
, see our changelog.
Autopilot is an AI-powered calculation endpoint designed to automate spend- and activity-based emission estimates. It uses a proprietary natural language processing (NLP) model paired with Climatiq’s scientific expertise to streamline complex emission calculations, making carbon insights accessible to non-experts.
Autopilot significantly reduces the time and manual effort spent identifying the appropriate emission factors and mapping activity data. Capable of ingesting any taxonomy and unstructured data, this feature matches raw text content and contextual information to find the correct emission factors and delivers accurate and compliant emission estimates.
Autopilot's matching algorithm consistently refines its precision. This is achieved through active feedback and continuous improvement of the underlying NLP model.
Domains
Calls to autopilot requires that the user specifies a domain. Domains represent a collection of data and model, defined for specific use cases, and restricts the sources used for matching emission factors. You can use the source
and exclude_source
parameters in the request body to define which sources to include or exclude, as long as they are part of the sources available for the chosen domain (see table below).
Value | Description | Datasets | Sources |
---|---|---|---|
general | General list of materials and services | Climatiq | Circular Ecology, GEMIS, DISER, GLEC, Climate TRACE, MfE, Greenview, OEKOBAUDAT, EPA, Market Economics Limited, WRAP, EXIOBASE, BEIS, CAEP, CBAM, ecoinvent |
manufacturing | List of materials and services relevant for the manufacturing industry aggregated from various sources | Climatiq | Circular Ecology, OEKOBAUDAT, BEIS, CBAM, EXIOBASE, EPA, GEMIS, Climate Trace, ecoinvent |
Suggest
POST Return a number of suggested emission factors. The Suggest endpoint finds emission factors that you can use to calculate emissions with via the Estimate endpoint. You can adjust the number of suggestions to return, or filter the results by source, year, region, unit, or lifecycle activity. Suggestions are ranked, with the most relevant result presented first.
https://preview.api.climatiq.io/autopilot/v1-preview3/suggest
Request
This endpoint accepts the following parameters:
- suggestobject
Details of the emission-generating activity.
suggest[x].textrequired stringThe free-form input text, such as an activity name, service or material name.
Default value: [Weight, Money, Volume, Number]Default Value[Weight, Money, Volume, Number]suggest[x].yearintegerDefault value: Latest year availableThe year which the activity occurred. Climatiq will attempt to find an emission factor as close to this year as possible, but might not match the year entirely.
Default ValueLatest year availablesuggest[x].regionstringA region code describing the geographic region where the activity was performed. If this is not provided, Climatiq will pick from emission factors all over the world. If this is provided, Climatiq will only find emission factors matching the supplied region, unless
region_fallback
is set.suggest[x].region_fallbackbooleanDefault value:false
Set this to
true
if you're willing to accept a less specific geographical region than the one you've specified. Climatiq will then intelligently attempt to select a different region if it does not find any emission factors with the initial region.Default Valuefalse
suggest[x].sourcearray of stringsFilters emission factors by data source. Contains the sources you want to include in your search. You can use either the
source
orexclude_source
parameter, but not both simultaneously. Must be a source that is part of the specified domain.suggest[x].exclude_sourcearray of stringsFilters emission factors by data source. Contains the sources you want to exclude in your search. You can use either the
source
orexclude_source
parameter, but not both simultaneously. Must be a source that is part of the specified domain.suggest[x].source_lca_activityarray of stringsFilters emission factors by
source_lca_activity
. - max_suggestionsnumberDefault value: 10
The maximum number of suggestions to receive. Autopilot will return as many suitable suggestions as it can find, up to the max number requested, or at most 20 suggestions.
Default Value10
curl --request POST \ --url https://preview.api.climatiq.io/autopilot/v1-preview3/suggest \ --header "Authorization: Bearer $CLIMATIQ_API_KEY" \ --data '{ "suggest": { "domain": "general", "text": "Cement" }, "max_suggestions": 2}'
Response
The response includes a list of emission factors and details about its relevance:
- resultsarray
A list of emission factors for this emission-generating activity.
results[x].suggestion_idstringThe unique ID for this suggested activity. Receive an emission estimation using this ID with the Autopilot Estimate endpoint.
results[x].emission_factorobjectThe emission factor that was used for the calculation.
results[x].emission_factor[x].namestringEmission factor name.
results[x].emission_factor[x].categorystringEmission factor category.
results[x].emission_factor[x].sectorstringEmission factor sector.
results[x].emission_factor[x].sourcestringEmission factor publisher.
results[x].emission_factor[x].source_linkstringLink to emission factor publisher.
results[x].emission_factor[x].source_datasetstringThe dataset this emission factor belongs to.
results[x].emission_factor[x].yearnumberThe year in which the emission factor is considered most relevant, according to the source.
results[x].emission_factor[x].year_releasednumberThe year in which the emission factor was released by the source.
results[x].emission_factor[x].regionstringGeographic region to which the emission factor applies (UN/LOCODE).
results[x].emission_factor[x].region_namestringGeographic region to which the emission factor applies (in English).
results[x].emission_factor[x].descriptionstringEmission factor description.
results[x].emission_factor[x].unitstringThe unit in which the
factor
field is expressed.results[x].emission_factor[x].unit_typestringThe Unit types that this emission factor accepts.
results[x].emission_factor[x].source_lca_activitystringWhich LCA activity the emission factor corresponds to. Read more about life cycle assessments here.
results[x].emission_factor[x].data_quality_flagsarrayAny data quality flags that applies to this emission factor.
results[x].emission_factor[x].access_typestringAccess type of the emission factor. Can be either
public
orpremium
. Public emission factors are available to all, while premium emission factors require a separate license.results[x].suggestion_detailsobjectDetails about the suggested emission factor, including similarity score and confidence level.
results[x].suggestion_details[x].confidencestringConfidence level of the matching between the input and the emission factor. Possible values are:
high
,medium
andlow
.results[x].suggestion_details[x].similarity_scorefloatThe numeric similarity score between the input and the emission factor. The number is between 0 and 1, and a higher score indicates a better match.
{ "results": [ { "suggestion_id": "giytkntbha4weljxmjstqljugqydkllbmfrdsljqga2ggylemu4wmzdfme-g4ydkolgmi2gkndcmy2timzymm4wkzrtgaydambqgaydambqgayq", "emission_factor": { "sector": "Materials and Manufacturing", "category": "Building Materials", "name": "Cement", "unit_type": "Money", "unit": "kg/usd", "source": "EPA", "source_dataset": "Supply Chain Greenhouse Gas Emission Factors v1.3", "year": 2022, "year_released": 2024, "region": "US", "region_name": "United States of America (the)", "description": "Emission intensity of supply chain (with margins i.e. cradle to shelf) in US dollars spend on: cement manufacturing. This factor is representative of the described goods or services category as defined by the 2017 version of the North American Industry Classification System (NAICS). Refer to the source for the source-specific data quality assessment. Retrieved from Supply Chain Factors Dataset v1.3.", "source_link": "https://cfpub.epa.gov/si/si_public_record_Report.cfm?dirEntryId=349324&Lab=CESER", "source_lca_activity": "cradle_to_shelf", "data_quality_flags": [], "access_type": "public" }, "suggestion_details": { "similarity_score": 0.97, "confidence": "high" } }, { "suggestion_id": "gezdoyrymfsdoljzg43geljug5swillcmq3taljuhaztozrwgrqtkobsmi-g4ydkolgmi2gkndcmy2timzymm4wkzrtgaydambqgaydambqgayq", "emission_factor": { "sector": "Materials and Manufacturing", "category": "Building Materials", "name": "Cement mortar", "unit_type": "Volume", "unit": "kg/m3", "source": "OEKOBAUDAT", "source_dataset": "OEKOBAUDAT 2023-I", "year": 2018, "year_released": 2023, "region": "DE", "region_name": "Germany", "description": "Emission intensity of cement mortar. The lifecycle assessment for modules A1-A3 includes: the extraction and processing of raw materials (A1) their transportation to the manufacturer (A2) and the actual manufacturing of the product (A3). Retrieved from the Oekobaudat database v20.19.120.", "source_link": "https://www.oekobaudat.de/en/service/downloads.html", "source_lca_activity": "cradle_to_gate", "data_quality_flags": [], "access_type": "public" }, "suggestion_details": { "similarity_score": 0.94, "confidence": "high" } } ]}
Estimate
POST Calculate an emission estimation for an emission factor match. To calculate an emission estimation you will need to first find an emission factor using the Suggest endpoint. When you have selected an emission factor, you can request for a calculation using the following parameters.
https://preview.api.climatiq.io/autopilot/v1-preview3/suggest/estimate
Note that suggestion_id
s from previous versions of Autopilot cannot be used in v1-preview3.
Request
- suggestion_idrequired string
An ID from a Suggest endpoint result.
- parametersrequired Parameters object
curl --request POST \ --url https://preview.api.climatiq.io/autopilot/v1-preview3/suggest/estimate \ --header "Authorization: Bearer $CLIMATIQ_API_KEY" \ --data '{ "suggestion_id": "mqydemtghbrtillegaztsljugm2dsllbga2wcljsgfrtcobrmm3dqnbxge-ge3gcmzvgy3tmzbqgm2timbqmy4dimtegaydambqgaydambqgayq", "parameters": { "weight": 100, "weight_unit": "kg" }}'
Response
The response includes the CO2e estimate and details about the calculation.
- estimateEstimation
The estimation performed returning the total CO2e value, constituent gases and more.
- source_trailarray of Source Data Point
A list of Source Data Points that help explain and provide trust in the calculation. Click to view more details about Source Trail.
{ "estimate": { "co2e": 79.52, "co2e_unit": "kg", "co2e_calculation_method": "ar4", "co2e_calculation_origin": "source", "emission_factor": { "name": "Cement (CEM II 42.5)", "activity_id": "building_materials-type_cement_cem_ii_42.5", "id": "d022f8c4-d039-4349-a05a-21c181c68471", "access_type": "public", "source": "OEKOBAUDAT", "source_dataset": "OEKOBAUDAT 2023-I", "year": 2018, "region": "DE", "category": "Building Materials", "source_lca_activity": "cradle_to_gate", "data_quality_flags": [] }, "constituent_gases": { "co2e_total": 79.52, "co2e_other": null, "co2": null, "ch4": null, "n2o": null }, "activity_data": { "activity_value": 100, "activity_unit": "kg" }, "audit_trail": "enabled" }, "source_trail": [ { "data_category": "emission_factor", "name": "Cement (CEM II 42.5)", "source": "OEKOBAUDAT", "source_dataset": "OEKOBAUDAT 2023-I", "year": "2018", "region": "DE", "region_name": "Germany" } ]}
Emission Factor License
If you attempt to estimate with an emission factor with a premium
access type and you do not have access to this premium dataset, an estimation will not be performed. These datasets require a separate purchase license. Contact us to obtain a license for the dataset you wish to purchase.
One-shot Estimate
POST Calculate total estimated emissions produced for an autopilot matched activity, in
kgCO2e
. All requests are performed by sending a POST request to the following endpoint.
Estimations can be performed by using free-text input. It will automatically perform an emission calculation with the best match, using the emission factor with the top similarity score from the list of factors provided in the Suggest endpoint.
https://preview.api.climatiq.io/autopilot/v1-preview3/estimate
Request
Receive an estimation for the best emission factor match using the following parameters.
- textrequired string
The free-form input text, such as an activity name, service or material name.
- parametersrequired Parameters object
- yearintegerDefault value: Latest year available
The year which the activity occurred. Climatiq will attempt to find an emission factor as close to this year as possible, but might not match the year entirely.
Default ValueLatest year available - regionstring
A region code describing the geographic region where the activity was performed. If this is not provided, Climatiq will pick from emission factors all over the world. If this is provided, Climatiq will only find emission factors matching the supplied region, unless
region_fallback
is set. - region_fallbackbooleanDefault value:
false
Set this to
true
if you're willing to accept a less specific geographical region than the one you've specified. Climatiq will then intelligently attempt to select a different region if it does not find any emission factors with the initial region. Default isfalse
Default Valuefalse
- sourcearray of strings
Filters emission factors by data source. Contains the sources you want to include in your search. You can use either the
source
orexclude_source
parameter, but not both simultaneously. Must be a source that is part of the specified domain. - exclude_sourcearray of strings
Filters emission factors by data source. Contains the sources you want to exclude in your search. You can use either the
source
orexclude_source
parameter, but not both simultaneously. Must be a source that is part of the specified domain. - source_lca_activityarray of strings
Filters emission factors by
source_lca_activity
.
curl --request POST \ --url https://preview.api.climatiq.io/autopilot/v1-preview3/estimate \ --header "Authorization: Bearer $CLIMATIQ_API_KEY" \ --data '{ "domain": "general", "text": "Steel", "parameters": { "money": 100, "money_unit": "usd" }}'
Response
The response includes the CO2e estimate and details about the calculation.
- estimateEstimation
The estimation performed returning the total CO2e value, constituent gases and more.
- calculation_detailsobject
Details about the calculation, such as confidence.
calculation_details[x].confidencestringConfidence level of the matching between the input and the emission factor. Possible values are:
high
,medium
andlow
.calculation_details[x].similarity_scorefloatThe numeric similarity score between the input and the emission factor. The number is between 0 and 1, and a higher score indicates a better match.
- source_trailarray of Source Data Point
A list of Source Data Points that help explain and provide trust in the calculation. Click to view more details about Source Trail.
{ "estimate": { "co2e": 47, "co2e_unit": "kg", "co2e_calculation_method": "ar4", "co2e_calculation_origin": "climatiq", "emission_factor": { "name": "Cast iron and steel", "activity_id": "metals-type_cast_iron_steel", "id": "15e75a68-b485-494b-8cbc-398d417207a7", "access_type": "public", "source": "EPA", "source_dataset": "Supply Chain Factors Dataset (commodities)", "year": 2018, "region": "US", "category": "Metals", "source_lca_activity": "cradle_to_shelf", "data_quality_flags": [] }, "constituent_gases": { "co2e_total": null, "co2e_other": 0.7, "co2": 41.3, "ch4": 0.2, "n2o": 0 }, "activity_data": { "activity_value": 100, "activity_unit": "usd" }, "audit_trail": "enabled" }, "calculation_details": { "similarity_score": 0.91, "confidence": "high" }, "source_trail": [ { "data_category": "emission_factor", "name": "Cast iron and steel", "source": "EPA", "source_dataset": "Supply Chain Factors Dataset (commodities)", "year": "2018", "region": "US", "region_name": "United States of America (the)" } ]}
Dry-runs
If you attempt to estimate without suggestion using a domain
that contains a source your API key does not have access to, the estimate will still work,
but the CO2e values will not be provided. This is so you can evaluate how good matches would be using different domains and sources,
before purchasing commercial access to the data.