ExchangeRebel Carbon Intensity API
The Carbon Intensity API from ExchangeRebel — 4 operation(s) for carbon intensity.
The Carbon Intensity API from ExchangeRebel — 4 operation(s) for carbon intensity.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/exchangerebel-com:exchangerebel-com-carbon-intensity-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: ExchangeRebel — pay-per-call APIs for AI agents (x402 on…
version: 1.0.0
contact:
name: 'ExchangeRebel (operator: Rebel Data)'
url: https://exchangerebel.com
email: sound.money.investing@gmail.com
x-guidance: 'All paid operations use x402 on Solana: call without payment to get a 402 challenge (SOL recipient + USDC token account + fresh memo), pay with the memo attached via the Solana Memo program, then retry with header X-Payment-Tx: <signature> and ?toll_memo=<memo>. Challenges are dual-version: the PAYMENT-REQUIRED header carries the x402 v2 PaymentRequired object and the response body carries the same challenge in x402 v1 form for compatibility. Free operations (security: []) include each service''s /health catalog with full response shapes. Prices in x-payment-info are USD per call unless the summary says otherwise (RPC is per 1,000-request block; Telegram provisioning is per bot-month; transcription is per minute of audio).'
description: '67 data and utility APIs behind x402 tolls, settled in SOL or USDC on Solana. Call a paid endpoint without payment to receive a 402 x402 challenge (recipient + fresh memo), pay with the memo attached via the Solana Memo program, then retry with the X-Payment-Tx header and toll_memo query parameter. Free catalog/health endpoints are marked without x-payment-info. Full catalogs: GET /toll/discovery and each service''s /health.'
servers:
- url: https://exchangerebel.com
tags:
- name: Carbon Intensity
paths:
/toll/carbon/intensity:
post:
tags:
- Carbon Intensity
summary: Current average grid carbon intensity for one zone
responses:
'200':
description: Success. Response shape is documented in the service catalog (GET /health on the service).
content:
application/json:
example:
zone: FR
average_intensity_gco2_per_kwh: 28
as_of: '2026-10-16T15:00:00+00:00'
generation_mix_mw:
nuclear: 38083
cache:
state: miss
provenance:
source: RTE via ODRE — dataset eco2mix-national-tr
licence: Licence Ouverte v2.0 (Etalab)
attribution: 'Source: RTE / ODRE, dataset eco2mix-national-tr (Licence Ouverte v2.0).'
method: direct
revision_note: Real-time values are estimates subject to consolidation by the source; previously served values can be revised as the source consolidates its data.
envelope:
v: 1
service: carbon-intensity
as_of: '2026-10-16T15:00:00+00:00'
source: RTE via ODRE — dataset eco2mix-national-tr
grade: official
changes:
supported: false
kind: current
'402':
description: 'Payment Required (x402). The PAYMENT-REQUIRED response header carries the x402 v2 PaymentRequired object (base64 JSON: scheme, CAIP-2 network, amount, asset, payTo, plus the bazaar discovery extension); the response body carries the same challenge in x402 v1 form for compatibility, naming the SOL recipient and USDC token account on Solana plus a fresh memo. To pay on this service''s rail: pay with the memo attached (Solana Memo program), then retry with header ''X-Payment-Tx: <transaction signature>'' and query parameter ''toll_memo=<memo>''.'
requestBody:
content:
application/json:
schema:
type: object
properties:
zone:
type: string
description: 'string (required) - zone code: FR, DE, GB, IE, DK or US'
required:
- zone
x-payment-info:
protocols:
- x402
price:
mode: fixed
currency: USD
amount: '0.005'
security:
- x402Payment: []
operationId: postTollCarbonIntensity
x-operation-id-source: derived
/toll/carbon/intensity/forecast:
post:
tags:
- Carbon Intensity
summary: Forecast average carbon intensity curve for one zone
responses:
'200':
description: Success. Response shape is documented in the service catalog (GET /health on the service).
content:
application/json:
example:
zone: GB
kind: forecast
label: forecast
points:
- at: 2026-10-16T14:30Z
average_intensity_gco2_per_kwh: 97
kind: forecast
points_count: 97
provenance:
source: NESO Carbon Intensity API
licence: CC BY 4.0
attribution: NESO — Carbon Intensity API (CC BY 4.0). GB is served only as one zone of this multi-region product.
method: direct
revision_note: Real-time values are estimates subject to consolidation by the source; previously served values can be revised as the source consolidates its data.
envelope:
v: 1
service: carbon-intensity
source: NESO Carbon Intensity API
grade: official
changes:
supported: false
'402':
description: 'Payment Required (x402). The PAYMENT-REQUIRED response header carries the x402 v2 PaymentRequired object (base64 JSON: scheme, CAIP-2 network, amount, asset, payTo, plus the bazaar discovery extension); the response body carries the same challenge in x402 v1 form for compatibility, naming the SOL recipient and USDC token account on Solana plus a fresh memo. To pay on this service''s rail: pay with the memo attached (Solana Memo program), then retry with header ''X-Payment-Tx: <transaction signature>'' and query parameter ''toll_memo=<memo>''.'
requestBody:
content:
application/json:
schema:
type: object
properties:
zone:
type: string
description: 'string (required) - zone code: GB, IE or DK for forecast'
required:
- zone
x-payment-info:
protocols:
- x402
price:
mode: fixed
currency: USD
amount: '0.01'
security:
- x402Payment: []
operationId: postTollCarbonIntensityForecast
x-operation-id-source: derived
/toll/carbon/zones:
get:
tags:
- Carbon Intensity
summary: 'Carbon intensity zone catalog: metadata + factors'
responses:
'200':
description: Success. Response shape is documented in the service catalog (GET /health on the service).
security: []
operationId: getTollCarbonZones
x-operation-id-source: derived
/toll/carbon/health:
get:
tags:
- Carbon Intensity
summary: Check the carbon intensity service status
responses:
'200':
description: Success. Response shape is documented in the service catalog (GET /health on the service).
security: []
operationId: getTollCarbonHealth
x-operation-id-source: derived
components:
securitySchemes:
x402Payment:
type: apiKey
in: header
name: X-Payment-Tx
description: 'x402 toll payment proof: the Solana transaction signature of a payment carrying the memo from the 402 challenge; send together with ?toll_memo=<memo>. Payment itself is made on-chain in SOL or USDC to the recipient named in the challenge.'