prosEO Order Manager REST Services API API documentation version v0.1
/proseo/order-mgr/{version}
- version: required(v0.1)
/orders
List of all orders filtered by mission, identifier, productClasses, starttime range
Create an order from the given JSON object
get /orders
List of all orders filtered by mission, identifier, productClasses, starttime range
Query Parameters
- mission: (string)
the mission code
- identifier: (string)
the unique order identifier string
- productClasses: (array of )
an array of product types
- startTimeFrom: (datetime-only)
earliest sensing start time
- startTimeTo: (datetime-only)
latest sensing start time
- executionTimeFrom: (datetime-only)
earliest order execution time
- executionTimeTo: (datetime-only)
latest order execution time
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: RestOrder
- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- missionCode: required(string)
The mission code (e. g. S5P)
- identifier: required(string)
User-defined order identifier
- uuid: (string - pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$)
Universally unique order identifier
- priority: (integer - default: 50)
Priority of the ProcessingOrder (lower number means lower priority; value range 1..100 is defined for the ODIP, but other values are allowed outside On-Demand Production, including negative numbers). Default value is 50.
- orderState: required(string - default: INITIAL)
State of the processing order; one of { INITIAL, APPROVED, RELEASING, RELEASED, PLANNING, PLANNING_FAILED, PLANNED, RUNNING, SUSPENDING, COMPLETED, FAILED, CLOSED }
- stateMessage: (string)
Explanatory message describing the reason for the latest state change (mandatory for ProcessingOrders created via the ODIP)
- orderSource: (string - default: OTHER)
Source application for the processing order; one of { CLI, GUI, ODIP, OTHER }
- submissionTime: (datetime-only)
Date and time at which the ProcessingOrder was received (mandatory for ProcessingOrders created via the ODIP)
- executionTime: (datetime-only)
Expected execution time (optional, used for scheduling)
- releaseTime: (datetime-only)
Date and time at which the ProcessingOrder was received (mandatory for ProcessingOrders created via the ODIP)
- estimatedCompletionTime: (datetime-only)
Estimated date and time when the output product(s) will be available for download from the (OD)PRIP (mandatory for ProcessingOrders created via the ODIP)
- actualCompletionTime: (datetime-only)
Date and time when the output product(s) was/were available for download from the (OD)PRIP (mandatory for ProcessingOrders created via the ODIP, once they are in state "COMPLETED")
- evictionTime: (datetime-only)
Eviction time (optional, used for automatic order deletion)
- startTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
The start time of the time interval to process in orbit format (YYYY-MM-DDThh:mm:ss[.SSSSSS]). If a range of orbit numbers is given, this time is set to the earliest start time of the selected orbits.
- stopTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
The end time of the time interval to process in orbit format (YYYY-MM-DDThh:mm:ss[.SSSSSS]). If a range of orbit numbers is given, this time is set to the latest stop time of the selected orbits.
- slicingType: required(string - default: NONE)
One of { "ORBIT", "CALENDAR_DAY", "CALENDAR_MONTH", "CALENDAR_YEAR", "TIME_SLICE", "NONE" }
- sliceDuration: (integer)
Duration of a slice in seconds (only for slicingType TIME_SLICE)
- sliceOverlap: (integer - default: 0)
Overlap between adjacent slices in seconds (applicable for all slicingTypes except NONE, default 0)
- inputProductReference: (object)
Identification of the input product to use for On-Demand Production
- inputFileName: (string)
The file name of the input product to retrieve
- sensingStartTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
Sensing start time of the input product
- sensingStopTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
Sensing stop time of the input product
- inputFileName: (string)
- inputFilters: (array of RestInputFilter)
Filter conditions to apply to input products
Items: RestInputFilter
- productClass: required(string)
The product class the input filters apply to
- filterConditions: required(array of RestParameter)
Filter conditions to apply to input products of the given product class
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- productClass: required(string)
- dynamicProcessingParameters: (array of RestParameter)
Processing option settings (for on-demand processing called "WorkflowOptions" in the ICD); these options will be passed to the data processors in the "Dynamic Processing Parameter" section of the Job Order file
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- classOutputParameters: (array of RestClassOutputParameter)
Set of parameters to apply to a generated product of the referenced product class replacing the general output parameters
Items: RestClassOutputParameter
- productClass: required(string)
The product class to generate as output
- outputParameters: required(array of RestParameter)
Set of parameters to apply to the generated products (may be empty)
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- productClass: required(string)
- outputParameters: required(array of RestParameter)
Parameters to set for the generated products (may be empty)
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- workflowUuid: (string - pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$)
Universally unique workflow identifier (only for orders generated through ODIP, mandatory for these)
- workflowName: (string)
Short name of the applicable workflow (not suitable for identification; only for orders generated through ODIP)
- configuredProcessors: required(array of string)
List of identifiers of the configured processors (may be empty)
- orbits: required(array of RestOrbitQuery)
List of orbit ranges, identified by spacecraft code and orbit number from/to (may be empty)
Items: RestOrbitQuery
- spacecraftCode: required(string)
- orbitNumberFrom: required(integer)
- orbitNumberTo: required(integer)
- requestedProductClasses: required(array of string)
List of internal product types requested as output from the order (at least one is required)
- inputProductClasses: required(array of string)
List of internal product types provided as input to the order (may be empty)
- outputFileClass: required(string)
The file class for the generated output products
- processingMode: required(string)
The processing mode to run the processor(s) in
- productionType: (string)
Production type context, in which the order is running (SYSTEMATIC, ON_DEMAND_DEFAULT, ON_DEMAND_NON_DEFAULT)
- notificationEndpoint: (object)
The endpoint to send order completion notifications to
- uri: required(string)
The URI used to notify the ProcessingOrder originator of the order completion
- username: (string)
The username to authenticate with (using Basic Authentication)
- password: (string)
The password to authenticate with, mandatory if username is given; may be set to replacement value (e. g. asterisks) on data retrieval requests
- uri: required(string)
- productRetentionPeriod: (integer)
Retention period for products generated by this processing order in seconds
- hasFailedJobSteps: (boolean)
Indicates whether at least one of the job steps for this order is in state FAILED
- jobStepStates: (array of string)
The different existing job step states of order
- percentCompleted: (integer)
Percentage of completed job steps
- percentFailed: (integer)
Percentage of failed job steps
- percentRunning: (integer)
Percentage of running job steps
- expectedJobs: (integer)
Expected jobs for planning and releasing
- createdJobs: (integer)
Fully created/released jobs for planning and releasing
Example:
[
{
"id": 12345,
"version": 3,
"missionCode": "S5P",
"identifier": "RPRO Orbits 4567-5678",
"uuid": "2bfd2856-aec7-4d45-bcc0-6418857c448c",
"orderState": "INITIAL",
"startTime": "2018-05-17T00:00:00.123456",
"stopTime": "2019-07-31T12:00:00",
"slicingType": "ORBIT",
"sliceOverlap": 0,
"inputFilters": [
{
"productClass": "L1B",
"filterConditions": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "01"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "13"
},
{
"key": "fileClass",
"parameterType": "STRING",
"parameterValue": "OFFL"
}
]
}
],
"classOutputParameters": [
{
"productClass": "CLOUD",
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "99"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "77"
}
]
}
],
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "02"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "14"
}
],
"configuredProcessors": [ "KNMI L2 01.03.02 2019-07-03", "DLR L2 01.01.05 2019-07-03" ],
"orbits": [
{ "spacecraftCode": "S5P", "orbitNumberFrom": 4567, "orbitNumberTo": 5330 },
{ "spacecraftCode": "S5P", "orbitNumberFrom": 5421, "orbitNumberTo": 5678 }
],
"requestedProductClasses": [ "O3", "CLOUD", "FRESCO", "AAI" ],
"inputProductClasses": [ "L1B" ],
"outputFileClass": "RPRO",
"processingMode": "OFFL",
"productRetentionPeriod": 2592000,
"hasFailedJobSteps": false,
"jobStepStates": [ "INITIAL", "READY" ],
"percentCompleted": 80,
"percentFailed": 10,
"percentRunning": 5
},
{
"id": 12346,
"version": 3,
"missionCode": "S5P",
"identifier": "RPRO Orbit 4711",
"uuid": "3fcab4f3-457a-4424-9287-269286e5c03c",
"orderState": "RELEASED",
"executionTime": "2019-10-31T12:00:00",
"evictionTime": "2019-11-05T07:25:18",
"startTime": "2018-06-13T09:23:45.678",
"stopTime": "2018-06-13T10:53:45.678",
"slicingType": "TIME_SLICE",
"sliceDuration": 300,
"sliceOverlap": 60,
"inputFilters": [
{
"productClass": "L1B",
"filterConditions": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "01"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "13"
},
{
"key": "fileClass",
"parameterType": "STRING",
"parameterValue": "OFFL"
}
]
}
],
"classOutputParameters": [
{
"productClass": "AAI",
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "66"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "88"
}
]
}
],
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "99"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "14"
}
],
"configuredProcessors": [ "KNMI L2 02.01.00 2019-11-17" ],
"orbits": [
{ "spacecraftCode": "S5P", "orbitNumberFrom": 4711, "orbitNumberTo": 4711 }
],
"requestedProductClasses": [ "FRESCO", "AAI" ],
"inputProductClasses": [ ],
"outputFileClass": "NRTI",
"processingMode": "NRTI",
"productionType": "SYSTEMATIC",
"hasFailedJobSteps": true,
"jobStepStates": [ "INITIAL", "READY" ],
"percentCompleted": 80,
"percentFailed": 10,
"percentRunning": 5
}
]
HTTP status code 403
A cross-mission data access was attempted.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
HTTP status code 404
The requested resource was not found.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
post /orders
Create an order from the given JSON object
Body
Media type: application/json
Type: object
Properties- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- missionCode: required(string)
The mission code (e. g. S5P)
- identifier: required(string)
User-defined order identifier
- uuid: (string - pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$)
Universally unique order identifier
- priority: (integer - default: 50)
Priority of the ProcessingOrder (lower number means lower priority; value range 1..100 is defined for the ODIP, but other values are allowed outside On-Demand Production, including negative numbers). Default value is 50.
- orderState: required(string - default: INITIAL)
State of the processing order; one of { INITIAL, APPROVED, RELEASING, RELEASED, PLANNING, PLANNING_FAILED, PLANNED, RUNNING, SUSPENDING, COMPLETED, FAILED, CLOSED }
- stateMessage: (string)
Explanatory message describing the reason for the latest state change (mandatory for ProcessingOrders created via the ODIP)
- orderSource: (string - default: OTHER)
Source application for the processing order; one of { CLI, GUI, ODIP, OTHER }
- submissionTime: (datetime-only)
Date and time at which the ProcessingOrder was received (mandatory for ProcessingOrders created via the ODIP)
- executionTime: (datetime-only)
Expected execution time (optional, used for scheduling)
- releaseTime: (datetime-only)
Date and time at which the ProcessingOrder was received (mandatory for ProcessingOrders created via the ODIP)
- estimatedCompletionTime: (datetime-only)
Estimated date and time when the output product(s) will be available for download from the (OD)PRIP (mandatory for ProcessingOrders created via the ODIP)
- actualCompletionTime: (datetime-only)
Date and time when the output product(s) was/were available for download from the (OD)PRIP (mandatory for ProcessingOrders created via the ODIP, once they are in state "COMPLETED")
- evictionTime: (datetime-only)
Eviction time (optional, used for automatic order deletion)
- startTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
The start time of the time interval to process in orbit format (YYYY-MM-DDThh:mm:ss[.SSSSSS]). If a range of orbit numbers is given, this time is set to the earliest start time of the selected orbits.
- stopTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
The end time of the time interval to process in orbit format (YYYY-MM-DDThh:mm:ss[.SSSSSS]). If a range of orbit numbers is given, this time is set to the latest stop time of the selected orbits.
- slicingType: required(string - default: NONE)
One of { "ORBIT", "CALENDAR_DAY", "CALENDAR_MONTH", "CALENDAR_YEAR", "TIME_SLICE", "NONE" }
- sliceDuration: (integer)
Duration of a slice in seconds (only for slicingType TIME_SLICE)
- sliceOverlap: (integer - default: 0)
Overlap between adjacent slices in seconds (applicable for all slicingTypes except NONE, default 0)
- inputProductReference: (object)
Identification of the input product to use for On-Demand Production
- inputFileName: (string)
The file name of the input product to retrieve
- sensingStartTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
Sensing start time of the input product
- sensingStopTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
Sensing stop time of the input product
- inputFileName: (string)
- inputFilters: (array of RestInputFilter)
Filter conditions to apply to input products
Items: RestInputFilter
- productClass: required(string)
The product class the input filters apply to
- filterConditions: required(array of RestParameter)
Filter conditions to apply to input products of the given product class
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- productClass: required(string)
- dynamicProcessingParameters: (array of RestParameter)
Processing option settings (for on-demand processing called "WorkflowOptions" in the ICD); these options will be passed to the data processors in the "Dynamic Processing Parameter" section of the Job Order file
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- classOutputParameters: (array of RestClassOutputParameter)
Set of parameters to apply to a generated product of the referenced product class replacing the general output parameters
Items: RestClassOutputParameter
- productClass: required(string)
The product class to generate as output
- outputParameters: required(array of RestParameter)
Set of parameters to apply to the generated products (may be empty)
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- productClass: required(string)
- outputParameters: required(array of RestParameter)
Parameters to set for the generated products (may be empty)
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- workflowUuid: (string - pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$)
Universally unique workflow identifier (only for orders generated through ODIP, mandatory for these)
- workflowName: (string)
Short name of the applicable workflow (not suitable for identification; only for orders generated through ODIP)
- configuredProcessors: required(array of string)
List of identifiers of the configured processors (may be empty)
- orbits: required(array of RestOrbitQuery)
List of orbit ranges, identified by spacecraft code and orbit number from/to (may be empty)
Items: RestOrbitQuery
- spacecraftCode: required(string)
- orbitNumberFrom: required(integer)
- orbitNumberTo: required(integer)
- requestedProductClasses: required(array of string)
List of internal product types requested as output from the order (at least one is required)
- inputProductClasses: required(array of string)
List of internal product types provided as input to the order (may be empty)
- outputFileClass: required(string)
The file class for the generated output products
- processingMode: required(string)
The processing mode to run the processor(s) in
- productionType: (string)
Production type context, in which the order is running (SYSTEMATIC, ON_DEMAND_DEFAULT, ON_DEMAND_NON_DEFAULT)
- notificationEndpoint: (object)
The endpoint to send order completion notifications to
- uri: required(string)
The URI used to notify the ProcessingOrder originator of the order completion
- username: (string)
The username to authenticate with (using Basic Authentication)
- password: (string)
The password to authenticate with, mandatory if username is given; may be set to replacement value (e. g. asterisks) on data retrieval requests
- uri: required(string)
- productRetentionPeriod: (integer)
Retention period for products generated by this processing order in seconds
- hasFailedJobSteps: (boolean)
Indicates whether at least one of the job steps for this order is in state FAILED
- jobStepStates: (array of string)
The different existing job step states of order
- percentCompleted: (integer)
Percentage of completed job steps
- percentFailed: (integer)
Percentage of failed job steps
- percentRunning: (integer)
Percentage of running job steps
- expectedJobs: (integer)
Expected jobs for planning and releasing
- createdJobs: (integer)
Fully created/released jobs for planning and releasing
Example:
{
"id": 12345,
"version": 3,
"missionCode": "S5P",
"identifier": "RPRO Orbits 4567-5678",
"uuid": "3fcab4f3-457a-4424-9287-269286e5c03c",
"orderState": "INITIAL",
"orderSource": "CLI",
"startTime": "2018-05-17T00:00:00.123456",
"stopTime": "2019-07-31T12:00:00",
"slicingType": "ORBIT",
"sliceOverlap": 0,
"inputFilters": [
{
"productClass": "L1B",
"filterConditions": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "01"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "13"
},
{
"key": "fileClass",
"parameterType": "STRING",
"parameterValue": "OFFL"
}
]
}
],
"classOutputParameters": [
{
"productClass": "CLOUD",
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "99"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "01"
}
]
}
],
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "99"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "14"
}
],
"configuredProcessors": [ "KNMI L2 01.03.02 2019-07-03", "DLR L2 01.01.05 2019-07-03" ],
"orbits": [
{ "spacecraftCode": "S5P", "orbitNumberFrom": 4567, "orbitNumberTo": 5330 },
{ "spacecraftCode": "S5P", "orbitNumberFrom": 5421, "orbitNumberTo": 5678 }
],
"requestedProductClasses": [ "O3", "CLOUD", "FRESCO", "AAI" ],
"inputProductClasses": [ "L1B" ],
"outputFileClass": "RPRO",
"processingMode": "OFFL",
"hasFailedJobSteps": false,
"jobStepStates": [ "INITIAL", "READY" ],
"percentCompleted": 80,
"percentFailed": 10,
"percentRunning": 5
}
HTTP status code 201
Body
Media type: application/json
Type: object
Properties- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- missionCode: required(string)
The mission code (e. g. S5P)
- identifier: required(string)
User-defined order identifier
- uuid: (string - pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$)
Universally unique order identifier
- priority: (integer - default: 50)
Priority of the ProcessingOrder (lower number means lower priority; value range 1..100 is defined for the ODIP, but other values are allowed outside On-Demand Production, including negative numbers). Default value is 50.
- orderState: required(string - default: INITIAL)
State of the processing order; one of { INITIAL, APPROVED, RELEASING, RELEASED, PLANNING, PLANNING_FAILED, PLANNED, RUNNING, SUSPENDING, COMPLETED, FAILED, CLOSED }
- stateMessage: (string)
Explanatory message describing the reason for the latest state change (mandatory for ProcessingOrders created via the ODIP)
- orderSource: (string - default: OTHER)
Source application for the processing order; one of { CLI, GUI, ODIP, OTHER }
- submissionTime: (datetime-only)
Date and time at which the ProcessingOrder was received (mandatory for ProcessingOrders created via the ODIP)
- executionTime: (datetime-only)
Expected execution time (optional, used for scheduling)
- releaseTime: (datetime-only)
Date and time at which the ProcessingOrder was received (mandatory for ProcessingOrders created via the ODIP)
- estimatedCompletionTime: (datetime-only)
Estimated date and time when the output product(s) will be available for download from the (OD)PRIP (mandatory for ProcessingOrders created via the ODIP)
- actualCompletionTime: (datetime-only)
Date and time when the output product(s) was/were available for download from the (OD)PRIP (mandatory for ProcessingOrders created via the ODIP, once they are in state "COMPLETED")
- evictionTime: (datetime-only)
Eviction time (optional, used for automatic order deletion)
- startTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
The start time of the time interval to process in orbit format (YYYY-MM-DDThh:mm:ss[.SSSSSS]). If a range of orbit numbers is given, this time is set to the earliest start time of the selected orbits.
- stopTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
The end time of the time interval to process in orbit format (YYYY-MM-DDThh:mm:ss[.SSSSSS]). If a range of orbit numbers is given, this time is set to the latest stop time of the selected orbits.
- slicingType: required(string - default: NONE)
One of { "ORBIT", "CALENDAR_DAY", "CALENDAR_MONTH", "CALENDAR_YEAR", "TIME_SLICE", "NONE" }
- sliceDuration: (integer)
Duration of a slice in seconds (only for slicingType TIME_SLICE)
- sliceOverlap: (integer - default: 0)
Overlap between adjacent slices in seconds (applicable for all slicingTypes except NONE, default 0)
- inputProductReference: (object)
Identification of the input product to use for On-Demand Production
- inputFileName: (string)
The file name of the input product to retrieve
- sensingStartTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
Sensing start time of the input product
- sensingStopTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
Sensing stop time of the input product
- inputFileName: (string)
- inputFilters: (array of RestInputFilter)
Filter conditions to apply to input products
Items: RestInputFilter
- productClass: required(string)
The product class the input filters apply to
- filterConditions: required(array of RestParameter)
Filter conditions to apply to input products of the given product class
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- productClass: required(string)
- dynamicProcessingParameters: (array of RestParameter)
Processing option settings (for on-demand processing called "WorkflowOptions" in the ICD); these options will be passed to the data processors in the "Dynamic Processing Parameter" section of the Job Order file
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- classOutputParameters: (array of RestClassOutputParameter)
Set of parameters to apply to a generated product of the referenced product class replacing the general output parameters
Items: RestClassOutputParameter
- productClass: required(string)
The product class to generate as output
- outputParameters: required(array of RestParameter)
Set of parameters to apply to the generated products (may be empty)
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- productClass: required(string)
- outputParameters: required(array of RestParameter)
Parameters to set for the generated products (may be empty)
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- workflowUuid: (string - pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$)
Universally unique workflow identifier (only for orders generated through ODIP, mandatory for these)
- workflowName: (string)
Short name of the applicable workflow (not suitable for identification; only for orders generated through ODIP)
- configuredProcessors: required(array of string)
List of identifiers of the configured processors (may be empty)
- orbits: required(array of RestOrbitQuery)
List of orbit ranges, identified by spacecraft code and orbit number from/to (may be empty)
Items: RestOrbitQuery
- spacecraftCode: required(string)
- orbitNumberFrom: required(integer)
- orbitNumberTo: required(integer)
- requestedProductClasses: required(array of string)
List of internal product types requested as output from the order (at least one is required)
- inputProductClasses: required(array of string)
List of internal product types provided as input to the order (may be empty)
- outputFileClass: required(string)
The file class for the generated output products
- processingMode: required(string)
The processing mode to run the processor(s) in
- productionType: (string)
Production type context, in which the order is running (SYSTEMATIC, ON_DEMAND_DEFAULT, ON_DEMAND_NON_DEFAULT)
- notificationEndpoint: (object)
The endpoint to send order completion notifications to
- uri: required(string)
The URI used to notify the ProcessingOrder originator of the order completion
- username: (string)
The username to authenticate with (using Basic Authentication)
- password: (string)
The password to authenticate with, mandatory if username is given; may be set to replacement value (e. g. asterisks) on data retrieval requests
- uri: required(string)
- productRetentionPeriod: (integer)
Retention period for products generated by this processing order in seconds
- hasFailedJobSteps: (boolean)
Indicates whether at least one of the job steps for this order is in state FAILED
- jobStepStates: (array of string)
The different existing job step states of order
- percentCompleted: (integer)
Percentage of completed job steps
- percentFailed: (integer)
Percentage of failed job steps
- percentRunning: (integer)
Percentage of running job steps
- expectedJobs: (integer)
Expected jobs for planning and releasing
- createdJobs: (integer)
Fully created/released jobs for planning and releasing
Example:
{
"id": 12345,
"version": 3,
"missionCode": "S5P",
"identifier": "RPRO Orbits 4567-5678",
"uuid": "3fcab4f3-457a-4424-9287-269286e5c03c",
"orderState": "INITIAL",
"orderSource": "CLI",
"startTime": "2018-05-17T00:00:00.123456",
"stopTime": "2019-07-31T12:00:00",
"slicingType": "ORBIT",
"sliceOverlap": 0,
"inputFilters": [
{
"productClass": "L1B",
"filterConditions": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "01"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "13"
},
{
"key": "fileClass",
"parameterType": "STRING",
"parameterValue": "OFFL"
}
]
}
],
"classOutputParameters": [
{
"productClass": "CLOUD",
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "99"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "01"
}
]
}
],
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "99"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "14"
}
],
"configuredProcessors": [ "KNMI L2 01.03.02 2019-07-03", "DLR L2 01.01.05 2019-07-03" ],
"orbits": [
{ "spacecraftCode": "S5P", "orbitNumberFrom": 4567, "orbitNumberTo": 5330 },
{ "spacecraftCode": "S5P", "orbitNumberFrom": 5421, "orbitNumberTo": 5678 }
],
"requestedProductClasses": [ "O3", "CLOUD", "FRESCO", "AAI" ],
"inputProductClasses": [ "L1B" ],
"outputFileClass": "RPRO",
"processingMode": "OFFL",
"hasFailedJobSteps": false,
"jobStepStates": [ "INITIAL", "READY" ],
"percentCompleted": 80,
"percentFailed": 10,
"percentRunning": 5
}
HTTP status code 400
The request sent to the server contains data which is not as expected e.g. invalid location URI
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
HTTP status code 403
A cross-mission data access was attempted.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
Count orders filtered by mission, identifier and id not equal nid.
get /orders/count
Count orders filtered by mission, identifier and id not equal nid.
Query Parameters
- mission: (string)
the mission code
- identifier: (string)
the unique order identifier string
- nid: (integer)
the ids of orbit(s) found has to be unequal to nid
HTTP status code 200
Body
Media type: text/plain
Type: any
HTTP status code 403
A cross-mission data access was attempted.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
HTTP status code 404
The requested resource was not found.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
Calculate the amount of orders satisfying the selection parameters. Mission code is mandatory.
get /orders/countselect
Calculate the amount of orders satisfying the selection parameters. Mission code is mandatory.
Query Parameters
- mission: (string)
the mission code
- identifier: (string)
the unique order identifier string
- state: (array of )
an array of order states
- productClass: (array of )
an array of product types
- startTime: (string)
earliest sensing start time
- stopTime: (string)
latest sensing start time
- recordFrom: (integer)
first record of filtered and ordered result to return
- recordTo: (integer)
last record of filtered and ordered result to return
- orderBy: (array of )
an array of strings containing a column name and an optional sort direction (ASC/DESC)
Retrieve a list of orders satisfying the selection parameters
get /orders/select
Retrieve a list of orders satisfying the selection parameters
Query Parameters
- mission: (string)
the mission code
- identifier: (string)
the unique order identifier string
- state: (array of )
an array of order states
- productClass: (array of )
an array of product types
- startTime: (string)
earliest sensing start time
- stopTime: (string)
latest sensing start time
- recordFrom: (integer)
first record of filtered and ordered result to return
- recordTo: (integer)
last record of filtered and ordered result to return
- orderBy: (array of )
an array of strings containing a column name and an optional sort direction (ASC/DESC)
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: RestOrder
- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- missionCode: required(string)
The mission code (e. g. S5P)
- identifier: required(string)
User-defined order identifier
- uuid: (string - pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$)
Universally unique order identifier
- priority: (integer - default: 50)
Priority of the ProcessingOrder (lower number means lower priority; value range 1..100 is defined for the ODIP, but other values are allowed outside On-Demand Production, including negative numbers). Default value is 50.
- orderState: required(string - default: INITIAL)
State of the processing order; one of { INITIAL, APPROVED, RELEASING, RELEASED, PLANNING, PLANNING_FAILED, PLANNED, RUNNING, SUSPENDING, COMPLETED, FAILED, CLOSED }
- stateMessage: (string)
Explanatory message describing the reason for the latest state change (mandatory for ProcessingOrders created via the ODIP)
- orderSource: (string - default: OTHER)
Source application for the processing order; one of { CLI, GUI, ODIP, OTHER }
- submissionTime: (datetime-only)
Date and time at which the ProcessingOrder was received (mandatory for ProcessingOrders created via the ODIP)
- executionTime: (datetime-only)
Expected execution time (optional, used for scheduling)
- releaseTime: (datetime-only)
Date and time at which the ProcessingOrder was received (mandatory for ProcessingOrders created via the ODIP)
- estimatedCompletionTime: (datetime-only)
Estimated date and time when the output product(s) will be available for download from the (OD)PRIP (mandatory for ProcessingOrders created via the ODIP)
- actualCompletionTime: (datetime-only)
Date and time when the output product(s) was/were available for download from the (OD)PRIP (mandatory for ProcessingOrders created via the ODIP, once they are in state "COMPLETED")
- evictionTime: (datetime-only)
Eviction time (optional, used for automatic order deletion)
- startTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
The start time of the time interval to process in orbit format (YYYY-MM-DDThh:mm:ss[.SSSSSS]). If a range of orbit numbers is given, this time is set to the earliest start time of the selected orbits.
- stopTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
The end time of the time interval to process in orbit format (YYYY-MM-DDThh:mm:ss[.SSSSSS]). If a range of orbit numbers is given, this time is set to the latest stop time of the selected orbits.
- slicingType: required(string - default: NONE)
One of { "ORBIT", "CALENDAR_DAY", "CALENDAR_MONTH", "CALENDAR_YEAR", "TIME_SLICE", "NONE" }
- sliceDuration: (integer)
Duration of a slice in seconds (only for slicingType TIME_SLICE)
- sliceOverlap: (integer - default: 0)
Overlap between adjacent slices in seconds (applicable for all slicingTypes except NONE, default 0)
- inputProductReference: (object)
Identification of the input product to use for On-Demand Production
- inputFileName: (string)
The file name of the input product to retrieve
- sensingStartTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
Sensing start time of the input product
- sensingStopTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
Sensing stop time of the input product
- inputFileName: (string)
- inputFilters: (array of RestInputFilter)
Filter conditions to apply to input products
Items: RestInputFilter
- productClass: required(string)
The product class the input filters apply to
- filterConditions: required(array of RestParameter)
Filter conditions to apply to input products of the given product class
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- productClass: required(string)
- dynamicProcessingParameters: (array of RestParameter)
Processing option settings (for on-demand processing called "WorkflowOptions" in the ICD); these options will be passed to the data processors in the "Dynamic Processing Parameter" section of the Job Order file
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- classOutputParameters: (array of RestClassOutputParameter)
Set of parameters to apply to a generated product of the referenced product class replacing the general output parameters
Items: RestClassOutputParameter
- productClass: required(string)
The product class to generate as output
- outputParameters: required(array of RestParameter)
Set of parameters to apply to the generated products (may be empty)
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- productClass: required(string)
- outputParameters: required(array of RestParameter)
Parameters to set for the generated products (may be empty)
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- workflowUuid: (string - pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$)
Universally unique workflow identifier (only for orders generated through ODIP, mandatory for these)
- workflowName: (string)
Short name of the applicable workflow (not suitable for identification; only for orders generated through ODIP)
- configuredProcessors: required(array of string)
List of identifiers of the configured processors (may be empty)
- orbits: required(array of RestOrbitQuery)
List of orbit ranges, identified by spacecraft code and orbit number from/to (may be empty)
Items: RestOrbitQuery
- spacecraftCode: required(string)
- orbitNumberFrom: required(integer)
- orbitNumberTo: required(integer)
- requestedProductClasses: required(array of string)
List of internal product types requested as output from the order (at least one is required)
- inputProductClasses: required(array of string)
List of internal product types provided as input to the order (may be empty)
- outputFileClass: required(string)
The file class for the generated output products
- processingMode: required(string)
The processing mode to run the processor(s) in
- productionType: (string)
Production type context, in which the order is running (SYSTEMATIC, ON_DEMAND_DEFAULT, ON_DEMAND_NON_DEFAULT)
- notificationEndpoint: (object)
The endpoint to send order completion notifications to
- uri: required(string)
The URI used to notify the ProcessingOrder originator of the order completion
- username: (string)
The username to authenticate with (using Basic Authentication)
- password: (string)
The password to authenticate with, mandatory if username is given; may be set to replacement value (e. g. asterisks) on data retrieval requests
- uri: required(string)
- productRetentionPeriod: (integer)
Retention period for products generated by this processing order in seconds
- hasFailedJobSteps: (boolean)
Indicates whether at least one of the job steps for this order is in state FAILED
- jobStepStates: (array of string)
The different existing job step states of order
- percentCompleted: (integer)
Percentage of completed job steps
- percentFailed: (integer)
Percentage of failed job steps
- percentRunning: (integer)
Percentage of running job steps
- expectedJobs: (integer)
Expected jobs for planning and releasing
- createdJobs: (integer)
Fully created/released jobs for planning and releasing
Example:
[
{
"id": 12345,
"version": 3,
"missionCode": "S5P",
"identifier": "RPRO Orbits 4567-5678",
"uuid": "2bfd2856-aec7-4d45-bcc0-6418857c448c",
"orderState": "INITIAL",
"startTime": "2018-05-17T00:00:00.123456",
"stopTime": "2019-07-31T12:00:00",
"slicingType": "ORBIT",
"sliceOverlap": 0,
"inputFilters": [
{
"productClass": "L1B",
"filterConditions": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "01"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "13"
},
{
"key": "fileClass",
"parameterType": "STRING",
"parameterValue": "OFFL"
}
]
}
],
"classOutputParameters": [
{
"productClass": "CLOUD",
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "99"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "77"
}
]
}
],
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "02"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "14"
}
],
"configuredProcessors": [ "KNMI L2 01.03.02 2019-07-03", "DLR L2 01.01.05 2019-07-03" ],
"orbits": [
{ "spacecraftCode": "S5P", "orbitNumberFrom": 4567, "orbitNumberTo": 5330 },
{ "spacecraftCode": "S5P", "orbitNumberFrom": 5421, "orbitNumberTo": 5678 }
],
"requestedProductClasses": [ "O3", "CLOUD", "FRESCO", "AAI" ],
"inputProductClasses": [ "L1B" ],
"outputFileClass": "RPRO",
"processingMode": "OFFL",
"productRetentionPeriod": 2592000,
"hasFailedJobSteps": false,
"jobStepStates": [ "INITIAL", "READY" ],
"percentCompleted": 80,
"percentFailed": 10,
"percentRunning": 5
},
{
"id": 12346,
"version": 3,
"missionCode": "S5P",
"identifier": "RPRO Orbit 4711",
"uuid": "3fcab4f3-457a-4424-9287-269286e5c03c",
"orderState": "RELEASED",
"executionTime": "2019-10-31T12:00:00",
"evictionTime": "2019-11-05T07:25:18",
"startTime": "2018-06-13T09:23:45.678",
"stopTime": "2018-06-13T10:53:45.678",
"slicingType": "TIME_SLICE",
"sliceDuration": 300,
"sliceOverlap": 60,
"inputFilters": [
{
"productClass": "L1B",
"filterConditions": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "01"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "13"
},
{
"key": "fileClass",
"parameterType": "STRING",
"parameterValue": "OFFL"
}
]
}
],
"classOutputParameters": [
{
"productClass": "AAI",
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "66"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "88"
}
]
}
],
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "99"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "14"
}
],
"configuredProcessors": [ "KNMI L2 02.01.00 2019-11-17" ],
"orbits": [
{ "spacecraftCode": "S5P", "orbitNumberFrom": 4711, "orbitNumberTo": 4711 }
],
"requestedProductClasses": [ "FRESCO", "AAI" ],
"inputProductClasses": [ ],
"outputFileClass": "NRTI",
"processingMode": "NRTI",
"productionType": "SYSTEMATIC",
"hasFailedJobSteps": true,
"jobStepStates": [ "INITIAL", "READY" ],
"percentCompleted": 80,
"percentFailed": 10,
"percentRunning": 5
}
]
Find the order with the given ID
Update the order with the given ID with the attribute values of the given JSON object.
Delete an order by ID
get /orders/{id}
Find the order with the given ID
URI Parameters
- id: required(integer)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- missionCode: required(string)
The mission code (e. g. S5P)
- identifier: required(string)
User-defined order identifier
- uuid: (string - pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$)
Universally unique order identifier
- priority: (integer - default: 50)
Priority of the ProcessingOrder (lower number means lower priority; value range 1..100 is defined for the ODIP, but other values are allowed outside On-Demand Production, including negative numbers). Default value is 50.
- orderState: required(string - default: INITIAL)
State of the processing order; one of { INITIAL, APPROVED, RELEASING, RELEASED, PLANNING, PLANNING_FAILED, PLANNED, RUNNING, SUSPENDING, COMPLETED, FAILED, CLOSED }
- stateMessage: (string)
Explanatory message describing the reason for the latest state change (mandatory for ProcessingOrders created via the ODIP)
- orderSource: (string - default: OTHER)
Source application for the processing order; one of { CLI, GUI, ODIP, OTHER }
- submissionTime: (datetime-only)
Date and time at which the ProcessingOrder was received (mandatory for ProcessingOrders created via the ODIP)
- executionTime: (datetime-only)
Expected execution time (optional, used for scheduling)
- releaseTime: (datetime-only)
Date and time at which the ProcessingOrder was received (mandatory for ProcessingOrders created via the ODIP)
- estimatedCompletionTime: (datetime-only)
Estimated date and time when the output product(s) will be available for download from the (OD)PRIP (mandatory for ProcessingOrders created via the ODIP)
- actualCompletionTime: (datetime-only)
Date and time when the output product(s) was/were available for download from the (OD)PRIP (mandatory for ProcessingOrders created via the ODIP, once they are in state "COMPLETED")
- evictionTime: (datetime-only)
Eviction time (optional, used for automatic order deletion)
- startTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
The start time of the time interval to process in orbit format (YYYY-MM-DDThh:mm:ss[.SSSSSS]). If a range of orbit numbers is given, this time is set to the earliest start time of the selected orbits.
- stopTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
The end time of the time interval to process in orbit format (YYYY-MM-DDThh:mm:ss[.SSSSSS]). If a range of orbit numbers is given, this time is set to the latest stop time of the selected orbits.
- slicingType: required(string - default: NONE)
One of { "ORBIT", "CALENDAR_DAY", "CALENDAR_MONTH", "CALENDAR_YEAR", "TIME_SLICE", "NONE" }
- sliceDuration: (integer)
Duration of a slice in seconds (only for slicingType TIME_SLICE)
- sliceOverlap: (integer - default: 0)
Overlap between adjacent slices in seconds (applicable for all slicingTypes except NONE, default 0)
- inputProductReference: (object)
Identification of the input product to use for On-Demand Production
- inputFileName: (string)
The file name of the input product to retrieve
- sensingStartTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
Sensing start time of the input product
- sensingStopTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
Sensing stop time of the input product
- inputFileName: (string)
- inputFilters: (array of RestInputFilter)
Filter conditions to apply to input products
Items: RestInputFilter
- productClass: required(string)
The product class the input filters apply to
- filterConditions: required(array of RestParameter)
Filter conditions to apply to input products of the given product class
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- productClass: required(string)
- dynamicProcessingParameters: (array of RestParameter)
Processing option settings (for on-demand processing called "WorkflowOptions" in the ICD); these options will be passed to the data processors in the "Dynamic Processing Parameter" section of the Job Order file
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- classOutputParameters: (array of RestClassOutputParameter)
Set of parameters to apply to a generated product of the referenced product class replacing the general output parameters
Items: RestClassOutputParameter
- productClass: required(string)
The product class to generate as output
- outputParameters: required(array of RestParameter)
Set of parameters to apply to the generated products (may be empty)
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- productClass: required(string)
- outputParameters: required(array of RestParameter)
Parameters to set for the generated products (may be empty)
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- workflowUuid: (string - pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$)
Universally unique workflow identifier (only for orders generated through ODIP, mandatory for these)
- workflowName: (string)
Short name of the applicable workflow (not suitable for identification; only for orders generated through ODIP)
- configuredProcessors: required(array of string)
List of identifiers of the configured processors (may be empty)
- orbits: required(array of RestOrbitQuery)
List of orbit ranges, identified by spacecraft code and orbit number from/to (may be empty)
Items: RestOrbitQuery
- spacecraftCode: required(string)
- orbitNumberFrom: required(integer)
- orbitNumberTo: required(integer)
- requestedProductClasses: required(array of string)
List of internal product types requested as output from the order (at least one is required)
- inputProductClasses: required(array of string)
List of internal product types provided as input to the order (may be empty)
- outputFileClass: required(string)
The file class for the generated output products
- processingMode: required(string)
The processing mode to run the processor(s) in
- productionType: (string)
Production type context, in which the order is running (SYSTEMATIC, ON_DEMAND_DEFAULT, ON_DEMAND_NON_DEFAULT)
- notificationEndpoint: (object)
The endpoint to send order completion notifications to
- uri: required(string)
The URI used to notify the ProcessingOrder originator of the order completion
- username: (string)
The username to authenticate with (using Basic Authentication)
- password: (string)
The password to authenticate with, mandatory if username is given; may be set to replacement value (e. g. asterisks) on data retrieval requests
- uri: required(string)
- productRetentionPeriod: (integer)
Retention period for products generated by this processing order in seconds
- hasFailedJobSteps: (boolean)
Indicates whether at least one of the job steps for this order is in state FAILED
- jobStepStates: (array of string)
The different existing job step states of order
- percentCompleted: (integer)
Percentage of completed job steps
- percentFailed: (integer)
Percentage of failed job steps
- percentRunning: (integer)
Percentage of running job steps
- expectedJobs: (integer)
Expected jobs for planning and releasing
- createdJobs: (integer)
Fully created/released jobs for planning and releasing
Example:
{
"id": 12345,
"version": 3,
"missionCode": "S5P",
"identifier": "RPRO Orbits 4567-5678",
"uuid": "3fcab4f3-457a-4424-9287-269286e5c03c",
"orderState": "INITIAL",
"orderSource": "CLI",
"startTime": "2018-05-17T00:00:00.123456",
"stopTime": "2019-07-31T12:00:00",
"slicingType": "ORBIT",
"sliceOverlap": 0,
"inputFilters": [
{
"productClass": "L1B",
"filterConditions": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "01"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "13"
},
{
"key": "fileClass",
"parameterType": "STRING",
"parameterValue": "OFFL"
}
]
}
],
"classOutputParameters": [
{
"productClass": "CLOUD",
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "99"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "01"
}
]
}
],
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "99"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "14"
}
],
"configuredProcessors": [ "KNMI L2 01.03.02 2019-07-03", "DLR L2 01.01.05 2019-07-03" ],
"orbits": [
{ "spacecraftCode": "S5P", "orbitNumberFrom": 4567, "orbitNumberTo": 5330 },
{ "spacecraftCode": "S5P", "orbitNumberFrom": 5421, "orbitNumberTo": 5678 }
],
"requestedProductClasses": [ "O3", "CLOUD", "FRESCO", "AAI" ],
"inputProductClasses": [ "L1B" ],
"outputFileClass": "RPRO",
"processingMode": "OFFL",
"hasFailedJobSteps": false,
"jobStepStates": [ "INITIAL", "READY" ],
"percentCompleted": 80,
"percentFailed": 10,
"percentRunning": 5
}
HTTP status code 404
The requested resource was not found
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
patch /orders/{id}
Update the order with the given ID with the attribute values of the given JSON object.
URI Parameters
- id: required(integer)
Body
Media type: application/json
Type: object
Properties- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- missionCode: required(string)
The mission code (e. g. S5P)
- identifier: required(string)
User-defined order identifier
- uuid: (string - pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$)
Universally unique order identifier
- priority: (integer - default: 50)
Priority of the ProcessingOrder (lower number means lower priority; value range 1..100 is defined for the ODIP, but other values are allowed outside On-Demand Production, including negative numbers). Default value is 50.
- orderState: required(string - default: INITIAL)
State of the processing order; one of { INITIAL, APPROVED, RELEASING, RELEASED, PLANNING, PLANNING_FAILED, PLANNED, RUNNING, SUSPENDING, COMPLETED, FAILED, CLOSED }
- stateMessage: (string)
Explanatory message describing the reason for the latest state change (mandatory for ProcessingOrders created via the ODIP)
- orderSource: (string - default: OTHER)
Source application for the processing order; one of { CLI, GUI, ODIP, OTHER }
- submissionTime: (datetime-only)
Date and time at which the ProcessingOrder was received (mandatory for ProcessingOrders created via the ODIP)
- executionTime: (datetime-only)
Expected execution time (optional, used for scheduling)
- releaseTime: (datetime-only)
Date and time at which the ProcessingOrder was received (mandatory for ProcessingOrders created via the ODIP)
- estimatedCompletionTime: (datetime-only)
Estimated date and time when the output product(s) will be available for download from the (OD)PRIP (mandatory for ProcessingOrders created via the ODIP)
- actualCompletionTime: (datetime-only)
Date and time when the output product(s) was/were available for download from the (OD)PRIP (mandatory for ProcessingOrders created via the ODIP, once they are in state "COMPLETED")
- evictionTime: (datetime-only)
Eviction time (optional, used for automatic order deletion)
- startTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
The start time of the time interval to process in orbit format (YYYY-MM-DDThh:mm:ss[.SSSSSS]). If a range of orbit numbers is given, this time is set to the earliest start time of the selected orbits.
- stopTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
The end time of the time interval to process in orbit format (YYYY-MM-DDThh:mm:ss[.SSSSSS]). If a range of orbit numbers is given, this time is set to the latest stop time of the selected orbits.
- slicingType: required(string - default: NONE)
One of { "ORBIT", "CALENDAR_DAY", "CALENDAR_MONTH", "CALENDAR_YEAR", "TIME_SLICE", "NONE" }
- sliceDuration: (integer)
Duration of a slice in seconds (only for slicingType TIME_SLICE)
- sliceOverlap: (integer - default: 0)
Overlap between adjacent slices in seconds (applicable for all slicingTypes except NONE, default 0)
- inputProductReference: (object)
Identification of the input product to use for On-Demand Production
- inputFileName: (string)
The file name of the input product to retrieve
- sensingStartTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
Sensing start time of the input product
- sensingStopTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
Sensing stop time of the input product
- inputFileName: (string)
- inputFilters: (array of RestInputFilter)
Filter conditions to apply to input products
Items: RestInputFilter
- productClass: required(string)
The product class the input filters apply to
- filterConditions: required(array of RestParameter)
Filter conditions to apply to input products of the given product class
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- productClass: required(string)
- dynamicProcessingParameters: (array of RestParameter)
Processing option settings (for on-demand processing called "WorkflowOptions" in the ICD); these options will be passed to the data processors in the "Dynamic Processing Parameter" section of the Job Order file
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- classOutputParameters: (array of RestClassOutputParameter)
Set of parameters to apply to a generated product of the referenced product class replacing the general output parameters
Items: RestClassOutputParameter
- productClass: required(string)
The product class to generate as output
- outputParameters: required(array of RestParameter)
Set of parameters to apply to the generated products (may be empty)
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- productClass: required(string)
- outputParameters: required(array of RestParameter)
Parameters to set for the generated products (may be empty)
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- workflowUuid: (string - pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$)
Universally unique workflow identifier (only for orders generated through ODIP, mandatory for these)
- workflowName: (string)
Short name of the applicable workflow (not suitable for identification; only for orders generated through ODIP)
- configuredProcessors: required(array of string)
List of identifiers of the configured processors (may be empty)
- orbits: required(array of RestOrbitQuery)
List of orbit ranges, identified by spacecraft code and orbit number from/to (may be empty)
Items: RestOrbitQuery
- spacecraftCode: required(string)
- orbitNumberFrom: required(integer)
- orbitNumberTo: required(integer)
- requestedProductClasses: required(array of string)
List of internal product types requested as output from the order (at least one is required)
- inputProductClasses: required(array of string)
List of internal product types provided as input to the order (may be empty)
- outputFileClass: required(string)
The file class for the generated output products
- processingMode: required(string)
The processing mode to run the processor(s) in
- productionType: (string)
Production type context, in which the order is running (SYSTEMATIC, ON_DEMAND_DEFAULT, ON_DEMAND_NON_DEFAULT)
- notificationEndpoint: (object)
The endpoint to send order completion notifications to
- uri: required(string)
The URI used to notify the ProcessingOrder originator of the order completion
- username: (string)
The username to authenticate with (using Basic Authentication)
- password: (string)
The password to authenticate with, mandatory if username is given; may be set to replacement value (e. g. asterisks) on data retrieval requests
- uri: required(string)
- productRetentionPeriod: (integer)
Retention period for products generated by this processing order in seconds
- hasFailedJobSteps: (boolean)
Indicates whether at least one of the job steps for this order is in state FAILED
- jobStepStates: (array of string)
The different existing job step states of order
- percentCompleted: (integer)
Percentage of completed job steps
- percentFailed: (integer)
Percentage of failed job steps
- percentRunning: (integer)
Percentage of running job steps
- expectedJobs: (integer)
Expected jobs for planning and releasing
- createdJobs: (integer)
Fully created/released jobs for planning and releasing
Example:
{
"id": 12345,
"version": 3,
"missionCode": "S5P",
"identifier": "RPRO Orbits 4567-5678",
"uuid": "3fcab4f3-457a-4424-9287-269286e5c03c",
"orderState": "INITIAL",
"orderSource": "CLI",
"startTime": "2018-05-17T00:00:00.123456",
"stopTime": "2019-07-31T12:00:00",
"slicingType": "ORBIT",
"sliceOverlap": 0,
"inputFilters": [
{
"productClass": "L1B",
"filterConditions": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "01"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "13"
},
{
"key": "fileClass",
"parameterType": "STRING",
"parameterValue": "OFFL"
}
]
}
],
"classOutputParameters": [
{
"productClass": "CLOUD",
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "99"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "01"
}
]
}
],
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "99"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "14"
}
],
"configuredProcessors": [ "KNMI L2 01.03.02 2019-07-03", "DLR L2 01.01.05 2019-07-03" ],
"orbits": [
{ "spacecraftCode": "S5P", "orbitNumberFrom": 4567, "orbitNumberTo": 5330 },
{ "spacecraftCode": "S5P", "orbitNumberFrom": 5421, "orbitNumberTo": 5678 }
],
"requestedProductClasses": [ "O3", "CLOUD", "FRESCO", "AAI" ],
"inputProductClasses": [ "L1B" ],
"outputFileClass": "RPRO",
"processingMode": "OFFL",
"hasFailedJobSteps": false,
"jobStepStates": [ "INITIAL", "READY" ],
"percentCompleted": 80,
"percentFailed": 10,
"percentRunning": 5
}
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- missionCode: required(string)
The mission code (e. g. S5P)
- identifier: required(string)
User-defined order identifier
- uuid: (string - pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$)
Universally unique order identifier
- priority: (integer - default: 50)
Priority of the ProcessingOrder (lower number means lower priority; value range 1..100 is defined for the ODIP, but other values are allowed outside On-Demand Production, including negative numbers). Default value is 50.
- orderState: required(string - default: INITIAL)
State of the processing order; one of { INITIAL, APPROVED, RELEASING, RELEASED, PLANNING, PLANNING_FAILED, PLANNED, RUNNING, SUSPENDING, COMPLETED, FAILED, CLOSED }
- stateMessage: (string)
Explanatory message describing the reason for the latest state change (mandatory for ProcessingOrders created via the ODIP)
- orderSource: (string - default: OTHER)
Source application for the processing order; one of { CLI, GUI, ODIP, OTHER }
- submissionTime: (datetime-only)
Date and time at which the ProcessingOrder was received (mandatory for ProcessingOrders created via the ODIP)
- executionTime: (datetime-only)
Expected execution time (optional, used for scheduling)
- releaseTime: (datetime-only)
Date and time at which the ProcessingOrder was received (mandatory for ProcessingOrders created via the ODIP)
- estimatedCompletionTime: (datetime-only)
Estimated date and time when the output product(s) will be available for download from the (OD)PRIP (mandatory for ProcessingOrders created via the ODIP)
- actualCompletionTime: (datetime-only)
Date and time when the output product(s) was/were available for download from the (OD)PRIP (mandatory for ProcessingOrders created via the ODIP, once they are in state "COMPLETED")
- evictionTime: (datetime-only)
Eviction time (optional, used for automatic order deletion)
- startTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
The start time of the time interval to process in orbit format (YYYY-MM-DDThh:mm:ss[.SSSSSS]). If a range of orbit numbers is given, this time is set to the earliest start time of the selected orbits.
- stopTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
The end time of the time interval to process in orbit format (YYYY-MM-DDThh:mm:ss[.SSSSSS]). If a range of orbit numbers is given, this time is set to the latest stop time of the selected orbits.
- slicingType: required(string - default: NONE)
One of { "ORBIT", "CALENDAR_DAY", "CALENDAR_MONTH", "CALENDAR_YEAR", "TIME_SLICE", "NONE" }
- sliceDuration: (integer)
Duration of a slice in seconds (only for slicingType TIME_SLICE)
- sliceOverlap: (integer - default: 0)
Overlap between adjacent slices in seconds (applicable for all slicingTypes except NONE, default 0)
- inputProductReference: (object)
Identification of the input product to use for On-Demand Production
- inputFileName: (string)
The file name of the input product to retrieve
- sensingStartTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
Sensing start time of the input product
- sensingStopTime: (string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(.\d{1,6})?$)
Sensing stop time of the input product
- inputFileName: (string)
- inputFilters: (array of RestInputFilter)
Filter conditions to apply to input products
Items: RestInputFilter
- productClass: required(string)
The product class the input filters apply to
- filterConditions: required(array of RestParameter)
Filter conditions to apply to input products of the given product class
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- productClass: required(string)
- dynamicProcessingParameters: (array of RestParameter)
Processing option settings (for on-demand processing called "WorkflowOptions" in the ICD); these options will be passed to the data processors in the "Dynamic Processing Parameter" section of the Job Order file
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- classOutputParameters: (array of RestClassOutputParameter)
Set of parameters to apply to a generated product of the referenced product class replacing the general output parameters
Items: RestClassOutputParameter
- productClass: required(string)
The product class to generate as output
- outputParameters: required(array of RestParameter)
Set of parameters to apply to the generated products (may be empty)
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- productClass: required(string)
- outputParameters: required(array of RestParameter)
Parameters to set for the generated products (may be empty)
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- workflowUuid: (string - pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$)
Universally unique workflow identifier (only for orders generated through ODIP, mandatory for these)
- workflowName: (string)
Short name of the applicable workflow (not suitable for identification; only for orders generated through ODIP)
- configuredProcessors: required(array of string)
List of identifiers of the configured processors (may be empty)
- orbits: required(array of RestOrbitQuery)
List of orbit ranges, identified by spacecraft code and orbit number from/to (may be empty)
Items: RestOrbitQuery
- spacecraftCode: required(string)
- orbitNumberFrom: required(integer)
- orbitNumberTo: required(integer)
- requestedProductClasses: required(array of string)
List of internal product types requested as output from the order (at least one is required)
- inputProductClasses: required(array of string)
List of internal product types provided as input to the order (may be empty)
- outputFileClass: required(string)
The file class for the generated output products
- processingMode: required(string)
The processing mode to run the processor(s) in
- productionType: (string)
Production type context, in which the order is running (SYSTEMATIC, ON_DEMAND_DEFAULT, ON_DEMAND_NON_DEFAULT)
- notificationEndpoint: (object)
The endpoint to send order completion notifications to
- uri: required(string)
The URI used to notify the ProcessingOrder originator of the order completion
- username: (string)
The username to authenticate with (using Basic Authentication)
- password: (string)
The password to authenticate with, mandatory if username is given; may be set to replacement value (e. g. asterisks) on data retrieval requests
- uri: required(string)
- productRetentionPeriod: (integer)
Retention period for products generated by this processing order in seconds
- hasFailedJobSteps: (boolean)
Indicates whether at least one of the job steps for this order is in state FAILED
- jobStepStates: (array of string)
The different existing job step states of order
- percentCompleted: (integer)
Percentage of completed job steps
- percentFailed: (integer)
Percentage of failed job steps
- percentRunning: (integer)
Percentage of running job steps
- expectedJobs: (integer)
Expected jobs for planning and releasing
- createdJobs: (integer)
Fully created/released jobs for planning and releasing
Example:
{
"id": 12345,
"version": 3,
"missionCode": "S5P",
"identifier": "RPRO Orbits 4567-5678",
"uuid": "3fcab4f3-457a-4424-9287-269286e5c03c",
"orderState": "INITIAL",
"orderSource": "CLI",
"startTime": "2018-05-17T00:00:00.123456",
"stopTime": "2019-07-31T12:00:00",
"slicingType": "ORBIT",
"sliceOverlap": 0,
"inputFilters": [
{
"productClass": "L1B",
"filterConditions": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "01"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "13"
},
{
"key": "fileClass",
"parameterType": "STRING",
"parameterValue": "OFFL"
}
]
}
],
"classOutputParameters": [
{
"productClass": "CLOUD",
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "99"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "01"
}
]
}
],
"outputParameters": [
{
"key": "copernicusCollection",
"parameterType": "STRING",
"parameterValue": "99"
},
{
"key": "revision",
"parameterType": "INTEGER",
"parameterValue": "14"
}
],
"configuredProcessors": [ "KNMI L2 01.03.02 2019-07-03", "DLR L2 01.01.05 2019-07-03" ],
"orbits": [
{ "spacecraftCode": "S5P", "orbitNumberFrom": 4567, "orbitNumberTo": 5330 },
{ "spacecraftCode": "S5P", "orbitNumberFrom": 5421, "orbitNumberTo": 5678 }
],
"requestedProductClasses": [ "O3", "CLOUD", "FRESCO", "AAI" ],
"inputProductClasses": [ "L1B" ],
"outputFileClass": "RPRO",
"processingMode": "OFFL",
"hasFailedJobSteps": false,
"jobStepStates": [ "INITIAL", "READY" ],
"percentCompleted": 80,
"percentFailed": 10,
"percentRunning": 5
}
HTTP status code 304
The resource was not modified.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
/orderjobs
Retrieves production planner jobs, optionally filtered by job state and/or order ID.
get /orderjobs
Retrieves production planner jobs, optionally filtered by job state and/or order ID.
Query Parameters
- orderid: (integer)
The order ID to filter by.
- recordFrom: (integer)
The first record of the filtered and ordered result to return.
- recordTo: (integer)
The last record of the filtered and ordered result to return.
- logs: (boolean)
Whether or not logs are included in the REST job step.
- state: (array of )
The job states to filter by.
- orderBy: (array of )
An array of strings containing a column name and an optional sort direction (ASC/DESC), separated by whitespace.
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: RestJob
- id: (integer - default: 0)
The persistent id of this object
- version: (integer)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- orderIdentifier: required(string)
User-defined order identifier
- jobState: required(one of INITIAL, PLANNED, RELEASED, STARTED, ON_HOLD, COMPLETED, FAILED, CLOSED - default: INITIAL)
Status of the whole job
- orbit: (object)
The orbit this job relates to (if any)
- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- missionCode: required(string)
The mission code (e. g. S5P)
- spacecraftCode: required(string)
The short code for the spacecraft (e. g. TDX1)
- orbitNumber: required(integer)
The orbit number (usually starting at 1 at launch); unique for a spacecraft and usually gapless
- startTime: required(string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\d{6}$)
The start time of the orbit (e. g. using a Spacecraft Midnight Crossing [SMX] event) in orbit format (YYYY-MM-DDThh:mm:ss.SSSSSS)
- stopTime: required(string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\d{6}$)
The stop time of the orbit (e. g. using a Spacecraft Midnight Crossing [SMX] event) in orbit format (YYYY-MM-DDThh:mm:ss.SSSSSS); usually the stop time of one orbit is the start time of the subsequent orbit
- id: (integer - default: 0)
- startTime: (datetime-only)
The start time of the time interval to process
- stopTime: (datetime-only)
The end time of the time interval to process
- priority: required(integer - default: 50)
A processing priority (lower numbers indicate lower priority, higher numbers higher priority; default is 50)
- hasFailedJobSteps: (boolean)
Indicates whether at least one of the job steps for this job is in state FAILED
- processingFacilityName: required(string)
The name of the processing facility this job runs on
- jobSteps: required(array of RestJobStep)
The job steps for this job
Items: RestJobStep
- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- name: (string)
Job step name generated from the job step id (not part of data model)
- jobId: required(integer)
The persistend id of the job this job step belongs to
- jobStepState: required(one of PLANNED, WAITING_INPUT, READY, RUNNING, COMPLETED, FAILED, CLOSED - default: PLANNED)
The currenet status of the job step
- outputParameters: required(array of RestParameter)
A set of parameters to set for the generated products.
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- processingMode: required(string)
The processing mode to run the processor(s) in
- inputProductClasses: required(array of string)
The input product types required for processing
- outputProductClass: required(string)
The product type of the output product of this job step
- outputProduct: (integer)
The id of the output product of this job step
- configuredProcessor: (string)
The configured processor used to create the output product
- processingStartTime: (datetime-only)
The start time of the processing job
- processingCompletionTime: (datetime-only)
The completion time of the processing job
- stdoutLogLevel: (one of DEBUG, INFO, PROGRESS, WARNING, ERROR - default: INFO)
The log level of stdout
- stderrLogLevel: (one of DEBUG, INFO, PROGRESS, WARNING, ERROR - default: INFO)
The log level of stderr
- processingStdOut: (string)
The standard output of the processing job
- processingStdErr: (string)
The standard error output of the processing job
- isFailed: required(boolean)
The failed state of the job step
- jobOrderFilename: (string)
The filename of the Job Order file in the associated processing facility
- orderId: (integer)
The id of the order
- orderIdentifier: (string)
The identifier of the order
- id: (integer - default: 0)
Example:
[
{
"id": 23785526,
"version": 1,
"orderIdentifier": "CO2 products for orbits 2345-4567",
"jobState": "PLANNED",
"filterConditions": [],
"outputParameters": [],
"priority": 10,
"hasFailedJobSteps": false,
"processingFacilityName": "PF1",
"jobSteps": [
{
"id": 23785527,
"version": 1,
"jobId": 23785526,
"jobStepState": "PLANNED",
"outputParameters": [],
"processingMode": "OFFL",
"inputProductClasses": [ "L1B" ],
"outputProductClass": "CH4",
"outputProduct": 1234,
"isFailed": false
}
]
},
{
"id": 23785537,
"version": 4,
"orderIdentifier": "CLOUD products for orbits 2345-4567",
"jobState": "FAILED",
"filterConditions": [],
"outputParameters": [],
"priority": 10,
"hasFailedJobSteps": true,
"processingFacilityName": "PF2",
"jobSteps": [
{
"id": 23785538,
"version": 4,
"jobId": 23785537,
"jobStepState": "FAILED",
"outputParameters": [],
"processingMode": "OFFL",
"inputProductClasses": [ "L1B", "CO" ],
"outputProductClass": "CH4",
"outputProduct": 1234,
"isFailed": false
}
]
}
]
HTTP status code 403
A cross-mission data access was attempted.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
HTTP status code 404
The requested resource was not found.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
Retrieves the number of production planner jobs based on the specified states and order ID.
get /orderjobs/count
Retrieves the number of production planner jobs based on the specified states and order ID.
Query Parameters
- state: (array of )
The permitted job states.
- orderid: (integer)
The order ID of the jobs.
HTTP status code 200
Body
Media type: text/plain
Type: any
HTTP status code 403
A cross-mission data access was attempted.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
HTTP status code 404
The requested resource was not found.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
Retrieves the index of a job in an ordered list of all jobs of an order.
get /orderjobs/index
Retrieves the index of a job in an ordered list of all jobs of an order.
Query Parameters
- orderid: required(integer)
The persistent id of the processing order.
- jobid: (integer)
The persistent id of the job.
- jobstepid: (integer)
The persistent id of the job step.
- state: (array of )
The permitted job states (COMPLETED, NON-COMPLETED).
- orderBy: (array of )
An array of strings containing a column name and an optional sort direction (ASC/DESC), separated by whitespace.
HTTP status code 200
Body
Media type: text/plain
Type: any
HTTP status code 403
A cross-mission data access was attempted.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
HTTP status code 404
The requested resource was not found.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
/orderjobsteps
Get production planner job steps by status, mission, and latest of size "last".
get /orderjobsteps
Get production planner job steps by status, mission, and latest of size "last".
Query Parameters
- status: (one of INITIAL, WAITING_INPUT, READY, RUNNING, COMPLETED, FAILED, NONE)
The status of the job steps to retrieve
- mission: (string)
The mission for which to retrieve the job steps
- last: (integer)
The number of latest job steps to retrieve
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: RestJobStep
- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- name: (string)
Job step name generated from the job step id (not part of data model)
- jobId: required(integer)
The persistend id of the job this job step belongs to
- jobStepState: required(one of PLANNED, WAITING_INPUT, READY, RUNNING, COMPLETED, FAILED, CLOSED - default: PLANNED)
The currenet status of the job step
- outputParameters: required(array of RestParameter)
A set of parameters to set for the generated products.
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- processingMode: required(string)
The processing mode to run the processor(s) in
- inputProductClasses: required(array of string)
The input product types required for processing
- outputProductClass: required(string)
The product type of the output product of this job step
- outputProduct: (integer)
The id of the output product of this job step
- configuredProcessor: (string)
The configured processor used to create the output product
- processingStartTime: (datetime-only)
The start time of the processing job
- processingCompletionTime: (datetime-only)
The completion time of the processing job
- stdoutLogLevel: (one of DEBUG, INFO, PROGRESS, WARNING, ERROR - default: INFO)
The log level of stdout
- stderrLogLevel: (one of DEBUG, INFO, PROGRESS, WARNING, ERROR - default: INFO)
The log level of stderr
- processingStdOut: (string)
The standard output of the processing job
- processingStdErr: (string)
The standard error output of the processing job
- isFailed: required(boolean)
The failed state of the job step
- jobOrderFilename: (string)
The filename of the Job Order file in the associated processing facility
- orderId: (integer)
The id of the order
- orderIdentifier: (string)
The identifier of the order
Example:
[
{
"id": 23785527,
"version": 1,
"name": "proseojob23785527",
"jobId": 23785526,
"jobStepState": "PLANNED",
"outputParameters": [],
"processingMode": "OFFL",
"inputProductClasses": [ "L1B" ],
"outputProductClass": "CH4",
"outputProduct": 1234,
"configuredProcessor": "confProc",
"stdoutLogLevel": "INFO",
"stderrLogLevel": "INFO",
"isFailed": false
},
{
"id": 23785538,
"version": 4,
"jobId": 23785537,
"jobStepState": "FAILED",
"outputParameters": [],
"processingMode": "OFFL",
"inputProductClasses": [ "L1B", "CO" ],
"outputProductClass": "CH4",
"outputProduct": 1234,
"configuredProcessor": "confProc",
"stdoutLogLevel": "INFO",
"stderrLogLevel": "INFO",
"isFailed": false
}
]
HTTP status code 403
A cross-mission data access was attempted.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
HTTP status code 404
The requested resource was not found.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
Get a production planner job step identified by name or id.
get /orderjobsteps/{name}
Get a production planner job step identified by name or id.
URI Parameters
- name: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- name: (string)
Job step name generated from the job step id (not part of data model)
- jobId: required(integer)
The persistend id of the job this job step belongs to
- jobStepState: required(one of PLANNED, WAITING_INPUT, READY, RUNNING, COMPLETED, FAILED, CLOSED - default: PLANNED)
The currenet status of the job step
- outputParameters: required(array of RestParameter)
A set of parameters to set for the generated products.
Items: RestParameter
- key: required(string)
The parameter name
- parameterType: required(string)
The type of the parameter for deserialization (one of { "STRING", "INTEGER", "BOOLEAN", "DOUBLE", "INSTANT" } )
- parameterValue: required(string)
All parameter values are serialized to their string representations. For deserialization refer to the parameterType.
- key: required(string)
- processingMode: required(string)
The processing mode to run the processor(s) in
- inputProductClasses: required(array of string)
The input product types required for processing
- outputProductClass: required(string)
The product type of the output product of this job step
- outputProduct: (integer)
The id of the output product of this job step
- configuredProcessor: (string)
The configured processor used to create the output product
- processingStartTime: (datetime-only)
The start time of the processing job
- processingCompletionTime: (datetime-only)
The completion time of the processing job
- stdoutLogLevel: (one of DEBUG, INFO, PROGRESS, WARNING, ERROR - default: INFO)
The log level of stdout
- stderrLogLevel: (one of DEBUG, INFO, PROGRESS, WARNING, ERROR - default: INFO)
The log level of stderr
- processingStdOut: (string)
The standard output of the processing job
- processingStdErr: (string)
The standard error output of the processing job
- isFailed: required(boolean)
The failed state of the job step
- jobOrderFilename: (string)
The filename of the Job Order file in the associated processing facility
- orderId: (integer)
The id of the order
- orderIdentifier: (string)
The identifier of the order
Example:
{
"id": 23785527,
"version": 1,
"name": "proseojob23785527",
"jobId": 23785526,
"jobStepState": "PLANNED",
"outputParameters": [],
"processingMode": "OFFL",
"inputProductClasses": [ "L1B" ],
"outputProductClass": "CH4",
"outputProduct": 1234,
"configuredProcessor": "confProc",
"stdoutLogLevel": "INFO",
"stderrLogLevel": "INFO",
"isFailed": false
}
HTTP status code 404
The requested resource was not found
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
/missions
Retrieves a list of all missions or a mission with a specific code.
Creates a new mission with the provided data.
get /missions
Retrieves a list of all missions or a mission with a specific code.
Query Parameters
- mission: (string)
The code of the mission to retrieve.
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: RestMission
- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- code: required(string)
The mission code (e. g. S5P)
- name: required(string)
The mission name (e. g. Sentinel-5 Precursor)
- fileClasses: required(array of string)
File classes as agreed for this mission (e. g. "TEST", "OPER")
- processingModes: required(array of string)
Processing mode tags as agreed for this mission
- productFileTemplate: required(string)
The product filename template implementing the mission's file naming convention
- processingCentre: (string)
An identifying string for the processing centre (organisation) operating this prosEO instance
- productRetentionPeriod: (integer)
The default period of time for keeping products after their generation in seconds
- orderRetentionPeriod: (integer)
The default period of time for keeping orders after their completion in seconds
- spacecrafts: required(array of RestSpacecraft)
A spacecraft used for a specific Mission. A Mission may operate more than one spacecraft.
Items: RestSpacecraft
- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- code: required(string)
The short code for the spacecraft (e. g. TDX1)
- name: required(string)
The spacecraft name (e. g. TanDEM-X)
- payloads: (array of RestPayload)
The payloads flying on this spacecraft
Items: RestPayload
- name: required(string)
The payload name (instrument short name), e. g. "TROPOMI".
- description: required(string)
The payload description
- name: required(string)
- id: (integer - default: 0)
Example:
[
{
"id": 9753721,
"version": 17,
"code": "S5P",
"name": "Sentinel-5 Precursor",
"fileClasses": [ "TEST", "OPER", "NRTI", "OFFL", "RPRO" ],
"processingModes": [ "NRTI", "OFFL", "RPRO" ],
"productFileTemplate": "S5P_${fileClass}_${productClass.missionType}.nc",
"processingCentre": "S5P-PDGS",
"productRetentionPeriod": 2592000,
"orderRetentionPeriod": 86400,
"spacecrafts": [
{
"code": "S5P",
"name": "Sentinel-5 Precursor",
"payloads": [
{
"name": "TROPOMI",
"description": "The TROPOspheric Monitoring Instrument"
}
]
}
]
},
{
"id": 9753722,
"version": 3,
"code": "TDM",
"name": "TanDEM-X",
"fileClasses": [ "TEST", "OPER" ],
"processingModes": [ "DEM", "SCI" ],
"productFileTemplate": "TDM.${mode}.DEM",
"spacecrafts": [
{
"code": "TDX1",
"name": "TanDEM-X"
},
{
"code": "TSX1",
"name": "TerraSAR-X"
}
]
}
]
HTTP status code 403
A cross-mission data access was attempted.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
HTTP status code 404
The requested resource was not found.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
post /missions
Creates a new mission with the provided data.
Body
Media type: application/json
Type: object
Properties- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- code: required(string)
The mission code (e. g. S5P)
- name: required(string)
The mission name (e. g. Sentinel-5 Precursor)
- fileClasses: required(array of string)
File classes as agreed for this mission (e. g. "TEST", "OPER")
- processingModes: required(array of string)
Processing mode tags as agreed for this mission
- productFileTemplate: required(string)
The product filename template implementing the mission's file naming convention
- processingCentre: (string)
An identifying string for the processing centre (organisation) operating this prosEO instance
- productRetentionPeriod: (integer)
The default period of time for keeping products after their generation in seconds
- orderRetentionPeriod: (integer)
The default period of time for keeping orders after their completion in seconds
- spacecrafts: required(array of RestSpacecraft)
A spacecraft used for a specific Mission. A Mission may operate more than one spacecraft.
Items: RestSpacecraft
- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- code: required(string)
The short code for the spacecraft (e. g. TDX1)
- name: required(string)
The spacecraft name (e. g. TanDEM-X)
- payloads: (array of RestPayload)
The payloads flying on this spacecraft
Items: RestPayload
- name: required(string)
The payload name (instrument short name), e. g. "TROPOMI".
- description: required(string)
The payload description
- name: required(string)
- id: (integer - default: 0)
Example:
{
"id": 9753721,
"version": 17,
"code": "S5P",
"name": "Sentinel-5 Precursor",
"fileClasses": [ "TEST", "OPER", "NRTI", "OFFL", "RPRO" ],
"processingModes": [ "NRTI", "OFFL", "RPRO" ],
"productFileTemplate": "S5P_${fileClass}_${productClass.missionType}.nc",
"spacecrafts": [
{
"code": "S5P",
"name": "Sentinel-5 Precursor"
}
]
}
HTTP status code 201
Body
Media type: application/json
Type: object
Properties- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- code: required(string)
The mission code (e. g. S5P)
- name: required(string)
The mission name (e. g. Sentinel-5 Precursor)
- fileClasses: required(array of string)
File classes as agreed for this mission (e. g. "TEST", "OPER")
- processingModes: required(array of string)
Processing mode tags as agreed for this mission
- productFileTemplate: required(string)
The product filename template implementing the mission's file naming convention
- processingCentre: (string)
An identifying string for the processing centre (organisation) operating this prosEO instance
- productRetentionPeriod: (integer)
The default period of time for keeping products after their generation in seconds
- orderRetentionPeriod: (integer)
The default period of time for keeping orders after their completion in seconds
- spacecrafts: required(array of RestSpacecraft)
A spacecraft used for a specific Mission. A Mission may operate more than one spacecraft.
Items: RestSpacecraft
- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- code: required(string)
The short code for the spacecraft (e. g. TDX1)
- name: required(string)
The spacecraft name (e. g. TanDEM-X)
- payloads: (array of RestPayload)
The payloads flying on this spacecraft
Items: RestPayload
- name: required(string)
The payload name (instrument short name), e. g. "TROPOMI".
- description: required(string)
The payload description
- name: required(string)
- id: (integer - default: 0)
Example:
{
"id": 9753721,
"version": 17,
"code": "S5P",
"name": "Sentinel-5 Precursor",
"fileClasses": [ "TEST", "OPER", "NRTI", "OFFL", "RPRO" ],
"processingModes": [ "NRTI", "OFFL", "RPRO" ],
"productFileTemplate": "S5P_${fileClass}_${productClass.missionType}.nc",
"spacecrafts": [
{
"code": "S5P",
"name": "Sentinel-5 Precursor"
}
]
}
HTTP status code 400
The request sent to the server contains data which is not as expected e.g. invalid location URI
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
HTTP status code 403
A cross-mission data access was attempted.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
Retrieves the mission with the specified ID.
Updates the mission with the specified ID using the attribute values of the given JSON object.
Delete a mission by ID.
get /missions/{id}
Retrieves the mission with the specified ID.
URI Parameters
- id: required(integer)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- code: required(string)
The mission code (e. g. S5P)
- name: required(string)
The mission name (e. g. Sentinel-5 Precursor)
- fileClasses: required(array of string)
File classes as agreed for this mission (e. g. "TEST", "OPER")
- processingModes: required(array of string)
Processing mode tags as agreed for this mission
- productFileTemplate: required(string)
The product filename template implementing the mission's file naming convention
- processingCentre: (string)
An identifying string for the processing centre (organisation) operating this prosEO instance
- productRetentionPeriod: (integer)
The default period of time for keeping products after their generation in seconds
- orderRetentionPeriod: (integer)
The default period of time for keeping orders after their completion in seconds
- spacecrafts: required(array of RestSpacecraft)
A spacecraft used for a specific Mission. A Mission may operate more than one spacecraft.
Items: RestSpacecraft
- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- code: required(string)
The short code for the spacecraft (e. g. TDX1)
- name: required(string)
The spacecraft name (e. g. TanDEM-X)
- payloads: (array of RestPayload)
The payloads flying on this spacecraft
Items: RestPayload
- name: required(string)
The payload name (instrument short name), e. g. "TROPOMI".
- description: required(string)
The payload description
- name: required(string)
- id: (integer - default: 0)
Example:
{
"id": 9753721,
"version": 17,
"code": "S5P",
"name": "Sentinel-5 Precursor",
"fileClasses": [ "TEST", "OPER", "NRTI", "OFFL", "RPRO" ],
"processingModes": [ "NRTI", "OFFL", "RPRO" ],
"productFileTemplate": "S5P_${fileClass}_${productClass.missionType}.nc",
"spacecrafts": [
{
"code": "S5P",
"name": "Sentinel-5 Precursor"
}
]
}
HTTP status code 404
The requested resource was not found
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
patch /missions/{id}
Updates the mission with the specified ID using the attribute values of the given JSON object.
URI Parameters
- id: required(integer)
Body
Media type: application/json
Type: object
Properties- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- code: required(string)
The mission code (e. g. S5P)
- name: required(string)
The mission name (e. g. Sentinel-5 Precursor)
- fileClasses: required(array of string)
File classes as agreed for this mission (e. g. "TEST", "OPER")
- processingModes: required(array of string)
Processing mode tags as agreed for this mission
- productFileTemplate: required(string)
The product filename template implementing the mission's file naming convention
- processingCentre: (string)
An identifying string for the processing centre (organisation) operating this prosEO instance
- productRetentionPeriod: (integer)
The default period of time for keeping products after their generation in seconds
- orderRetentionPeriod: (integer)
The default period of time for keeping orders after their completion in seconds
- spacecrafts: required(array of RestSpacecraft)
A spacecraft used for a specific Mission. A Mission may operate more than one spacecraft.
Items: RestSpacecraft
- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- code: required(string)
The short code for the spacecraft (e. g. TDX1)
- name: required(string)
The spacecraft name (e. g. TanDEM-X)
- payloads: (array of RestPayload)
The payloads flying on this spacecraft
Items: RestPayload
- name: required(string)
The payload name (instrument short name), e. g. "TROPOMI".
- description: required(string)
The payload description
- name: required(string)
- id: (integer - default: 0)
Example:
{
"id": 9753721,
"version": 17,
"code": "S5P",
"name": "Sentinel-5 Precursor",
"fileClasses": [ "TEST", "OPER", "NRTI", "OFFL", "RPRO" ],
"processingModes": [ "NRTI", "OFFL", "RPRO" ],
"productFileTemplate": "S5P_${fileClass}_${productClass.missionType}.nc",
"spacecrafts": [
{
"code": "S5P",
"name": "Sentinel-5 Precursor"
}
]
}
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- code: required(string)
The mission code (e. g. S5P)
- name: required(string)
The mission name (e. g. Sentinel-5 Precursor)
- fileClasses: required(array of string)
File classes as agreed for this mission (e. g. "TEST", "OPER")
- processingModes: required(array of string)
Processing mode tags as agreed for this mission
- productFileTemplate: required(string)
The product filename template implementing the mission's file naming convention
- processingCentre: (string)
An identifying string for the processing centre (organisation) operating this prosEO instance
- productRetentionPeriod: (integer)
The default period of time for keeping products after their generation in seconds
- orderRetentionPeriod: (integer)
The default period of time for keeping orders after their completion in seconds
- spacecrafts: required(array of RestSpacecraft)
A spacecraft used for a specific Mission. A Mission may operate more than one spacecraft.
Items: RestSpacecraft
- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- code: required(string)
The short code for the spacecraft (e. g. TDX1)
- name: required(string)
The spacecraft name (e. g. TanDEM-X)
- payloads: (array of RestPayload)
The payloads flying on this spacecraft
Items: RestPayload
- name: required(string)
The payload name (instrument short name), e. g. "TROPOMI".
- description: required(string)
The payload description
- name: required(string)
- id: (integer - default: 0)
Example:
{
"id": 9753721,
"version": 17,
"code": "S5P",
"name": "Sentinel-5 Precursor",
"fileClasses": [ "TEST", "OPER", "NRTI", "OFFL", "RPRO" ],
"processingModes": [ "NRTI", "OFFL", "RPRO" ],
"productFileTemplate": "S5P_${fileClass}_${productClass.missionType}.nc",
"spacecrafts": [
{
"code": "S5P",
"name": "Sentinel-5 Precursor"
}
]
}
HTTP status code 304
The resource was not modified.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
delete /missions/{id}
Delete a mission by ID.
URI Parameters
- id: required(integer)
Query Parameters
- force: (boolean - default: false)
Also delete all configured items for this mission, but no products
- delete-products: (boolean - default: false)
Also delete all products for this mission (requires "force")
HTTP status code 204
/orbits
Retrieves a list of all orbits filtered by spacecraft code, orbit number range, and start time range.
Creates one or more orbits based on the provided JSON objects.
get /orbits
Retrieves a list of all orbits filtered by spacecraft code, orbit number range, and start time range.
Query Parameters
- spacecraftCode: required(string)
The spacecraft code to filter by.
- orbitNumberFrom: (integer)
The minimum orbit number requested.
- orbitNumberTo: (integer)
The maximum orbit number requested.
- startTimeFrom: (string)
The earliest sensing start time requested.
- startTimeTo: (string)
The latest sensing start time requested.
- recordFrom: (integer)
The first record of the filtered and ordered result to return.
- recordTo: (integer)
The last record of the filtered and ordered result to return.
- orderBy: (array of )
An array of strings containing a column name and an optional sort direction (ASC/DESC), separated by white space.
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: RestOrbit
- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- missionCode: required(string)
The mission code (e. g. S5P)
- spacecraftCode: required(string)
The short code for the spacecraft (e. g. TDX1)
- orbitNumber: required(integer)
The orbit number (usually starting at 1 at launch); unique for a spacecraft and usually gapless
- startTime: required(string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\d{6}$)
The start time of the orbit (e. g. using a Spacecraft Midnight Crossing [SMX] event) in orbit format (YYYY-MM-DDThh:mm:ss.SSSSSS)
- stopTime: required(string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\d{6}$)
The stop time of the orbit (e. g. using a Spacecraft Midnight Crossing [SMX] event) in orbit format (YYYY-MM-DDThh:mm:ss.SSSSSS); usually the stop time of one orbit is the start time of the subsequent orbit
Example:
[
{
"id": 4362553,
"version": 1,
"missionCode": "S5P",
"spacecraftCode": "S5P",
"orbitNumber": 4711,
"startTime": "2018-06-13T09:23:45.396521",
"stopTime": "2018-06-13T10:53:45.396521"
},
{
"id": 4362554,
"version": 3,
"missionCode": "S5P",
"spacecraftCode": "S5P",
"orbitNumber": 4712,
"startTime": "2018-06-13T10:53:45.396521",
"stopTime": "2018-06-13T12:23:45.396521"
}
]
HTTP status code 403
A cross-mission data access was attempted.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
HTTP status code 404
The requested resource was not found.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
post /orbits
Creates one or more orbits based on the provided JSON objects.
Body
Media type: application/json
Type: array of object
Items: RestOrbit
- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- missionCode: required(string)
The mission code (e. g. S5P)
- spacecraftCode: required(string)
The short code for the spacecraft (e. g. TDX1)
- orbitNumber: required(integer)
The orbit number (usually starting at 1 at launch); unique for a spacecraft and usually gapless
- startTime: required(string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\d{6}$)
The start time of the orbit (e. g. using a Spacecraft Midnight Crossing [SMX] event) in orbit format (YYYY-MM-DDThh:mm:ss.SSSSSS)
- stopTime: required(string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\d{6}$)
The stop time of the orbit (e. g. using a Spacecraft Midnight Crossing [SMX] event) in orbit format (YYYY-MM-DDThh:mm:ss.SSSSSS); usually the stop time of one orbit is the start time of the subsequent orbit
Example:
[
{
"id": 4362553,
"version": 1,
"missionCode": "S5P",
"spacecraftCode": "S5P",
"orbitNumber": 4711,
"startTime": "2018-06-13T09:23:45.396521",
"stopTime": "2018-06-13T10:53:45.396521"
},
{
"id": 4362554,
"version": 3,
"missionCode": "S5P",
"spacecraftCode": "S5P",
"orbitNumber": 4712,
"startTime": "2018-06-13T10:53:45.396521",
"stopTime": "2018-06-13T12:23:45.396521"
}
]
HTTP status code 201
Body
Media type: application/json
Type: array of object
Items: RestOrbit
- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- missionCode: required(string)
The mission code (e. g. S5P)
- spacecraftCode: required(string)
The short code for the spacecraft (e. g. TDX1)
- orbitNumber: required(integer)
The orbit number (usually starting at 1 at launch); unique for a spacecraft and usually gapless
- startTime: required(string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\d{6}$)
The start time of the orbit (e. g. using a Spacecraft Midnight Crossing [SMX] event) in orbit format (YYYY-MM-DDThh:mm:ss.SSSSSS)
- stopTime: required(string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\d{6}$)
The stop time of the orbit (e. g. using a Spacecraft Midnight Crossing [SMX] event) in orbit format (YYYY-MM-DDThh:mm:ss.SSSSSS); usually the stop time of one orbit is the start time of the subsequent orbit
Example:
[
{
"id": 4362553,
"version": 1,
"missionCode": "S5P",
"spacecraftCode": "S5P",
"orbitNumber": 4711,
"startTime": "2018-06-13T09:23:45.396521",
"stopTime": "2018-06-13T10:53:45.396521"
},
{
"id": 4362554,
"version": 3,
"missionCode": "S5P",
"spacecraftCode": "S5P",
"orbitNumber": 4712,
"startTime": "2018-06-13T10:53:45.396521",
"stopTime": "2018-06-13T12:23:45.396521"
}
]
HTTP status code 400
The request sent to the server contains data which is not as expected e.g. invalid location URI
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
HTTP status code 403
A cross-mission data access was attempted.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
Retrieves the number of orbits matching the specified search criteria.
get /orbits/count
Retrieves the number of orbits matching the specified search criteria.
Query Parameters
- spacecraftCode: required(string)
The spacecraft code to filter by.
- orbitNumberFrom: (integer)
The minimum orbit number requested.
- orbitNumberTo: (integer)
The maximum orbit number requested.
- starttimefrom: (string)
The earliest sensing start time requested.
- starttimeto: (string)
The latest sensing start time requested.
HTTP status code 200
Body
Media type: text/plain
Type: any
HTTP status code 403
A cross-mission data access was attempted.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
HTTP status code 404
The requested resource was not found.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
Retrieves the orbit with the given ID.
Updates the orbit with the given ID using the attribute values from the provided JSON object.
Deletes the orbit with the given ID.
get /orbits/{id}
Retrieves the orbit with the given ID.
URI Parameters
- id: required(integer)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- missionCode: required(string)
The mission code (e. g. S5P)
- spacecraftCode: required(string)
The short code for the spacecraft (e. g. TDX1)
- orbitNumber: required(integer)
The orbit number (usually starting at 1 at launch); unique for a spacecraft and usually gapless
- startTime: required(string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\d{6}$)
The start time of the orbit (e. g. using a Spacecraft Midnight Crossing [SMX] event) in orbit format (YYYY-MM-DDThh:mm:ss.SSSSSS)
- stopTime: required(string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\d{6}$)
The stop time of the orbit (e. g. using a Spacecraft Midnight Crossing [SMX] event) in orbit format (YYYY-MM-DDThh:mm:ss.SSSSSS); usually the stop time of one orbit is the start time of the subsequent orbit
Example:
{
"id": 4362553,
"version": 1,
"missionCode": "S5P",
"spacecraftCode": "S5P",
"orbitNumber": 4711,
"startTime": "2018-06-13T09:23:45.396521",
"stopTime": "2018-06-13T10:53:45.396521"
}
HTTP status code 404
The requested resource was not found
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given
patch /orbits/{id}
Updates the orbit with the given ID using the attribute values from the provided JSON object.
URI Parameters
- id: required(integer)
Body
Media type: application/json
Type: object
Properties- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- missionCode: required(string)
The mission code (e. g. S5P)
- spacecraftCode: required(string)
The short code for the spacecraft (e. g. TDX1)
- orbitNumber: required(integer)
The orbit number (usually starting at 1 at launch); unique for a spacecraft and usually gapless
- startTime: required(string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\d{6}$)
The start time of the orbit (e. g. using a Spacecraft Midnight Crossing [SMX] event) in orbit format (YYYY-MM-DDThh:mm:ss.SSSSSS)
- stopTime: required(string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\d{6}$)
The stop time of the orbit (e. g. using a Spacecraft Midnight Crossing [SMX] event) in orbit format (YYYY-MM-DDThh:mm:ss.SSSSSS); usually the stop time of one orbit is the start time of the subsequent orbit
Example:
{
"id": 4362553,
"version": 1,
"missionCode": "S5P",
"spacecraftCode": "S5P",
"orbitNumber": 4711,
"startTime": "2018-06-13T09:23:45.396521",
"stopTime": "2018-06-13T10:53:45.396521"
}
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: (integer - default: 0)
The persistent id of this object
- version: (integer - default: 1)
A version identifier to track updates to the object (especially to detect concurrent update attempts)
- missionCode: required(string)
The mission code (e. g. S5P)
- spacecraftCode: required(string)
The short code for the spacecraft (e. g. TDX1)
- orbitNumber: required(integer)
The orbit number (usually starting at 1 at launch); unique for a spacecraft and usually gapless
- startTime: required(string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\d{6}$)
The start time of the orbit (e. g. using a Spacecraft Midnight Crossing [SMX] event) in orbit format (YYYY-MM-DDThh:mm:ss.SSSSSS)
- stopTime: required(string - pattern: ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\d{6}$)
The stop time of the orbit (e. g. using a Spacecraft Midnight Crossing [SMX] event) in orbit format (YYYY-MM-DDThh:mm:ss.SSSSSS); usually the stop time of one orbit is the start time of the subsequent orbit
Example:
{
"id": 4362553,
"version": 1,
"missionCode": "S5P",
"spacecraftCode": "S5P",
"orbitNumber": 4711,
"startTime": "2018-06-13T09:23:45.396521",
"stopTime": "2018-06-13T10:53:45.396521"
}
HTTP status code 304
The resource was not modified.
Headers
- Warning: required(string - pattern: ^\d{3} proseo-order-mgr \(.\d+\) .+$)
An error code and a plain text error message
Example:
199 proseo-order-mgr (E3527) No mission code given