Build with CarbonDecode
Two ways to integrate the integrity ratings, scorecards, and portfolio risk behind CarbonDecode: a REST Data API for your own services, and an MCP server that plugs straight into Claude, ChatGPT, and other AI tools. Both are authenticated with a CarbonDecode API key and available on the Pro plan.
Data API →
Screen projects, pull a full scorecard, or batch-score a portfolio over HTTPS. JSON in, JSON out.
MCP server →
Four tools your AI assistant can call directly — search, score, portfolio risk, and your watchlist.
Base URL
All Data API endpoints are served from a single host over HTTPS.
https://api.carbondecode.comAuthentication
Authenticate every Data API and MCP request with a CarbonDecode API key (prefixed cdk_live_). Pass it in either header:
X-API-Key: cdk_live_…
# — or —
Authorization: Bearer cdk_live_…Keys belong to your account and inherit your plan: a key only works while its owner has an active Pro subscription. Treat keys like passwords — they grant full read access to your account's API. The browser app uses your Clerk session instead, so you never need a key there.
Quickstart
Pull a single project's scorecard:
curl -H "X-API-Key: $CARBONDECODE_KEY" \
"https://api.carbondecode.com/v1/projects/VCS902"const res = await fetch("https://api.carbondecode.com/v1/projects/VCS902", {
headers: { "X-API-Key": process.env.CARBONDECODE_KEY },
});
const { project, scorecard } = await res.json();
console.log(scorecard.grade, scorecard.composite_score);See the full Data API reference for every endpoint and parameter.
API keys
Generate and revoke keys here. A new key's full value is shown once at creation — copy it then; afterward only its prefix is stored.
Loading…
Errors & limits
Errors return a non-2xx status and a JSON body of the form { "detail": "…" }.
| 200 | Success. |
| 400 | Malformed request (e.g. missing project_ids on /v1/score). |
| 401 | Missing or invalid API key. |
| 402 | Key owner is not on an active Pro plan. |
| 404 | Project (or resource) not found. |
| 422 | A query/body parameter failed validation. |
The API is for interactive and batch integration at a fair-use rate; there is no hard published quota today. If you're planning high-volume or commercial redistribution, reach out and we'll size a plan with you. Ratings are rebuilt monthly from the underlying registry data.