1 INTRODUCTION

1.1 Purpose and Scope

The purpose of this document is to provide a common definition for basic entities managed by Copernicus Space Component Ground Segment service elements. These definitions are used to derive the RESTful Application Programming Interfaces (API) of the GS elements through which production, archival and distribution of Copernicus Sentinel mission data products may be coordinated.

This specification drives the definition of the OData v4 standard for RESTful APIs for the GS elements, evolving from the v2 standard successfully adopted within the Copernicus Sentinel Data Distribution Service (DHuS) put in place by ESA for the initial missions operations. OData entities and enumerations are detailed, including applicability to GS elements and commonalities. In addition, a generic Reporting interface is described, intended for the collection of reporting parameters which are expected from each GS element.

The document is intended to compliment the lower-level ‘per-GS element’ ICDs, which describe in more detail the specifics of the OData APIs as applicable to each GS element and any intended sequencing expected to achieve the API objectives. This document is intended to capture the common definition for the basic entities, and is presented as a guideline for the evolution of the lower level ICDs. In case the APIs within the lower-level ICDs are considered to be further evolved the definitions in this document should be preferred in order to ensure a harmonised approach in the overall GS management avoid any ad-hoc implementation of the interfacing between GS elements.

1.2 Structure of the Document

This document is structured as follows:

  • Section 1 (this section): Introduction, providing document structure, reference documents and definitions/acronyms

  • Section 2 describes the Copernicus GS Data Access context and elements and introduces the OData API. Additional common factors, including priority/quota and authorisation/authentication are described.

  • Section 3 provides a generic OData interface description, including details of the entities and enumerations, and applicability to each GS element.

  • Section 4 describes the generic reporting interface.

  • Section 5 lists the OData enumerations, the entities to which they are applicable and the available list of values.

  • Section 6 describes the Interface Delivery Point domain naming.

  • Appendix A provides a summary of the interface delivery points’ conformance approach.

1.3 Applicable Documents

[AD-1] CSC Sentinel-1 Product Unit Definition and Metadata ICD [ESA-EOPG-EOPGC-SP-]

[AD-2] CSC Sentinel-2 Product Unit Definition and Metadata ICD [ESA-EOPG-EOPGC-SP-2]

[AD-3] CSC Sentinel-3 Product Unit Definition and Metadata ICD [ESA-EOPG-EOPGC-SP-3]

[AD-4] CSC Sentinel-5P Product Unit Definition and Metadata ICD [ESA-EOPG-EOPGC-SP-4]

[AD-5] CSC POD Product Unit Definition and Metadata ICD [ESA-EOPG-EOPGC-SP-5]

1.4 Reference Documents

[RD-1] CSC Operations – ESA Framework – Ground Segment Architecture [ESA-EOPG-EOPGC-TN-7]

[RD-2] CSC Operations – ESA Framework - Master Interface Control Document [ESA-EOPG-EOPGC-IF-6]

[RD-3] Long Term Archive (LTA) Interface Control Document [ESA-EOPG-EOPGC-IF-2]

[RD-4] Production Interface Delivery Point (PRIP) Interface Control Document [ESA-EOPG-EOPGC-IF-3]

[RD-5] Data Distribution Interface Control Document, [ESA-EOPG-EOPGC-IF-4]

[RD-6] Auxiliary Data Interface Delivery Point Specification [ESA-EOPG-EOPGC-IF-10]

[RD-7] OData Documentation – OData – the Best Way to REST – v4.01 ISO standard http://www.odata.org/documentation/

[RD-8] OData Protocol http://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html

[RD-9] OData JSON Format Version 4.01 https://docs.oasis-open.org/odata/odata-json-format/v4.01/odata-json-format-v4.01.html

1.5 Definitions

API – Application Programming Interface – a set of routines, protocols, and tools for building software applications.

Batch Order – A client request to trigger the delivery of products making up a particular Batch (resulting from a Bulk), making them available for download by the requesting user.

Bulk Request – A client request to trigger the creation of a Bulk, defined by a list of products or query filter parameters and a Batch size. The GS element breaks the Bulk into Batches, based on the Batch size provided and the most efficient ordering of products.

Client – any HTTP client performing HTTP/OData requests to the LTA

Order – A client request for a data product to be retrieved by the GS element and made available for download by the requesting user.

Product – Packaged set of data files corresponding to EO or auxiliary product format specification

Quota – Refers to the maximum number of requests per user to be processed in parallel.

Subscription – A client request for notification of future products entering the GS element which fulfil particular query filter parameters.

1.6 List of Acronyms

AD – Applicable Document

ADG – Auxiliary Data Gathering

AIP – Archive Interface delivery Point

API – Application Programming Interface

AUX – Auxiliary

AUXIP – Auxiliary Interface Delivery Point

CSC – Copernicus Space Component

DA – Data Access Service

DHuS – ESA Data Distribution Service

E2E – End-to-End

EO – Earth Observation

ESA – European Space Agency

FIFO – First In, First Out

GS – Ground Segment

HTTP(S) – Hypertext Transfer Protocol (Secure)

ID – Identifier

ICD – Interface Control Document

JSON – JavaScript Object Notation

LTA – Long Term Archive

OData – Open Data Protocol

ODP – On Demand Production system

POD – Precise Orbit Determination

PRIP – PReduction Interface delivery Point

RD – Reference Document

REST – Representational State Transfer

TBD – To Be Defined

TBW – To Be Written

URI – Uniform Resource Identifier

UTC – Coordinated Universal Time

UUID – Universally Unique Identifier

2 CSC GROUND SEGMENT AND ODATA API OVERVIEW

2.1 Ground Segment Context

To meet its objectives, the CSC Ground Segment architecture [RD-1] includes the following main functionalities:

  • Data Acquisition

  • Mission Planning, including the definition of the instrument sensing and downlink plan

  • Systematic and on-demand production

  • Data preservation

  • User products access

  • Precise orbit determination

  • User products calibration and validation and algorithms and processors maintenance

  • Production quality verification and maintenance

  • Operations performance monitoring

  • Spacecraft operations and control, including in particular:

    • Mission Control System operations (including mission scheduling)

    • Telemetry, telecommand and tracking operations within the S-band frequency

    • Satellite orbit maintenance, debris monitoring.

  • Satellite Platform and Instrument(s) performance monitoring

  • Satellite post launch maintenance activities

Some of these functions are common to all Sentinel missions while other are specifically implemented and operated for each Sentinel mission. In the specific case of Sentinel-3, spacecraft operations have been handed over to EUMETSAT.

The functions composing the Ground Segment architecture are implemented in the form of operational services, complying to a set of applicable input and output interfaces and to the corresponding operational performance requirements.

Data flow interfaces, for systematic data transfer between services, are based on the concept of small data cache areas, referred to as data “interface delivery points” (IP) hereafter. Each function or service generating a systematic or routine data flow to be further managed by one or more services, is making the output data available in an interface delivery point located on a cloud-based environment, which is logically considered as part of, and under the responsibility of, the data source service.

The high level architectural decomposition is provided in the figure below, including whenever necessary multiple instances of the same service to follow the principles indicated earlier. The number of instances illustrated for each service in the figure is not intended to represent a precise number of instances but the fact that multiple instances are present for the same service or function.

img-0.jpeg

Figure 1: High level decomposition of the ESA Copernicus Ground Segment Architecture

The components composing the Ground Segment architecture listed below:

  • Mission planning (MP)

  • Data Acquisition (ACQ)

  • Systematic Processing and routine quality control (PR)

  • On-Demand Production (ODP)

  • Auxiliary Data Gathering (ADG)

  • Precise Orbit Determination (POD)

  • Data Preservation (Long Term data Archiving (LTA))

  • Data Access, including Data Access (DA)

  • E2E Operations performance monitoring

  • Flight Operations Services (FOS)

  • Instrument data processing algorithm and operational processor maintenance

  • Instrument and products calibration and validation

  • Security Monitoring

  • E2E Operations coordination

  • Satellite Post Launch Support services

The interfaces between the GS elements are traced within the Master Interface Control Document [RD-2]

The CSC Ground Segment Architecture aims to harmonise the interfaces between the “interface delivery points” (IP) and avoid ad-hoc implementation of interfaces so that the GS elements may be independently

operated and interchanged with minimum configuration. To this end a common model that allows a standard definition of the data, instructions and monitoring information exchanged between elements is pursued through the various interface control documents applicable to the Services [RD-3][RD-4][RD-5][RD-6].

2.2 OData API Overview

The common model chosen to be applied across the GS elements is following the OData Standard [RD-7].

The OData protocol [RD-8] defines a standard framework for describing HTTP RESTful interfaces towards a referenced data model (entities, relationships, entity sets, actions, and functions). The protocol supports describing the service interface model ($metadata) and allows this model to be encoding in standard patterns ($format). The model provides query capabilities ($filter), paging capabilities ($top, $skip etc.), as well as common patterns for functions, actions, media download ($value), etc.

In line with the scope of the document, this Common Definition does not attempt to further define the needed filter capabilities etc. to be supported for each Entity. These details are left to the ‘per-GS element’ ICDs and the compliance test suites (Appendix A). This document provides instead a common / high level view of the common Entities that are necessarily supported by the various GS elements.

All examples are provided in the JSON encoding [RD-9], which is the mandatory encoding for inter GS element interactions. Additional encodings are in general only relevant for the Data Access element, providing backwards compatibility towards the initial operations.

3 GENERIC ODATA INTERFACE DESCRIPTION

OData entities and enumerations adopted by each GS element are described in this section, including the applicability to each element. For specific examples of each property and details of the operations which may be executed on each entity (e.g. ordering), the specific lower level per-element ICDs should be referred to (RD-3 - RD6).

3.1 Overall OData Entities to GS Elements Mapping

The table below lists all OData Entities and their applicability to each Ground Segment: the Production Interface Delivery Point (PRIP), which encompasses Systematic Production (PR) and On-Demand Processing (ODP), the Data Access (DA), the Long-Term Data Archiving (LTA) and the Auxiliary Data Interface Delivery Point (AUXIP).

OData Entity Ground Segment Element
Production
Interface (PRIP)
Data Access (DA)Long-Term Data
Archiving (LTA)
Auxiliary
Interface (AUXIP)
ProductXXXX
AttributesXXXX
CollectionsX
Nodes/ComponentsTBD
Deleted ProductX
OrderXX
ProductionOrderXX
WorkflowX
WorkflowOptionsX
ProductionOrder
Notification
X
BulkX
BatchOrderX
SubscriptionXXX
NotificationXXX
System & User-Related
SystemXXXX
UserXXXX
SystemRoleXXXX
RestrictionX
Monitoring-Related
EventXXX
MetricXXXX

Table 1 - CSC GS Applicability of OData Entities

3.2 OData Entities Description

The following sections provide a description of the properties of each OData element, including the type and the mapping to each GS element. Descriptions are on a generic level; for further details on the specific description for each element, requisiteness of each property and examples, the lower level element-specific ICDs should be referred to.

3.3 Product

In the context of the Copernicus GS, a Product is a packaged set of data files corresponding to a well-defined EO or auxiliary product format specification. The OData definition of the Product entity provides the basic elements to describe the product and facilitate the download and the check of integrity during the circulation between GS elements and basic reporting for the handling of the product. The Product definition includes footprint and sensing date that enables the basics for an EO related temporal spatial query directly on this element¹. The Product definition avoids to bundle all EO metadata in the basic element definition, preferring a generic approach using the Attributes entity allowing a high degree of flexibility in defining any relevant query condition without creating complex associations to groupings of attributes.

Products Property Type Description GS Element Applicability
PRIPDALTAAUXIP
Id2GuidIt is a universally unique identifier (UUID).
The Id is a local identifier for the product
instance within the GS element.
XXXX
NameStringData file name (according to the Sentinel
file naming conventions) plus the file
extension
XXXX
ContentTypeStringThe Mime type of the productXXXX
ContentLengthInt64Actual size in bytes (B) of the downloadable
product package
XXXX
OriginDateDateTimeOf
fset
Date and time of the product at the source
(e.g. Publication date time on the PRIP).
Time is in UTC in the format YYYY-MM-
DDThh:mm:ss.sssZ. This element is used to
calculate the latency in publication of the
GS element.
XXX3X
PublicationDateDateTimeOf
fset
Publication date and time of the product
(time at which the product becomes
accessible for retrieval to the client within
the interface delivery point). Time is in
UTC in the format YYYY-MM-
DDThh:mm:ss.sssZ
XXXX
ModificationDat
e
DateTimeOf
fset
Date when the product metadata was last
modified. Time is in UTC in the format
YYYY-MM-DDThh:mm:ss.sssZ
XX
OnlineBooleanIndication of current online presence.
Default: false
XX
EvictionDateDateTimeOf
fset
Date when the data file will be removed
from the Archive delivery Interface Point.
Time is in UTC in the format YYYY-MM-
DDThh:mm:ss.sssZ
Only provided if Online = true
XXXX
Checksum
(Algorithm,
Value and
ChecksumDate)
Checksum[]Represents the known checksums for the
product's physical data, providing a unique
value for supporting download integrity
check as well as the associated Algorithm
(string format). At least the MD5 checksum
is mandatory. Each checksum also includes
the ChecksumDate when it was calculated,
in UTC in the format YYYY-MM-
DDThh:mm:ss.sssZ.
Example:
"Checksum":
[
{
"Algorithm":"MD5",
"Value":"e8a303bf3d85200
514f727db60e7db65"
"ChecksumDate":"2018-01-
22T18:00:00.000Z",
}
]
XXXX
ContentDateTimeRangeThe sensing range period. Compound
property with start and end times in UTC in
the format YYYY-MM-
DDThh:mm:ss.sssZ:
"ContentDate":
{
"Start": "YYYY-MM-
DDThh:mm:ss.sssZ",
"End": "YYYY-MM-
DDThh:mm:ss.sssZ"
}
XXXX
ProductionTypeProductionT
ype Enum
ProductionType values:
- systematic_production
- on-demand default
- on-demand non-default
Where:
- systematic_production means that standard
systematic production has been applied
- on-demand default means that the
production is the result of an on-demand
processing request with default workflow
options applied.
X
- on-demand non-default means that the
production is the result of an on-demand
processing request with non-default
workflow options applied.
NB: while 'on-demand non-default'
signifies that options have been applied, it
does not indicate precisely which options.
The selected options will, however, be
reflected within the attributes of the product.
Footprint4GeographyFootprint of the productXXX
GeoFootprint5GeographyMandatory for georeferenced products,
following the definition in [RFC7946], with
the following modification, according to
[OData JSON Format Version 4.01 –
Section 7.1]:
- Keys should be ordered with type first,
then coordinates, then any other keys
Example:
"GeoFootprint":{
"type": "Polygon",
"coordinates": [
[
[-59.3169, 2.6367],
[-63.105, -14.0539],
[-60.8506, -14.4245],
[-57.1309, 2.3269],
[-59.3169, 2.6367]
]
]
}
XXX

Table 2 – Product Entity Properties and GS Applicability

¹ Note, there could be the case for defining EO product (with footprint and sensing date) a specialization of simpler Product Entity, but from current experience it seems appropriate to keep the basic definition intact.

² For this, and for all other instances of the use of ‘Guid’ for IDs in this document, it should be noted that the IDs are UUIDs (Universally Unique Identifiers) of the (OData) Guid type.

³ Relevant only for the ADG AUXIP and may not be applicable to all AUX product types. It is only useful as information for systematic processing.

⁴ Will be deprecated in favour of GeoFootprint starting from TBC date

⁵ To be implemented starting from January 2023

3.4 Attributes

The Attributes entity provides the model for any other Product metadata. To assure a harmonized approach across all GS elements a precise mapping of each metadata attribute to the product format specification is performed. This is described in a series of documents dedicated to each mission, see section 1.3.

Attributes Property Type Description GS Element Applicability
PRIPDALTAAUXIP
NameStringString name of the attributeXXXX
ValueTypeStringThe type of attribute. This shall correspond
to the following6:
- String
- Integer
- DateTimeOffset
- Double
- Boolean
XXXX
ValueDepends on
ValueType
The value of the attribute, depending on the
ValueType
XXXX

Table 3 – Attributes Entity Properties and GS Applicability

3.5 Collection

In the context of the Copernicus GS, a Collection is a grouping of Products that may correspond to defined criteria, e.g. instrument, product types, data timeliness etc. Collections may be used as part of standard catalogue queries, and users may be authorized to access only specific Collections.

Collections Property Type Description GS Element Applicability
PRIPDALTAAUXIP
NameStringCollection nameX
DescriptionStringCollection textual descriptionX
ScopeEnumPublic
Private
X
CreationDateDateTimeOffset Date of collection creationDate of collection creationX

Table 4 – Collection Entity Properties and GS Applicability

3.6 Nodes/Components

Supporting the capability to inspect / download components from the product package. This definition is due for further detailing.

⁶ Only these values shall be allowed (e.g. Edm.DateTimeOffset or DateTimeOffsetAttribute is not allowed)

3.7 Deleted Product

The DeletedProduct Entity is provided in the Data Access element to provide a reference to data which have been deleted from the GS due to a quality issue or GS anomaly. The Entity allows clients to be routinely informed of any deletion and data and thus align any external catalogue or system.

DeletedProduct Property Type Description GS Element Applicability
PRIP DA LTA AUXIP
Id Guid It is a universally unique identifier (UUID). The Id the identifier initially used to publish the product instance within the GS element. X
Name String Data file name (according to the Sentinel file naming conventions) plus the file extension) X
PublicationDate DateTimeOffset Publication date and time of the product (time at which the product originally become accessible for retrieval to the client within the LTA). Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ X
DeletionDate DateTimeOffset Date and time of the product deletion from the Ground Segment element. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ X
DeletionCause String Reason for the deletion X
Checksum (Algorithm, Value and ChecksumDate) Checksum[] Represents the known checksums for the product's physical date, providing a unique value for supporting download integrity check. At least MD5 checksum is mandatory. Each checksum also includes the ChecksumDate when it was calculated, in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ X
ContentDate TimeRange The sensing range period. Start and end times are in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ X
Footprint 7 Geography Footprint of the product X
GeoFootprint 8 Geography Footprint of the product following the GeoJSON format

Table 5 - DeletedProduct Entity Properties and GS Applicability

⁷ To be deprecated in favour of GeoFootprint starting from TBC date

⁸ To be implemented starting from January 2023

3.8 Order

In the context of the Copernicus GS, an Order is a client request for an offline data product to be retrieved by the GS element and made available for download by the requesting user.

Order Property Type Description GS Element Applicability
PRIPDALTAAUXIP
IdGuidIt is a universally unique identifier
(UUID).
The Id is a local identifier for the Order
instance within the element, assigned
upon Order creation.
XX
StatusJobStatus
enumeratio
n
JobStatus value:
- queued
- in_progress
- completed
- failed
- cancelled
XX
StatusMessageStringText message providing additional
information on the returned status, e.g.
the reason for a failure.
XX
OrderSizeInt64Actual size in bytes (B) of the data
composing the Order (which would be
the ProductSize unless any
transformation is performed, e.g. band
extraction)
Only provided if the order is in status
completed
XX
SubmissionDateDateTime
Offset
Date and time at which the order was
received by the element. Time is in
UTC in the format YYYY-MM-
DDThh:mm:ss.sssZ
XX
EstimatedDateDateTime
Offset
Estimated date and time when the
product will be available for download
from the Archive delivery Interface
Point. Time is in UTC in the format
YYYY-MM-DDThh:mm:ss.sssZ
The EstimatedDate is assigned upon
initial Order response and is not
subsequently updated. The
EstimatedDate is assigned on the basis
of the retrieval queue when the order is
processed (the actual CompletedDate
could be impacted by subsequent
incoming higher priority orders)
XX
Origin DateDateTime
Offset
Date and time when the product was
available for download from the
delivery Interface Point. Time is in
X
UTC in the format YYYY-MM-
DDThh:mm:ss.sssZ
Only provided if the order is in status
completed
CompletedDateDateTime
Offset
Date and time when the product was
available for download by the ordering
client. Time is in UTC in the format
YYYY-MM-DDThh:mm:ss.sss
Only provided if the Order is in status
completed
XX
EvictionDateDateTime
Offset
Date when the Product related to the
Order will be removed from the
Archive delivery Interface Point. Time
is in UTC in the format YYYY-MM-
DDThh:mm:ss.sssZ
Only provided if the Order is in status
completed
XX
PriorityInt64Priority of the order. It is an integer
from 1-100, where 100 is the highest
priority.
There is always a priority associated to
an order: if it is not set within the Order
Request, then it is automatically set to
the default priority assigned to the user.
If the Order Request sets a priority
higher than the highest priority
assigned to the user then it is
automatically set at the highest priority
assigned.
XX
NotificationEndp
oint
StringURI used by the LTA for product
download readiness notifications,
should these be required. If not
provided, no notifications will be sent.
X
NotificationEpUs
ername
StringThe username associated with the
Endpoint URI provided.
Mandatory if Endpoint is provided, and
requires authentication.
X
NotificationEpPa
ssword
StringThe password associated with the
Endpoint URI provided.
Shall be suitably secured to not be
disclosed in subsequent queries via the
OData interfaces.
X

Table 6 – Order Entity Properties and GS Applicability

3.9 Bulk

A Bulk is an entity created following a client request to trigger bulk retrieval of a set of data, defined by a query filter parameters and a Batch size. The GS element breaks the Bulk into Batches, based on the Batch size provided and the most efficient ordering of products.

Bulk Property Type Description GS Element Applicability
PRIPDALTAAUXIP
IdGuidIt is a universally unique identifier (UUID).
The Id is a local identifier for the Bulk
instance within the element, assigned upon
Bulk creation.
X
StatusJobStatus
enumeratio
n
JobStatus value:
- created
- in_progress
- completed
- failed
- cancelled
X
StatusMessageStringText message providing additional
information on the returned status, e.g. the
reason for a failure. Example values are:
If status = 'created'
'Bulk has been created but no BatchOrders
have been triggered'
If status = 'in_progress'
'One or more BatchOrders are under
processing'
If status = 'completed':
'requested products of all BatchOrders
comprising the Bulk are in status
'completed''
If status = 'failed':
'at least one product retrieval has failed'
'at least one product currently unavailable'
'at least one product not found on LTA'
If status = cancelled:
'Bulk cancelled by user'
X
FilterParamStringThe filter parameters of the Bulk request
(refers to the $filter= parameter of any
Products? query)
X
OrderbyParamStringOptional specification of the sorting order
for the products within the batches. This
would override any ordering from the
element and could result in a less efficient
Bulk extraction, so should be used only if
critical for the organisation of the Bulk
(refers to the $orderby= parameter of any
Products? query)
X
BatchsizeProductsInt64The maximum number of products making
up each child BatchOrder making up the
Bulk. If this number causes the
BatchsizeVolume to be exceeded then the
number is limited to that which make up the
BatchsizeVolume.
The BatchsizeProducts serves as an optional
information of the client to the service. The
service shall be eligible to overwrite the
value specified by the client.
If not provided, a configurable default
BatchsizeProducts value is used
X
BatchsizeVolumeInt64The maximum volume of each child
BatchOrder making up the Bulk, in GiB.
This value takes precedence of the
BatchsizeProducts value.
The BatchsizeVolume serves as an optional
information of the client to the service. The
service shall be eligible to overwrite the
value specified by the client.
If the value exceeds a configurable default
maximum LTA BatchsizeVolume value,
then the BatchsizeVolume is limited to this
maximum value.
If not provided then the maximum default
BatchsizeVolume value is used.
X
SubmissionDateDateTime
Offset
Date and time at which the Bulk request was
received by the element. Time is in UTC in
the format YYYY-MM-DDThh:mm:ss.sssZ
X
CompletedDateDateTime
Offset
Date and time when all child BatchOrders
were in status completed. Time is in UTC in
the format YYYY-MM-DDThh:mm:ss.sssZ
Only provided when status is completed.
X
NotificationEndpo
int
StringURI used by the element for product
download readiness notifications, should
these be required. If not provided, no
notifications will be sent.
X
NotificationEpUse
rname
StringThe username associated with the EndPoint
URI provided
Mandatory if EndPoint is provided, and
requires authentication.
X
NotificationEpPas
sword
StringThe password associated with the EndPoint
URI provided
Shall be suitably secured to not be disclosed
in subsequent queries via the OData
interfaces
X

Table 7 – Bulk Entity Properties and GS Applicability

3.10 BatchOrder

A BatchOrder entity is a client request to trigger the delivery of products making up a particular Batch (resulting from a Bulk), making them available for download by the requesting user.

BatchOrder Property Type Description GS Element Applicability
PRIPDALTAAUXIP
IdGuidIt is a universally unique identifier (UUID).
The Id is a local identifier for the BatchOrder
instance within the element, assigned upon
BatchOrder creation.
X
StatusJobStatus
enumerati
on
JobStatus value:
- queued
- in_progress
- completed
- failed
- cancelled
Where:
- queued means the BatchOrder is queued and
has not yet been triggered
- in_progress means that the products making
up the BatchOrder are being retrieved and
disseminated to the AIP
- completed means that all products making up
the BatchOrder were successfully disseminated
to the AIP and are available for download
- failed means the retrieval and dissemination of
one or more products making up the BatchOrder
has failed
- cancelled means that the BatchOrder has been
cancelled by the user (while in status queued or
in_progress)
X
StatusMessageStringText message providing additional information
on the returned status, e.g. the reason for a
failure. Example values are:
If status = 'queued':
'BatchOrder request is queued'
If status = 'in_progress':
'BatchOrder is under processing'
If status = 'completed':
'requested products of BatchOrder are
available'
If status = 'failed':
'at least one product retrieval has failed'
'at least one product currently unavailable'
'at least one product not found on LTA'
X
If status = cancelled:
'BatchOrder cancelled by user'
OrderSizeInt64Sum of actual size in bytes (B) of the data of all
products making up the BatchOrder.
Only provided if the BatchOrder is in status
completed
X
SubmissionDateDateTime
Offset
Date and time at which the BatchOrder was
triggered (i.e. changed from status created to
status in_progress). No SubmissionDate is
provide when the BatchOrder is in status
created, or in status cancelled should the
BatchOrder have been cancelled before it was
triggered. Time is in UTC in the format YYYY-
MM-DDThh:mm:ss.sssZ
X
EstimatedDateDateTime
Offset
Estimated date and time when the products
making up the BatchOrder will be available for
download from the Archive delivery Interface
Point. Time is in UTC in the format YYYY-
MM-DDThh:mm:ss.sssZ
The EstimatedDate is assigned when the
BatchOrder is triggered (it is not provided for
status created) and is not subsequently updated.
The EstimatedDate is assigned on the basis of
the retrieval queue when the BatchOrder is
processed (the actual CompletedDate could be
impacted by subsequent incoming higher
priority orders)
X
CompletedDateDateTime
Offset
Date and time when the products composing the
BatchOrder were all available for download
from the Archive delivery Interface Point. Time
is in UTC in the format YYYY-MM-
DDThh:mm:ss.sssZ
Only provided when Status is completed.
X
PriorityInt64Priority of the BatchOrder. It is an integer from
1-100, where 100 is the highest priority.
There is no priority associated with a
BatchOrder when it is in status created. In other
statuses there is always a priority associated to a
BatchOrder: if it is not set within the
BatchOrder triggering request, then it is
automatically set to the default priority assigned
to the user. If the BatchOrder triggering request
sets a priority higher than the highest priority
assigned to the user then it is automatically set
at the highest priority assigned.
X

Table 8 – BatchOrder Entity Properties and GS Applicability

3.11 Workflow

The workflow entity is applicable to the On-Demand Processing, as part of a ProductionOrder. Following the initial identification of an input product to which on-demand processing is to be applied, the On-Demand PRIP (ODPRIP) Client may query the ODPRIP Service for relevant Workflows to apply.

Workflow Properties Type Description GS Element Applicability
PRIPDALTAAUXIP
IdGuidThe Id is a local unique identifier for
the Workflow instance within the
ODPRIP, assigned upon Workflow
creation.
XX
NameStringShort name of the workflowXX
DescriptionStringTextual description of the workflow,
including details of the processor
version and configuration applicable
XX
InputProductTypeStringProduct Type of the Input ProductXX
OutputProductTypeStringProduct Type of the Output ProductXX
WorkflowVersionStringVersion number applicable to the
workflow
XX

Table 9 - Workflow Entity Properties

3.12 WorkflowOptions

The WorkflowOptions refer to the options that a Client can select as part of a ProductionOrder workflow. Each Workflow may include zero or more client-selectable WorkflowOptions.

WorkflowOptions Properties Type Description GS Element Applicability
PRIPDALTAAUXIP
NameStringThe name of the optionXX
DescriptionStringTextual description of the optionXX
TypeStringType of the optionXX
DefaultStringThe default value of the option, if
there is one
XX
ValueValue[]Array representing all possible
values of the option:
- Option 1
- Option 2
- Option 3
- etc.
XX

Table 10 - WorkflowOptions Entity Properties

3.13 ProductionOrder

The On-Demand Processing API allows a user to request the on-the-fly processing of a parent (input) product into a higher level (output) product. This is achieved by creating a ProductionOrder entity which specifies the product to be used as input, the workflow to apply, and the options, if any, for customising the workflow.

ProductionOrder Properties Type Description GS Element Applicability
PRIPDALTAAUXIP
IdGuidThe Id is a local unique identifier for the
ProductionOrder instance within the ODPRIP,
assigned upon ProductionOrder creation.
XX
StatusJobStatus
enumeration
JobStatus value:
- queued
- in_progress
- completed
- failed
- cancelled
Where:
- queued means that the ordered production
request is in the queue to be performed
- in_progress means that the ordered production
request is being performed
- completed means that that the ordered output
product has been produced is available for
download
- failed means the production of the ordered
output product has failed
- cancelled means that the ProductionOrder has
been cancelled by the user (while in status
in_progress)
XX
StatusMessageStringText message providing additional information
on the returned status, e.g. the reason for a
failure. Example values are:
If status = 'queued':
'request is queued for processing'
If status = 'in_progress':
'request is under processing'
If status = 'completed':
'requested output product is available'
If status = 'failed':
'production has failed'
'input product currently unavailable'
'input product not found on LTA'
If status = cancelled:
'request cancelled by user'
XX
OrderOutputSizeInt64Actual size in bytes (B) of the output Product
composing the Order.
XX
Only provided if the ProductionOrder is in status
completed
SubmissionDateDateTime
Offset
Date and time at which the ProductionOrder was
received by the ODPRIP. Time is in UTC in the
format YYYY-MM-DDThh:mm:ss.sssZ
XX
EstimatedDateDateTime
Offset
Estimated date and time when the product will
be available for download from the ODPRIP.
Time is in UTC in the format YYYY-MM-
DDThh:mm:ss.sssZ
The EstimatedDate is assigned upon initial
ProductionOrder response and is not
subsequently updated. The EstimatedDate is
assigned on the basis of the queue when the
ProductionOrder is processed (the actual
CompletedDate could be impacted by
subsequent incoming higher priority orders)
XX
CompletedDateDateTime
Offset
Date and time when the product was available
for download from the ODPRIP. Time is in
UTC in the format YYYY-MM-
DDThh:mm:ss.sssZ
Only provided if the ProductionOrder is in status
completed
XX
EvictionDateDateTime
Offset
Date when the Product related to the order will
be removed from the ODPRIP. Time is in UTC
in the format YYYY-MM-DDThh:mm:ss.sssZ
Only provided if the ProductionOrder is in status
completed
XX
PriorityInt64Priority of the ProductionOrder. It is an integer
from 1-100, where 100 is the highest priority.
There is always a priority associated to a
ProductionOrder: if it is not set within the
ProductionOrder Request, then it is
automatically set to the default priority assigned
to the user. If the ProductionOrder Request sets
a priority higher than the highest priority
assigned to the user then it is automatically set at
the highest priority assigned.
XX
InputProductRefe
rence (Reference,
ContentDate)
InputProduct
Reference
Complex type used to unambiguously identify
the input product. It contains:
- Reference (String): Identifier of the
product, typically the product file name
or other similar value
- ContentDate (TimeRange): The
sensing range period. S Start and end
times are in UTC in the format YYYY-
MM-DDThh:mm:ss.sssZ
XX
At least one of the Reference or the ContentDate
must be included.
The optionality and precise definition of the
InputProductReference should be described in
an explicit tailoring, see for example Annex A.
WorkflowIdGuidThe Id is a local unique identifier for the
Workflow instance within the ODPRIP which is
applicable to the ProductionOrder
Maps to Workflow.Id
XX
WorkflowNameStringShort name of the workflow
Maps to Workflow.Name
XX
WorkflowOptions
(Name, Value)
WorkflowO
ptions[]
Selection of applicable options from the
Workflow. Each option is provided in the format
(taken from the WorkflowOptions entity):
Name:Value
If no options are selected, the default value is
applied in each case.
XX
NotificationEndpo
int
StringURI used by the ODPRIP for product download
readiness notifications, should these be required.
If not provided, no notifications will be sent.
X
NotificationEpUse
rname
StringThe username associated with the EndPoint URI
provided.
Mandatory if NotificationEndpoint requires
authentication
X
NotificationEpPas
sword
StringThe password associated with the EndPoint URI
provided.
Mandatory if NotificationEndpoint requires
authentication
Shall be suitably secured to not be disclosed in
subsequent queries via the OData interfaces.
X

Table 11 – ProductionOrder Entity Properties

3.14 ProductionOrder Notification

The ProductionOrder Notification entity is a notification to users concerning products processed on-demand, for which they have requested to be notified.

ProductionOrder Notification Properties Type Description GS Element Applicability
PRIPDALTAAUXIP
ProductIdGuidThe unique identifier of the product
being notified. Maps to Product.Id
X
ProductNameStringThe data file name of the product being
notified. Maps to Product.Name
X
ProductionOrderIdGuidThe identifier of the ProductionOrder
being notified. Maps to
ProductionOrder.Id
X
NotifictionDateDateTime
Offset
Date and time at which the notification
was generated. Time is in UTC in the
format YYYY-MM-DDThh:mm:ss.sssZ
X

Table 12 – ProductionOrder Notification Entity Properties and GS Applicability

3.15 Subscription

The Subscription entity refers to a client request for notification of future products entering the GS element which fulfil particular query filter parameters. A Subscription can optionally request for such products to be automatically Ordered by the GS element, thus made available for download.

Subscription Property Type Description GS Element Applicability
PRIPDALTAAUXIP
IdGuidIt is a universally unique identifier (UUID).
The Id is a local identifier for the
Subscription instance within the element,
assigned upon Subscription creation.
XXX
StatusSubscription
Status
enumeration
SubscriptionStatus value:
- running
- paused
- cancelled
XXX
SubscriptionEventSubscription
Event
enumeration
The subscription event to be monitored and
for which notification is provided, from:
- created
- deleted
X
FilterParamStringThe filter parameters of the Subscription
(refers to the $filter= parameter of any
Products? query)
XXX
SubmissionDateDateTimeOf
fset
Date and time at which the subscription was
received by the element. Time is in UTC in
the format YYYY-MM-DDThh:mm:ss.sssZ
XXX
LastNotificationD
ate
DateTimeOf
fset
Date and time corresponding to the last the
time the Subscription was queried. Used by
the element to limit the next query from the
LastNotificationDate to the current date.
Time is in UTC in the format YYYY-MM-
DDThh:mm:ss.sssZ
Only provided following the initial
Subscription query.
XXX
StageOrderBooleanAutomatically orders the staging of products
fulfilling the subscription filter parameters
Only used if SubscriptionEvent = created
X
PriorityInt64Priority of the created orders resulting from
the subscription. It is an integer from 1-100,
where 100 is the highest priority.
Only provided if:
- SubscriptionEvent = created
AND
- the Subscription has stageOrder=true
There is always a priority associated to an
order: if it is not set within the Subscription
Create Request, then it is automatically set to
the default priority assigned to the user. If
the Subscription Create Request sets a
priority higher than the highest priority
assigned to the user then it is automatically
set at the highest priority assigned.
X
NotificationEndpo
int
StringURI used by the element for subscription
notifications
XXX
NotificationEpUse
rname
StringThe username associated with the EndPoint
URI provided
Mandatory if NotificationEndpoint requires
authentication
XXX
NotificationEpPas
sword
StringThe password associated with the EndPoint
URI provided
Mandatory if NotificationEndpoint requires
authentication
XXX

Table 13 - Subscription Entity Properties and GS Applicability

3.16 Notification

The Notification entity is a notification to users concerning products which they have requested to be notified on, either which are now available on the GS element, specifically available for download, or deleted.

Notification Property Type Description GS Element Applicability
PRIPDALTAAUXIP
ProductIdGuidThe universally unique identifier (UUID) of
the product being notified. Maps to
Product.Id
XXX
ProductNameStringThe data file name of the product being
notified. Maps to Product.Name
XXX
SubscriptionIdGuidThe UUID of the Subscription being
notified. Maps to Subscription.Id
XXX
OrderIdGuidThe UUID of the order being notified. Maps
to Order.Id
X
BatchOrderIdGuidThe UUID of the BatchOrder being notified.
Maps to BatchOrder Id
X
SubscriptionEve
nt
Subscriptio
nEvent
The subscription event set in the parent
Subscription to be monitored and for which
notification is provided, from:
- created
- deleted
X
NotificationDateDateTime
Offset
Date and time at which the notification was
generated. Time is in UTC in the format
YYYY-MM-DDThh:mm:ss.sssZ
XXX

Table 14 – Notification Entity Properties and GS Applicability

3.17 GS Element (or Service)

System Property Type Description GS Element Applicability
PRIPDALTAAUXIP
IdStringUnique string identifier of the GS ElementXXXX
OrganisationStringOrganisation responsible for GS ElementXXXX
LogoStringLogo of the System ElementXXXX
LocationCoordinates of the System ElementXXXX
DescriptionStringDescription of the SystemXXXX

Available to the reporting user

3.18 User

The User entity is a read-write entity that allows to define details of the user the system role of the user within the GS element. It is identified by the key property Username.

User Property Type Description GS Element Applicability
PRIPDALTAAUXIP
UsernameStringUnique string identifier of the UserXXXX
EmailStringEmail of the UserXXXX
ServiceAliasStringGeneric string to describe the clientXXXX
CountryStringCountry of the userX
DomainStringDomain of the User, selected from:
- Atmosphere
- Climate
- Emergency
- Land
- Marine
- Security
- Other
X
SubDomainString- SubDomain if Domain is
Other
X
UsageUsage of the User, selected from:
- Commercial
- Education
- Research
- Other
X
SubUsageString- SubUsage if Usage is
Other
X
CreatedDateTimeOffsetDate/time of user creation. Time is
in UTC in the format YYYY-MM-
DDThh:mm:ss.sssZ
XXXX
DefaultPriorityInt64The default order priority assigned
to the User. It is an integer from 1-
100 (TBC), where 100 is the highest
priority.
XX
MaxPriorityInt64The maximum priority which can
be assigned to an order by the User.
It is an integer from 1-100 (TBC),
where 100 is the highest priority.
It must be equal to or higher than
the DefaultPriority
XX
OrderQuotaInt64Refers to the maximum number of
orders for allowed to be processed
in parallel (i.e. in status
in_progress) which a user may have
ongoing at a particular time.
XXX
DownloadQuotaInt64Refers to the maximum number of
downloads that may be performed
in parallel by the user.
XXXX
BatchOrderQuotaInt64X
OrderTimeQuota
(Quota, Interval)
OrderTimeQuotaRefers to the maximum number of
Orders (as Int64) allowed to be
submitted by a user in a given time
period (e.g. 1 hour or 1 day –
defined in seconds (as Int64)).
X
ProductionOrder
Quota
Int64Refers to the maximum number of
On-Demand Production Orders
allowed to be processed in parallel
(i.e. in status in_progress) which a
user may have ongoing at a
particular time.
X
ProductionOrder
TimeQuota
(Quota, Interval)
ProductionOrder
TimeQuota
Refers to the maximum number of
On-Demand Production Orders (as
Int64) allowed to be submitted by a
user in a given time period (e.g. 1
hour or 1 day – defined in seconds
(as Int64))
X

Table 15 - User Entity Properties and GS Applicability

3.19 SystemRole

The SystemRole entity describes the rights and capabilities granted to a user.

SystemRole Property Type Description GS Element Applicability
PRIPDALTAAUXIP
NameSystemRole
enumeration
Unique string identifier of the Role, defining
which functions may be accessed
XXXX
DescriptionStringTextual description of the RoleXXXX

Table 16 - SystemRole Entity Properties and GS Applicability

3.20 Restriction

The Restriction entity describes any restriction which may apply to a user’s account.

SystemRole Property Type Description GS Element Applicability
PRIPDALTAAUXIP
IdGuidThe unique identifier of the restriction.X
RestrictionTypeRestrictionType
enumeration
Any of:
- LockedAccessRestriction
- TmpUserLockedAccessRestriction
- TBD
X
ReasonStringMessage explaining what caused the
restriction on the user
X

Table 17 - Restriction Entity Properties and GS Applicability

4 GENERIC REPORTING INTERFACE

This section describes the reporting statistics to be provided on a routine basis by all GS elements. This is largely concerned metrics for summary reporting and monitoring. For additional reporting at the specific element level, the lower level ICDs should be referred to.

4.1 Metrics Reporting Model

Metrics Property Type Description GS Element Applicability
PRIPDALTAAUXIP
NameStringName of metric according to a standard
naming convention TBW
XXXX
TimestampDateTime
Offset
Date/time of metric reporting. Time is in UTC
in the format YYYY-MM-DDThh:mm:ss.sssZ
XXXX
MetricTypeEnumGauge or CounterXXXX
GaugeStringValue of Gauge at reporting timestamp
(mandatory if MetricType=Gauge)
XXXX
CounterInt64Value of Counter at reporting timestamp
(mandatory if MetricType=Counter)
XXXX

Example metrics are described below.

Metric Description Type
Archived.<productType>.<platformShor
tName>.<platformSerialIdentifier>.size
Cumulative volume of <productType> of mission
<platformShortName>.<platformSerialIdentifier> in
archive in Bytes
Counter
Archived.<productType>.<platformShor
tName>.<platformSerialIdentifier>.count
Cumulative number of <productType> of mission
<platformShortName>.<platformSerialIdentifier> in
archive
Counter
Archived.<platformShortName>.<platfor
mSerialIdentifier>.size
Total cumulative volume of data in archive for
<platformShortName> <platformSerialIdentifier>.
Counter
Archived.<platformShortName>.<platfor
mSerialIdentifier>.count
Total cumulative number of products in archive for
<platformShortName> <platformSerialIdentifier>.
Counter
Retrieved.<productType>.<platformShor
tName>.<platformSerialIdentifier>.size
Cumulative volume of <productType> of mission
<platformShortName>.<platformSerialIdentifier>
ordered and delivered to archive interface point in
Bytes
Counter
Retrieved.<productType>.<platformShor
tName>.<platformSerialIdentifier>.comp
leted
Cumulative number of <productType> of mission
<platformShortName>.<platformSerialIdentifier>
ordered and delivered to archive interface point
Counter
Retrieved.<productType>.<platformShor
tName>.<platformSerialIdentifier>.failed
Cumulative number of <productType> of mission
<platformShortName>.<platformSerialIdentifier>
ordered and failed to be delivered to archive interface
point
Counter
Download.<productType>.<platformSho
rtName>.<platformSerialIdentifier>.<Ser
viceAlias>.completed
Cumulative number of <productType> of mission
<platformShortName>.<platformSerialIdentifier>
downloads completed (by <ServiceAlias>)
Counter
Download.<productType>.<platformSho
rtName>.<platformSerialIdentifier>.<Ser
viceAlias>.failed
Cumulative number of <productType> of mission
<platformShortName>.<platformSerialIdentifier>
downloads failed (by <ServiceAlias>)
Counter
Download.<productType>.<platformSho
rtName>.<platformSerialIdentifier>.<Ser
ivceAlias>.size
Cumulative size of <productType> of mission
<platformShortName>.<platformSerialIdentifier>
downloaded (by <ServiceAlias>) in Bytes
Counter
OriginToPublication.Daily.min.time.<pro
ductType>.<platformShortName>.<platf
ormSerialIdentifier>
Daily minimum time difference in seconds between
PRIP PublicationDate and LTA PublicationDate of
<productType> of mission
<platformShortName>.<platformSerialIdentifier>
(sliding window of 24 hours)
Gauge
OriginToPublication.Daily.max.time.<pr
oductType>.<platformShortName>.<plat
formSerialIdentifier>
Daily maximum time difference in seconds between
PRIP PublicationDate and LTA PublicationDate of
<productType> of mission
<platformShortName>.<platformSerialIdentifier>
(sliding window of 24 hours)
Gauge
OriginToPublication.Daily.avg.time.<pro
ductType>.<platformShortName>.<platf
ormSerialIdentifier>
Daily average time difference in seconds between
PRIP PublicationDate and LTA PublicationDate of
<productType> of mission
<platformShortName>.<platformSerialIdentifier>
(sliding window of 24 hours)
Gauge
OriginToPublication.Monthly.min.time.<
productType>.<platformShortName>.<pl
atformSerialIdentifier>
Monthly minimum time difference in seconds
between PRIP PublicationDate and LTA
PublicationDate of <productType> of mission
<platformShortName>.<platformSerialIdentifier>
(sliding window of last month)
Gauge
OriginToPublication.Monthly.max.time.
<productType>.<platformShortName>.<
platformSerialIdentifier>
Monthly maximum time difference in seconds
between PRIP PublicationDate and LTA
PublicationDate of <productType> of mission
<platformShortName>.<platformSerialIdentifier>
(sliding window of last month)
Gauge
OriginToPublication.Monthly.avg.time.<
productType>.<platformShortName>.<pl
atformSerialIdentifier>
Monthly average time difference in seconds between
PRIP PublicationDate and LTA PublicationDate of
<productType> of mission
<platformShortName>.<platformSerialIdentifier>
(sliding window of last month)
Gauge
SubmissionToCompletion.Daily.min.time Minimum time from order submission to delivery onMinimum time from order submission to delivery on
archive interface point (sliding window of 24 hours)
Gauge
SubmissionToCompletion.Daily.max.timeSubmissionToCompletion.Daily.max.time Maximum time from order submission to delivery on
archive interface point (sliding window of 24 hours)
Gauge
SubmissionToCompletion.Daily.avg.time Average time from order submission to delivery onAverage time from order submission to delivery on
archive interface point (sliding window of 24 hours)
Gauge
SubmissionToCompletion.Monthly.min.ti
me
Minimum time from order submission to delivery on
archive interface point (sliding window of last
month)
Gauge
SubmissionToCompletion.Monthly.max.t
ime
Maximum time from order submission to delivery on
archive interface point (sliding window of last
month)
Gauge
SubmissionToCompletion.Monthly.avg.ti
me
Aveage time from order submission to delivery on
archive interface point (sliding window of last
month)
Gauge
Service.<KPI>.valueKPI valueGauge

4.2 Event Reporting Model

The Event entity records information on events concerning a GS element which have taken place or are planned to take place in the future. Events include, for example, planned unavailabilities due to service or infrastructure maintenance and unplanned availabilities due to e.g. network issues.

Event Property Type Description GS Element Applicability
PRIPDALTAAUXIP
IdGuidIt is a universally unique identifier
(UUID).
The Id is a local identifier for the Event
instance within the element, assigned
upon creation of the Event.
XXX
TitleStringTitle of the Event (concise summary)XXX
DescriptionStringDescription of the EventXXX
EventCategoryCategory
enumeration
Chosen from a predefined list of
categories (single selection available):
- Service Maintenance
- Infrastructure
- Maintenance
- Network
- AIP
- PRIP
- TBC
XXX
EventDate (start
and stop)
TimeRangeThe Event range period. Times are in
UTC in the format YYYY-MM-
DDThh:mm:ss.sssZ
XXX
PublicationDateDateTimeOffsetPublication date and time of the Event
entity. Time is in UTC in the format
YYYY-MM-DDThh:mm:ss.sssZ
XXX
ModificationDateDateTimeOffsetLast modificaion date and time of the
Event entity. Time is in UTC in the
format YYYY-MM-DDThh:mm:ss.sssZ
XXX
MissionTagMissionTag
enumeration
Chosen from a predefined list of missions
(multiple selection available):
- Sentinel-1
- Sentinel-2
- Sentinel-3
- Sentinel-5p
XX
InstrumentTagInstrumentTag
enumeration
Chosen from a predefined list of
instruments (multiple selection available):
- SAR
- Optic
- SRAL
- OLCI
- SLSTR
- Synergy
XX
LocalEventBooleanTBDX
PublicEventBooleanTBDX
DistributionScopeDistributionScope
enumeration
This field is relevant only for events
concerning the Service availability.
Chosen from a predefined list of Data
Access entities (multiple selection
XXX
available):
- Long Term Archive
- Data Access
- Systematic Processing
- On-Demand Processing
InformationUrlStringExternal link to the information within
anomaly tracking.
XXX
ServiceBooleanEvent service calendar flag:
- TRUE = service availability;
- FALSE = product availability
X

Table 18 – Event Entity Properties and GS Applicability

5 ODATA ENUMERATIONS

The list of OData enumerations, the entities to which they are applicable and available list of values, are provided in the table below.

Enumeration List of Values Applicable Entities
EventCategoryService Maintenance
Infrastructure
Maintenance
Network
AIP
TBC
Event
DistributionScopeData Access – Open
Access
Data Access –
Collaborative Access
Long Term Archive
On-Demand Processing
Systematic Processing
Event
DomainAtmosphere
Climate
Emergency
Land
Marine
Security
Other
User
InstrumentTagSAR
Optic
SRAL
OLCI
SLSTR
Synergy
Event
JobStatusqueued
created
in_progress
completed
failed
cancelled
Order
Bulk
BatchOrder
ProductionOrder
MissionTagSentinel-1Event
Sentinel-2
Sentinel-3
Sentinel-5p
ProductionTypesystematic_production
on-demand default
on-demand non-default
Product (PRIP)
RestrictionTypeExpiredAccessRestriction
LockedAccessRestriction
TmpUserLockedAccessRe
striction
Restriction
SubscriptionEventcreated
deleted
Subscription
Notification
SubscriptionStatusrunning
paused
cancelled
Subscription
SystemRolesSearch
Download
Order
Bulk
Reporting
UserAdmin
SystemRole
UsageCommercial
Education
Research
Other
User
MetricTypeGauge
Counter
Metric

6 INTERFACE DELIVERY POINT NAMING

Each interface delivery point within the CSC ESA Ground Segment Operations Framework shall apply a common naming schema.

The domain name for the interface delivery point should in general follow the schema below:

csc-<ele>-<name>.copernicus.eu

This defines the service-root-uri at which the interface delivery point may be addressed, and where <ele> describes the Ground Segment Element according to:

xbi X-Band Service
proProduction Service
ltaLong Term Archive Service
adgAuxiliary Data Gathering Service
podPrecise Orbit Determination
mpcMission Performance Cluster

and where <name> is a 4 letter acronym uniquely indicating the service provider within that service domain

Requests for DNS naming can be made through “ICF Next” (exact contact point to be specified at a later stage), specifying the IP address to which the domain shall be associated.

When making such a request the ESA Technical Officer of the relevant contract shall be copied and the request to “ICF Next” shall specify “This DNS naming request is for the purposes of the EU Copernicus Sentinels Operations as a service under contract to the European Space Agency”.

APPENDIX A INTERFACE DELIVERY POINT CONFORMANCE APPROACH

The present annex provides an overview of the Interface Delivery Points conformance approach.

ESA provides a freely available compliance test suite that may be used by each GS element service to run independent tests on their IDP. The test suite is provided as a Postman Collection JSON file consisting of a set of (OData) requests to be sent to the IDP as well as a series of test scripts for verifying the received responses.

The Ground Segment Interface Delivery Point test suite is available at: https://github.com/SercoSPA/CSC-Ground-Segment-Interface-Delivery-Point-Test-Suite

The test suite uses automatically generated Ground Segment interface tests in Postman. The Collection is based on the specifications of [AD-1] to [AD-5], as well as those described in [RD-3], [RD-4], [RD-5] and [RD-6].

img-1.jpeg

Figure 2: Overview of the GS IDP Test Suite Preparation

The Postman Test Suite Collection is divided into logical folders:

  • Mission Specific folders, containing tests based on [AD-1] to [AD-5], and divided by IDP subfolders: PR (=PRIP), DA, LTA, POD

  • Filters folder, containing tests for the Product and Attributes entities

  • Entity Specific folders, focusing on testing the main entities of each GS element: Orders, Bulk and Batch Orders, Subscriptions, Metrics