VeraTrace-API — ontwikkelaars
De voedselbewijslaag, via REST. Met Ed25519 ondertekende attestaties, Merkle-boom, productpaspoort in DPP-formaat — verifieerbaar zonder VeraTrace-account. De endpoints van ring 1 hieronder kunt u zonder enige sleutel aanroepen: kopiëren, plakken, testen.
Nu proberen
Voor de eerste aanroep is geen inschrijving nodig. De sleutel dient daarna om het anonieme quotum op te heffen en de referentiegegevens van ring 2 te openen.
# Ring 1 — geen sleutel vereist. Probeer het meteen.
curl "https://veratrace.eu/api/recalls/check/3017620422003"
# → {"ok":true,"recalled":false,"recallCheck":"ok","matches":[]}
# Ring 1 — productpaspoort (DPP), JSON-LD-formaat
# De partij “demo” is een DEMONSTRATIEPASPOORT: het document
# verklaart dat zelf ("demonstration": true) en bevat geen enkele attestatie.
curl "https://veratrace.eu/api/dpp/demo"
# Ring 1 — parsing van GS1 Digital Link (Java-oppervlak)
curl "https://api.veratrace.eu/api/public/v1/gs1/digital-link/parse?url=https://veratrace.eu/01/03123456789012/21/ABC"
# Ring 1 — een attestatie verifiëren, zonder sleutel of account.
# De Ed25519-handtekening, de verankering en het inclusiebewijs zijn ECHT; alleen het
# onderwerp is fictief. De publieke sleutel wordt aangeboden via /attestations/trust-anchors.
curl "https://veratrace.eu/api/attestations/0571db99-cc4e-4c00-8bc7-974e50ad89df/verify"
# Ring 2 — sleutel vereist, scope “read”
curl "https://veratrace.eu/api/ciqual/lookup?q=carotte" \
-H "X-VeraTrace-Api-Key: vt_live_UW_SLEUTEL"
# Dezelfde sleutel werkt ook als Bearer — strikt gelijkwaardig
curl "https://veratrace.eu/api/inao/lookup?q=comte" \
-H "Authorization: Bearer vt_live_UW_SLEUTEL"Authenticatie
Een ontwikkelaarssleutel ziet eruit als vt_live_… en wordt op twee strikt gelijkwaardige manieren meegegeven:
X-VeraTrace-Api-Key: vt_live_…Authorization: Bearer vt_live_…
Een aanwezige maar ongeldige sleutel wordt nooit teruggezet naar anonieme toegang: hij geeft 401. Geauthenticeerde antwoorden bevatten X-RateLimit-Remaining-Minute, X-RateLimit-Remaining-Day en X-RateLimit-Reset. Een overschrijding geeft 429 RATE_LIMITED met Retry-After, een ontbrekende scope 403 INSUFFICIENT_SCOPE.
Drie toegangsringen
Elk open endpoint hoort bij precies één ring, die de authenticatie en het quotum bepaalt.
Verificatie van attestaties, productpaspoort (DPP), terugroepacties per EAN, GS1-resolutie.
Geen. De sleutel verandert uw rechten niet: hij vervangt het quotum per IP door dat van uw niveau en wijst het gebruik toe aan uw account.
Verrijkte referentiegegevens: CIQUAL, e-Phy, RPG, DECP, INAO, erkenningen, prijsvergelijker, feed van terugroepacties.
Ontwikkelaarssleutel, scope “read”.
Loyaliteit (earn / redeem), metingen van de koudeketen, EPCIS 2.0-capture.
Ontwikkelaarssleutel plus een bij het aanmaken geactiveerde schrijfscope: loyalty:write, cold-chain:write, epcis:capture of qr:write.
Twee basis-URL’s
Het platform biedt twee afzonderlijke oppervlakken. De referentiegegevens van ring 2, de terugroepacties en het DPP antwoorden alleen op de BFF-basis, zonder het voorvoegsel /api/public/v1. Elke operatie in de spec vermeldt de eigen basis.
https://api.veratrace.eu/api/public/v1https://veratrace.eu/apiEen sandboxomgeving (api-sandbox.veratrace.eu) is in de spec vermeld als onderdeel van de roadmap. Zij is nog niet beschikbaar gesteld — richt u er niet op.
Verder gaan
Een sleutel krijgen
Aanmaken gaat via self-service en direct: een account volstaat, geen handmatige goedkeuring. Het niveau Free wordt standaard toegekend. De sleutel wordt maar één keer getoond.