On-Demand AOI-Track API

The On-Demand aoi-track API is a higher-level abstract for end-users of how to manage AOIs.

This API maps the concept of “aoi-track” to front end UI, onto the back-end dataset=aoi-track.

 

See Standard Product S1-GUNW Processing Pipeline for more details on the processing pipeline.

Endpoint

Function

Input

Output/Result

Endpoint

Function

Input

Output/Result

POST /aoi-track/

Submit new aoi-track

  • geojson

  • start time (for active keep-up)

  • end time (for active keep-up)

  • track_number

  • orbit_direction

  • user_id

  • metadata json {request_id: {request pairings dict},
    request_id: {request pairings dict}, request_id: {request pairings dict} }

  • aoitrack_id

GET /aoi-track/

List aoi-track

  • queries all aoi-track by user

none

  • returns: json list of aoitrack_id

    • includes aoitrack_id and user_id

  • requests GUI to make AJAX call for only the requests in viewport.

GET /aoi-track/{aoitrack_id}

Get aoi-track

  • aoitrack_id

  • geojson

  • track_number

  • orbit_direction

  • metadata json

Implementation Notes

create new aoi-track

This API will call the mozart api to submit new job “create_aoi-track:develop” to create a new AOI using conventions for aoi-track.

Note: dataset=area_of_interest does not have track info in the dataset. So we can store track info, orbit direction, user info, etc. either in the AOI’s met.json, or even easier by storing it in string tokens that are part of AOI dataset naming convention for this AOI.

Approach can be to call Mozart API to create new dataset=area_of_interest but with dataset ID of convention “aoi_track-<orbit_direction>-<track_number>-<username>-<YYYYMMDDTHHMMSS>”. This will result in publishing new AOI to GRQ with this naming convention.

See an example of how to submit mozart api job in python here: https://github.com/aria-jpl/scihub_acquisition_scraper/blob/develop/crons/aoi_ipf_scrape_cron.py

Submits sync catch-up jobs for IPF for all acquisitions in that aoi-track.

Assumption: Create AOI of high target areas for the system to keep-up IPFs.

metadata json will be saved inside the datasets directory as dataset.met.json

defaulting these AOIs to “inactive”

list aoi-track

query GRQ for all dataset=area_of_interest , but then filter results for dataset IDs that starts with “aoi_track-*”

get aoi-track

query GRQ given aoitrack_id

return the contents of dataset.met.json as the metadata output field.