Examples
Les cinq requêtes qu’une intégration effectue réellement
Émettre un passeport. Ajouter un événement. Signer une déclaration fournisseur. En vérifier une. Servir un scan. La plupart des intégrations se résument à ces cinq opérations répétées — tout le reste est du mapping.
- Commencer par
- Émettre + ajouter
- Ajouter plus tard
- Déclarations signées
- Environnement
- Le bac à sable d’abord
Definition
Que fait réellement une intégration de passeport type ?
Cinq opérations, répétées. Émettre un passeport sur un identifiant GS1. Ajouter des événements EPCIS 2.0 au fil des mouvements. Collecter des déclarations signées de fournisseurs. Vérifier une déclaration qu’on vous présente. Et servir la vue publique quand quelqu’un scanne le support apposé sur le produit.
The volume is dominated by the first two. The difficulty is dominated by the third, which is a supplier relationship problem rather than a technical one.
01
Émettre un passeport
curl https://api.circuleid.com/v1/passports \
-H "Authorization: Bearer $CIRCULEID_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"gtin": "09506000134352",
"productGroup": "textiles",
"level": "model",
"record": {
"name": "Merino Crew Knit",
"materials": [
{ "name": "merino wool", "share": 0.82, "certification": "RWS" },
{ "name": "recycled polyamide", "share": 0.18 }
],
"carbonFootprint": { "value": 14.2, "unit": "kgCO2e", "method": "ISO 14067" }
}
}'02
Ajouter un événement de chaîne
curl https://api.circuleid.com/v1/events \
-H "Authorization: Bearer $CIRCULEID_API_KEY" \
-d '{
"type": "ObjectEvent",
"action": "OBSERVE",
"eventTime": "2026-03-14T09:22:00+01:00",
"epcList": ["urn:epc:id:sgtin:0950600.013435.SN8817403"],
"bizStep": "urn:epcglobal:cbv:bizstep:commissioning",
"disposition": "urn:epcglobal:cbv:disp:active",
"bizLocation": { "id": "urn:epc:id:sgln:0950600.00001.0" }
}'03
Signer une déclaration fournisseur
curl https://api.circuleid.com/v1/credentials \
-H "Authorization: Bearer $SUPPLIER_API_KEY" \
-d '{
"type": "RecycledContentCredential",
"issuer": "did:web:mill.example.com",
"subject": "01/09506000134352",
"validUntil": "2027-03-14T00:00:00Z",
"claim": {
"material": "polyamide",
"recycledShare": 0.18,
"basis": "mass",
"chainOfCustody": "mass-balance"
}
}'04
Vérifier une allégation qui vous a été présentée
curl https://api.circuleid.com/v1/credentials/verify \
-H "Authorization: Bearer $CIRCULEID_API_KEY" \
-d '{ "credential": { /* the credential as presented */ } }'
# {
# "verified": true,
# "issuer": "did:web:mill.example.com",
# "issuedAt": "2026-03-14T09:31:02Z",
# "status": "active" # "revoked" fails verification
# }05
Servir un scan
# What the phone requests when a consumer scans the carrier:
curl https://id.circuleid.com/01/09506000134352 \
-H "Accept: application/json"
# A browser gets the rendered public passport instead.
# A verified recycler presenting a credential gets the treatment tier
# from the same URL — the resolver decides, not the caller.Modèles
Où chacun réside habituellement
Pipeline d’émission
Une tâche planifiée qui lit le PLM et émet les passeports de la prochaine série de production.
Ingestion d’événements
Un service qui traduit les messages WMS et MES en événements EPCIS au fil de l’eau.
Portail fournisseurs
Où les fournisseurs de rang deux soumettent et signent les allégations que vous ne pouvez pas affirmer vous-même.
Boutique en ligne
Lire le niveau public pour afficher des données de durabilité étayées sur une annonce.
Le support lui-même
Aucun code de votre part — le résolveur sert le scan directement.
Réception des reprises
Lire le niveau traitement sur une ligne de retours ou de recyclage.
Réponses
Questions fréquentes
De quel exemple partir ?
Émettre un passeport, puis ajouter un événement. Ces deux opérations couvrent l’essentiel du trafic d’une intégration et vous obligent à trancher le modèle d’identité — modèle, lot ou objet — qui est la décision dont tout dépend et la plus difficile à changer ensuite.
Dois-je gérer des attestations dès le premier jour ?
Non. Un passeport aux données non signées reste un passeport qui fonctionne ; il ne peut simplement pas démontrer qui a affirmé chaque chiffre. La plupart des programmes émettent d’abord et ajoutent les déclarations fournisseurs signées au fil de leur intégration, ce qui est aussi l’ordre que la réalité du terrain autorise.
Que reçoit réellement le consommateur lors d’un scan ?
Le niveau public du passeport, résolu depuis l’identifiant GS1 Digital Link contenu dans le support, rendu sous forme de page pour un navigateur ou renvoyé en JSON à un système qui le demande. Pas d’authentification, pas de compte, et aucun profil de la personne qui scanne.
Pouvons-nous tester sans toucher à la production ?
Oui. Les clés bac à sable se résolvent sur un nom d’hôte distinct, et les passeports du bac à sable se comportent exactement comme ceux de production. Parce qu’un passeport de production est un artefact public de longue durée, la séparation est imposée et non conventionnelle — une clé bac à sable ne peut tout simplement pas atteindre la production.
Next step
Faites tourner les deux premières avec une clé bac à sable
Émettez un passeport et ajoutez un événement. Cela suffit à trancher le modèle d’identité, la décision sur laquelle tout le reste repose.