Get a carbon credit quote for ground transport emissions
curl --request POST \
--url https://carbon-engine.onrender.com/v1/quotes/ground-transport \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"distance_km": 123,
"vehicle_type": "<string>",
"portfolio_id": "<string>"
}
'import requests
url = "https://carbon-engine.onrender.com/v1/quotes/ground-transport"
payload = {
"distance_km": 123,
"vehicle_type": "<string>",
"portfolio_id": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({distance_km: 123, vehicle_type: '<string>', portfolio_id: '<string>'})
};
fetch('https://carbon-engine.onrender.com/v1/quotes/ground-transport', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://carbon-engine.onrender.com/v1/quotes/ground-transport",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'distance_km' => 123,
'vehicle_type' => '<string>',
'portfolio_id' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://carbon-engine.onrender.com/v1/quotes/ground-transport"
payload := strings.NewReader("{\n \"distance_km\": 123,\n \"vehicle_type\": \"<string>\",\n \"portfolio_id\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://carbon-engine.onrender.com/v1/quotes/ground-transport")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"distance_km\": 123,\n \"vehicle_type\": \"<string>\",\n \"portfolio_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://carbon-engine.onrender.com/v1/quotes/ground-transport")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"distance_km\": 123,\n \"vehicle_type\": \"<string>\",\n \"portfolio_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"amount_kg": 123,
"price_sar_halalas": 123
}{
"error": 123,
"message": "<string>"
}Quotes
Get Quote for Ground Transport Emissions
Get a price quote for offsetting ground transportation carbon emissions. Will return the amount of CO2e to offset and total price.
POST
/
v1
/
quotes
/
ground-transport
Get a carbon credit quote for ground transport emissions
curl --request POST \
--url https://carbon-engine.onrender.com/v1/quotes/ground-transport \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"distance_km": 123,
"vehicle_type": "<string>",
"portfolio_id": "<string>"
}
'import requests
url = "https://carbon-engine.onrender.com/v1/quotes/ground-transport"
payload = {
"distance_km": 123,
"vehicle_type": "<string>",
"portfolio_id": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({distance_km: 123, vehicle_type: '<string>', portfolio_id: '<string>'})
};
fetch('https://carbon-engine.onrender.com/v1/quotes/ground-transport', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://carbon-engine.onrender.com/v1/quotes/ground-transport",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'distance_km' => 123,
'vehicle_type' => '<string>',
'portfolio_id' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://carbon-engine.onrender.com/v1/quotes/ground-transport"
payload := strings.NewReader("{\n \"distance_km\": 123,\n \"vehicle_type\": \"<string>\",\n \"portfolio_id\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://carbon-engine.onrender.com/v1/quotes/ground-transport")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"distance_km\": 123,\n \"vehicle_type\": \"<string>\",\n \"portfolio_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://carbon-engine.onrender.com/v1/quotes/ground-transport")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"distance_km\": 123,\n \"vehicle_type\": \"<string>\",\n \"portfolio_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"amount_kg": 123,
"price_sar_halalas": 123
}{
"error": 123,
"message": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
Distance of ground transportation, in km
The type of vehicle used. Must be one of passenger_car_van_or_suv, small_bus, school_bus, or coach_bus.
Optional ID of the portfolio to use for the quote. The quote will be for an order fulfilled from this portfolio. If not specified, the account's default portfolio will be used.
⌘I
