Skip to content

API revamp

T. Andrew Manning edited this page Jun 16, 2026 · 6 revisions

API revamp

Issues are associated with avi-revamp milestone.

Problem

The Blast API is due for a major revision. The current API has evolved organically to accommodate improvements and revisions without a clearly defined overall API schema.

Goals

Goals include:

  • deduplication of redundant functionality
  • minimization of endpoints by consolidating logically connected functions and objects
  • better utilization of Django REST Framework (DRF) to implement most of the logic
  • creation of a proper OpenAPI spec for the entire Blast API, both to unambiguously define it for development purposes and to leverage the extensive OpenAPI ecosystem of tools and renderers like SwaggerUI

Original API

New API

Datasets

GET /api/dataset/[transient_name]

Output tabular data only. Default to JSON format but support YAML.

Query params:

format (string): "json" (default) or "yaml" revision (integer): which dataset revision to return

GET /api/dataset/[transient_name]/all

Output entire dataset as compressed archive file.

Query params:

format (string): ".tar.gz" (default) or ".zip"

GET /api/dataset/[transient_name]/file

Query params:

name (string): file name as defined by model field type (string): "cutout", "sedfittingresult_local", "sedfittingresult_global" revision (integer): which dataset revision to return

Clone this wiki locally