Skip to main content

Operator Workflows

This page is the fastest way to navigate the platform by task instead of by component.

Search Tips​

Use the search bar for route names, configuration keys, and job types.

Good queries:

  • campaign_id
  • hyspex-csw-parent
  • csw-search
  • wms_use_mapcache
  • seed-mapcache
  • storage/cleanup-tmp
  • repair-csw-metadata

1. Register a Raster Dataset​

Use this when you already have a GeoTIFF or a file path visible inside the runtime.

  • Upload a file with POST /datasets when the client can send multipart content.
  • Register an existing mounted file with POST /datasets/from-string when the file is already on disk.
  • Inspect duplicates with GET /datasets/duplicates before large backfills.
  • Confirm output using the dataset list, the extent GeoJSON route, or the thumbnail route.

Reference pages:

2. Search a CSW Catalogue Before Ingest​

Use this when you need to discover record identifiers before choosing a Sentinel or HySpex ingestion route.

  • Send POST /datasets/csw-search with any combination of keywords, time range, bbox, or free text.
  • Start with a small limit and advance with offset when the catalogue returns many matches.
  • Reuse returned identifiers with POST /datasets/nbs-sentinel-quicklook-csw, POST /datasets/nbs-sentinel-safe-csw, or POST /datasets/hyspex-csw.

Reference pages:

3. Ingest HySpex Children in Batches​

Use this for large parent collections where one huge request would be too expensive.

  • Submit a parent batch through POST /jobs/hyspex-csw-parent or the frontend modal.
  • Set campaign_id to keep batches grouped.
  • Use start_position and max_children to advance deterministically.
  • Poll GET /jobs/hyspex-csw-campaigns/{campaign_id} to retrieve the next cursor.
  • Repeat sequentially until the aggregate says the campaign is exhausted.

Reference pages:

4. Serve WMS With Cache First​

Use this when the same map views will be requested repeatedly.

  • Keep wms_use_mapcache enabled.
  • Generate or reload cache config with POST /mapcache/reload after dataset or config changes.
  • Seed cache selectively with POST /datasets/{dataset_id}/seed-mapcache when you know the zoom range and extent.
  • If a request fails in MapCache because of grid mismatch, the API should fall back to direct MapServer rendering.

Reference pages:

5. Generate Terrain Products​

Use this when datasets must be visualized in MapLibre, Cesium, or Mago tooling.

  • Queue one tileset with POST /terrain/{dataset_id}/generate.
  • Queue merge-and-terrain jobs when multiple rasters should produce one combined terrain surface.
  • Use TileJSON for viewer integration and choose MBTiles unpacking only when direct file serving is preferred.

Reference pages:

6. Recover Disk and Job State​

Use this after failed imports, stale caches, or long test cycles.

  • Remove missing entries with POST /datasets/prune-missing.
  • Rebuild manifest state with POST /datasets/resync.
  • Clean transient files with POST /storage/cleanup-tmp.
  • Trim old job records with POST /jobs/cleanup.
  • Clear thumbnail cache with DELETE /thumbnails.
  • Remove tile layers or cached directories with MapCache cleanup routes.

Reference pages:

7. Diagnose Live Runtime Issues​

Use this when the system is up but behavior is wrong or degraded.

  • Check GET /health first.
  • Inspect GET /config to confirm effective runtime configuration.
  • Poll GET /jobs for queue pressure and stuck jobs.
  • Use search terms for the component involved: mapcache, campaign, thumbnail, terrain, cleanup.

Reference pages: