How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

GS1 EPCIS 2.0 REST API

The normative REST binding of the GS1 EPCIS 2.0 standard — the sector's supply chain visibility event interface, describing what happened to an object, when, where and why, using Core Business Vocabulary terms. GS1 publishes the contract (OpenAPI 3.0.3, 29 paths) rather than hosting a repository: capture (POST /capture), query (GET /events plus resource-scoped views by epc, bizStep, bizLocation, readPoint, disposition and eventType), named queries (POST /queries), and mandatory webhook subscriptions (POST /queries/{queryName}/subscriptions) where the client supplies a `dest` callback URL and a signatureToken the server echoes back in a GS1-Signature header. Implementers host their own base URL; the specification declares no `servers` block.

GS1 EPCIS 2.0 REST API is one of 2 APIs that GS1 publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 2 JSON Schema definitions.

Tagged areas include EPCIS, Supply Chain Visibility, Track and Trace, Traceability, and Event. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and 2 JSON Schemas.

This API exposes 63 operations across 29 paths, organized into 5 resource areas, and defines 112 schemas. It is described by OpenAPI 3.0.3, at version 2.0.1.

63 operations 29 paths 112 schemas 3 DELETE28 GET28 OPTIONS4 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.3
API Version
2.0.1
License
Apache2
Resource Areas
5

Paths & Operations 63

Across 29 paths, the API surfaces 63 operations — 3 DELETE, 28 GET, 28 OPTIONS, 4 POST. They span 5 resource areas: Discovery, Capture, Top-level, Events, Queries. Each is listed below with its method, path, parameters, and response codes.

Discovery 29

Endpoints to obtain information about the endpoint, such as EPCIS and CBV versions or custom vocabularies.

OPTIONS
/
Query server settings, EPCIS version(s) and related vocabularies/standards.
→ 204401403406500
GET
/
Returns the list of top level resources available for this EPCIS repository.
5 params → 200401403406500
OPTIONS
/capture
Discover the settings of the capture interface.
1 param → 204401403406500
OPTIONS
/capture/{captureID}
Query the metadata of the capture job endpoint.
2 params → 204401403404406500
OPTIONS
/events
Query metadata for the EPCIS events endpoint.
1 param → 204401403406414500
OPTIONS
/events/{eventID}
Query metadata for the endpoint to access an individual EPCIS event.
2 params → 204401403404406500
OPTIONS
/eventTypes
Query metadata for the EPCIS event types endpoint.
1 param → 204401403406500
OPTIONS
/eventTypes/{eventType}
Query metadata of the EPCIS event type endpoint.
2 params → 204401403404406500
OPTIONS
/eventTypes/{eventType}/events
Query the metadata of the endpoint to access EPCIS events by event type.
2 params → 204401403404406414500
OPTIONS
/epcs
Query metadata related to the electronic product codes endpoint.
1 param → 204401403406500
OPTIONS
/epcs/{epc}
Query metadata of the electronic product code.
2 params → 204401403404406500
OPTIONS
/epcs/{epc}/events
Query the metadata of the endpoint to access EPCIS events by EPC in a URN or constrained GS1 Digital Link form (URL encoded).
2 params → 204401403404406414500
OPTIONS
/bizSteps
Query metadata related to the business steps endpoint.
1 param → 204401403406500
OPTIONS
/bizSteps/{bizStep}
Query metadata of the endpoint to access an individual business step.
2 params → 204401403404406500
OPTIONS
/bizSteps/{bizStep}/events
Query the metadata of the endpoint to access EPCIS events by business step.
2 params → 204401403404406414500
OPTIONS
/bizLocations
Query the metadata related to the business locations endpoint.
1 param → 204401403406500
OPTIONS
/bizLocations/{bizLocation}
Query the metadata of the endpoint to access an individual business location.
1 param → 204401403404406500
OPTIONS
/bizLocations/{bizLocation}/events
Query the metadata of the endpoint to access EPCIS events by business location.
2 params → 204401403404406414500
OPTIONS
/readPoints
Query the metadata related to the read points endpoint.
1 param → 204401403406500
OPTIONS
/readPoints/{readPoint}
Query the metadata of the endpoint to access an individual read point.
1 param → 204401403404406500
OPTIONS
/readPoints/{readPoint}/events
Query the metadata of the endpoint to access EPCIS events by read point.
2 params → 204401403404406414500
OPTIONS
/dispositions
Query the metadata related to the dispositions endpoint.
1 param → 204401403406500
OPTIONS
/dispositions/{disposition}
Query the metadata of the endpoint to access an individual disposition.
2 params → 204401403404406500
OPTIONS
/dispositions/{disposition}/events
Query the metadata of the endpoint to access EPCIS events by disposition.
2 params → 204401403404406414500
OPTIONS
/queries
Query the metadata of the EPCIS queries endpoint.
1 param → 204401403406500
OPTIONS
/queries/{queryName}
Query the metadata of the named queries endpoint.
2 params → 204401403404406500
OPTIONS
/queries/{queryName}/subscriptions
Query the metadata of the subscriptions endpoint.
2 params → 204401403404406500
OPTIONS
/queries/{queryName}/subscriptions/{subscriptionID}
Query the metadata of the endpoint for an individual subscription.
3 params → 204401403404406500
OPTIONS
/queries/{queryName}/events
Query the metadata of the EPCIS events query result endpoint.
2 params → 204401403404406414500
Capture 4

Endpoints to capture EPCIS events in bulk or individually.

POST
/capture
Asynchronous capture endpoint for one or more EPCIS events.
4 params body → 202400401403406413415500
GET
/capture
Returns a list of capture jobs.
6 params → 200401403406500
GET
/capture/{captureID}
Returns information about the capture job.
4 params → 200401403404406500
POST
/events
Synchronous capture interface for a single EPCIS event.
3 params body → 201400401403406409413415
Top-level 13

Endpoints to browse or retrieve information about EPCIS resources: - events - types of events - electronic product codes - business steps - business locations - read points - disp…

GET
/events
Returns all EPCIS events available in the EPCIS repository.
62 params → 200401403406414500
GET
/eventTypes
Returns all EPCIS event types currently available in the EPCIS repository.
8 params → 200401403406500
GET
/eventTypes/{eventType}
Returns all sub-resources of an EPCIS event type.
6 params → 200400401403404406500
GET
/epcs
Returns known electronic product codes.
8 params → 200401403406500
GET
/epcs/{epc}
Returns all sub-resources of an electronic product code.
2 params → 200400401403404406500
GET
/bizSteps
Returns known business steps.
8 params → 200401403406500
GET
/bizSteps/{bizStep}
Returns all sub-resources of a business step.
2 params → 200400401403404406500
GET
/bizLocations
Returns known business locations.
8 params → 200401403406500
GET
/bizLocations/{bizLocation}
Returns all sub-resources of a business location.
3 params → 200400401403404406500
GET
/readPoints
Returns known read points.
8 params → 200401403406500
GET
/readPoints/{readPoint}
Returns all sub-resources of a read point.
3 params → 200400401403404406500
GET
/dispositions
Returns known dispositions.
8 params → 200401403406500
GET
/dispositions/{disposition}
Returns all sub-resources of a disposition.
2 params → 200400401403404406500
Events 7

Endpoints that allow you to retrieve EPCIS events as Web resources.

GET
/events/{eventID}
Returns an individual EPCIS event.
8 params → 200401403404406500
GET
/eventTypes/{eventType}/events
Returns EPCIS events of a given an EPCIS event type.
62 params → 200400401403404406414500
GET
/epcs/{epc}/events
Returns EPCIS events matching the specified electronic product code.
62 params → 200400401403404406414500
GET
/bizSteps/{bizStep}/events
Returns all EPCIS events related to the business step.
62 params → 200400401403404406414500
GET
/bizLocations/{bizLocation}/events
Returns all EPCIS events related to the business location.
62 params → 200400401403404406414500
GET
/readPoints/{readPoint}/events
Returns all EPCIS events related to the read point.
62 params → 200400401403404406414500
GET
/dispositions/{disposition}/events
Returns all EPCIS events related to the disposition.
63 params → 200400401403404406414500
Queries 10

Endpoints to create large named or anonymous queries using the EPCIS Query Language. Named queries have a custom name and are stored until deleted by the user. Anonymous queries a…

GET
/queries
Returns a list of queries available.
7 params → 200401403406500
POST
/queries
Creates a named EPCIS events query.
3 params body → 201401403406409415500
GET
/queries/{queryName}
Returns the query definition.
6 params → 200401403404406413500
DELETE
/queries/{queryName}
Removes a named query and forcibly unsubscribes all active subscriptions, whether by WebSockets or Webhooks
1 param → 204401403404406500
GET
/queries/{queryName}/subscriptions
Returns active subscriptions with the option to use pagination if needed.
6 params → 200400401403404406500
POST
/queries/{queryName}/subscriptions
Creates a query subscription.
5 params body → 201401403404406415500
GET
/queries/{queryName}/subscriptions/{subscriptionID}
Returns the details of a subscription. This method is useful to verify if a subscription is still active.
5 params → 200401403404406500
DELETE
/queries/{queryName}/subscriptions/{subscriptionID}
Unsubscribes a client by deleting the query subscription.
unsubscribe 2 params → 204401403404406500
GET
/queries/{queryName}/events
Returns EPCIS events with the option to use pagination if needed. This endpoint supports query subscriptions using WebSockets.
21 params → 101200400401403404406413
DELETE
/nextPageToken/{token}
Optional endpoint that allows on-demand release of any resources associated with nextPageToken.
1 param → 204501

Schemas 112

The contract defines 112 schemas that model the data the API accepts and returns. The most detailed are sensorReport (24 properties), epcisDocument (10 properties), sensorMetadata (8 properties), Event (7 properties). Each schema is shown below with its type and property counts.

LDContext
JSON-LD @context.
Location
string
Location header of a resource as a relative or absolute URL.
RFC7807ProblemResponseBody
object
A response as specified in [RFC 7807](https://tools.ietf.org/html/rfc7807).
5 properties 2 required
QueryDefinition
object
Creating a new query with query body.
2 properties 2 required
EPCISEventsQuery
object
An EPCIS event query.
subscriptionID
string
The ID of a WebHook subscription.
dest
string
Callback URL to receive EPCIS resources and errors.
QueryName
string
Unique query name.
EPCISEvent
EPCIS Event. It must validate against the normative EPCIS JSON Schema or EPCIS SHACL .
CaptureJob
object
When EPCIS events are added through the capture interface, the capture process can run asynchronously. If the payload is syntactically correct and the client i…
EPCISXMLQueryDocument
object
A collection of EPCIS resources.
Link
string
A pagination header link. This header works together with the perPage and nextPageToken query string parameters.
PerPage
integer
This parameter helps to control the amount of data returned to the client through pagination. In the case of EPCIS events, perPage specifies the maximum number…
NextPageToken
string
Parameter that points to the next list of results when requesting a list of events that is larger than the value specified with the perPage parameter. Some tec…
Upgrade
string
The Upgrade and Connection headers are needed to open a Websocket for queries.
Connection
string
The Upgrade and Connection headers are needed to open a Websocket for queries.
EventTypeCollection
object
Event type item list
3 properties 3 required
EPCISEventTypes
The five types of EPCIS events or an extended event denoted by a URI.
TopLevelResources
string
The seven top level resources of an EPCIS.
TopLevelResourceCollection
object
3 properties 3 required
BizStepCollection
object
3 properties 3 required
DispositionCollection
object
3 properties 3 required
UriCollection
object
A list of items which are URIs such as EPCs or business locations.
3 properties 3 required
ResourceCollection
object
A collection of sub-resources that includes at least the events one (for HATEOAS discovery).
3 properties 3 required
AbstractQuerySubscription
object
This schema contains shared features of EPCIS query subscriptions. If the schema is used in a response, the secret should not be fully revealed.
3 properties 2 required
AbstractQuerySubscriptionResponse
object
This schema contains shared features of EPCIS query subscriptions response.
7 properties 3 required
QueryStreamSubscription
object
If no query schedule is specified, the client must explicitly set stream to true. This restriction is to prevent clients from accidentally subscribing to EPCIS…
1 property 1 required
QueryScheduleSubscription
object
A scheduled query subscription is a time-based query execution scheduler. EPCIS 2.0 scheduled queries are scheduled in the same manner as cron jobs. For exampl…
2 properties 1 required
GS1-Signature
string
Used to sign events sent by the repository to subscribers. The choice of signature type is implementation specific but examples would be using HMAC with SHA-25…
GS1-Query-InitialRecordTime
string
Used to specify a time to constrain what resources are considered when processing a query subscription. This value only applies the first time a subscriber rec…
GS1-Query-Min-Record-Time
string
In the context of an active query subscription, its value is set initially to initialRecordTime and then updated to the most recent execution timestamp for the…
GS1-Query-ReportIfEmpty
boolean
Flag to specify subscribed clients should be notified if the query result is empty.
GS1-Query-Second
string
Specifies that the query time must have a matching seconds value. The range for this parameter is 0 through 59, inclusive.
GS1-Query-Minute
string
Specifies that the query time must have a matching minute value. The range for this parameter is 0 through 59, inclusive.
GS1-Query-Hour
string
Specifies that the query time must have a matching hour value. The range for this parameter is 0 through 23, inclusive, with 0 denoting the hour that begins at…
GS1-Query-DayOfMonth
string
Specifies that the query time must have a matching day of month value. The range for this parameter is 1 through 31, inclusive.
GS1-Query-Month
string
Specifies that the query time must have a matching month value. The range for this parameter is 1 through 12, inclusive.
GS1-Query-DayOfWeek
string
Specifies that the query time must have a matching day of week value. The range for this parameter is 1 through 7, inclusive, with 1 denoting Monday, 2 denotin…
GS1-Query-Stream
boolean
If no schedule is specified and stream is true, the standing subscription SHALL report immediately whenever a captured EPCIS event matches the query criteria.
version
string
GS1-EPCIS-Version
GS1-EPCIS-Min
GS1-EPCIS-Max
GS1-CBV-Version
GS1-CBV-Min
GS1-CBV-Max
GS1-EPC-Format
string
GS1-CBV-XML-Format
string
GS1-Extensions
object
GS1-Vendor-Version
GS1-EPCIS-Capture-Limit
integer
GS1-EPCIS-Capture-File-Size-Limit
integer
GS1-Capture-Error-Behaviour
string
GS1-Next-Page-Token-Expires
string
vocabulary
object
2 properties 1 required
vocabularyElement
object
3 properties 1 required
attribute
object
2 properties 1 required
eventList
array
vocabularyList
array
resultsBody
object
2 properties 1 required
queryResults
object
3 properties 2 required
epcisQueryDocumentBody
object
1 property 1 required
epcisHeader
object
1 property
epcisDocument
object
10 properties 5 required
epcisQueryDocument
object
6 properties 3 required
EPCIS-Document
uri
string
time
string
decimal
number
boolean
boolean
hexBinary
string
string
string
action
string
persistentDisposition
epcList
array
quantityList
array
uom
string
eventID
certificationInfo
errorDeclaration
object
3 properties 1 required
quantityElement
object
3 properties 1 required
bizTransaction
object
2 properties 1 required
readPoint
object
1 property 1 required
bizLocation
object
1 property 1 required
source
object
2 properties 2 required
destination
object
2 properties 2 required
sensorElement
object
2 properties 1 required
sensorReportList
array
sensorReport
object
24 properties 1 required
sensorMetadata
object
8 properties
ilmd
object
Event
object
7 properties 2 required
common-event-properties
Extended-Event
disposition
vocab-uri
string
vocab-other-uri
string
vocab-nonGS1WebVoc-uri
string
required-ld-context
object
1 required
id
string
error-reason
bizTransaction-type
source-dest-type
measurementType
sensorAlertType
component
ObjectEvent
bizStep
AggregationEvent
TransactionEvent
TransformationEvent
AssociationEvent

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

gs1-epcis-2-0-1-openapi.json Raw ↑

Other APIs GS1 publishes across the network.

GS1 Digital Link Resolver (id.gs1.org)
Where this information came from

This is an independent, third-party profile of GS1 EPCIS 2.0 REST API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.