Eén query.
Volledig audit trail.
Haal assets, producten, berekeningen, emissiefactoren en hun bronregister op in één round-trip. Gebouwd voor CSRD-auditors, BI-dashboards en LLM-integraties die de volledige graaf nodig hebben.
Graph-native
Asset → product → berekening → factor → register doorlopen in één query, niet vijf.
Audit-waardig
Elke berekening verwijst terug naar de factor die actief was op het moment van berekening, met volledige bronherkomst.
Scenario-mutaties
Simuleer refurbishment of afdanking zonder de database aan te raken. Veilig op vergrendelde en gecertificeerde assets.
Quickstart
Gebruik een willekeurige API-sleutel van je instellingenpagina. Testsleutels (ct_test_*) geven sandboxdata terug, zodat je kunt ontwikkelen zonder live data te raken.
curl -X POST https://carbontrace.cloud
/api/v1/graphql \
-H "Authorization: Bearer ct_test_..." \
-H "Content-Type: application/json" \
-d '{
"query": "query { organization { name plan asset_count total_kg_co2e } }"
}'Voorbeeldquery's
Elk onderstaand voorbeeld is vooraf goedgekeurd op de free- en pro-plannen (whitelist van persisted query's). Business- en enterprise-plannen kunnen eigen query's indienen.
Methodologie-doorloop
Eén call voor het volledige audit trail. Asset → berekening → gridfactor → bronregister. Gebouwd voor CSRD-auditors.
query MethodologyAudit($assetId: ID!) {
asset(id: $assetId) {
id
brand
mpn
total_kg_co2e
production_kg
use_phase_kg
active_calculation {
id
created_at
total_kg_co2e
emission_factor(type: GRID) {
value
unit
source
source_version
source_url
source_license
registry {
display_name
current_version
next_check_after
}
}
}
}
}Asset-detail
Haal een asset op met het gekoppelde product en optionele match in de globale catalogus (PCF-data indien beschikbaar).
query AssetDetail($id: ID!) {
asset(id: $id) {
id
brand
mpn
serial_number
status
purchase_date
country
total_kg_co2e
product {
id
brand
mpn
name
category
catalogMatch {
has_pcf
pcf_total_kg
pcf_standard
pcf_year
}
}
}
}Organisatie-overzicht
Actuele org-samenvatting met aantal assets en totaal geboekte CO₂e.
query OrgOverview {
organization {
id
name
plan
asset_count
total_kg_co2e
}
}Factor per regio + datum
Zoek de gridfactor op die actief was voor een regio op een specifieke datum. Dezelfde primitive die intern wordt gebruikt door de methodologie-doorloop.
query FactorLookup($region: String!, $atDate: DateTime) {
factorByRegion(type: GRID, regionCode: $region, atDate: $atDate) {
value
unit
source
source_version
valid_from
valid_to
}
}Refurbishment simuleren (mutatie)
Wat-als-scenario: verleng de levensduur in plaats van te vervangen. Pure berekening — er wordt niets naar de database geschreven.
mutation Refurbish($ids: [ID!]!) {
simulateRefurbish(assetIds: $ids) {
current_quarterly_co2e
scenario_quarterly_co2e
delta_kg_co2e
delta_percentage
affected_assets_count
}
}Limieten en valkuilen
- Rate limits worden gedeeld met de REST API — dezelfde quota per minuut en per dag per plan. Free: 25/day, Pro: 1000/day, Business: 10000/day, Enterprise: 100000/day.
- Free- en pro-plannen kunnen alleen gewhiteliste query's uitvoeren (de 5 hierboven). Business en enterprise mogen elke query indienen.
- Asset-query's geven maximaal 100 rijen per pagina terug. Gebruik de
after-cursor voor paginering. - Scenario-mutaties zijn beperkt tot 500 assets per call. Grotere portfolio's moeten client-side worden gebatcht.
Volledige referentie
De REST API blijft het primaire oppervlak. GraphQL is bedoeld voor graaf-vormige reads en wat-als-scenario's.