Enterprise-functie

BI-export voor Power BI, Tableau en Excel

Eén OData v4-endpoint. Zes entiteitssets. Audit-vaste response-headers die elk getal terugkoppelen aan een rij in het CarbonTrace-auditlog. Verbind je favoriete BI-tool in minder dan tien minuten.

Endpoint

https://carbontrace.cloud/api/v1/odata

Authenticeer met een CarbonTrace API-sleutel (begint met ct_live_) waarvoor BI-export is ingeschakeld. Gebruik HTTP Basic-authenticatie: API-sleutel als gebruikersnaam, leeg wachtwoord. Of Authorization: Bearer ct_live_….

Vier persona-dashboards

Bouw deze dashboards in Power BI of Tableau met hetzelfde datamodel dat we meeleveren met onze in-app widgets (N70).

CIO

Totale IT-voetafdruk, jaar-op-jaar-trend, meest uitstotende categorieën, verhouding uitgaven tot carbon.

  • Totale voetafdruk (kg CO₂e)
  • Jaar-op-jaargroei %
  • Kosten per kg CO₂e

ESG Officer

SBTi-voortgang vs. traject, CSRD ESRS E1-rapportages, scope-uitsplitsing.

  • SBTi-tempokloof
  • Scope 3 Cat. 1 + 2 + 11
  • CSRD-klare tabellen

Procurement

Leveranciersvergelijking, hergebruik vs. nieuw kopen, vermeden emissies door refurbishment.

  • Gem. kg CO₂e per apparaat
  • Besparing door hergebruik %
  • Topleveranciers

Audit

Methodologiespoor, betrouwbaarheidsverdeling, dekking van databronnen.

  • % rijen met hoge betrouwbaarheid
  • Dekking methodologiekaarten
  • Bronnenmix (Blancco / PCF / parametrisch)

Snelstart

Power BI Desktop

  1. Open Power BI Desktop → Get DataOData feed
  2. URL: https://carbontrace.cloud/api/v1/odata
  3. Authenticatie: Basic. Gebruikersnaam = je API-sleutel. Laat het wachtwoord leeg.
  4. Selecteer de gewenste entiteitssets en klik op Load.
  5. Bouw visuals. Klik op Refresh om de nieuwste data op te halen.
Voorbeeld van een DAX-maat:
Total Footprint (kg) = SUM( Assets[total_kg_co2e] )
YoY Growth % =
  VAR curr = CALCULATE( [Total Footprint (kg)], YEAR(Assets[purchase_date]) = YEAR(TODAY()) )
  VAR prev = CALCULATE( [Total Footprint (kg)], YEAR(Assets[purchase_date]) = YEAR(TODAY())-1 )
  RETURN DIVIDE( curr - prev, prev )

Tableau Desktop

  1. ConnectWeb Data Connector
  2. URL: https://carbontrace.cloud/connectors/tableau/
  3. Plak het OData-endpoint en je API-sleutel en klik op Connect to Tableau
  4. Alle zes entiteitssets verschijnen als tabellen — sleep ze naar het canvas.

Excel

  1. DataGet DataFrom Other SourcesFrom OData Feed
  2. URL: https://carbontrace.cloud/api/v1/odata
  3. Authenticatie: Basic. Gebruikersnaam = API-sleutel, wachtwoord leeg.
  4. Selecteer tabellen en laad ze naar het werkblad. Power Query vernieuwt op aanvraag.

Entiteitssets

Assets

Gedenormaliseerd asset-feit — elk apparaat in je inventaris met volledige carbon-uitsplitsing.

asset_idbrand, mpn, categorytotal_kg_co2e + phase breakdownpurchase_date, retirement_datecountry, department, cost_center

Certificates

Uitgegeven CO₂-certificaten — publieke claims + compliance-auditspoor.

certificate_numberbrand, mpnfootprint_total_kgissued_atis_public

Products

De productbibliotheek van je organisatie.

brand, mpn, categoryweight_kglast_calculated_at

EmissionFactors

Emissiefactoren zichtbaar voor je organisatie (platform + organisatiespecifiek).

factor_typevalue, unitsourcedata_year

SbtiTargets

Science-Based Targets — baselines, doelen en trajecten.

baseline_year, target_yearbaseline_emissions_kgtarget_reduction_pctscope

MonthlyEmissions

Vooraf gerolde maandelijkse emissies per categorie en land — klaar voor tijdreeksgrafieken.

monthcategorycountrytotal_kg_co2e

Ondersteunde filtersyntaxis

Een veilige subset van OData v4. Niet-ondersteunde operatoren geven 501 Not Implemented terug met de lijst van wat wel wordt ondersteund in de response-body — geen stille fouten.

OndersteundVoorbeeld
eqcategory eq 'laptop'
nestatus ne 'retired'
gt / ge / lt / letotal_kg_co2e gt 200
and / orcountry eq 'BE' and category eq 'laptop'
startswith()startswith(department, 'Finance')
contains()contains(product_name, 'Pro')
endswith()endswith(serial_number, 'X1')
Niet ondersteundReden
$expandEntiteiten zijn vooraf gedenormaliseerd. Gebruik MonthlyEmissions voor rollups.
$applyServer-side aggregatie is niet beschikbaar in v1 — aggregeer aan de clientzijde.
$batchBI-export is strikt alleen-lezen. Gebruik één request per entiteit.
any() / all() / has()Collectiepredicaten worden niet ondersteund in v1.
$compute / $searchNiet in v1. Gebruik $select + berekening aan de clientzijde.

Forensische bewijs-headers

Elke OData-response bevat drie headers die de teruggegeven rijen koppelen aan het CarbonTrace-auditlog. Gebruik ze in compliance-workflows om aan te tonen dat een bepaalde dashboardwaarde afkomstig is van een specifieke, manipulatiebestendige query.

X-CarbonTrace-ProofID van de audit_log-rij die deze query registreert. Hash-geketend volgens N128.
X-CarbonTrace-Proof-HashSHA256 van de teruggegeven rijen (deterministisch: rijen zijn al geordend).
X-CarbonTrace-Data-FreshnessISO-tijdstempel van de laatste onderliggende asset-/berekeningsupdate.

Sandbox-modus

Test je dashboards voordat je echte data inschiet. Gebruik een sandbox-sleutel (ct_test_…) tegen hetzelfde OData-endpoint — je krijgt 50 fictieve assets, 20 certificaten, 15 producten en 24 maanden aan gerolde emissies voor een organisatie genaamd SandboxCorp. Alle responses zijn deterministisch, zodat dashboards bij elke klantendemo identiek renderen.

Rate limits

BI-tools verbruiken veel kleine calls per refresh. BI-export gebruikt een toegewijde bucket van 500.000 requests/dag en 2.000/minuut per API-sleutel, los van het normale Enterprise API-quotum (100k/dag). Sandbox-sleutels delen een kleinere bucket van 20k/dag.

FAQ

Waarom geen Looker-ondersteuning?
LookML spreekt geen OData. Een native Looker-block staat gepland als N86b — abonneer je via Instellingen → Meldingen als je een melding wilt krijgen.
Kan ik data terugschrijven?
Nee. BI-export is alleen-lezen. POST/PUT/PATCH/DELETE geven 405 terug. Gebruik de reguliere REST API voor mutaties.
Hoe plan ik een refresh?
Aan de kant van de BI-tool. Power BI Service, Tableau Server en Excel via Power Query kunnen allemaal OData-refreshes volgens een schema uitvoeren.
Wordt de data gecachet?
Nee. Elke OData-response leest rechtstreeks uit live Postgres-views met row-level security. Geen verouderde materialized views.
Hoe zit het met AVG / dataresidentie?
Alle data blijft in eu-west-1. Geen export naar derde-partij-clouds. Je API-sleutel is gebonden aan je organisatie — cross-organisatie-query's worden geblokkeerd op de row-level security-laag.
Kan ik verbinden vanuit mijn eigen ETL-tool?
Ja. OData v4 is een W3C-standaardprotocol. Elke HTTP-client die OData (of gewoon JSON) spreekt, werkt. Zie de OpenAPI-spec voor het volledige contract.

Klaar om je BI-tool te verbinden?

Schakel BI-export in op een API-sleutel in Instellingen en je kunt aan de slag.