API Reference
Autopilot (preview 3)

Autopilot (preview 3) ADD-ONADD-ON

⚠️
Preview Feature

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).

ValueDescriptionDatasetsSources
generalGeneral list of materials and servicesClimatiqCircular Ecology, GEMIS, DISER, GLEC, Climate TRACE, MfE, Greenview, OEKOBAUDAT, EPA, Market Economics Limited, WRAP, EXIOBASE, BEIS, CAEP, CBAM, ecoinvent
manufacturingList of materials and services relevant for the manufacturing industry aggregated from various sourcesClimatiqCircular 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:

Request parametersShould be sent as a JSON object in the body
    • suggestobject

      Details of the emission-generating activity.


      suggest[x].textrequired string

      The free-form input text, such as an activity name, service or material name.


      suggest[x].domainrequired domain

      The Domain to be used for the calculation.


      suggest[x].unit_typearray of unit_types
      Default value: [Weight, Money, Volume, Number]

      The unit types of the activity. Currently the only unit types that are supported are Weight, Money, Volume and Number.


      suggest[x].yearinteger
      Default 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.


      suggest[x].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.


      suggest[x].region_fallbackboolean
      Default 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.


      suggest[x].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 or exclude_source parameter, but not both simultaneously. Must be a source that is part of the specified domain.


      suggest[x].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 or exclude_source parameter, but not both simultaneously. Must be a source that is part of the specified domain.


      suggest[x].source_lca_activityarray of strings

      Filters emission factors by source_lca_activity.

    • max_suggestionsnumber
      Default 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.

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:

Response parameters
    • resultsarray

      A list of emission factors for this emission-generating activity.


      results[x].suggestion_idstring

      The unique ID for this suggested activity. Receive an emission estimation using this ID with the Autopilot Estimate endpoint.


      results[x].emission_factorobject

      The emission factor that was used for the calculation.


      results[x].emission_factor[x].namestring

      Emission factor name.


      results[x].emission_factor[x].categorystring

      Emission factor category.


      results[x].emission_factor[x].sectorstring

      Emission factor sector.


      results[x].emission_factor[x].sourcestring

      Emission factor publisher.


      results[x].emission_factor[x].source_linkstring

      Link to emission factor publisher.


      results[x].emission_factor[x].source_datasetstring

      The dataset this emission factor belongs to.


      results[x].emission_factor[x].yearnumber

      The year in which the emission factor is considered most relevant, according to the source.


      results[x].emission_factor[x].year_releasednumber

      The year in which the emission factor was released by the source.


      results[x].emission_factor[x].regionstring

      Geographic region to which the emission factor applies (UN/LOCODE).


      results[x].emission_factor[x].region_namestring

      Geographic region to which the emission factor applies (in English).


      results[x].emission_factor[x].descriptionstring

      Emission factor description.


      results[x].emission_factor[x].unitstring

      The unit in which the factor field is expressed.


      results[x].emission_factor[x].unit_typestring

      The Unit types that this emission factor accepts.


      results[x].emission_factor[x].source_lca_activitystring

      Which LCA activity the emission factor corresponds to. Read more about life cycle assessments here.


      results[x].emission_factor[x].data_quality_flagsarray

      Any data quality flags that applies to this emission factor.


      results[x].emission_factor[x].access_typestring

      Access type of the emission factor. Can be either public or premium. Public emission factors are available to all, while premium emission factors require a separate license.


      results[x].suggestion_detailsobject

      Details about the suggested emission factor, including similarity score and confidence level.


      results[x].suggestion_details[x].confidencestring

      Confidence level of the matching between the input and the emission factor. Possible values are: high, medium and low.


      results[x].suggestion_details[x].similarity_scorefloat

      The 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
⚠️
Suggestions from v1-preview2

Note that suggestion_ids from previous versions of Autopilot cannot be used in v1-preview3.

Request

Request parametersShould be sent as a JSON object in the body
    • suggestion_idrequired string

      An ID from a Suggest endpoint result.

    • parametersrequired Parameters object

      Calculation parameters. Currently the only unit types that are supported are Weight, Money, Volume and Number. You should use the identical unit type as indicated in the metadata of your selected emission factor.

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.

Response parameters
    • 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.

Request parametersShould be sent as a JSON object in the body
    • textrequired string

      The free-form input text, such as an activity name, service or material name.

    • domainrequired domain

      One of the Domains to be used for the calculation.

    • parametersrequired Parameters object

      Calculation parameters. Currently the only unit types that are supported are Weight, Money, Volume and Number

    • yearinteger
      Default 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.

    • 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_fallbackboolean
      Default 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 is false

    • 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 or exclude_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 or exclude_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.

Response parameters
    • 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].confidencestring

      Confidence level of the matching between the input and the emission factor. Possible values are: high, medium and low.


      calculation_details[x].similarity_scorefloat

      The 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.