/api/v1/passports/{id}/epcisExport a passport's EPCIS events
Exports one passport's full event history — supply-chain, service, ownership, and captured events — as a single standards-valid GS1 EPCIS 2.0 EPCISDocument in JSON-LD. The document carries the GS1 @context, type: "EPCISDocument", schemaVersion: "2.0", and an epcisBody.eventList of every event TracePass holds for the passport. The passport's Digital Link URI is the EPC on each event, so the export drops straight into any EPCIS-aware repository or auditor toolchain.
Alternate addressing: GET /api/v1/passports/by-serial/{serial}/epcis returns the same EPCISDocument for a passport addressed by its serial number instead of its ID — handy when your systems key on the GS1 serial rather than the TracePass passport ID. Counts as one passport read.
EPCIS export is included on every plan, Free included; on a workspace where support has switched it off the endpoint returns 403 {"error":"epcis_export_not_available"}. An unknown passport id returns 404.
Path parameters
- idrequired
string (24 hex chars)
Passport ID. Use
GET /api/v1/passports/by-serial/{serial}/epcisto address the passport by its GS1 serial number instead.
Headers
- Authorizationrequired
string
Bearer <token>— either atp_API key (Developer → API Keys; simplest, for server-to-server) or an OAuth 2.0 access token (Developer → OAuth Apps; for user-authorized apps, scoped + revocable). The Authentication page has the full OAuth flow and scope list.e.g. Bearer tp_REDACTED_xxxxxxxxxxxx
Request
# By passport ID
curl -sS https://app.tracepass.eu/api/v1/passports/6650b2c3d4e5f6a7b8c9d0e1/epcis \
-H "Authorization: Bearer tp_REDACTED_xxxxxxxxxxxx"
# By GS1 serial number
curl -sS https://app.tracepass.eu/api/v1/passports/by-serial/BP-48V-100-000001/epcis \
-H "Authorization: Bearer tp_REDACTED_xxxxxxxxxxxx"Response
{
"@context": "https://ref.gs1.org/standards/epcis/2.0.0/epcis-context.jsonld",
"type": "EPCISDocument",
"schemaVersion": "2.0",
"creationDate": "2026-05-09T12:00:00.000Z",
"epcisBody": {
"eventList": [
{
"type": "ObjectEvent",
"eventID": "ni:///sha-256;9f86d0...?ver=CBV2.0",
"eventTime": "2026-05-09T11:58:00.000Z",
"eventTimeZoneOffset": "+02:00",
"epcList": ["https://id.tracepass.eu/p/01/04012345000016/21/BP-48V-100-000001"],
"action": "OBSERVE",
"bizStep": "shipping",
"bizLocation": { "id": "https://id.tracepass.eu/loc/acme-batteries-de" }
}
]
}
}