{ "openapi": "3.1.0", "info": { "title": "FastAPI", "version": "0.1.0" }, "paths": { "/api/system_info": { "get": { "summary": "Get System Info", "operationId": "get_system_info", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SystemInfo" } } } } } } }, "/api/healthz": { "get": { "summary": "Healthz", "operationId": "healthz", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/api/ready": { "get": { "summary": "Ready", "operationId": "ready", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/api/quicklooks/{id}/tiles/{z}/{y}/{x}": { "get": { "summary": "Get Tile", "operationId": "get_tile", "parameters": [ { "name": "z", "in": "path", "required": true, "schema": { "type": "integer", "title": "Z" } }, { "name": "y", "in": "path", "required": true, "schema": { "type": "integer", "title": "Y" } }, { "name": "x", "in": "path", "required": true, "schema": { "type": "integer", "title": "X" } }, { "name": "id", "in": "path", "required": true, "schema": { "type": "string", "pattern": "^\\w+:\\w+$", "title": "Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/quicklooks/{id}/fits_header/{ccd_name}": { "get": { "summary": "Get Fits Header", "operationId": "get_fits_header", "parameters": [ { "name": "ccd_name", "in": "path", "required": true, "schema": { "type": "string", "title": "Ccd Name" } }, { "name": "id", "in": "path", "required": true, "schema": { "type": "string", "pattern": "^\\w+:\\w+$", "title": "Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/HeaderType" }, "title": "Response Get Fits Header Api Quicklooks Id Fits Header Ccd Name Get" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/quicklooks/{id}/status": { "get": { "summary": "Show Quicklook Status", "operationId": "show_quicklook_status", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string", "title": "Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/QuicklookStatus" }, { "type": "null" } ], "title": "Response Show Quicklook Status Api Quicklooks Id Status Get" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/quicklooks/{id}/metadata": { "get": { "summary": "Show Quicklook Metadata", "operationId": "show_quicklook_metadata", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string", "title": "Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QuicklookMetadata" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/quicklooks/*": { "delete": { "summary": "Delete All Quicklooks", "description": "Delete all quicklooks", "operationId": "delete_all_quicklooks", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/api/quicklooks": { "post": { "summary": "Create Quicklook", "description": "Create a quicklook", "operationId": "create_quicklook", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QuicklookCreateFrontend" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/visits": { "get": { "summary": "List Visits", "operationId": "list_visits", "parameters": [ { "name": "exposure", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Exposure" } }, { "name": "day_obs", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Day Obs" } }, { "name": "limit", "in": "query", "required": false, "schema": { "type": "integer", "maximum": 10000, "default": 1000, "title": "Limit" } }, { "name": "data_type", "in": "query", "required": false, "schema": { "enum": [ "raw", "post_isr_image", "preliminary_visit_image" ], "type": "string", "default": "raw", "title": "Data Type" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VisitEntry" }, "title": "Response List Visits Api Visits Get" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/visits/{id}/ccds/{ccd_name}": { "get": { "summary": "Get Visit Metadata", "operationId": "get_visit_metadata", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string", "title": "Id" } }, { "name": "ccd_name", "in": "path", "required": true, "schema": { "type": "string", "title": "Ccd Name" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DataSourceCcdMetadata" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/exposures/{id}/types": { "get": { "summary": "Get Exposure Data Types", "operationId": "get_exposure_data_types", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer", "title": "Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "type": "array", "items": { "enum": [ "raw", "post_isr_image", "preliminary_visit_image" ], "type": "string" }, "title": "Response Get Exposure Data Types Api Exposures Id Types Get" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/quicklooks/{id}/fits/{ccd_name}": { "get": { "summary": "Get Fits File", "operationId": "get_fits_file", "parameters": [ { "name": "ccd_name", "in": "path", "required": true, "schema": { "type": "string", "title": "Ccd Name" } }, { "name": "id", "in": "path", "required": true, "schema": { "type": "string", "pattern": "^\\w+:\\w+$", "title": "Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/status": { "get": { "summary": "Get Pod Status", "operationId": "get_pod_status", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StatusResponse" } } } } } } }, "/api/cache_entries": { "get": { "summary": "List Cache Entries", "operationId": "list_cache_entries", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/CacheEntry" }, "type": "array", "title": "Response List Cache Entries Api Cache Entries Get" } } } } } } }, "/api/cache_entries:cleanup": { "post": { "summary": "Cleanup Cache Entries", "operationId": "cleanup_cache_entries", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/api/storage": { "get": { "summary": "List Storage Entries", "operationId": "list_storage_entries", "parameters": [ { "name": "path", "in": "query", "required": true, "schema": { "type": "string", "title": "Path" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Entry" }, "title": "Response List Storage Entries Api Storage Get" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } }, "delete": { "summary": "Delete Storage Entry", "operationId": "delete_storage_entry", "parameters": [ { "name": "path", "in": "query", "required": true, "schema": { "type": "string", "title": "Path" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/storage/by-prefix": { "delete": { "summary": "Delete Storage Entries By Prefix", "operationId": "delete_storage_entries_by_prefix", "parameters": [ { "name": "prefix", "in": "query", "required": true, "schema": { "type": "string", "title": "Prefix" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/hips": { "get": { "summary": "List Hips Repositories", "operationId": "list_hips_repositories", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/HipsRepository" }, "type": "array", "title": "Response List Hips Repositories Api Hips Get" } } } } } } }, "/api/hips/{path}": { "get": { "summary": "Get Hips File", "operationId": "get_hips_file", "parameters": [ { "name": "path", "in": "path", "required": true, "schema": { "type": "string", "title": "Path" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } } }, "components": { "schemas": { "AmpMeta": { "properties": { "amp_id": { "type": "integer", "title": "Amp Id" }, "bbox": { "$ref": "#/components/schemas/BBox" } }, "type": "object", "required": [ "amp_id", "bbox" ], "title": "AmpMeta" }, "BBox": { "properties": { "miny": { "type": "number", "title": "Miny" }, "maxy": { "type": "number", "title": "Maxy" }, "minx": { "type": "number", "title": "Minx" }, "maxx": { "type": "number", "title": "Maxx" } }, "type": "object", "required": [ "miny", "maxy", "minx", "maxx" ], "title": "BBox" }, "CacheEntry": { "properties": { "id": { "type": "string", "title": "Id" }, "phase": { "type": "string", "enum": [ "ready", "in_progress", "deleting" ], "title": "Phase" }, "created_at": { "type": "string", "format": "date-time", "title": "Created At" }, "updated_at": { "type": "string", "format": "date-time", "title": "Updated At" } }, "type": "object", "required": [ "id", "phase", "created_at", "updated_at" ], "title": "CacheEntry" }, "CardType": { "prefixItems": [ { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" } ], "type": "array", "maxItems": 4, "minItems": 4 }, "CcdId": { "properties": { "visit": { "$ref": "#/components/schemas/Visit" }, "ccd_name": { "type": "string", "title": "Ccd Name" } }, "type": "object", "required": [ "visit", "ccd_name" ], "title": "CcdId" }, "CcdMeta": { "properties": { "ccd_id": { "$ref": "#/components/schemas/CcdId" }, "image_stat": { "$ref": "#/components/schemas/ImageStat" }, "amps": { "items": { "$ref": "#/components/schemas/AmpMeta" }, "type": "array", "title": "Amps" }, "bbox": { "$ref": "#/components/schemas/BBox" } }, "type": "object", "required": [ "ccd_id", "image_stat", "amps", "bbox" ], "title": "CcdMeta" }, "DataSourceCcdMetadata": { "properties": { "visit": { "$ref": "#/components/schemas/Visit" }, "ccd_name": { "type": "string", "title": "Ccd Name" }, "detector": { "type": "integer", "title": "Detector" }, "exposure": { "type": "integer", "title": "Exposure" }, "day_obs": { "type": "integer", "title": "Day Obs" }, "uuid": { "type": "string", "title": "Uuid" } }, "type": "object", "required": [ "visit", "ccd_name", "detector", "exposure", "day_obs", "uuid" ], "title": "DataSourceCcdMetadata" }, "DiskInfo": { "properties": { "mount_point": { "type": "string", "title": "Mount Point" }, "total": { "type": "integer", "title": "Total" }, "used": { "type": "integer", "title": "Used" }, "device": { "type": "string", "title": "Device" } }, "type": "object", "required": [ "mount_point", "total", "used", "device" ], "title": "DiskInfo" }, "Entry": { "properties": { "name": { "type": "string", "title": "Name" }, "type": { "type": "string", "enum": [ "directory", "file" ], "title": "Type" }, "size": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Size" } }, "type": "object", "required": [ "name", "type", "size" ], "title": "Entry" }, "GenerateProgress": { "properties": { "download": { "$ref": "#/components/schemas/Progress" }, "preprocess": { "$ref": "#/components/schemas/Progress" }, "maketile": { "$ref": "#/components/schemas/Progress" } }, "type": "object", "required": [ "download", "preprocess", "maketile" ], "title": "GenerateProgress" }, "HTTPValidationError": { "properties": { "detail": { "items": { "$ref": "#/components/schemas/ValidationError" }, "type": "array", "title": "Detail" } }, "type": "object", "title": "HTTPValidationError" }, "HeaderType": { "items": { "$ref": "#/components/schemas/CardType" }, "type": "array" }, "HipsRepository": { "properties": { "name": { "type": "string", "title": "Name" } }, "type": "object", "required": [ "name" ], "title": "HipsRepository" }, "ImageStat": { "properties": { "median": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Median" }, "mad": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Mad" }, "shape": { "items": { "type": "integer" }, "type": "array", "title": "Shape" } }, "type": "object", "required": [ "median", "mad", "shape" ], "title": "ImageStat" }, "MergeProgress": { "properties": { "merge": { "$ref": "#/components/schemas/Progress" } }, "type": "object", "required": [ "merge" ], "title": "MergeProgress" }, "PodStatus": { "properties": { "hostname": { "type": "string", "title": "Hostname" }, "ip_addr": { "type": "string", "title": "Ip Addr" }, "memory_total": { "type": "integer", "title": "Memory Total" }, "memory_used": { "type": "integer", "title": "Memory Used" }, "disks": { "items": { "$ref": "#/components/schemas/DiskInfo" }, "type": "array", "title": "Disks" } }, "type": "object", "required": [ "hostname", "ip_addr", "memory_total", "memory_used", "disks" ], "title": "PodStatus" }, "Progress": { "properties": { "count": { "type": "integer", "title": "Count" }, "total": { "type": "integer", "title": "Total" } }, "type": "object", "required": [ "count", "total" ], "title": "Progress" }, "QuicklookCreateFrontend": { "properties": { "id": { "type": "string", "title": "Id" } }, "type": "object", "required": [ "id" ], "title": "QuicklookCreateFrontend" }, "QuicklookJobPhase": { "type": "integer", "enum": [ 0, 1, 2, 3, 4, 5, 6, 7, -1 ], "title": "QuicklookJobPhase" }, "QuicklookMetadata": { "properties": { "id": { "type": "string", "title": "Id" }, "wcs": { "type": "object", "title": "Wcs" }, "ccd_meta": { "anyOf": [ { "items": { "$ref": "#/components/schemas/CcdMeta" }, "type": "array" }, { "type": "null" } ], "title": "Ccd Meta" } }, "type": "object", "required": [ "id", "wcs", "ccd_meta" ], "title": "QuicklookMetadata" }, "QuicklookStatus": { "properties": { "id": { "type": "string", "title": "Id" }, "phase": { "$ref": "#/components/schemas/QuicklookJobPhase" }, "generate_progress": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/GenerateProgress" }, "type": "object" }, { "type": "null" } ], "title": "Generate Progress" }, "transfer_progress": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/TransferProgress" }, "type": "object" }, { "type": "null" } ], "title": "Transfer Progress" }, "merge_progress": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/MergeProgress" }, "type": "object" }, { "type": "null" } ], "title": "Merge Progress" } }, "type": "object", "required": [ "id", "phase", "generate_progress", "transfer_progress", "merge_progress" ], "title": "QuicklookStatus" }, "StatusResponse": { "properties": { "frontend": { "$ref": "#/components/schemas/PodStatus" }, "coordinator": { "$ref": "#/components/schemas/PodStatus" }, "generators": { "items": { "$ref": "#/components/schemas/PodStatus" }, "type": "array", "title": "Generators" } }, "type": "object", "required": [ "frontend", "coordinator", "generators" ], "title": "StatusResponse" }, "SystemInfo": { "properties": { "admin_page": { "type": "boolean", "title": "Admin Page", "default": true } }, "type": "object", "title": "SystemInfo" }, "TransferProgress": { "properties": { "transfer": { "$ref": "#/components/schemas/Progress" } }, "type": "object", "required": [ "transfer" ], "title": "TransferProgress" }, "ValidationError": { "properties": { "loc": { "items": { "anyOf": [ { "type": "string" }, { "type": "integer" } ] }, "type": "array", "title": "Location" }, "msg": { "type": "string", "title": "Message" }, "type": { "type": "string", "title": "Error Type" } }, "type": "object", "required": [ "loc", "msg", "type" ], "title": "ValidationError" }, "Visit": { "properties": { "id": { "type": "string", "title": "Id" } }, "type": "object", "required": [ "id" ], "title": "Visit" }, "VisitEntry": { "properties": { "id": { "type": "string", "title": "Id" }, "day_obs": { "type": "integer", "title": "Day Obs" }, "physical_filter": { "type": "string", "title": "Physical Filter" }, "obs_id": { "type": "string", "title": "Obs Id" }, "exposure_time": { "type": "number", "title": "Exposure Time" }, "science_program": { "type": "string", "title": "Science Program" }, "observation_type": { "type": "string", "title": "Observation Type" }, "observation_reason": { "type": "string", "title": "Observation Reason" }, "target_name": { "type": "string", "title": "Target Name" } }, "type": "object", "required": [ "id", "day_obs", "physical_filter", "obs_id", "exposure_time", "science_program", "observation_type", "observation_reason", "target_name" ], "title": "VisitEntry" } } } }