API
Compute sea freight emissions from an API — container shipping priced per TEU-km across the GLEC trade lanes, with bulk carriers, tankers and Ro-Ro per tonne-km, each returned with its source and data version.
curl -X POST https://api.greencalculus.com/v1/calculate/freight \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" -d '{
"teu": { "value": 2 },
"distance": { "value": 100, "unit": "km" },
"factor_key": "freight_detailed.sea.container.trans_suez.dry"
}'Get a free API key Read the docs →
?as_of= re-resolves any version our archive holds.mcp.greencalculus.com.Container shipping is not one number. These are the 38 GLEC trade lanes the corpus carries, dry and refrigerated, in kg CO2e per TEU-km — cheapest first. Every row is a live factor key: freight_detailed.sea.container.<lane>.<dry|reefer>. The table is generated from the data layer on each release, not maintained by hand.
| Trade lane | Dry | Reefer |
|---|---|---|
Asia to/from North Europe asia_to_north_europe | 0.047 | 0.1106 |
Trans-Suez (aggregated) trans_suez | 0.0505 | 0.1145 |
Asia to/from Mediterranean/Black Sea asia_to_med_black_sea | 0.0523 | 0.1163 |
Asia to/from North America EC/Gulf asia_to_north_america_ec_gulf | 0.059 | 0.1225 |
Trans-Pacific (aggregated) trans_pacific | 0.0633 | 0.1287 |
Asia to/from North America WC asia_to_north_america_wc | 0.067 | 0.1344 |
Asia to/from South America (incl. Central America) asia_to_south_america | 0.0677 | 0.1361 |
Industry Average (origin-destination pair unknown) industry_average | 0.0717 | 0.1423 |
Europe (North & Med) to/from Middle East/India europe_north_med_to_middle_east_india | 0.0734 | 0.1392 |
Asia to/from Middle East/India asia_to_middle_east_india | 0.0784 | 0.1506 |
Mediterranean/Black Sea to/from North America WC med_black_sea_to_north_america_wc | 0.0787 | 0.1613 |
Other (residual trade lanes) other | 0.0828 | 0.1619 |
North America EC/Gulf to/from Middle East/India north_america_ec_gulf_to_middle_east_india | 0.0843 | 0.1459 |
Panama Trade (aggregated) panama_trade | 0.0847 | 0.1555 |
North America EC/Gulf/WC to/from Oceania north_america_to_oceania | 0.0848 | 0.1489 |
Europe (North & Med) to/from South America (incl. Central America) europe_north_med_to_south_america | 0.0862 | 0.1629 |
Asia to/from Africa asia_to_africa | 0.0883 | 0.1613 |
Trans-Atlantic (aggregated) trans_atlantic | 0.0896 | 0.1658 |
North Europe to/from North America EC/Gulf north_europe_to_north_america_ec_gulf | 0.0902 | 0.1637 |
Europe (North & Med) to/from Oceania (via Suez/via Panama) europe_north_med_to_oceania | 0.0909 | 0.1568 |
Other Global (aggregated) other_global | 0.0914 | 0.1673 |
Europe (North & Med) to/from Africa europe_north_med_to_africa | 0.0949 | 0.1768 |
Mediterranean/Black Sea to/from North America EC/Gulf med_black_sea_to_north_america_ec_gulf | 0.095 | 0.1734 |
Asia to/from North Oceania asia_to_north_oceania | 0.0959 | 0.1711 |
North Europe to/from North America WC north_europe_to_north_america_wc | 0.0977 | 0.1784 |
North America EC/Gulf/WC to/from South America (incl. Central America) north_america_to_south_america | 0.1053 | 0.19 |
North Europe to/from Mediterranean/Black Sea north_europe_to_med_black_sea | 0.1081 | 0.1903 |
SE Asia to/from NE Asia se_asia_to_ne_asia | 0.1085 | 0.1887 |
Intra NE Asia intra_ne_asia | 0.1087 | 0.2004 |
Intra Middle East/India intra_middle_east_india | 0.1145 | 0.2078 |
Intra South America (incl. Central America) intra_south_america | 0.115 | 0.2077 |
North America EC/Gulf/WC to/from Africa north_america_to_africa | 0.1195 | 0.2028 |
Intra Africa intra_africa | 0.1343 | 0.2635 |
South America (incl. Central America) to/from Africa south_america_to_africa | 0.1353 | 0.2301 |
Intra SE Asia intra_se_asia | 0.1357 | 0.2275 |
Intra Mediterranean/Black Sea intra_med_black_sea | 0.1604 | 0.2938 |
Intra North Europe intra_north_europe | 0.1733 | 0.2857 |
Intra North America EC/Gulf/WC intra_north_america | 0.23 | 0.2949 |
Source: GLEC_FRAMEWORK_v3_2, data version 2026.284. Each row returns its own cell reference, well-to-tank / tank-to-wake split and licence from /v1/factors/<key>.
Sign up for a free API key at greencalculus.com/developers, then call the endpoint shown above with your key as a bearer token. The free tier includes 1,000 calls a month, no card required.
Yes. Every response returns its exact source reference, licence and data version, so you can cite the exact figure and reproduce it in an audit. A saved response is self-contained — it carries the value and the version it used, so it reproduces indefinitely without us. The as_of parameter re-resolves a past version from our archive, which begins 10 August 2026 and deepens with every release.
The factor's own unit decides. A factor denominated per tonne-km takes "mass"; the sea-container family is denominated per TEU-km and takes "teu" — one TEU is a twenty-foot container slot, and a forty-foot box is 2 TEU. Sending the wrong one is refused with a 422 naming the mismatch, never silently multiplied: a TEU is a container, not a weight, so converting between them would need an assumed payload that varies by cargo. Bulk carriers, tankers, Ro-Ro and every road, rail and air mode are per tonne-km.
Free for 1,000 calls a month, no card, and commercial use is permitted with attribution. The Developer plan is $49/month for 50,000 calls. Business is $299/month and adds what the lower tiers do not include: redistribution rights, the bulk corpus feed pre-filtered to everything you may lawfully republish, 500,000 calls, and change webhooks. The credit stays on every tier except Enterprise, which is the only plan that may remove it.
Yes. The same sourced data is available over the Model Context Protocol at mcp.greencalculus.com, so an AI agent can pull cited numbers directly instead of guessing.