Skip to main content
Version: 2.0

Create product

This section describes how to submit a new product to the OAIS service of REGARDS with AMQP interfaces.

Introduction

The diagram below explains the global processing of a new SIP submission request by REGARDS system.
For a REGARDS client using message queuing, responses are sent for each change of your request status :

  • DENIED : Your request has been denied (possibly malformed request).
  • GRANTED : Your request has been granted an will be processed soon
  • ERROR : Processing of your granted request finished in error status.
  • SUCCESS : Processing of your granted request finished with success. Your SIP as been successfully ingest, AIP generated and associated files stored.

sequence

Requests and responses are linked with a correlation identifier : requestId provided into submission requests and added in service responses.

info

When you submit a SIP submission request you have to ensure that the provided requestId is unique. Service will respond to your request with this identifier.

AMQP API

How to

The Regards AMQP API concept describe how AMQP interfaces must be handled to submit events or to subscribe to events.

Exchange

Submission requests have to be published to REGARDS Rabbitmq exchange:

ExchangeVirtual host
regards.broadcast.fr.cnes.regards.modules.ingest.dto.sip.flow.IngestRequestFlowItemregards.multitenant.manager

Request content

Properties

ParameterTypeDescription
app_idStringStandard RabbitMQ property to track message origin.
priorityIntegerStandard RabbitMQ property to sort messages by priority order.
content_encodingStringStandard RabbitMQ property for the encoding type of the message
content_typeStringStandard RabbitMQ property for the MIME Type of the message sent
delivery_modeIntegerStandard RabbitMQ property for the delivery mode (persistent or not)

Headers

ParameterTypeDescription
regards.tenantStringTenant name depends on REGARDS instance project configuration.
regards.typeStringType of content of the message
Example of the properties and headers of an Ingest request event message
{
"priority": 1,
"delivery_mode": 2,
"content_encoding": "UTF-8",
"content_type": "application/json",
"headers": [
{
"regards.tenant": "REGARDS",
"regards.type": "fr.cnes.regards.modules.ingest.dto.sip.flow.IngestRequestFlowItem"
}
]
}

Body

{
"sip": {
...
},
"metadata": {
...
},
"requestId": "xxx"
}
  • sip content schema properties (To see more detailed information for OAIS SIP format see Regards OAIS)
bbox
Array of numbers <double> [ items <double > ]

Geometry bounding box. List of points coordinates [xmin, ymin, xmax, ymax]

crs
string
Default: "WGS84"

Coordinate Reference System

object (IGeometry)

Information package geometry in GeoJSON RFC 7946 Format.

Array of objects (EventDto)

Information package history.

id
string

Provider identifier for the submitted product.

ipType
required
string
Enum: "COLLECTION" "DATA" "DATASET"

Information package type.

object (InformationPackageProperties)
object (SIPReference)

Used to provide SIP content in a json formated file.

  • metadata content schema properties
categories
Array of strings unique
ingestChain
string

Ingest chain label to be used to process SIPs.

model
string [ 0 .. 128 ] characters

Name of the data model from rs-dam service to validate SIP. If null no validation is done.

replaceErrors
boolean

Replace error requests with same providerId.

session
string

Name of the sip submission session.

sessionOwner
string

Name of the sip submission session owner.

Array of objects (StorageDto)

Storage locations where to store files from contentInformation.

submissionDate
string <date-time>

Request submission date.

versioningMode
string
Default: "INC_VERSION"
Enum: "IGNORE" "INC_VERSION" "MANUAL" "REPLACE"

Versioning mode.

Responses format

To learn how to subscribe to your request responses as described in the introduction diagram see Subscribe to SIP submission response