54 lines
3.4 KiB
XML
54 lines
3.4 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<providers xmlns="https://calco2la.to/schema/providers/v1">
|
|
<provider id="climatiq_travel_preview3">
|
|
<name>Climatiq Travel v1-preview3</name>
|
|
<baseUrl>https://preview.api.climatiq.io</baseUrl>
|
|
<auth type="bearer">
|
|
<envKey>CLIMATIQ_API_KEY</envKey>
|
|
</auth>
|
|
<operations>
|
|
<operation id="travel.flight.estimate_emissions">
|
|
<http method="POST" path="/travel/v1-preview3/distance"/>
|
|
<requestBody format="json">
|
|
{
|
|
"travel_mode": "air",
|
|
"origin": {
|
|
"iata": "${request.legs[0].origin_iata}"
|
|
},
|
|
"destination": {
|
|
"iata": "${request.legs[0].destination_iata}"
|
|
},
|
|
"year": ${request.vendor_options.climatiq_year},
|
|
"distance_km": ${request.legs[0].distance_km},
|
|
"air_details": ${request.vendor_options.climatiq_air_details}
|
|
}
|
|
</requestBody>
|
|
<responseMapping mode="single" rootType="EmissionCalculationResult">
|
|
<constant target="EmissionCalculationResult.provider" value="climatiq_travel_preview3"/>
|
|
<constant target="EmissionCalculationResult.domain" value="travel.flight"/>
|
|
<constant target="EmissionCalculationResult.operation" value="travel.flight.estimate_emissions"/>
|
|
<field source="$.co2e" target="EmissionCalculationResult.total.co2eKg"/>
|
|
<field source="$.co2e_unit" target="EmissionCalculationResult.total.unit"/>
|
|
<constant target="EmissionCalculationResult.total.per" value="passenger"/>
|
|
<field source="$.distance_km" target="EmissionCalculationResult.distance.value"/>
|
|
<constant target="EmissionCalculationResult.distance.unit" value="km"/>
|
|
<field source="$.co2e_calculation_method" target="EmissionCalculationResult.methodology.methodName"/>
|
|
<constant target="EmissionCalculationResult.methodology.vendor" value="Climatiq"/>
|
|
<constant target="EmissionCalculationResult.methodology.documentationUrl" value="https://www.climatiq.io/docs/api-reference/travel"/>
|
|
<field source="$.origin.name" target="EmissionCalculationResult.segments[0].origin.name"/>
|
|
<field source="$.origin.latitude" target="EmissionCalculationResult.segments[0].origin.lat"/>
|
|
<field source="$.origin.longitude" target="EmissionCalculationResult.segments[0].origin.lon"/>
|
|
<field source="$.destination.name" target="EmissionCalculationResult.segments[0].destination.name"/>
|
|
<field source="$.destination.latitude" target="EmissionCalculationResult.segments[0].destination.lat"/>
|
|
<field source="$.destination.longitude" target="EmissionCalculationResult.segments[0].destination.lon"/>
|
|
<field source="$.direct_emissions.co2e" target="EmissionCalculationResult.segments[0].emissions.co2eKg"/>
|
|
<field source="$.direct_emissions.co2e_unit" target="EmissionCalculationResult.segments[0].emissions.unit"/>
|
|
<field source="$.indirect_emissions.co2e" target="EmissionCalculationResult.segments[0].vendorRaw.indirectEmissionsKg"/>
|
|
<field source="$.notices" target="EmissionCalculationResult.metadata.notices"/>
|
|
<field source="$.source_trail" target="EmissionCalculationResult.metadata.sourceTrail"/>
|
|
<field source="$" target="EmissionCalculationResult.vendorRaw"/>
|
|
</responseMapping>
|
|
</operation>
|
|
</operations>
|
|
</provider>
|
|
</providers> |