N87 Beta · Scope M

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.

POST https://carbontrace.cloud /api/v1/graphql

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.