Operation

This document describes how to operate the Tracking Service software. The following topics can be found in this document:

Interface

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:

  • Tracking User Interface

    The tracking-ui component offers a Graphical User Interface (GUI) for interacting with the service.

  • Web Browser

    Any standard web browser (e.g., Firefox, Safari, Internet Explorer, etc.) will allow interaction with the query and retrieval interfaces of the service.

  • cURL

    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>.

Parameters

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).

Delivery Inserts/Updates

TBD (POST requests ...)

Submission Insert

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
email electronic_mail_address
comment comment

Submission Status Insert

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
email electronic_mail_address
comment comment

Submission Status Update

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
email electronic_mail_address
comment comment

Delivery Queries

TBD (GET requests ...)

Delivery Query

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 .

Delivery Status Query

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.

Product Query

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.

Product Delivery Query

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).

Product Instrument Reference Query

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.

Product Investigation Reference Query

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.

Product Node Reference Query

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.

Product Instrument Role Query

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.

Product Investigation Role Query

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.

Product Node Role Query

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.

User Query

This interface retrieves a list of users.

https://<base_url>/<return_type>/users
        

The query returns the list of users.

User Role Query

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.

Status Inserts/Updates

TBD (POST requests ...)

DOI Insert

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
email electronic_mail_address
comment comment

DOI Update

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
email electronic_mail_address
comment comment

Status Queries

TBD (GET request ...)

Archive Status Query

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.

Archive Status List Query

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.

Certification Status Query

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.

Certification Status List Query

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.

DOI Query

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.

NSSDCA Query

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.

Release Query

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.

Release List Query

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.