This document describes how to operate the Tracking Service software. The following topics can be found in this document:
The Tracking Service provides a REST-based interface accessible via HTTP for interacting with the service. Because the REST-based interface operates over HTTP, there are several options for interacting with the Tracking Service:
The tracking-ui component offers a Graphical User Interface (GUI) for interacting with the service.
Any standard web browser (e.g., Firefox, Safari, Internet Explorer, etc.) will allow interaction with the query and retrieval interfaces of the service.
The cURL utility offers the most flexible means for interacting with the service. The utility comes installed on most UNIX-based platforms and is available for download for the Windows platform. The examples in the sections that follow utilize cURL to interact with the service.
The base URL will vary based on the underlying implementation and its deployment. The main deployment of the Tracking Service for PDS will have the following as its base URL:
https://pds.nasa.gov/services/tracking
For the examples that follow, the base URL is represented as <base_url>.
This section details the parameters utilized in the examples found in this document.
Parameter | Description |
---|---|
comment | An optional comment regarding the insert/update. |
delivery_identifier | The unique identifier for a delivery which is generated automatically. |
doi | The Digital Object Identifier (DOI) assigned by the DOI organization. |
electronic_mail_address | The unique identifier for a user within the PDS4 system representing their electronic mail address. |
flag | A flag indicating true or false. Valid values are true and false. |
logical_identifier | The unique identifier for a product within the PDS4 system. Commonly referred to as the LID and formatted as a URN (e.g., urn:nasa:pds:…). |
product_type | The type of the product. The valid values are PDS3-Data-Set, PDS4-Bundle, PDS4-Collection, PDS4-Data, PDS4-Document, Model and Software. |
reference_type | The type of reference. Valid values are instrument_reference, investigation_reference and node_reference. |
return_type | The format of the content returned from the query. Valid values are html, json and xml. |
site_url | The end point of the landing page for the associated product formatted as a URL (e.g., https://…). |
status | The status associated with the submission. The valid values are Submitted, Submitted/Partial, Acknowledged, Accepted, Accepted/Partial, Rejected and Withdrawn. |
status_date_time | The date/time the submission status update occurred, formatted as YYYY-MM-DD’T’HH:MM:SS. |
submission_date_time | The date/time (e.g., current data/time) the submission was inserted, formatted as YYYY-MM-DD’T’HH:MM:SS. |
version_id | The version identifier provides the version of the product, expressed in the PDS [m.n] notation (e.g., 1.0). |
TBD (POST requests ...)
This interface inserts a submission record for a given delivery.
https://<base_url>/<return_type>/submissionstatus/add
The following table maps interface parameters to the official parameter names and definitions from the Parameters section.
Parameter | Parameter Map |
---|---|
id | delivery_identifier |
status | status |
electronic_mail_address | |
comment | comment |
This interface inserts a submission status record for a given delivery submission.
https://<base_url>/<return_type>/submissionstatus/addstatus
The following table maps interface parameters to the official parameter names and definitions from the Parameters section.
Parameter | Parameter Map |
---|---|
id | delivery_identifier |
submissionDate | submission_date_time |
status | status |
electronic_mail_address | |
comment | comment |
This interface updates a submission status record for a given delivery submission.
https://<base_url>/<return_type>/submissionstatus/update
The following table maps interface parameters to the official parameter names and definitions from the Parameters section.
Parameter | Parameter Map |
---|---|
id | delivery_identifier |
submissionDate | submission_date_time |
statusDate | status_date_time |
status | status |
electronic_mail_address | |
comment | comment |
TBD (GET requests ...)
This interface retrieves a list of deliveries for a given product.
https://<base_url>/<return_type>/delivery/[logical_identifier/version_id]
When the optional parameters, logical_identifier and version_id, are not specified, the query returns the list of all deliveries. When both parameters are specified, the query returns the list of deliveries for the specified product in the specified version .
This interface retrieves the status progression of a delivery for a given product.
https://<base_url>/<return_type>/submissionstatus/[delivery_identifier]
When the optional parameter, delivery_identifier, is not specified, the query returns the list of the status progression of all deliveries. When parameter is specified, the query returns the status progression of a delivery for the specified product.
This interface retrieves a list of products by type.
https://<base_url>/<return_type>/products/[type/product_type]
When the optional parameters, type and product_type, are not specified, the query returns the list of all products. When both parameters are specified, the query returns a list of products for the specified product type.
This interface retrieves a list of products that have associated deliveries.
https://<base_url>/<return_type>products/[value of instrument_reference | null/value of investigation_reference | null]
When the optional parameters, value of instrument_reference | null and value of investigation_reference | null, are not specified, the query returns the list of all products. When both parameters are specified, the query returns a list of products for the specified instrument reference and investigation reference, Or, returns a list of products for the specified instrument reference ( when parameter value of investigation_reference is null) or investigation reference ( when parameter value of instrument_reference is null).
This interface retrieves a list of instrument references for a product.
https://<base_url>/<return_type>/references/[logical_identifier/reference_type]
When the optional parameters, logical_identifier and reference_type, are not specified, the query returns the list of all types of references (instrument, investigation and node) for all products. When both parameters are specified and reference_type is instrument_reference, the query returns a list of instrument references for the specified product.
This interface retrieves a list of investigation references for a product.
https://<base_url>/<return_type>/references/[logical_identifier/reference_type]
When the optional parameters, logical_identifier and reference_type, are not specified, the query returns the list of all types of references (instrument, investigation and node) for all products. When both parameters are specified and reference_type is investigationt_reference, the query returns a list of investigation references for the specified product.
This interface retrieves a list of node references for a product.
https://<base_url>/<return_type>/references/[logical_identifier/reference_type]
When the optional parameters, logical_identifier and reference_type, are not specified, the query returns the list of all types of references (instrument, investigation and node) for all products. When both parameters are specified and reference_type is node_reference, the query returns a list of node references for the specified product.
This interface retrieves a list of users with the instrument role for a product.
https://<base_url>/<return_type>/users/[logical_identifier/reference_type]
When the optional parameters, logical_identifier and reference_type, are not specified, the query returns the list of all users. When both parameters are specified and reference_type is instrumente_reference, the query returns a list of users with the instrument role for the specified product.
This interface retrieves a list of users with the investigation role for a product.
https://<base_url>/<return_type>/users/[logical_identifier/reference_type]
When the optional parameters, logical_identifier and reference_type, are not specified, the query returns the list of all users. When both parameters are specified and reference_type is investigation_reference, the query returns a list of users with the investigation role for the specified product.
This interface retrieves a list of users with the node role for a product.
https://<base_url>/<return_type>/users/[logical_identifier/reference_type]
When the optional parameters, logical_identifier and reference_type, are not specified, the query returns the list of all users. When both parameters are specified and reference_type is node_reference, the query returns a list of users with the node role for the specified product.
This interface retrieves a list of users.
https://<base_url>/<return_type>/users
The query returns the list of users.
This interface retrieves a list of roles for a given user.
https://<base_url>/<return_type>/users/[electronic_mail_address]
When the optional parameter, electronic_mail_address, is not specified, the query returns the list of all users. When parameter is specified, the query returns a list of roles for the specified user.
TBD (POST requests ...)
This interface inserts a DOI status record for a given product.
https://<base_url>/<return_type>/doi/add
The following table maps interface parameters to the official parameter names and definitions from the Parameters section.
Parameter | Parameter Map |
---|---|
id | logical_identifier |
ver | version_id |
doi | doi |
url | site_url |
electronic_mail_address | |
comment | comment |
This interface updates a DOI status record for a given product.
https://<base_url>/<return_type>/doi/update
The following table maps interface parameters to the official parameter names and definitions from the Parameters section.
Parameter | Parameter Map |
---|---|
id | logical_identifier |
ver | version_id |
url | site_url |
electronic_mail_address | |
comment | comment |
TBD (GET request ...)
This interface retrieves the latest archive status of a given product.
https://<base_url>/<return_type>/archivestatus/[logical_identifier/version_id/flag]
When the optional parameters, logical_identifier, version_id and flag, are not specified, the query returns the list of archive status of all products. When all three parameters are specified and flag is true, the query returns the latest archive status of the specified product.
This interface retrieves the archive status progression of a given product.
https://<base_url>/<return_type>/archivestatus/[logical_identifier/version_id/flag]
When the optional parameters, logical_identifier, version_id and flag, are not specified, the query returns the list of archive status of all products. When all three parameters are specified and flag is false, the query returns the archive status progression of the specified product.
This interface retrieves the latest certification status of a given product.
https://<base_url>/<return_type>/certificationstatus/[logical_identifier/version_id/flag]
When the optional parameters, logical_identifier, version_id and flag, are not specified, the query returns the list of certification status of all products. When all three parameters are specified and flag is true, the query returns the latest certificationstatus status of the specified product.
This interface retrieves the certification status progression of a given product.
https://<base_url>/<return_type>/certificationstatus/[logical_identifier/version_id/flag]
When the optional parameters, logical_identifier, version_id and flag, are not specified, the query returns the list of certification status of all products. When all three parameters are specified and flag is false, the query returns the certification status progression of the specified product.
This interface retrieves the DOI and associated information of a given product.
https://<base_url>/<return_type>/doi/[logical_identifier/version_id]
When the optional parameters, logical_identifier and version_id, are not specified, the query returns the list of DOIs of all products. When both parameters are specified, the query returns the DOI and associated information of the specified product.
This interface retrieves the NSSDCA information of a given product.
https://<base_url>/<return_type>/nssdcastatus/[logical_identifier/version_id]
When the optional parameters, logical_identifier and version_id, are not specified, the query returns the list of NSSDCA information of all products. When both parameters are specified, the query returns the NSSDCA information of the specified product.
This interface retrieves the the latest release of a given product.
https://<base_url>/<return_type>/releases/[logical_identifier/version_id/flag]
When the optional parameters, logical_identifier, version_id and flag, are not specified, the query returns the list of releases of all products. When all three parameters are specified and flag is true, the query returns the latest releases of the specified product.
This interface retrieves the release progression of a given product.
https://<base_url>/<return_type>/releases/[logical_identifier/version_id/flag]
When the optional parameters, logical_identifier, version_id and flag, are not specified, the query returns the list of releases of all products. When all three parameters are specified and flag is false, the query returns the releases progression of the specified product.