Observation API¶
The Observation API covers everything observation-shaped: observations themselves, observation requests, observation tasks, and targets. It's the API you'll spend the most time in if you're automating data acquisition.
Endpoints at a glance¶
This page embeds the auto-generated OpenAPI reference (below) which is the authoritative source. The narrative here covers what isn't obvious from the spec.
| Resource | What it is |
|---|---|
/v1/observations |
Observations — the top-level container. See Observation schema |
/v1/observation-requests |
Per-observation data requests (imaging, radio, calibrations). Polymorphic on requestType |
/v1/observation-tasks |
Per-task execution records the scheduler creates from requests |
/v1/targets |
Celestial targets — fixed, catalog, ephemeral, orbital positions |
Creating and changing observations¶
An observation is created in one POST /v1/users/{slug}/observations
(or /v1/organizations/{slug}/observations) from a complete
ObservationCreate — target, imaging
configuration, requests, and funding grants all in one body. There is no
draft-then-publish step: the observation is created active and visible to the
scheduler immediately. See Creating observations
for the full walkthrough.
Lifecycle changes after creation:
| Operation | How |
|---|---|
| Cancel | PATCH /v1/observations/{id} with { "status": "canceled" } — drops pending tasks |
| Hide (soft-delete) | PATCH /v1/observations/{id} with { "isDeleted": true } |
| Delete | DELETE /v1/observations/{id} — refused once the observation has generated tasks (cancel instead) |
| Re-author from a spec | POST /v1/observations/{id}/apply-spec with an ObservationSpec |
| Replace the target | POST /v1/observations/{id}/target |
Common pitfalls¶
- Polymorphic discrimination. Every request and task carries a
requestType/taskType. When you create a request, the body shape depends on the discriminator. See Conventions → Polymorphic resources. - Targets are nested. A target attaches to an observation — set it in the
create body (
target), or afterward withPOST /v1/observations/{id}/target./v1/targetsis read-mostly. - One POST, no drafts. An observation is created complete and active from a
single
ObservationCreate; there's no draft/instance distinction and no publish step. Two rules cause most 4xx: send camelCase field names, and set exactly one exposure-sizing field per request (exposureTimeSec/targetSnr/targetFullWellFraction). See Creating observations. - Quota mechanics. Submitting an observation costs nothing.
Credits are tallied against the funding account and grant as
tasks dispatch (
ObservingAccountTxnrecords). Throttling is driven by quotas attached to accounts and grants — each quota is a(period_type, max_credits)rule; period types arelifetime,day,week,month, ornight. Multiple quotas can attach to the same account / grant and all must be satisfied; dispatch pauses when any one would be exceeded. Quota-exceeded observations stall rather than error, and resume as quota frees up. See Observing accounts → Quotas.
Common task recipes¶
The curl quickstart walks the most common flow (find a grant + imager → POST the observation → poll), and Creating observations covers catalog/non-sidereal targets and asset download.
Other recipes worth knowing:
- Submit from an existing project template — use
POST /v1/project-templates/{uid}/instantiateinstead of building the spec by hand. See Project templates. - Bulk submission — submit observations one at a time today; there's no bulk endpoint. Wrap the per-observation calls with your own retry logic.
- Watch for completion — poll
GET /v1/observations/{id}forstatus: completed, or subscribe to thetelescope_loganddevice_snapshotstreams via WebSocket for finer-grained progress.
Reference¶
Observation API 2.0.0¶
Endpoints for managing observations, observation requests, tasks and related resources.
Data Requests¶
GET /observation-requests¶
Read Requests
Description
Retrieve a page of observation requests.
Scoped to requests whose parent observation the caller may view (IDOR guard — HI-7). We resolve the set of viewable observation ids up front from the observations visibility filter (the single source of truth) and constrain the request query to them, so an unauthenticated / unauthorized caller can never page another tenant's requests.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
filter_observation_id |
query | No | |||
filterObservationId |
query | No | |||
id |
query | No | |||
is_deleted |
query | No | |||
isDeleted |
query | No | |||
sort_by |
query | No | |||
sortBy |
query | No | |||
status |
query | No | |||
token |
query | No |
Responses
Schema of the response body
{
"properties": {
"items": {
"items": {
"discriminator": {
"mapping": {
"optical_imaging": "#/components/schemas/OpticalImagingRequestSummary",
"optical_imaging_bias_calibration": "#/components/schemas/OpticalImagingBiasCalibrationRequestSummary",
"optical_imaging_dark_calibration": "#/components/schemas/OpticalImagingDarkCalibrationRequestSummary",
"optical_imaging_flat_calibration": "#/components/schemas/OpticalImagingFlatCalibrationRequestSummary",
"radio_mapping": "#/components/schemas/RadioMappingRequestSummary",
"radio_tracking": "#/components/schemas/RadioTrackingRequestSummary"
},
"propertyName": "requestType"
},
"oneOf": [
{
"$ref": "#/components/schemas/OpticalImagingRequestSummary"
},
{
"$ref": "#/components/schemas/OpticalImagingBiasCalibrationRequestSummary"
},
{
"$ref": "#/components/schemas/OpticalImagingDarkCalibrationRequestSummary"
},
{
"$ref": "#/components/schemas/OpticalImagingFlatCalibrationRequestSummary"
},
{
"$ref": "#/components/schemas/RadioTrackingRequestSummary"
},
{
"$ref": "#/components/schemas/RadioMappingRequestSummary"
}
]
},
"title": "Items",
"type": "array"
},
"page": {
"minimum": 1.0,
"title": "Page",
"type": "integer"
},
"pages": {
"minimum": 0.0,
"title": "Pages",
"type": "integer"
},
"size": {
"minimum": 1.0,
"title": "Size",
"type": "integer"
},
"total": {
"minimum": 0.0,
"title": "Total",
"type": "integer"
}
},
"required": [
"items",
"total",
"page",
"size",
"pages"
],
"title": "Page[Annotated[Union[OpticalImagingRequestSummary, OpticalImagingBiasCalibrationRequestSummary, OpticalImagingDarkCalibrationRequestSummary, OpticalImagingFlatCalibrationRequestSummary, RadioTrackingRequestSummary, RadioMappingRequestSummary], FieldInfo(annotation=NoneType, required=True, discriminator='request_type')]]",
"type": "object"
}
POST /observation-requests¶
Create Request
Description
Create a new observation request.
The caller must hold modify_observation on the parent observation the
request is being attached to (IDOR guard — HI-7); otherwise anyone could
inject requests into another tenant's observation.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
token |
query | No |
Request body
Schema of the request body
{
"discriminator": {
"mapping": {
"optical_imaging": "#/components/schemas/OpticalImagingRequestCreate",
"optical_imaging_bias_calibration": "#/components/schemas/OpticalImagingBiasCalibrationRequestCreate",
"optical_imaging_dark_calibration": "#/components/schemas/OpticalImagingDarkCalibrationRequestCreate",
"optical_imaging_flat_calibration": "#/components/schemas/OpticalImagingFlatCalibrationRequestCreate",
"radio_mapping": "#/components/schemas/RadioMappingRequestCreate",
"radio_tracking": "#/components/schemas/RadioTrackingRequestCreate"
},
"propertyName": "requestType"
},
"oneOf": [
{
"$ref": "#/components/schemas/OpticalImagingRequestCreate"
},
{
"$ref": "#/components/schemas/OpticalImagingBiasCalibrationRequestCreate"
},
{
"$ref": "#/components/schemas/OpticalImagingDarkCalibrationRequestCreate"
},
{
"$ref": "#/components/schemas/OpticalImagingFlatCalibrationRequestCreate"
},
{
"$ref": "#/components/schemas/RadioTrackingRequestCreate"
},
{
"$ref": "#/components/schemas/RadioMappingRequestCreate"
}
],
"title": "Body"
}
Responses
Schema of the response body
{
"discriminator": {
"mapping": {
"optical_imaging": "#/components/schemas/OpticalImagingRequestDetail",
"optical_imaging_bias_calibration": "#/components/schemas/OpticalImagingBiasCalibrationRequestDetail",
"optical_imaging_dark_calibration": "#/components/schemas/OpticalImagingDarkCalibrationRequestDetail",
"optical_imaging_flat_calibration": "#/components/schemas/OpticalImagingFlatCalibrationRequestDetail",
"radio_mapping": "#/components/schemas/RadioMappingRequestDetail",
"radio_tracking": "#/components/schemas/RadioTrackingRequestDetail"
},
"propertyName": "requestType"
},
"oneOf": [
{
"$ref": "#/components/schemas/OpticalImagingRequestDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingBiasCalibrationRequestDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingDarkCalibrationRequestDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingFlatCalibrationRequestDetail"
},
{
"$ref": "#/components/schemas/RadioTrackingRequestDetail"
},
{
"$ref": "#/components/schemas/RadioMappingRequestDetail"
}
],
"title": "Response Create Request Observation Requests Post"
}
DELETE /observation-requests/{request_id}¶
Delete Request
Description
Remove an observation request from the system.
Requires modify_observation on the parent observation (IDOR guard —
HI-7).
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
request_id |
path | integer | No | ||
token |
query | No |
Responses
GET /observation-requests/{request_id}¶
Read Request
Description
Retrieve a specific observation request.
Requires view_observation on the parent observation (IDOR guard —
HI-7).
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
request_id |
path | integer | No | ||
token |
query | No |
Responses
Schema of the response body
{
"discriminator": {
"mapping": {
"optical_imaging": "#/components/schemas/OpticalImagingRequest",
"optical_imaging_bias_calibration": "#/components/schemas/OpticalImagingBiasCalibrationRequest",
"optical_imaging_dark_calibration": "#/components/schemas/OpticalImagingDarkCalibrationRequest",
"optical_imaging_flat_calibration": "#/components/schemas/OpticalImagingFlatCalibrationRequest",
"radio_mapping": "#/components/schemas/RadioMappingRequest",
"radio_tracking": "#/components/schemas/RadioTrackingRequest"
},
"propertyName": "requestType"
},
"oneOf": [
{
"$ref": "#/components/schemas/OpticalImagingRequest"
},
{
"$ref": "#/components/schemas/OpticalImagingBiasCalibrationRequest"
},
{
"$ref": "#/components/schemas/OpticalImagingDarkCalibrationRequest"
},
{
"$ref": "#/components/schemas/OpticalImagingFlatCalibrationRequest"
},
{
"$ref": "#/components/schemas/RadioTrackingRequest"
},
{
"$ref": "#/components/schemas/RadioMappingRequest"
}
],
"title": "Response Read Request Observation Requests Request Id Get"
}
PATCH /observation-requests/{request_id}¶
Update Request
Description
Modify an existing observation request.
Requires modify_observation on the parent observation (IDOR guard —
HI-7).
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
request_id |
path | integer | No | ||
token |
query | No |
Request body
Schema of the request body
{
"discriminator": {
"mapping": {
"optical_imaging": "#/components/schemas/OpticalImagingRequestUpdate",
"optical_imaging_bias_calibration": "#/components/schemas/OpticalImagingBiasCalibrationRequestUpdate",
"optical_imaging_dark_calibration": "#/components/schemas/OpticalImagingDarkCalibrationRequestUpdate",
"optical_imaging_flat_calibration": "#/components/schemas/OpticalImagingFlatCalibrationRequestUpdate",
"radio_mapping": "#/components/schemas/RadioMappingRequestUpdate",
"radio_tracking": "#/components/schemas/RadioTrackingRequestUpdate"
},
"propertyName": "requestType"
},
"oneOf": [
{
"$ref": "#/components/schemas/OpticalImagingRequestUpdate"
},
{
"$ref": "#/components/schemas/OpticalImagingBiasCalibrationRequestUpdate"
},
{
"$ref": "#/components/schemas/OpticalImagingDarkCalibrationRequestUpdate"
},
{
"$ref": "#/components/schemas/OpticalImagingFlatCalibrationRequestUpdate"
},
{
"$ref": "#/components/schemas/RadioTrackingRequestUpdate"
},
{
"$ref": "#/components/schemas/RadioMappingRequestUpdate"
}
],
"title": "Body"
}
Responses
Schema of the response body
{
"discriminator": {
"mapping": {
"optical_imaging": "#/components/schemas/OpticalImagingRequestDetail",
"optical_imaging_bias_calibration": "#/components/schemas/OpticalImagingBiasCalibrationRequestDetail",
"optical_imaging_dark_calibration": "#/components/schemas/OpticalImagingDarkCalibrationRequestDetail",
"optical_imaging_flat_calibration": "#/components/schemas/OpticalImagingFlatCalibrationRequestDetail",
"radio_mapping": "#/components/schemas/RadioMappingRequestDetail",
"radio_tracking": "#/components/schemas/RadioTrackingRequestDetail"
},
"propertyName": "requestType"
},
"oneOf": [
{
"$ref": "#/components/schemas/OpticalImagingRequestDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingBiasCalibrationRequestDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingDarkCalibrationRequestDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingFlatCalibrationRequestDetail"
},
{
"$ref": "#/components/schemas/RadioTrackingRequestDetail"
},
{
"$ref": "#/components/schemas/RadioMappingRequestDetail"
}
],
"title": "Response Update Request Observation Requests Request Id Patch"
}
GET /observation-requests/{request_id}/detail¶
Read Request Detail
Description
Retrieve a detailed observation request.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
request_id |
path | integer | No | ||
token |
query | No |
Responses
Schema of the response body
{
"discriminator": {
"mapping": {
"optical_imaging": "#/components/schemas/OpticalImagingRequestDetail",
"optical_imaging_bias_calibration": "#/components/schemas/OpticalImagingBiasCalibrationRequestDetail",
"optical_imaging_dark_calibration": "#/components/schemas/OpticalImagingDarkCalibrationRequestDetail",
"optical_imaging_flat_calibration": "#/components/schemas/OpticalImagingFlatCalibrationRequestDetail",
"radio_mapping": "#/components/schemas/RadioMappingRequestDetail",
"radio_tracking": "#/components/schemas/RadioTrackingRequestDetail"
},
"propertyName": "requestType"
},
"oneOf": [
{
"$ref": "#/components/schemas/OpticalImagingRequestDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingBiasCalibrationRequestDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingDarkCalibrationRequestDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingFlatCalibrationRequestDetail"
},
{
"$ref": "#/components/schemas/RadioTrackingRequestDetail"
},
{
"$ref": "#/components/schemas/RadioMappingRequestDetail"
}
],
"title": "Response Read Request Detail Observation Requests Request Id Detail Get"
}
Observation Tasks¶
GET /observation-tasks¶
Read Tasks
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
binning |
query | No | |||
completed_after |
query | No | |||
completed_before |
query | No | |||
completedAfter |
query | No | |||
completedBefore |
query | No | |||
earliest_start_after |
query | No | |||
earliest_start_before |
query | No | |||
earliestStartAfter |
query | No | |||
earliestStartBefore |
query | No | |||
expiration_after |
query | No | |||
expirationAfter |
query | No | |||
filter_id |
query | No | |||
filterId |
query | No | |||
id |
query | No | |||
observation_id |
query | No | |||
observationId |
query | No | |||
planned_start_after |
query | No | |||
planned_start_before |
query | No | |||
plannedStartAfter |
query | No | |||
plannedStartBefore |
query | No | |||
request_id |
query | No | |||
requestId |
query | No | |||
shutter_state |
query | No | |||
shutterState |
query | No | |||
sort_by |
query | No | |||
sortBy |
query | No | |||
status |
query | No | |||
telescope_id |
query | No | |||
telescopeId |
query | No | |||
token |
query | No |
Responses
Schema of the response body
{
"properties": {
"items": {
"items": {
"discriminator": {
"mapping": {
"optical_imaging": "#/components/schemas/OpticalImagingTaskSummary",
"optical_imaging_bias_calibration": "#/components/schemas/OpticalImagingBiasCalibrationTaskSummary",
"optical_imaging_dark_calibration": "#/components/schemas/OpticalImagingDarkCalibrationTaskSummary",
"optical_imaging_flat_calibration": "#/components/schemas/OpticalImagingFlatCalibrationTaskSummary",
"radio_mapping": "#/components/schemas/RadioMappingTaskSummary",
"radio_tracking": "#/components/schemas/RadioTrackingTaskSummary"
},
"propertyName": "taskType"
},
"oneOf": [
{
"$ref": "#/components/schemas/OpticalImagingTaskSummary"
},
{
"$ref": "#/components/schemas/OpticalImagingBiasCalibrationTaskSummary"
},
{
"$ref": "#/components/schemas/OpticalImagingDarkCalibrationTaskSummary"
},
{
"$ref": "#/components/schemas/OpticalImagingFlatCalibrationTaskSummary"
},
{
"$ref": "#/components/schemas/RadioTrackingTaskSummary"
},
{
"$ref": "#/components/schemas/RadioMappingTaskSummary"
}
]
},
"title": "Items",
"type": "array"
},
"page": {
"minimum": 1.0,
"title": "Page",
"type": "integer"
},
"pages": {
"minimum": 0.0,
"title": "Pages",
"type": "integer"
},
"size": {
"minimum": 1.0,
"title": "Size",
"type": "integer"
},
"total": {
"minimum": 0.0,
"title": "Total",
"type": "integer"
}
},
"required": [
"items",
"total",
"page",
"size",
"pages"
],
"title": "Page[Annotated[Union[OpticalImagingTaskSummary, OpticalImagingBiasCalibrationTaskSummary, OpticalImagingDarkCalibrationTaskSummary, OpticalImagingFlatCalibrationTaskSummary, RadioTrackingTaskSummary, RadioMappingTaskSummary], FieldInfo(annotation=NoneType, required=True, discriminator='task_type')]]",
"type": "object"
}
GET /observation-tasks/{task_id}¶
Read Task
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
task_id |
path | integer | No | ||
token |
query | No |
Responses
Schema of the response body
{
"discriminator": {
"mapping": {
"optical_imaging": "#/components/schemas/OpticalImagingTask",
"optical_imaging_bias_calibration": "#/components/schemas/OpticalImagingBiasCalibrationTask",
"optical_imaging_dark_calibration": "#/components/schemas/OpticalImagingDarkCalibrationTask",
"optical_imaging_flat_calibration": "#/components/schemas/OpticalImagingFlatCalibrationTask",
"radio_mapping": "#/components/schemas/RadioMappingTask",
"radio_tracking": "#/components/schemas/RadioTrackingTask"
},
"propertyName": "taskType"
},
"oneOf": [
{
"$ref": "#/components/schemas/OpticalImagingTask"
},
{
"$ref": "#/components/schemas/OpticalImagingBiasCalibrationTask"
},
{
"$ref": "#/components/schemas/OpticalImagingDarkCalibrationTask"
},
{
"$ref": "#/components/schemas/OpticalImagingFlatCalibrationTask"
},
{
"$ref": "#/components/schemas/RadioTrackingTask"
},
{
"$ref": "#/components/schemas/RadioMappingTask"
}
],
"title": "Response Read Task Observation Tasks Task Id Get"
}
GET /observation-tasks/{task_id}/detail¶
Read Task Detail
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
task_id |
path | integer | No | ||
token |
query | No |
Responses
Schema of the response body
{
"discriminator": {
"mapping": {
"optical_imaging": "#/components/schemas/OpticalImagingTaskDetail",
"optical_imaging_bias_calibration": "#/components/schemas/OpticalImagingBiasCalibrationTaskDetail",
"optical_imaging_dark_calibration": "#/components/schemas/OpticalImagingDarkCalibrationTaskDetail",
"optical_imaging_flat_calibration": "#/components/schemas/OpticalImagingFlatCalibrationTaskDetail",
"radio_mapping": "#/components/schemas/RadioMappingTaskDetail",
"radio_tracking": "#/components/schemas/RadioTrackingTaskDetail"
},
"propertyName": "taskType"
},
"oneOf": [
{
"$ref": "#/components/schemas/OpticalImagingTaskDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingBiasCalibrationTaskDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingDarkCalibrationTaskDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingFlatCalibrationTaskDetail"
},
{
"$ref": "#/components/schemas/RadioTrackingTaskDetail"
},
{
"$ref": "#/components/schemas/RadioMappingTaskDetail"
}
],
"title": "Response Read Task Detail Observation Tasks Task Id Detail Get"
}
Observations¶
GET /observations¶
Read Observations
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
-creator |
query | No | |||
-creatorId |
query | No | |||
-group |
query | No | |||
-groupId |
query | No | |||
-organization |
query | No | |||
-organizationId |
query | No | |||
-owner |
query | No | |||
-ownerId |
query | No | |||
-status |
query | No | |||
completed_after |
query | No | |||
completed_before |
query | No | |||
completedAfter |
query | No | |||
completedBefore |
query | No | |||
created_after |
query | No | |||
created_before |
query | No | |||
createdAfter |
query | No | |||
createdBefore |
query | No | |||
creator |
query | No | |||
creator_ |
query | No | |||
creator_id |
query | No | |||
creator_id_ |
query | No | |||
creatorId |
query | No | |||
group |
query | No | |||
group_ |
query | No | |||
group_id |
query | No | |||
group_id_ |
query | No | |||
groupId |
query | No | |||
id |
query | No | |||
last_activity_after |
query | No | |||
last_activity_before |
query | No | |||
lastActivityAfter |
query | No | |||
lastActivityBefore |
query | No | |||
name |
query | No | |||
observation_type |
query | No | |||
observationType |
query | No | |||
organization |
query | No | |||
organization_ |
query | No | |||
organization_id |
query | No | |||
organization_id_ |
query | No | |||
organizationId |
query | No | |||
owner |
query | No | |||
owner_ |
query | No | |||
owner_id |
query | No | |||
owner_id_ |
query | No | |||
ownerId |
query | No | |||
sort_by |
query | No | |||
sortBy |
query | No | |||
status |
query | No | |||
status_ |
query | No | |||
token |
query | No |
Responses
{
"items": [
{
"affinityHandoffAfterSec": null,
"affinityMigrateAt": "frame",
"cadenceCalendarUnit": null,
"cadenceGapSec": null,
"cadenceKind": "asap",
"cadenceLevel": null,
"cadencePeriodSec": null,
"cancelOn": null,
"cohesionLevel": null,
"completedOn": null,
"coordinationKind": null,
"coordinationStartToleranceSec": null,
"copiesCount": null,
"copiesMode": "single",
"coverAssetUid": null,
"coverPreviewFileId": null,
"coverThumbnailFileId": null,
"createdOn": "2022-04-13T15:42:05.901Z",
"creator": null,
"creatorId": 0,
"creatorUid": null,
"currentEpoch": 0,
"epochCount": 0,
"galleryItems": null,
"groupUid": null,
"id": 0,
"instrumentIds": null,
"instrumentMode": "none",
"interruptLowerPriority": true,
"interruptRecovery": "resume",
"isDeleted": true,
"isPublic": true,
"lastActivityOn": null,
"name": "string",
"observabilityLastUpdatedOn": null,
"observingGrantIds": null,
"opticalImagingConfiguration": null,
"owner": null,
"ownerId": 0,
"ownerUid": null,
"priority": 0,
"progressFraction": 10.12,
"radioMappingConfiguration": null,
"radioTrackingConfiguration": null,
"requestTypes": [
"optical_imaging"
],
"sampleOrdering": "request_major",
"startAfter": null,
"status": "active",
"target": null,
"targetId": null,
"targetUid": null,
"uid": "0506a243-6367-410b-b05a-2b3439553893",
"updatedOn": "2022-04-13T15:42:05.901Z"
}
],
"page": 0,
"pages": 0,
"size": 0,
"total": 0
}
Schema of the response body
{
"properties": {
"items": {
"items": {
"$ref": "#/components/schemas/ObservationSummary"
},
"title": "Items",
"type": "array"
},
"page": {
"minimum": 1.0,
"title": "Page",
"type": "integer"
},
"pages": {
"minimum": 0.0,
"title": "Pages",
"type": "integer"
},
"size": {
"minimum": 1.0,
"title": "Size",
"type": "integer"
},
"total": {
"minimum": 0.0,
"title": "Total",
"type": "integer"
}
},
"required": [
"items",
"total",
"page",
"size",
"pages"
],
"title": "Page[ObservationSummary]",
"type": "object"
}
DELETE /observations/{observation_id}¶
Delete Observation
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
GET /observations/{observation_id}¶
Read Observation
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
{
"affinityHandoffAfterSec": null,
"affinityMigrateAt": "frame",
"cadenceCalendarUnit": null,
"cadenceGapSec": null,
"cadenceKind": "asap",
"cadenceLevel": null,
"cadencePeriodSec": null,
"cancelOn": null,
"cohesionLevel": null,
"completedOn": null,
"coordinationKind": null,
"coordinationStartToleranceSec": null,
"copiesCount": null,
"copiesMode": "single",
"coverAssetUid": null,
"coverPreviewFileId": null,
"coverThumbnailFileId": null,
"createdOn": "2022-04-13T15:42:05.901Z",
"creatorId": 0,
"creatorUid": null,
"currentEpoch": 0,
"epochCount": 0,
"groupUid": null,
"id": 0,
"instrumentIds": null,
"instrumentMode": "none",
"interruptLowerPriority": true,
"interruptRecovery": "resume",
"isDeleted": true,
"isPublic": true,
"lastActivityOn": null,
"name": "string",
"observabilityLastUpdatedOn": null,
"observingGrantIds": null,
"opticalImagingConfiguration": null,
"ownerId": 0,
"ownerUid": null,
"priority": 0,
"progressFraction": 10.12,
"radioMappingConfiguration": null,
"radioTrackingConfiguration": null,
"requestTypes": [
"optical_imaging"
],
"sampleOrdering": "request_major",
"startAfter": null,
"status": "active",
"targetId": null,
"targetUid": null,
"uid": "bc8580e5-de85-4c7d-b940-907a456a9693",
"updatedOn": "2022-04-13T15:42:05.901Z"
}
Schema of the response body
{
"properties": {
"affinityHandoffAfterSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"affinityMigrateAt": {
"$ref": "#/components/schemas/ScheduleRung",
"default": "observation"
},
"cadenceCalendarUnit": {
"anyOf": [
{
"$ref": "#/components/schemas/CalendarUnit"
},
{
"type": "null"
}
]
},
"cadenceGapSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"cadenceKind": {
"$ref": "#/components/schemas/CadenceKind",
"default": "asap"
},
"cadenceLevel": {
"anyOf": [
{
"$ref": "#/components/schemas/ScheduleRung"
},
{
"type": "null"
}
]
},
"cadencePeriodSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"cancelOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"cohesionLevel": {
"$ref": "#/components/schemas/ScheduleRung",
"default": "epoch"
},
"completedOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"coordinationKind": {
"anyOf": [
{
"$ref": "#/components/schemas/CoordinationKind"
},
{
"type": "null"
}
]
},
"coordinationStartToleranceSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"copiesCount": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"copiesMode": {
"$ref": "#/components/schemas/CopiesMode",
"default": "single"
},
"coverAssetUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"coverPreviewFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"coverThumbnailFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"createdOn": {
"description": "Creation timestamp.",
"format": "date-time",
"type": "string"
},
"creatorId": {
"description": "User who created it.",
"type": "integer"
},
"creatorUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"currentEpoch": {
"default": 0,
"type": "integer"
},
"epochCount": {
"default": 1,
"description": "Number of visits. 0 = repeat indefinitely.",
"type": "integer"
},
"groupUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"id": {
"description": "Unique identifier of the observation.",
"type": "integer"
},
"instrumentIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"instrumentMode": {
"$ref": "#/components/schemas/InstrumentAccessMode"
},
"interruptLowerPriority": {
"description": "Interrupt lower priority.",
"type": "boolean"
},
"interruptRecovery": {
"$ref": "#/components/schemas/InterruptRecovery",
"default": "resume"
},
"isDeleted": {
"description": "Flag indicating if deleted.",
"type": "boolean"
},
"isPublic": {
"type": "boolean"
},
"lastActivityOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"name": {
"description": "Name of the observation.",
"type": "string"
},
"observabilityLastUpdatedOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"description": "Timestamp of the last observability refresh."
},
"observingGrantIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"opticalImagingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/OpticalImagingConfiguration-Output"
},
{
"type": "null"
}
]
},
"ownerId": {
"description": "Entity that funds this observation.",
"type": "integer"
},
"ownerUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"priority": {
"type": "integer"
},
"progressFraction": {
"type": "number"
},
"radioMappingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/RadioMappingConfiguration"
},
{
"type": "null"
}
]
},
"radioTrackingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/RadioTrackingConfiguration"
},
{
"type": "null"
}
]
},
"requestTypes": {
"items": {
"$ref": "#/components/schemas/ObservationType"
},
"type": "array"
},
"sampleOrdering": {
"$ref": "#/components/schemas/SampleOrdering",
"default": "request_major"
},
"startAfter": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"status": {
"$ref": "#/components/schemas/ObservationStatus"
},
"targetId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Unique identifier of the target associated with the observation."
},
"targetUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"uid": {
"format": "uuid",
"type": "string"
},
"updatedOn": {
"description": "Update timestamp.",
"format": "date-time",
"type": "string"
}
},
"required": [
"id",
"uid",
"targetId",
"status",
"isDeleted",
"createdOn",
"updatedOn",
"name",
"ownerId",
"creatorId",
"interruptLowerPriority",
"priority",
"progressFraction",
"isPublic",
"instrumentMode"
],
"title": "Observation",
"type": "object"
}
PATCH /observations/{observation_id}¶
Update Observation
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Request body
{
"affinityHandoffAfterSec": null,
"affinityMigrateAt": null,
"cadenceCalendarUnit": null,
"cadenceGapSec": null,
"cadenceKind": null,
"cadenceLevel": null,
"cadencePeriodSec": null,
"cancelOn": null,
"cohesionLevel": null,
"completedOn": null,
"coordinationKind": null,
"coordinationStartToleranceSec": null,
"copiesCount": null,
"copiesMode": null,
"epochCount": null,
"instrumentIds": null,
"instrumentMode": null,
"interruptLowerPriority": null,
"interruptRecovery": null,
"isDeleted": null,
"isPublic": null,
"lastActivityOn": null,
"name": null,
"observabilityLastUpdatedOn": null,
"observingGrantIds": null,
"opticalImagingConfiguration": null,
"ownerId": null,
"priority": null,
"progressFraction": null,
"radioMappingConfiguration": null,
"radioTrackingConfiguration": null,
"renderSettings": null,
"sampleOrdering": null,
"startAfter": null,
"status": null
}
Schema of the request body
{
"properties": {
"affinityHandoffAfterSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"affinityMigrateAt": {
"anyOf": [
{
"$ref": "#/components/schemas/ScheduleRung"
},
{
"type": "null"
}
]
},
"cadenceCalendarUnit": {
"anyOf": [
{
"$ref": "#/components/schemas/CalendarUnit"
},
{
"type": "null"
}
]
},
"cadenceGapSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"cadenceKind": {
"anyOf": [
{
"$ref": "#/components/schemas/CadenceKind"
},
{
"type": "null"
}
]
},
"cadenceLevel": {
"anyOf": [
{
"$ref": "#/components/schemas/ScheduleRung"
},
{
"type": "null"
}
]
},
"cadencePeriodSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"cancelOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"cohesionLevel": {
"anyOf": [
{
"$ref": "#/components/schemas/ScheduleRung"
},
{
"type": "null"
}
]
},
"completedOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"coordinationKind": {
"anyOf": [
{
"$ref": "#/components/schemas/CoordinationKind"
},
{
"type": "null"
}
]
},
"coordinationStartToleranceSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"copiesCount": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"copiesMode": {
"anyOf": [
{
"$ref": "#/components/schemas/CopiesMode"
},
{
"type": "null"
}
]
},
"epochCount": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"instrumentIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"instrumentMode": {
"anyOf": [
{
"$ref": "#/components/schemas/InstrumentAccessMode"
},
{
"type": "null"
}
]
},
"interruptLowerPriority": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"interruptRecovery": {
"anyOf": [
{
"$ref": "#/components/schemas/InterruptRecovery"
},
{
"type": "null"
}
]
},
"isDeleted": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"isPublic": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"lastActivityOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"observabilityLastUpdatedOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"observingGrantIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"opticalImagingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/OpticalImagingConfiguration-Input"
},
{
"type": "null"
}
]
},
"ownerId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"priority": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"progressFraction": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"radioMappingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/RadioMappingConfiguration"
},
{
"type": "null"
}
]
},
"radioTrackingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/RadioTrackingConfiguration"
},
{
"type": "null"
}
]
},
"renderSettings": {
"anyOf": [
{
"$ref": "#/components/schemas/RenderSettings"
},
{
"type": "null"
}
]
},
"sampleOrdering": {
"anyOf": [
{
"$ref": "#/components/schemas/SampleOrdering"
},
{
"type": "null"
}
]
},
"startAfter": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"status": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationStatus"
},
{
"type": "null"
}
]
}
},
"title": "ObservationUpdate",
"type": "object"
}
Responses
{
"affinityHandoffAfterSec": null,
"affinityMigrateAt": "frame",
"cadenceCalendarUnit": null,
"cadenceGapSec": null,
"cadenceKind": "asap",
"cadenceLevel": null,
"cadencePeriodSec": null,
"cancelOn": null,
"cohesionLevel": null,
"completedOn": null,
"coordinationKind": null,
"coordinationStartToleranceSec": null,
"copiesCount": null,
"copiesMode": "single",
"coverAssetUid": null,
"coverPreviewFileId": null,
"coverThumbnailFileId": null,
"createdOn": "2022-04-13T15:42:05.901Z",
"creator": null,
"creatorId": 0,
"creatorUid": null,
"currentEpoch": 0,
"epochCount": 0,
"galleryItems": null,
"groupUid": null,
"id": 0,
"instrumentIds": null,
"instrumentMode": "none",
"interruptLowerPriority": true,
"interruptRecovery": "resume",
"isDeleted": true,
"isPublic": true,
"lastActivityOn": null,
"name": "string",
"observabilityLastUpdatedOn": null,
"observingGrantIds": null,
"observingGrants": null,
"opticalImagingConfiguration": null,
"owner": null,
"ownerId": 0,
"ownerUid": null,
"priority": 0,
"progressFraction": 10.12,
"radioMappingConfiguration": null,
"radioTrackingConfiguration": null,
"renderSettings": null,
"requestTypes": [
"optical_imaging"
],
"sampleOrdering": "request_major",
"startAfter": null,
"status": "active",
"target": null,
"targetId": null,
"targetUid": null,
"uid": "170584bd-bb2b-44dd-bde5-64b02d639e9e",
"updatedOn": "2022-04-13T15:42:05.901Z"
}
Schema of the response body
{
"properties": {
"affinityHandoffAfterSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"affinityMigrateAt": {
"$ref": "#/components/schemas/ScheduleRung",
"default": "observation"
},
"cadenceCalendarUnit": {
"anyOf": [
{
"$ref": "#/components/schemas/CalendarUnit"
},
{
"type": "null"
}
]
},
"cadenceGapSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"cadenceKind": {
"$ref": "#/components/schemas/CadenceKind",
"default": "asap"
},
"cadenceLevel": {
"anyOf": [
{
"$ref": "#/components/schemas/ScheduleRung"
},
{
"type": "null"
}
]
},
"cadencePeriodSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"cancelOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"cohesionLevel": {
"$ref": "#/components/schemas/ScheduleRung",
"default": "epoch"
},
"completedOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"coordinationKind": {
"anyOf": [
{
"$ref": "#/components/schemas/CoordinationKind"
},
{
"type": "null"
}
]
},
"coordinationStartToleranceSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"copiesCount": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"copiesMode": {
"$ref": "#/components/schemas/CopiesMode",
"default": "single"
},
"coverAssetUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"coverPreviewFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"coverThumbnailFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"createdOn": {
"description": "Creation timestamp.",
"format": "date-time",
"type": "string"
},
"creator": {
"anyOf": [
{
"discriminator": {
"mapping": {
"organization": "#/components/schemas/Organization",
"user": "#/components/schemas/User"
},
"propertyName": "entityType"
},
"oneOf": [
{
"$ref": "#/components/schemas/User"
},
{
"$ref": "#/components/schemas/Organization"
}
]
},
{
"type": "null"
}
]
},
"creatorId": {
"description": "User who created it.",
"type": "integer"
},
"creatorUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"currentEpoch": {
"default": 0,
"type": "integer"
},
"epochCount": {
"default": 1,
"description": "Number of visits. 0 = repeat indefinitely.",
"type": "integer"
},
"galleryItems": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/ObservationGalleryItem"
},
"type": "array"
},
{
"type": "null"
}
]
},
"groupUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"id": {
"description": "Unique identifier of the observation.",
"type": "integer"
},
"instrumentIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"instrumentMode": {
"$ref": "#/components/schemas/InstrumentAccessMode"
},
"interruptLowerPriority": {
"description": "Interrupt lower priority.",
"type": "boolean"
},
"interruptRecovery": {
"$ref": "#/components/schemas/InterruptRecovery",
"default": "resume"
},
"isDeleted": {
"description": "Flag indicating if deleted.",
"type": "boolean"
},
"isPublic": {
"type": "boolean"
},
"lastActivityOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"name": {
"description": "Name of the observation.",
"type": "string"
},
"observabilityLastUpdatedOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"description": "Timestamp of the last observability refresh."
},
"observingGrantIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"observingGrants": {
"anyOf": [
{
"items": {
"discriminator": {
"mapping": {
"externally_managed": "#/components/schemas/ExternallyManagedObservingGrantDetail",
"group": "#/components/schemas/GroupObservingGrantDetail",
"group_managed": "#/components/schemas/GroupManagedObservingGrantDetail",
"member": "#/components/schemas/MemberObservingGrantDetail",
"owner": "#/components/schemas/OwnerObservingGrantDetail"
},
"propertyName": "grantType"
},
"oneOf": [
{
"$ref": "#/components/schemas/MemberObservingGrantDetail"
},
{
"$ref": "#/components/schemas/GroupObservingGrantDetail"
},
{
"$ref": "#/components/schemas/OwnerObservingGrantDetail"
},
{
"$ref": "#/components/schemas/ExternallyManagedObservingGrantDetail"
},
{
"$ref": "#/components/schemas/GroupManagedObservingGrantDetail"
}
]
},
"type": "array"
},
{
"type": "null"
}
]
},
"opticalImagingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/OpticalImagingConfiguration-Output"
},
{
"type": "null"
}
]
},
"owner": {
"anyOf": [
{
"discriminator": {
"mapping": {
"organization": "#/components/schemas/Organization",
"user": "#/components/schemas/User"
},
"propertyName": "entityType"
},
"oneOf": [
{
"$ref": "#/components/schemas/User"
},
{
"$ref": "#/components/schemas/Organization"
}
]
},
{
"type": "null"
}
]
},
"ownerId": {
"description": "Entity that funds this observation.",
"type": "integer"
},
"ownerUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"priority": {
"type": "integer"
},
"progressFraction": {
"type": "number"
},
"radioMappingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/RadioMappingConfiguration"
},
{
"type": "null"
}
]
},
"radioTrackingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/RadioTrackingConfiguration"
},
{
"type": "null"
}
]
},
"renderSettings": {
"anyOf": [
{
"$ref": "#/components/schemas/RenderSettings"
},
{
"type": "null"
}
]
},
"requestTypes": {
"items": {
"$ref": "#/components/schemas/ObservationType"
},
"type": "array"
},
"sampleOrdering": {
"$ref": "#/components/schemas/SampleOrdering",
"default": "request_major"
},
"startAfter": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"status": {
"$ref": "#/components/schemas/ObservationStatus"
},
"target": {
"anyOf": [
{
"$ref": "#/components/schemas/Target"
},
{
"type": "null"
}
]
},
"targetId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Unique identifier of the target associated with the observation."
},
"targetUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"uid": {
"format": "uuid",
"type": "string"
},
"updatedOn": {
"description": "Update timestamp.",
"format": "date-time",
"type": "string"
}
},
"required": [
"id",
"uid",
"targetId",
"status",
"isDeleted",
"createdOn",
"updatedOn",
"name",
"ownerId",
"creatorId",
"interruptLowerPriority",
"priority",
"progressFraction",
"isPublic",
"instrumentMode"
],
"title": "ObservationDetail",
"type": "object"
}
POST /observations/{observation_id}/apply-spec¶
Apply Spec To Observation
Description
Apply a client-held spec onto an existing observation in place (C22 / S1) — the stateless editor's edit-existing path.
Replaces the draft-clone + publish-merge: mutate the existing row
directly (one id, no supersession). Requests are reconciled by the
request_uids side-channel so request identity — and the
ObservationTask.request_id FKs of any already-generated tasks —
survives the edit. See update_observation_from_spec.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Request body
{
"instrumentIds": null,
"isPublic": null,
"name": null,
"observingGrantIds": null,
"requestUids": [
null
],
"spec": {
"data": {},
"schemaKind": "string",
"schemaVersion": 0
},
"targetSnr": null
}
Schema of the request body
{
"properties": {
"instrumentIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"isPublic": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"observingGrantIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"requestUids": {
"items": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"type": "array"
},
"spec": {
"$ref": "#/components/schemas/SpecEnvelope"
},
"targetSnr": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
}
},
"required": [
"spec"
],
"title": "ApplySpecRequest",
"type": "object"
}
Responses
{
"affinityHandoffAfterSec": null,
"affinityMigrateAt": "frame",
"cadenceCalendarUnit": null,
"cadenceGapSec": null,
"cadenceKind": "asap",
"cadenceLevel": null,
"cadencePeriodSec": null,
"cancelOn": null,
"cohesionLevel": null,
"completedOn": null,
"coordinationKind": null,
"coordinationStartToleranceSec": null,
"copiesCount": null,
"copiesMode": "single",
"coverAssetUid": null,
"coverPreviewFileId": null,
"coverThumbnailFileId": null,
"createdOn": "2022-04-13T15:42:05.901Z",
"creator": null,
"creatorId": 0,
"creatorUid": null,
"currentEpoch": 0,
"epochCount": 0,
"galleryItems": null,
"groupUid": null,
"id": 0,
"instrumentIds": null,
"instrumentMode": "none",
"interruptLowerPriority": true,
"interruptRecovery": "resume",
"isDeleted": true,
"isPublic": true,
"lastActivityOn": null,
"name": "string",
"observabilityLastUpdatedOn": null,
"observingGrantIds": null,
"observingGrants": null,
"opticalImagingConfiguration": null,
"owner": null,
"ownerId": 0,
"ownerUid": null,
"priority": 0,
"progressFraction": 10.12,
"radioMappingConfiguration": null,
"radioTrackingConfiguration": null,
"renderSettings": null,
"requestTypes": [
"optical_imaging"
],
"sampleOrdering": "request_major",
"startAfter": null,
"status": "active",
"target": null,
"targetId": null,
"targetUid": null,
"uid": "6d083dc1-8a3d-4a5c-b7c3-ba2a9440d3ac",
"updatedOn": "2022-04-13T15:42:05.901Z"
}
Schema of the response body
{
"properties": {
"affinityHandoffAfterSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"affinityMigrateAt": {
"$ref": "#/components/schemas/ScheduleRung",
"default": "observation"
},
"cadenceCalendarUnit": {
"anyOf": [
{
"$ref": "#/components/schemas/CalendarUnit"
},
{
"type": "null"
}
]
},
"cadenceGapSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"cadenceKind": {
"$ref": "#/components/schemas/CadenceKind",
"default": "asap"
},
"cadenceLevel": {
"anyOf": [
{
"$ref": "#/components/schemas/ScheduleRung"
},
{
"type": "null"
}
]
},
"cadencePeriodSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"cancelOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"cohesionLevel": {
"$ref": "#/components/schemas/ScheduleRung",
"default": "epoch"
},
"completedOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"coordinationKind": {
"anyOf": [
{
"$ref": "#/components/schemas/CoordinationKind"
},
{
"type": "null"
}
]
},
"coordinationStartToleranceSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"copiesCount": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"copiesMode": {
"$ref": "#/components/schemas/CopiesMode",
"default": "single"
},
"coverAssetUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"coverPreviewFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"coverThumbnailFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"createdOn": {
"description": "Creation timestamp.",
"format": "date-time",
"type": "string"
},
"creator": {
"anyOf": [
{
"discriminator": {
"mapping": {
"organization": "#/components/schemas/Organization",
"user": "#/components/schemas/User"
},
"propertyName": "entityType"
},
"oneOf": [
{
"$ref": "#/components/schemas/User"
},
{
"$ref": "#/components/schemas/Organization"
}
]
},
{
"type": "null"
}
]
},
"creatorId": {
"description": "User who created it.",
"type": "integer"
},
"creatorUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"currentEpoch": {
"default": 0,
"type": "integer"
},
"epochCount": {
"default": 1,
"description": "Number of visits. 0 = repeat indefinitely.",
"type": "integer"
},
"galleryItems": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/ObservationGalleryItem"
},
"type": "array"
},
{
"type": "null"
}
]
},
"groupUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"id": {
"description": "Unique identifier of the observation.",
"type": "integer"
},
"instrumentIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"instrumentMode": {
"$ref": "#/components/schemas/InstrumentAccessMode"
},
"interruptLowerPriority": {
"description": "Interrupt lower priority.",
"type": "boolean"
},
"interruptRecovery": {
"$ref": "#/components/schemas/InterruptRecovery",
"default": "resume"
},
"isDeleted": {
"description": "Flag indicating if deleted.",
"type": "boolean"
},
"isPublic": {
"type": "boolean"
},
"lastActivityOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"name": {
"description": "Name of the observation.",
"type": "string"
},
"observabilityLastUpdatedOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"description": "Timestamp of the last observability refresh."
},
"observingGrantIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"observingGrants": {
"anyOf": [
{
"items": {
"discriminator": {
"mapping": {
"externally_managed": "#/components/schemas/ExternallyManagedObservingGrantDetail",
"group": "#/components/schemas/GroupObservingGrantDetail",
"group_managed": "#/components/schemas/GroupManagedObservingGrantDetail",
"member": "#/components/schemas/MemberObservingGrantDetail",
"owner": "#/components/schemas/OwnerObservingGrantDetail"
},
"propertyName": "grantType"
},
"oneOf": [
{
"$ref": "#/components/schemas/MemberObservingGrantDetail"
},
{
"$ref": "#/components/schemas/GroupObservingGrantDetail"
},
{
"$ref": "#/components/schemas/OwnerObservingGrantDetail"
},
{
"$ref": "#/components/schemas/ExternallyManagedObservingGrantDetail"
},
{
"$ref": "#/components/schemas/GroupManagedObservingGrantDetail"
}
]
},
"type": "array"
},
{
"type": "null"
}
]
},
"opticalImagingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/OpticalImagingConfiguration-Output"
},
{
"type": "null"
}
]
},
"owner": {
"anyOf": [
{
"discriminator": {
"mapping": {
"organization": "#/components/schemas/Organization",
"user": "#/components/schemas/User"
},
"propertyName": "entityType"
},
"oneOf": [
{
"$ref": "#/components/schemas/User"
},
{
"$ref": "#/components/schemas/Organization"
}
]
},
{
"type": "null"
}
]
},
"ownerId": {
"description": "Entity that funds this observation.",
"type": "integer"
},
"ownerUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"priority": {
"type": "integer"
},
"progressFraction": {
"type": "number"
},
"radioMappingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/RadioMappingConfiguration"
},
{
"type": "null"
}
]
},
"radioTrackingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/RadioTrackingConfiguration"
},
{
"type": "null"
}
]
},
"renderSettings": {
"anyOf": [
{
"$ref": "#/components/schemas/RenderSettings"
},
{
"type": "null"
}
]
},
"requestTypes": {
"items": {
"$ref": "#/components/schemas/ObservationType"
},
"type": "array"
},
"sampleOrdering": {
"$ref": "#/components/schemas/SampleOrdering",
"default": "request_major"
},
"startAfter": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"status": {
"$ref": "#/components/schemas/ObservationStatus"
},
"target": {
"anyOf": [
{
"$ref": "#/components/schemas/Target"
},
{
"type": "null"
}
]
},
"targetId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Unique identifier of the target associated with the observation."
},
"targetUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"uid": {
"format": "uuid",
"type": "string"
},
"updatedOn": {
"description": "Update timestamp.",
"format": "date-time",
"type": "string"
}
},
"required": [
"id",
"uid",
"targetId",
"status",
"isDeleted",
"createdOn",
"updatedOn",
"name",
"ownerId",
"creatorId",
"interruptLowerPriority",
"priority",
"progressFraction",
"isPublic",
"instrumentMode"
],
"title": "ObservationDetail",
"type": "object"
}
GET /observations/{observation_id}/assets¶
Read Observation Assets
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
created_after |
query | No | |||
created_before |
query | No | |||
created_by |
query | No | |||
createdAfter |
query | No | |||
createdBefore |
query | No | |||
createdBy |
query | No | |||
id |
query | No | |||
include_diagnostics |
query | boolean | False | No | |
includeDiagnostics |
query | No | |||
is_processing_output |
query | No | |||
is_transferrable |
query | No | |||
isProcessingOutput |
query | No | |||
isTransferrable |
query | No | |||
mime_type |
query | No | |||
mimeType |
query | No | |||
name |
query | No | |||
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
processing_flags |
query | No | |||
processing_flags_exclude |
query | No | |||
processingFlags |
query | No | |||
processingFlagsExclude |
query | No | |||
qa_status |
query | No | |||
qaStatus |
query | No | |||
request_id |
query | No | |||
requestId |
query | No | |||
role |
query | No | |||
role_exclude |
query | No | |||
roleExclude |
query | No | |||
server_qa_status |
query | No | |||
serverQaStatus |
query | No | |||
sort_by |
query | No | |||
sortBy |
query | No | |||
task_id |
query | No | |||
taskId |
query | No | |||
token |
query | No | |||
transfer_state |
query | No | |||
transferState |
query | No | |||
view |
query | No |
Responses
{
"items": [
{
"copyStatus": null,
"createdAtNode": null,
"currentAnalysisRun": null,
"currentAnalysisRunId": null,
"currentProcessingOutput": null,
"currentProcessingOutputId": null,
"currentProcessingRun": null,
"currentProcessingRunId": null,
"currentRenderRun": null,
"currentRenderRunId": null,
"file": null,
"fileId": "39d42214-8c03-484e-b87f-146cddd0a9f3",
"id": 0,
"instrumentId": 0,
"instrumentUid": null,
"isTransferrable": null,
"lastTransferAttempt": null,
"localFileId": null,
"nextEligibleRenderAt": null,
"nextTransferAttemptAt": null,
"nodeAvailableUntil": null,
"nodeCopyDeletedAt": null,
"nodeFinalizedAt": null,
"nodeStage": null,
"observationId": 0,
"observationUid": null,
"previewFile": null,
"previewFileId": null,
"processingFlags": null,
"processingRunCount": null,
"qaMetrics": null,
"qaReason": null,
"qaStatus": null,
"reductionInfo": null,
"remoteFilePath": null,
"renderDirtyAt": null,
"resultProcessingOutputs": null,
"role": null,
"rootObservationAssetId": null,
"rootObservationAssetUid": null,
"serverQaMetrics": null,
"serverQaReason": null,
"serverQaStatus": null,
"taskInfo": null,
"thumbnailFile": null,
"thumbnailFileId": null,
"transferAttempts": null,
"transferError": null,
"transferProgressFraction": null,
"transferState": null,
"transferredAt": null,
"uid": "56e3025d-a25c-4539-a898-1f01e7811fb0"
}
],
"page": 0,
"pages": 0,
"size": 0,
"total": 0
}
Schema of the response body
{
"properties": {
"items": {
"items": {
"$ref": "#/components/schemas/ObservationAssetSummary"
},
"title": "Items",
"type": "array"
},
"page": {
"minimum": 1.0,
"title": "Page",
"type": "integer"
},
"pages": {
"minimum": 0.0,
"title": "Pages",
"type": "integer"
},
"size": {
"minimum": 1.0,
"title": "Size",
"type": "integer"
},
"total": {
"minimum": 0.0,
"title": "Total",
"type": "integer"
}
},
"required": [
"items",
"total",
"page",
"size",
"pages"
],
"title": "Page[ObservationAssetSummary]",
"type": "object"
}
GET /observations/{observation_id}/assets/facets¶
Read Observation Asset Facets
Description
Availability facets over the observation's assets: which roles and
processing flags exist (with counts) plus how many assets an external FITS
consumer can import right now. Applies the same observer-narrative default
as the assets listing (diagnostic roles + node-only transient rows hidden
unless include_diagnostics). Powers availability-aware filter composition
— the "Open in Afterglow" pre-open dialog — so zero-match filters can't be
composed and the option set adapts to any observation type. See
docs/internal/design/afterglow/AFTERGLOW_LIVE_OBSERVATION_PIPELINE.md (D-2/OQ-4).
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
include_diagnostics |
query | boolean | False | No | |
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
{
"importableCount": 0,
"pipeline": {
"calibratedCount": 0,
"capturedCount": 0,
"processedCount": 0,
"solvedCount": 0
},
"processingFlags": [
{
"count": 0,
"flag": "reduced"
}
],
"roles": [
{
"count": 0,
"role": "SCIENCE_LIGHT"
}
],
"totalCount": 0
}
Schema of the response body
{
"description": "Availability facets over an observation's assets — which roles and\nprocessing flags actually exist (with counts), under the same\nobserver-narrative default as the assets listing. Powers availability-aware\nfilter composition (the website's \"Open in Afterglow\" pre-open dialog):\noptions are derived from what exists, so zero-match filters are impossible\nto compose and the vocabulary adapts to every observation type with no\nper-type hardcoding. See\ndocs/internal/design/afterglow/AFTERGLOW_LIVE_OBSERVATION_PIPELINE.md (D-2/OQ-4).",
"properties": {
"importableCount": {
"description": "Server-held FITS-image assets — the subset an external FITS consumer (e.g. the Afterglow data provider) can import right now. Gates the 'Open in Afterglow' action together with the observation's active state (an active observation may still produce importable data).",
"type": "integer"
},
"pipeline": {
"$ref": "#/components/schemas/ObservationAssetPipelineFacets",
"description": "Per-stage capture counts for the Overview's pipeline strip."
},
"processingFlags": {
"description": "Distinct processing flags present across assets, with counts (descending).",
"items": {
"$ref": "#/components/schemas/ObservationAssetProcessingFlagFacet"
},
"type": "array"
},
"roles": {
"description": "Distinct roles present, with counts (descending).",
"items": {
"$ref": "#/components/schemas/ObservationAssetRoleFacet"
},
"type": "array"
},
"totalCount": {
"description": "Assets visible under the applied narrative.",
"type": "integer"
}
},
"required": [
"totalCount",
"importableCount",
"roles",
"processingFlags",
"pipeline"
],
"title": "ObservationAssetFacets",
"type": "object"
}
GET /observations/{observation_id}/assets/{asset_id}¶
Read Observation Asset
Description
Fetch a single asset, by uid (the asset page's address) or legacy int id.
Lets a script poll one asset's transfer lifecycle (transfer_state,
transfer_progress_fraction, copy_status) after
POST .../request-transfer, instead of re-listing the whole observation —
and backs the asset page (result-surfaces phase 3), whose route is
uid-addressed.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
asset_id |
path | string | No | ||
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
{
"copyStatus": null,
"createdAtNode": null,
"currentAnalysisRun": null,
"currentAnalysisRunId": null,
"currentProcessingOutput": null,
"currentProcessingOutputId": null,
"currentProcessingRun": null,
"currentProcessingRunId": null,
"currentRenderRun": null,
"currentRenderRunId": null,
"file": null,
"fileId": "fb6f9162-69b1-463b-ad8c-1c8e7470befc",
"id": 0,
"instrumentId": 0,
"instrumentUid": null,
"isTransferrable": null,
"lastTransferAttempt": null,
"localFileId": null,
"nextEligibleRenderAt": null,
"nextTransferAttemptAt": null,
"nodeAvailableUntil": null,
"nodeCopyDeletedAt": null,
"nodeFinalizedAt": null,
"nodeStage": null,
"observationId": 0,
"observationUid": null,
"previewFile": null,
"previewFileId": null,
"processingFlags": null,
"processingRunCount": null,
"qaMetrics": null,
"qaReason": null,
"qaStatus": null,
"reductionInfo": null,
"remoteFilePath": null,
"renderDirtyAt": null,
"resultProcessingOutputs": null,
"role": null,
"rootObservationAssetId": null,
"rootObservationAssetUid": null,
"serverQaMetrics": null,
"serverQaReason": null,
"serverQaStatus": null,
"taskInfo": null,
"thumbnailFile": null,
"thumbnailFileId": null,
"transferAttempts": null,
"transferError": null,
"transferProgressFraction": null,
"transferState": null,
"transferredAt": null,
"uid": "161c1997-adbd-41e0-b455-596456aebc59"
}
Schema of the response body
{
"properties": {
"copyStatus": {
"anyOf": [
{
"$ref": "#/components/schemas/AssetCopyStatus"
},
{
"type": "null"
}
]
},
"createdAtNode": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"currentAnalysisRun": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetAnalysisRun"
},
{
"type": "null"
}
]
},
"currentAnalysisRunId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"currentProcessingOutput": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetProcessingOutputSummary"
},
{
"type": "null"
}
]
},
"currentProcessingOutputId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"currentProcessingRun": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetProcessingRun"
},
{
"type": "null"
}
]
},
"currentProcessingRunId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"currentRenderRun": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetRenderRun"
},
{
"type": "null"
}
]
},
"currentRenderRunId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"file": {
"anyOf": [
{
"$ref": "#/components/schemas/File"
},
{
"type": "null"
}
]
},
"fileId": {
"format": "uuid",
"type": "string"
},
"id": {
"type": "integer"
},
"instrumentId": {
"type": "integer"
},
"instrumentUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"isTransferrable": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"lastTransferAttempt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"localFileId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"nextEligibleRenderAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"nextTransferAttemptAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"nodeAvailableUntil": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"nodeCopyDeletedAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"nodeFinalizedAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"nodeStage": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetNodeStage"
},
{
"type": "null"
}
]
},
"observationId": {
"type": "integer"
},
"observationUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"previewFile": {
"anyOf": [
{
"$ref": "#/components/schemas/File"
},
{
"type": "null"
}
]
},
"previewFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"processingFlags": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/ObservationAssetProcessingFlag"
},
"type": "array"
},
{
"type": "null"
}
]
},
"processingRunCount": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"qaMetrics": {
"anyOf": [
{
"$ref": "#/components/schemas/OpticalFrameQaMetrics"
},
{
"type": "null"
}
]
},
"qaReason": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"qaStatus": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetQaStatus"
},
{
"type": "null"
}
]
},
"reductionInfo": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetReductionInfo"
},
{
"type": "null"
}
]
},
"remoteFilePath": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"renderDirtyAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"resultProcessingOutputs": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/ObservationResultProcessingRunOutputSummary"
},
"type": "array"
},
{
"type": "null"
}
]
},
"role": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetRole"
},
{
"type": "null"
}
]
},
"rootObservationAssetId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"rootObservationAssetUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"serverQaMetrics": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
]
},
"serverQaReason": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"serverQaStatus": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetQaStatus"
},
{
"type": "null"
}
]
},
"taskInfo": {
"anyOf": [
{
"$ref": "#/components/schemas/OpticalImagingObservationAssetTaskInfoDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingCalibrationObservationAssetTaskInfoDetail"
},
{
"$ref": "#/components/schemas/RadioTrackingObservationAssetTaskInfoDetail"
},
{
"type": "null"
}
]
},
"thumbnailFile": {
"anyOf": [
{
"$ref": "#/components/schemas/File"
},
{
"type": "null"
}
]
},
"thumbnailFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"transferAttempts": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"transferError": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"transferProgressFraction": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"transferState": {
"anyOf": [
{
"$ref": "#/components/schemas/RemoteAssetTransferState"
},
{
"type": "null"
}
],
"default": "not_started"
},
"transferredAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"uid": {
"format": "uuid",
"type": "string"
}
},
"required": [
"id",
"uid",
"observationId",
"instrumentId",
"fileId"
],
"title": "ObservationAssetSummary",
"type": "object"
}
GET /observations/{observation_id}/assets/{asset_id}/data¶
Download Observation Asset Data
Description
Download shortcut: 307-redirect to the asset's file bytes.
Collapses the list → read file_id → presign dance into one call: resolves
the asset to its File and redirects to GET /v1/files/{file_id}/data (which
presigns + redirects to storage). The file must be server-resident
(transfer_state=transferred); call .../request-transfer first otherwise.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
asset_id |
path | integer | No | ||
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
GET /observations/{observation_id}/assets/{asset_id}/forensics¶
Read Observation Asset Forensics
Description
The asset's pipeline forensics document (ASSET_PIPELINE_FORENSICS_DESIGN.md).
Resolves the asset's CURRENT processing run's artifact — the field-cal match table + fit the asset page renders — gunzips it server-side, and returns the JSON. 404 when the run predates forensics (they are never backfilled; a re-process regenerates them) or the artifact's bytes were superseded. View permission, like the asset itself; the storage layout stays a server detail.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
asset_id |
path | integer | No | ||
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
PATCH /observations/{observation_id}/assets/{asset_id}/render-settings¶
Update Asset Render Settings
Description
Save per-image render settings (C23 / S3).
The owner-permissioned, asset-scoped counterpart to updating an
observation's render settings: writes the asset's file-level
render_settings (the per-asset override _effective_settings checks
first) and marks that single asset dirty so the scheduler re-renders its
thumbnail/preview. The generic PATCH /v1/files/{id} is admin-only and
explicitly not the place for this.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
asset_id |
path | integer | No | ||
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Request body
{
"normalization": {
"backgroundPercentile": 10.12,
"midtonePercentile": 10.12,
"saturationPercentile": 10.12,
"stretch": "asinh"
},
"rendering": {
"colormap": "string",
"invert": true,
"nan": "black"
},
"schemaVersion": 0
}
Schema of the request body
{
"properties": {
"normalization": {
"$ref": "#/components/schemas/RenderNormalization"
},
"rendering": {
"$ref": "#/components/schemas/RenderPalette"
},
"schemaVersion": {
"default": 1,
"description": "Render settings schema version.",
"type": "integer"
}
},
"title": "RenderSettings",
"type": "object"
}
Responses
POST /observations/{observation_id}/assets/{asset_id}/request-transfer¶
Request Asset Transfer
Description
Observer "transfer this": mark a node-resident asset for transfer.
Sets the server-owned transfer decision (is_transferrable=True). The
ingestor's policy pass then queues it for fetch, provided the node has
finalized it and still holds the file. Used to pull diagnostics the default
policy left node-only. Rejects if the node copy is already gone (nothing to
fetch).
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
asset_id |
path | integer | No | ||
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
{
"copyStatus": null,
"createdAtNode": null,
"currentAnalysisRun": null,
"currentAnalysisRunId": null,
"currentProcessingOutput": null,
"currentProcessingOutputId": null,
"currentProcessingRun": null,
"currentProcessingRunId": null,
"currentRenderRun": null,
"currentRenderRunId": null,
"file": null,
"fileId": "1d84cfb2-cc82-49e1-87cf-8b3054bc7e74",
"id": 0,
"instrumentId": 0,
"instrumentUid": null,
"isTransferrable": null,
"lastTransferAttempt": null,
"localFileId": null,
"nextEligibleRenderAt": null,
"nextTransferAttemptAt": null,
"nodeAvailableUntil": null,
"nodeCopyDeletedAt": null,
"nodeFinalizedAt": null,
"nodeStage": null,
"observationId": 0,
"observationUid": null,
"previewFile": null,
"previewFileId": null,
"processingFlags": null,
"processingRunCount": null,
"qaMetrics": null,
"qaReason": null,
"qaStatus": null,
"reductionInfo": null,
"remoteFilePath": null,
"renderDirtyAt": null,
"resultProcessingOutputs": null,
"role": null,
"rootObservationAssetId": null,
"rootObservationAssetUid": null,
"serverQaMetrics": null,
"serverQaReason": null,
"serverQaStatus": null,
"taskInfo": null,
"thumbnailFile": null,
"thumbnailFileId": null,
"transferAttempts": null,
"transferError": null,
"transferProgressFraction": null,
"transferState": null,
"transferredAt": null,
"uid": "1cc97c02-a157-4a94-a7a2-b2031343edab"
}
Schema of the response body
{
"properties": {
"copyStatus": {
"anyOf": [
{
"$ref": "#/components/schemas/AssetCopyStatus"
},
{
"type": "null"
}
]
},
"createdAtNode": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"currentAnalysisRun": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetAnalysisRun"
},
{
"type": "null"
}
]
},
"currentAnalysisRunId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"currentProcessingOutput": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetProcessingOutputSummary"
},
{
"type": "null"
}
]
},
"currentProcessingOutputId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"currentProcessingRun": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetProcessingRun"
},
{
"type": "null"
}
]
},
"currentProcessingRunId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"currentRenderRun": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetRenderRun"
},
{
"type": "null"
}
]
},
"currentRenderRunId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"file": {
"anyOf": [
{
"$ref": "#/components/schemas/File"
},
{
"type": "null"
}
]
},
"fileId": {
"format": "uuid",
"type": "string"
},
"id": {
"type": "integer"
},
"instrumentId": {
"type": "integer"
},
"instrumentUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"isTransferrable": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"lastTransferAttempt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"localFileId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"nextEligibleRenderAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"nextTransferAttemptAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"nodeAvailableUntil": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"nodeCopyDeletedAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"nodeFinalizedAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"nodeStage": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetNodeStage"
},
{
"type": "null"
}
]
},
"observationId": {
"type": "integer"
},
"observationUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"previewFile": {
"anyOf": [
{
"$ref": "#/components/schemas/File"
},
{
"type": "null"
}
]
},
"previewFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"processingFlags": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/ObservationAssetProcessingFlag"
},
"type": "array"
},
{
"type": "null"
}
]
},
"processingRunCount": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"qaMetrics": {
"anyOf": [
{
"$ref": "#/components/schemas/OpticalFrameQaMetrics"
},
{
"type": "null"
}
]
},
"qaReason": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"qaStatus": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetQaStatus"
},
{
"type": "null"
}
]
},
"reductionInfo": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetReductionInfo"
},
{
"type": "null"
}
]
},
"remoteFilePath": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"renderDirtyAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"resultProcessingOutputs": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/ObservationResultProcessingRunOutputSummary"
},
"type": "array"
},
{
"type": "null"
}
]
},
"role": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetRole"
},
{
"type": "null"
}
]
},
"rootObservationAssetId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"rootObservationAssetUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"serverQaMetrics": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
]
},
"serverQaReason": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"serverQaStatus": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationAssetQaStatus"
},
{
"type": "null"
}
]
},
"taskInfo": {
"anyOf": [
{
"$ref": "#/components/schemas/OpticalImagingObservationAssetTaskInfoDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingCalibrationObservationAssetTaskInfoDetail"
},
{
"$ref": "#/components/schemas/RadioTrackingObservationAssetTaskInfoDetail"
},
{
"type": "null"
}
]
},
"thumbnailFile": {
"anyOf": [
{
"$ref": "#/components/schemas/File"
},
{
"type": "null"
}
]
},
"thumbnailFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"transferAttempts": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"transferError": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"transferProgressFraction": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"transferState": {
"anyOf": [
{
"$ref": "#/components/schemas/RemoteAssetTransferState"
},
{
"type": "null"
}
],
"default": "not_started"
},
"transferredAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"uid": {
"format": "uuid",
"type": "string"
}
},
"required": [
"id",
"uid",
"observationId",
"instrumentId",
"fileId"
],
"title": "ObservationAssetSummary",
"type": "object"
}
PUT /observations/{observation_id}/cover¶
Set Observation Cover
Description
Set (or clear, with a null coverAssetUid) the observation's cover image.
The cover must be one of the observation's own assets. Clearing it reverts to the auto/representative thumbnail at read time. Owner-permissioned.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Request body
Schema of the request body
{
"description": "Set (or clear, with null) an observation's or project's cover image to one\nof its rendered assets, addressed by the asset's uid.",
"properties": {
"coverAssetUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
}
},
"title": "CoverUpdate",
"type": "object"
}
Responses
{
"affinityHandoffAfterSec": null,
"affinityMigrateAt": "frame",
"cadenceCalendarUnit": null,
"cadenceGapSec": null,
"cadenceKind": "asap",
"cadenceLevel": null,
"cadencePeriodSec": null,
"cancelOn": null,
"cohesionLevel": null,
"completedOn": null,
"coordinationKind": null,
"coordinationStartToleranceSec": null,
"copiesCount": null,
"copiesMode": "single",
"coverAssetUid": null,
"coverPreviewFileId": null,
"coverThumbnailFileId": null,
"createdOn": "2022-04-13T15:42:05.901Z",
"creator": null,
"creatorId": 0,
"creatorUid": null,
"currentEpoch": 0,
"epochCount": 0,
"galleryItems": null,
"groupUid": null,
"id": 0,
"instrumentIds": null,
"instrumentMode": "none",
"interruptLowerPriority": true,
"interruptRecovery": "resume",
"isDeleted": true,
"isPublic": true,
"lastActivityOn": null,
"name": "string",
"observabilityLastUpdatedOn": null,
"observingGrantIds": null,
"observingGrants": null,
"opticalImagingConfiguration": null,
"owner": null,
"ownerId": 0,
"ownerUid": null,
"priority": 0,
"progressFraction": 10.12,
"radioMappingConfiguration": null,
"radioTrackingConfiguration": null,
"renderSettings": null,
"requestTypes": [
"optical_imaging"
],
"sampleOrdering": "request_major",
"startAfter": null,
"status": "active",
"target": null,
"targetId": null,
"targetUid": null,
"uid": "b24a2769-9a20-4cd2-9c10-594d7070391b",
"updatedOn": "2022-04-13T15:42:05.901Z"
}
Schema of the response body
{
"properties": {
"affinityHandoffAfterSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"affinityMigrateAt": {
"$ref": "#/components/schemas/ScheduleRung",
"default": "observation"
},
"cadenceCalendarUnit": {
"anyOf": [
{
"$ref": "#/components/schemas/CalendarUnit"
},
{
"type": "null"
}
]
},
"cadenceGapSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"cadenceKind": {
"$ref": "#/components/schemas/CadenceKind",
"default": "asap"
},
"cadenceLevel": {
"anyOf": [
{
"$ref": "#/components/schemas/ScheduleRung"
},
{
"type": "null"
}
]
},
"cadencePeriodSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"cancelOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"cohesionLevel": {
"$ref": "#/components/schemas/ScheduleRung",
"default": "epoch"
},
"completedOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"coordinationKind": {
"anyOf": [
{
"$ref": "#/components/schemas/CoordinationKind"
},
{
"type": "null"
}
]
},
"coordinationStartToleranceSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"copiesCount": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"copiesMode": {
"$ref": "#/components/schemas/CopiesMode",
"default": "single"
},
"coverAssetUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"coverPreviewFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"coverThumbnailFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"createdOn": {
"description": "Creation timestamp.",
"format": "date-time",
"type": "string"
},
"creator": {
"anyOf": [
{
"discriminator": {
"mapping": {
"organization": "#/components/schemas/Organization",
"user": "#/components/schemas/User"
},
"propertyName": "entityType"
},
"oneOf": [
{
"$ref": "#/components/schemas/User"
},
{
"$ref": "#/components/schemas/Organization"
}
]
},
{
"type": "null"
}
]
},
"creatorId": {
"description": "User who created it.",
"type": "integer"
},
"creatorUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"currentEpoch": {
"default": 0,
"type": "integer"
},
"epochCount": {
"default": 1,
"description": "Number of visits. 0 = repeat indefinitely.",
"type": "integer"
},
"galleryItems": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/ObservationGalleryItem"
},
"type": "array"
},
{
"type": "null"
}
]
},
"groupUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"id": {
"description": "Unique identifier of the observation.",
"type": "integer"
},
"instrumentIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"instrumentMode": {
"$ref": "#/components/schemas/InstrumentAccessMode"
},
"interruptLowerPriority": {
"description": "Interrupt lower priority.",
"type": "boolean"
},
"interruptRecovery": {
"$ref": "#/components/schemas/InterruptRecovery",
"default": "resume"
},
"isDeleted": {
"description": "Flag indicating if deleted.",
"type": "boolean"
},
"isPublic": {
"type": "boolean"
},
"lastActivityOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"name": {
"description": "Name of the observation.",
"type": "string"
},
"observabilityLastUpdatedOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"description": "Timestamp of the last observability refresh."
},
"observingGrantIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"observingGrants": {
"anyOf": [
{
"items": {
"discriminator": {
"mapping": {
"externally_managed": "#/components/schemas/ExternallyManagedObservingGrantDetail",
"group": "#/components/schemas/GroupObservingGrantDetail",
"group_managed": "#/components/schemas/GroupManagedObservingGrantDetail",
"member": "#/components/schemas/MemberObservingGrantDetail",
"owner": "#/components/schemas/OwnerObservingGrantDetail"
},
"propertyName": "grantType"
},
"oneOf": [
{
"$ref": "#/components/schemas/MemberObservingGrantDetail"
},
{
"$ref": "#/components/schemas/GroupObservingGrantDetail"
},
{
"$ref": "#/components/schemas/OwnerObservingGrantDetail"
},
{
"$ref": "#/components/schemas/ExternallyManagedObservingGrantDetail"
},
{
"$ref": "#/components/schemas/GroupManagedObservingGrantDetail"
}
]
},
"type": "array"
},
{
"type": "null"
}
]
},
"opticalImagingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/OpticalImagingConfiguration-Output"
},
{
"type": "null"
}
]
},
"owner": {
"anyOf": [
{
"discriminator": {
"mapping": {
"organization": "#/components/schemas/Organization",
"user": "#/components/schemas/User"
},
"propertyName": "entityType"
},
"oneOf": [
{
"$ref": "#/components/schemas/User"
},
{
"$ref": "#/components/schemas/Organization"
}
]
},
{
"type": "null"
}
]
},
"ownerId": {
"description": "Entity that funds this observation.",
"type": "integer"
},
"ownerUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"priority": {
"type": "integer"
},
"progressFraction": {
"type": "number"
},
"radioMappingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/RadioMappingConfiguration"
},
{
"type": "null"
}
]
},
"radioTrackingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/RadioTrackingConfiguration"
},
{
"type": "null"
}
]
},
"renderSettings": {
"anyOf": [
{
"$ref": "#/components/schemas/RenderSettings"
},
{
"type": "null"
}
]
},
"requestTypes": {
"items": {
"$ref": "#/components/schemas/ObservationType"
},
"type": "array"
},
"sampleOrdering": {
"$ref": "#/components/schemas/SampleOrdering",
"default": "request_major"
},
"startAfter": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"status": {
"$ref": "#/components/schemas/ObservationStatus"
},
"target": {
"anyOf": [
{
"$ref": "#/components/schemas/Target"
},
{
"type": "null"
}
]
},
"targetId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Unique identifier of the target associated with the observation."
},
"targetUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"uid": {
"format": "uuid",
"type": "string"
},
"updatedOn": {
"description": "Update timestamp.",
"format": "date-time",
"type": "string"
}
},
"required": [
"id",
"uid",
"targetId",
"status",
"isDeleted",
"createdOn",
"updatedOn",
"name",
"ownerId",
"creatorId",
"interruptLowerPriority",
"priority",
"progressFraction",
"isPublic",
"instrumentMode"
],
"title": "ObservationDetail",
"type": "object"
}
GET /observations/{observation_id}/data-tools¶
Read Observation Data Tools
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
Schema of the response body
{
"items": {
"discriminator": {
"mapping": {
"cluster_modeling": "#/components/schemas/ClusterModelingTool",
"radio_tracking_continuum": "#/components/schemas/RadioTrackingContinuumDataTool",
"radio_tracking_spectrum": "#/components/schemas/RadioTrackingSpectrumDataTool",
"spectral_composer": "#/components/schemas/SpectralComposerTool",
"time_lapse_creator": "#/components/schemas/TimeLapseCreatorTool",
"time_series_photometry": "#/components/schemas/TimeSeriesPhotometryTool",
"transient_detector": "#/components/schemas/TransientDetectorTool"
},
"propertyName": "dataToolType"
},
"oneOf": [
{
"$ref": "#/components/schemas/TimeSeriesPhotometryTool"
},
{
"$ref": "#/components/schemas/SpectralComposerTool"
},
{
"$ref": "#/components/schemas/TimeLapseCreatorTool"
},
{
"$ref": "#/components/schemas/ClusterModelingTool"
},
{
"$ref": "#/components/schemas/TransientDetectorTool"
},
{
"$ref": "#/components/schemas/RadioTrackingContinuumDataTool"
},
{
"$ref": "#/components/schemas/RadioTrackingSpectrumDataTool"
}
]
},
"title": "Response Read Observation Data Tools Observations Observation Id Data Tools Get",
"type": "array"
}
POST /observations/{observation_id}/data-tools¶
Create Data Tool
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Request body
Schema of the request body
{
"discriminator": {
"mapping": {
"cluster_modeling": "#/components/schemas/ClusterModelingToolCreate",
"radio_tracking_continuum": "#/components/schemas/RadioTrackingContinuumDataToolCreate",
"radio_tracking_spectrum": "#/components/schemas/RadioTrackingSpectrumDataToolCreate",
"spectral_composer": "#/components/schemas/SpectralComposerToolCreate",
"time_lapse_creator": "#/components/schemas/TimeLapseCreatorToolCreate",
"time_series_photometry": "#/components/schemas/TimeSeriesPhotometryToolCreate",
"transient_detector": "#/components/schemas/TransientDetectorToolCreate"
},
"propertyName": "dataToolType"
},
"oneOf": [
{
"$ref": "#/components/schemas/TimeSeriesPhotometryToolCreate"
},
{
"$ref": "#/components/schemas/SpectralComposerToolCreate"
},
{
"$ref": "#/components/schemas/TimeLapseCreatorToolCreate"
},
{
"$ref": "#/components/schemas/ClusterModelingToolCreate"
},
{
"$ref": "#/components/schemas/TransientDetectorToolCreate"
},
{
"$ref": "#/components/schemas/RadioTrackingContinuumDataToolCreate"
},
{
"$ref": "#/components/schemas/RadioTrackingSpectrumDataToolCreate"
}
],
"title": "Body"
}
Responses
Schema of the response body
{
"discriminator": {
"mapping": {
"cluster_modeling": "#/components/schemas/ClusterModelingTool",
"radio_tracking_continuum": "#/components/schemas/RadioTrackingContinuumDataTool",
"radio_tracking_spectrum": "#/components/schemas/RadioTrackingSpectrumDataTool",
"spectral_composer": "#/components/schemas/SpectralComposerTool",
"time_lapse_creator": "#/components/schemas/TimeLapseCreatorTool",
"time_series_photometry": "#/components/schemas/TimeSeriesPhotometryTool",
"transient_detector": "#/components/schemas/TransientDetectorTool"
},
"propertyName": "dataToolType"
},
"oneOf": [
{
"$ref": "#/components/schemas/TimeSeriesPhotometryTool"
},
{
"$ref": "#/components/schemas/SpectralComposerTool"
},
{
"$ref": "#/components/schemas/TimeLapseCreatorTool"
},
{
"$ref": "#/components/schemas/ClusterModelingTool"
},
{
"$ref": "#/components/schemas/TransientDetectorTool"
},
{
"$ref": "#/components/schemas/RadioTrackingContinuumDataTool"
},
{
"$ref": "#/components/schemas/RadioTrackingSpectrumDataTool"
}
],
"title": "Response Create Data Tool Observations Observation Id Data Tools Post"
}
GET /observations/{observation_id}/data-tools/available¶
Read Observation Available Data Tools
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
{
"items": [
{
"allowMultiple": true,
"dataToolType": "radio_tracking_continuum",
"defaultConfigSchema": null,
"description": null,
"iconUrl": null,
"id": 0,
"instances": [
null
],
"name": "string",
"version": null
}
],
"page": 0,
"pages": 0,
"size": 0,
"total": 0
}
Schema of the response body
{
"properties": {
"items": {
"items": {
"$ref": "#/components/schemas/DataToolDefinitionWithInstances"
},
"title": "Items",
"type": "array"
},
"page": {
"minimum": 1.0,
"title": "Page",
"type": "integer"
},
"pages": {
"minimum": 0.0,
"title": "Pages",
"type": "integer"
},
"size": {
"minimum": 1.0,
"title": "Size",
"type": "integer"
},
"total": {
"minimum": 0.0,
"title": "Total",
"type": "integer"
}
},
"required": [
"items",
"total",
"page",
"size",
"pages"
],
"title": "Page[DataToolDefinitionWithInstances]",
"type": "object"
}
PUT /observations/{observation_id}/data-tools/{data_tool_id}¶
Update Data Tool
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
data_tool_id |
path | integer | No | ||
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Request body
Schema of the request body
{
"discriminator": {
"mapping": {
"cluster_modeling": "#/components/schemas/ClusterModelingToolUpdate",
"radio_tracking_continuum": "#/components/schemas/RadioTrackingContinuumDataToolUpdate",
"radio_tracking_spectrum": "#/components/schemas/RadioTrackingSpectrumDataToolUpdate",
"spectral_composer": "#/components/schemas/SpectralComposerToolUpdate",
"time_lapse_creator": "#/components/schemas/TimeLapseCreatorToolUpdate",
"time_series_photometry": "#/components/schemas/TimeSeriesPhotometryToolUpdate",
"transient_detector": "#/components/schemas/TransientDetectorToolUpdate"
},
"propertyName": "dataToolType"
},
"oneOf": [
{
"$ref": "#/components/schemas/TimeSeriesPhotometryToolUpdate"
},
{
"$ref": "#/components/schemas/SpectralComposerToolUpdate"
},
{
"$ref": "#/components/schemas/TimeLapseCreatorToolUpdate"
},
{
"$ref": "#/components/schemas/ClusterModelingToolUpdate"
},
{
"$ref": "#/components/schemas/TransientDetectorToolUpdate"
},
{
"$ref": "#/components/schemas/RadioTrackingContinuumDataToolUpdate"
},
{
"$ref": "#/components/schemas/RadioTrackingSpectrumDataToolUpdate"
}
],
"title": "Body"
}
Responses
Schema of the response body
{
"discriminator": {
"mapping": {
"cluster_modeling": "#/components/schemas/ClusterModelingTool",
"radio_tracking_continuum": "#/components/schemas/RadioTrackingContinuumDataTool",
"radio_tracking_spectrum": "#/components/schemas/RadioTrackingSpectrumDataTool",
"spectral_composer": "#/components/schemas/SpectralComposerTool",
"time_lapse_creator": "#/components/schemas/TimeLapseCreatorTool",
"time_series_photometry": "#/components/schemas/TimeSeriesPhotometryTool",
"transient_detector": "#/components/schemas/TransientDetectorTool"
},
"propertyName": "dataToolType"
},
"oneOf": [
{
"$ref": "#/components/schemas/TimeSeriesPhotometryTool"
},
{
"$ref": "#/components/schemas/SpectralComposerTool"
},
{
"$ref": "#/components/schemas/TimeLapseCreatorTool"
},
{
"$ref": "#/components/schemas/ClusterModelingTool"
},
{
"$ref": "#/components/schemas/TransientDetectorTool"
},
{
"$ref": "#/components/schemas/RadioTrackingContinuumDataTool"
},
{
"$ref": "#/components/schemas/RadioTrackingSpectrumDataTool"
}
],
"title": "Response Update Data Tool Observations Observation Id Data Tools Data Tool Id Put"
}
GET /observations/{observation_id}/detail¶
Read Observation Detail
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
{
"affinityHandoffAfterSec": null,
"affinityMigrateAt": "frame",
"cadenceCalendarUnit": null,
"cadenceGapSec": null,
"cadenceKind": "asap",
"cadenceLevel": null,
"cadencePeriodSec": null,
"cancelOn": null,
"cohesionLevel": null,
"completedOn": null,
"coordinationKind": null,
"coordinationStartToleranceSec": null,
"copiesCount": null,
"copiesMode": "single",
"coverAssetUid": null,
"coverPreviewFileId": null,
"coverThumbnailFileId": null,
"createdOn": "2022-04-13T15:42:05.901Z",
"creator": null,
"creatorId": 0,
"creatorUid": null,
"currentEpoch": 0,
"epochCount": 0,
"galleryItems": null,
"groupUid": null,
"id": 0,
"instrumentIds": null,
"instrumentMode": "none",
"interruptLowerPriority": true,
"interruptRecovery": "resume",
"isDeleted": true,
"isPublic": true,
"lastActivityOn": null,
"name": "string",
"observabilityLastUpdatedOn": null,
"observingGrantIds": null,
"observingGrants": null,
"opticalImagingConfiguration": null,
"owner": null,
"ownerId": 0,
"ownerUid": null,
"priority": 0,
"progressFraction": 10.12,
"radioMappingConfiguration": null,
"radioTrackingConfiguration": null,
"renderSettings": null,
"requestTypes": [
"optical_imaging"
],
"sampleOrdering": "request_major",
"startAfter": null,
"status": "active",
"target": null,
"targetId": null,
"targetUid": null,
"uid": "1f95da4c-ad51-400d-94e3-3fa159dc0f37",
"updatedOn": "2022-04-13T15:42:05.901Z"
}
Schema of the response body
{
"properties": {
"affinityHandoffAfterSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"affinityMigrateAt": {
"$ref": "#/components/schemas/ScheduleRung",
"default": "observation"
},
"cadenceCalendarUnit": {
"anyOf": [
{
"$ref": "#/components/schemas/CalendarUnit"
},
{
"type": "null"
}
]
},
"cadenceGapSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"cadenceKind": {
"$ref": "#/components/schemas/CadenceKind",
"default": "asap"
},
"cadenceLevel": {
"anyOf": [
{
"$ref": "#/components/schemas/ScheduleRung"
},
{
"type": "null"
}
]
},
"cadencePeriodSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"cancelOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"cohesionLevel": {
"$ref": "#/components/schemas/ScheduleRung",
"default": "epoch"
},
"completedOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"coordinationKind": {
"anyOf": [
{
"$ref": "#/components/schemas/CoordinationKind"
},
{
"type": "null"
}
]
},
"coordinationStartToleranceSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"copiesCount": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"copiesMode": {
"$ref": "#/components/schemas/CopiesMode",
"default": "single"
},
"coverAssetUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"coverPreviewFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"coverThumbnailFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"createdOn": {
"description": "Creation timestamp.",
"format": "date-time",
"type": "string"
},
"creator": {
"anyOf": [
{
"discriminator": {
"mapping": {
"organization": "#/components/schemas/Organization",
"user": "#/components/schemas/User"
},
"propertyName": "entityType"
},
"oneOf": [
{
"$ref": "#/components/schemas/User"
},
{
"$ref": "#/components/schemas/Organization"
}
]
},
{
"type": "null"
}
]
},
"creatorId": {
"description": "User who created it.",
"type": "integer"
},
"creatorUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"currentEpoch": {
"default": 0,
"type": "integer"
},
"epochCount": {
"default": 1,
"description": "Number of visits. 0 = repeat indefinitely.",
"type": "integer"
},
"galleryItems": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/ObservationGalleryItem"
},
"type": "array"
},
{
"type": "null"
}
]
},
"groupUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"id": {
"description": "Unique identifier of the observation.",
"type": "integer"
},
"instrumentIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"instrumentMode": {
"$ref": "#/components/schemas/InstrumentAccessMode"
},
"interruptLowerPriority": {
"description": "Interrupt lower priority.",
"type": "boolean"
},
"interruptRecovery": {
"$ref": "#/components/schemas/InterruptRecovery",
"default": "resume"
},
"isDeleted": {
"description": "Flag indicating if deleted.",
"type": "boolean"
},
"isPublic": {
"type": "boolean"
},
"lastActivityOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"name": {
"description": "Name of the observation.",
"type": "string"
},
"observabilityLastUpdatedOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"description": "Timestamp of the last observability refresh."
},
"observingGrantIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"observingGrants": {
"anyOf": [
{
"items": {
"discriminator": {
"mapping": {
"externally_managed": "#/components/schemas/ExternallyManagedObservingGrantDetail",
"group": "#/components/schemas/GroupObservingGrantDetail",
"group_managed": "#/components/schemas/GroupManagedObservingGrantDetail",
"member": "#/components/schemas/MemberObservingGrantDetail",
"owner": "#/components/schemas/OwnerObservingGrantDetail"
},
"propertyName": "grantType"
},
"oneOf": [
{
"$ref": "#/components/schemas/MemberObservingGrantDetail"
},
{
"$ref": "#/components/schemas/GroupObservingGrantDetail"
},
{
"$ref": "#/components/schemas/OwnerObservingGrantDetail"
},
{
"$ref": "#/components/schemas/ExternallyManagedObservingGrantDetail"
},
{
"$ref": "#/components/schemas/GroupManagedObservingGrantDetail"
}
]
},
"type": "array"
},
{
"type": "null"
}
]
},
"opticalImagingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/OpticalImagingConfiguration-Output"
},
{
"type": "null"
}
]
},
"owner": {
"anyOf": [
{
"discriminator": {
"mapping": {
"organization": "#/components/schemas/Organization",
"user": "#/components/schemas/User"
},
"propertyName": "entityType"
},
"oneOf": [
{
"$ref": "#/components/schemas/User"
},
{
"$ref": "#/components/schemas/Organization"
}
]
},
{
"type": "null"
}
]
},
"ownerId": {
"description": "Entity that funds this observation.",
"type": "integer"
},
"ownerUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"priority": {
"type": "integer"
},
"progressFraction": {
"type": "number"
},
"radioMappingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/RadioMappingConfiguration"
},
{
"type": "null"
}
]
},
"radioTrackingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/RadioTrackingConfiguration"
},
{
"type": "null"
}
]
},
"renderSettings": {
"anyOf": [
{
"$ref": "#/components/schemas/RenderSettings"
},
{
"type": "null"
}
]
},
"requestTypes": {
"items": {
"$ref": "#/components/schemas/ObservationType"
},
"type": "array"
},
"sampleOrdering": {
"$ref": "#/components/schemas/SampleOrdering",
"default": "request_major"
},
"startAfter": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"status": {
"$ref": "#/components/schemas/ObservationStatus"
},
"target": {
"anyOf": [
{
"$ref": "#/components/schemas/Target"
},
{
"type": "null"
}
]
},
"targetId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Unique identifier of the target associated with the observation."
},
"targetUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"uid": {
"format": "uuid",
"type": "string"
},
"updatedOn": {
"description": "Update timestamp.",
"format": "date-time",
"type": "string"
}
},
"required": [
"id",
"uid",
"targetId",
"status",
"isDeleted",
"createdOn",
"updatedOn",
"name",
"ownerId",
"creatorId",
"interruptLowerPriority",
"priority",
"progressFraction",
"isPublic",
"instrumentMode"
],
"title": "ObservationDetail",
"type": "object"
}
GET /observations/{observation_id}/edit-seed¶
Observation Edit Seed
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
{
"instrumentIds": [
0
],
"isPublic": true,
"observingGrantIds": [
0
],
"ownerName": "string",
"ownerSlug": "string",
"requestUids": [
"063ded35-6d99-4750-adb9-048b09a7df3b"
],
"spec": {
"data": {},
"schemaKind": "string",
"schemaVersion": 0
},
"status": "string"
}
Schema of the response body
{
"description": "Seed for the stateless editor's edit-existing mode (C22 / S1).\n\nThe pristine spec (identity-stripped) plus a parallel ``request_uids``\narray aligned 1:1 with ``spec.data.requests`` — the identity side-channel\nthe editor threads back to ``apply-spec`` so in-place edits preserve\nrequest identity. Built server-side from one ordered pass over the\nobservation's live (non-deleted) requests, so the alignment is\nauthoritative rather than reconstructed client-side from a non-unique\n``order`` field.",
"properties": {
"instrumentIds": {
"items": {
"type": "integer"
},
"type": "array"
},
"isPublic": {
"type": "boolean"
},
"observingGrantIds": {
"items": {
"type": "integer"
},
"type": "array"
},
"ownerName": {
"type": "string"
},
"ownerSlug": {
"type": "string"
},
"requestUids": {
"items": {
"format": "uuid",
"type": "string"
},
"type": "array"
},
"spec": {
"$ref": "#/components/schemas/SpecEnvelope"
},
"status": {
"type": "string"
}
},
"required": [
"spec",
"requestUids",
"observingGrantIds",
"ownerSlug",
"ownerName",
"status",
"isPublic",
"instrumentIds"
],
"title": "ObservationEditSeed",
"type": "object"
}
GET /observations/{observation_id}/events¶
Read Observation Events
Description
List notification events for this observation, newest first.
Powers the activity panel on the observation detail page. Includes
every event row tagged with this observation's id — both the
user-subscribable kinds (observation.work_started /
observation.completed) and the activity-feed-only ones
(observation.task_started / observation.task_completed /
observation.work_interrupted).
Empty for observations whose state-change history predates the
notification system. The ix_events_observation_id partial index
makes this query fast even with a long-lived events table.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
{
"items": [
{
"createdOn": "2022-04-13T15:42:05.901Z",
"dedupKey": null,
"deviceId": null,
"eventKind": "observation.work_started",
"id": 0,
"message": null,
"observationId": null,
"observatoryId": null,
"observingAccountId": null,
"operationalConstraintId": null,
"ownerEntityId": null,
"payload": {},
"renderedMessage": null,
"resourceId": 0,
"resourceKind": "observation",
"telescopeId": null
}
],
"page": 0,
"pages": 0,
"size": 0,
"total": 0
}
Schema of the response body
{
"properties": {
"items": {
"items": {
"$ref": "#/components/schemas/EventRead"
},
"title": "Items",
"type": "array"
},
"page": {
"minimum": 1.0,
"title": "Page",
"type": "integer"
},
"pages": {
"minimum": 0.0,
"title": "Pages",
"type": "integer"
},
"size": {
"minimum": 1.0,
"title": "Size",
"type": "integer"
},
"total": {
"minimum": 0.0,
"title": "Total",
"type": "integer"
}
},
"required": [
"items",
"total",
"page",
"size",
"pages"
],
"title": "Page[EventRead]",
"type": "object"
}
GET /observations/{observation_id}/observability¶
Read Observation Observability
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
extendedInfo |
query | boolean | True | No | |
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
resolution |
query | number | 1 | No | |
span |
query | number | 1 | No | |
start |
query | No | |||
telescopeId |
query | No | |||
token |
query | No |
Responses
{
"items": [
{
"endsOn": "2022-04-13T15:42:05.901Z",
"instrumentId": 0,
"obsId": 0,
"observable": true,
"reason": "string",
"requestId": null,
"requestType": "optical_imaging",
"startsOn": "2022-04-13T15:42:05.901Z",
"telescopeId": null
}
],
"page": 0,
"pages": 0,
"size": 0,
"total": 0
}
Schema of the response body
{
"properties": {
"items": {
"items": {
"$ref": "#/components/schemas/ObservabilityWindow"
},
"title": "Items",
"type": "array"
},
"page": {
"minimum": 1.0,
"title": "Page",
"type": "integer"
},
"pages": {
"minimum": 0.0,
"title": "Pages",
"type": "integer"
},
"size": {
"minimum": 1.0,
"title": "Size",
"type": "integer"
},
"total": {
"minimum": 0.0,
"title": "Total",
"type": "integer"
}
},
"required": [
"items",
"total",
"page",
"size",
"pages"
],
"title": "Page[ObservabilityWindow]",
"type": "object"
}
GET /observations/{observation_id}/observability-windows¶
List Observation Observability Windows
Description
Return previously-computed observability windows from the
observability_windows table, filtered by a half-open time-range
overlap predicate.
Unlike /observability, this endpoint does not recompute the
target's visibility — it's a thin DB read. Use it from clients that
need to render windows visible in a particular pan range (Gantt
chart, scheduling-grid UIs); use /observability when the caller
needs a fresh compute over an arbitrary span (e.g. probing a future
eligibility window before commit).
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
endsAfter |
query | No | |||
observable |
query | No | |||
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
requestType |
query | No | |||
startsBefore |
query | No | |||
telescopeId |
query | No | |||
token |
query | No |
Responses
{
"items": [
{
"endsOn": "2022-04-13T15:42:05.901Z",
"instrumentId": 0,
"obsId": 0,
"observable": true,
"reason": "string",
"requestId": null,
"requestType": "optical_imaging",
"startsOn": "2022-04-13T15:42:05.901Z",
"telescopeId": null
}
],
"page": 0,
"pages": 0,
"size": 0,
"total": 0
}
Schema of the response body
{
"properties": {
"items": {
"items": {
"$ref": "#/components/schemas/ObservabilityWindow"
},
"title": "Items",
"type": "array"
},
"page": {
"minimum": 1.0,
"title": "Page",
"type": "integer"
},
"pages": {
"minimum": 0.0,
"title": "Pages",
"type": "integer"
},
"size": {
"minimum": 1.0,
"title": "Size",
"type": "integer"
},
"total": {
"minimum": 0.0,
"title": "Total",
"type": "integer"
}
},
"required": [
"items",
"total",
"page",
"size",
"pages"
],
"title": "Page[ObservabilityWindow]",
"type": "object"
}
GET /observations/{observation_id}/observing-plans-preview¶
Get Observing Plans Preview
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
instrument_ids |
query | array | No | List of instrument IDs to generate observing plans for | |
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
{
"items": [
{
"allRequestsObservable": true,
"anyRequestsObservable": true,
"constraints": [
"string"
],
"instrument": null,
"isObservable": true,
"legendColor": "string",
"observabilityWindows": [
{
"endsOn": "2022-04-13T15:42:05.901Z",
"instrumentId": 0,
"obsId": 0,
"observable": true,
"reason": "string",
"requestId": null,
"requestType": "optical_imaging",
"startsOn": "2022-04-13T15:42:05.901Z",
"telescopeId": null
}
],
"observationId": 0,
"opticalImagingConfigurationPlan": null,
"radioMappingConfigurationPlan": null,
"radioTrackingConfigurationPlan": null,
"requestPlanMap": {},
"telescope": {
"antennaIds": null,
"antennas": [
{
"apertureM": 10.12,
"deviceType": "string",
"id": null,
"imageId": null,
"manufacturer": null,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"operationalConstraintActions": [
{
"action": "keep_enclosure_closed",
"deviceId": 0,
"deviceUid": null,
"id": null,
"operationalConstraintId": 0,
"priority": 0,
"triggerOnStabilizing": true,
"triggerOnUnknown": true,
"triggerOnUnsafe": true,
"uid": "71a766a3-0815-419d-addf-b322b1d49b8c"
}
],
"operationalConstraintIds": null,
"ownerId": 0,
"serialNumber": null,
"telescopeId": null,
"telescopeUid": null,
"uid": "b3407edf-1713-48ca-8221-51854f858006"
}
],
"calibrationObservingAccountId": null,
"cameraIds": null,
"cameras": [
{
"arrayHeight": 0,
"arrayWidth": 0,
"coolerIdleTimeoutSec": 10.12,
"coolerPolicy": "always_on",
"coolerPrestartLeadTimeSec": 10.12,
"defaultReadoutMode": null,
"defaultReadoutModeUid": null,
"deviceType": "string",
"fullWellCapacityElectrons": 10.12,
"hasElectronicShutter": true,
"id": null,
"imageId": null,
"isColor": true,
"isGlobalShutter": true,
"manufacturer": null,
"model": null,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"operationalConstraintActions": null,
"operationalConstraintIds": null,
"ownerId": 0,
"pixelSizeUm": 10.12,
"readoutModes": null,
"serialNumber": null,
"telescopeId": null,
"telescopeUid": null,
"temperatureSetpointC": null,
"temperatureSetpointToleranceC": null,
"uid": "76ec54c5-1649-48df-aa8b-f6af3d97335a"
}
],
"description": null,
"deviceIds": null,
"elevationM": 10.12,
"enclosure": null,
"enclosureId": null,
"enclosureUid": null,
"filterWheelIds": null,
"filterWheels": [
{
"deletedPositions": null,
"deviceType": "string",
"filterShape": null,
"filterSizeMm": null,
"filterWheelPositionIds": null,
"id": null,
"imageId": null,
"manufacturer": null,
"model": null,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"operationalConstraintActions": null,
"operationalConstraintIds": null,
"ownerId": 0,
"positions": [
{
"filterIds": [
"string"
],
"filterWheelId": 0,
"filterWheelUid": null,
"filters": [
{
"bandpassNm": null,
"centralWavelengthNm": null,
"filterSpecifierType": "string",
"flatExposureScaler": null,
"flatExposureSunElevationCoeffPerDeg": null,
"id": "string",
"isModifier": null,
"throughputFraction": null
}
],
"flatExposureScaler": null,
"focusOffset": null,
"id": null,
"isActive": true,
"isDeleted": true,
"label": null,
"position": 0,
"uid": "f110300e-44d0-42dc-84de-53993ae8a9de"
}
],
"serialNumber": null,
"telescopeId": null,
"telescopeUid": null,
"uid": "5e3cfdfa-5aee-4ce3-9e74-555d746fd2a6"
}
],
"focuserIds": null,
"focusers": [
{
"deviceType": "string",
"id": null,
"imageId": null,
"manufacturer": null,
"maxPosition": 0,
"minPosition": 0,
"model": null,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"operationalConstraintActions": null,
"operationalConstraintIds": null,
"ownerId": 0,
"serialNumber": null,
"stepSize": 10.12,
"telescopeId": null,
"telescopeUid": null,
"temperatureCompensated": true,
"uid": "f068ad0a-9bf6-478a-9b50-44a25e4a2d3c"
}
],
"galleryItemIds": null,
"galleryItems": null,
"iauCode": null,
"id": null,
"imageId": null,
"instrumentIds": null,
"instruments": [
null
],
"ipCameraIds": null,
"ipCameras": [
{
"id": null,
"isPrimary": true,
"isPublic": true,
"lastSeen": null,
"name": "string",
"observatoryId": null,
"onvifHost": null,
"order": 0,
"pose": null,
"ptz": true,
"role": "pier",
"streams": [
{
"active": true,
"cameraId": 0,
"expiresSec": null,
"id": 0,
"kind": "rtsp",
"quality": null
}
],
"telescopeId": null,
"uid": "ae242548-312d-4168-93da-2166aec074a1",
"vendor": null
}
],
"isAvailable": true,
"isPublic": true,
"latitudeDeg": 10.12,
"localHorizon": null,
"location": "string",
"longitudeDeg": 10.12,
"mount": null,
"mountId": null,
"mountUid": null,
"name": "string",
"observatory": null,
"observatoryId": 0,
"observatoryUid": null,
"otaIds": null,
"otas": [
{
"apertureM": 10.12,
"deviceType": "string",
"focalLengthM": 10.12,
"id": null,
"imageId": null,
"manufacturer": null,
"model": null,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"offsetScalar": null,
"offsetXM": null,
"offsetYM": null,
"offsetZM": null,
"operationalConstraintActions": null,
"operationalConstraintIds": null,
"opticalDesign": null,
"ownerId": 0,
"parentOta": null,
"parentOtaId": null,
"serialNumber": null,
"telescopeId": null,
"telescopeUid": null,
"uid": "7bfb2146-eb3a-4720-88f8-7ebe01346ccc"
}
],
"owner": null,
"ownerId": 0,
"publicLatitudeDeg": null,
"publicLongitudeDeg": null,
"radioBackendIds": null,
"radioBackends": [
{
"description": null,
"deviceType": "string",
"id": null,
"imageId": null,
"manufacturer": null,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"operationalConstraintActions": null,
"operationalConstraintIds": null,
"ownerId": 0,
"serialNumber": null,
"telescopeId": null,
"telescopeUid": null,
"uid": "e73c7878-47a9-4c7c-a0e1-d0f30f17a2da"
}
],
"receiverIds": null,
"receivers": [
{
"attenuationMaxDb": null,
"attenuationMinDb": null,
"attenuationStepDb": null,
"availableNoiseDiodeLevels": 0,
"band": null,
"deviceType": "string",
"feeds": [
{
"feedBackendConnections": [
{
"id": 0,
"isActive": true,
"radioBackendId": 0,
"receiverFeedId": 0
}
],
"id": 0,
"isActive": true,
"offsetXArcsec": 10.12,
"offsetYArcsec": 10.12,
"receiverId": 0
}
],
"id": 0,
"imageId": null,
"isAvailable": true,
"localOscillatorMaxFrequencyMhz": null,
"localOscillatorMinFrequencyMhz": null,
"manufacturer": null,
"maxFrequencyMhz": 10.12,
"minFrequencyMhz": 10.12,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"operationalConstraintActions": null,
"operationalConstraintIds": null,
"ownerId": 0,
"polarization": "none",
"radioFilters": [
{
"id": 0,
"maxFrequencyMhz": 10.12,
"minFrequencyMhz": 10.12,
"name": null,
"receiverId": 0
}
],
"serialNumber": null,
"telescopeId": null,
"telescopeUid": null,
"temperatureSetpointK": null,
"temperatureSetpointToleranceK": null,
"uid": "cde14f07-5513-41c4-ace8-909365021da8"
}
],
"rotatorIds": null,
"rotators": [
{
"deviceType": "string",
"id": null,
"imageId": null,
"manufacturer": null,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"operationalConstraintActions": null,
"operationalConstraintIds": null,
"ownerId": 0,
"serialNumber": null,
"telescopeId": null,
"telescopeUid": null,
"uid": "29c584be-c123-46df-93cb-7bce5bbb7c15"
}
],
"shortName": null,
"slug": "string",
"uid": "e66a8198-8344-4764-80b5-7a4f9c67a98a"
}
}
],
"page": 0,
"pages": 0,
"size": 0,
"total": 0
}
Schema of the response body
{
"properties": {
"items": {
"items": {
"$ref": "#/components/schemas/ObservingPlan"
},
"title": "Items",
"type": "array"
},
"page": {
"minimum": 1.0,
"title": "Page",
"type": "integer"
},
"pages": {
"minimum": 0.0,
"title": "Pages",
"type": "integer"
},
"size": {
"minimum": 1.0,
"title": "Size",
"type": "integer"
},
"total": {
"minimum": 0.0,
"title": "Total",
"type": "integer"
}
},
"required": [
"items",
"total",
"page",
"size",
"pages"
],
"title": "Page[ObservingPlan]",
"type": "object"
}
GET /observations/{observation_id}/observing-plans/¶
Get Observing Plans
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
instrument_ids |
query | array | No | List of instrument IDs to generate observing plans for | |
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
{
"items": [
{
"allRequestsObservable": true,
"anyRequestsObservable": true,
"constraints": [
"string"
],
"instrument": null,
"isObservable": true,
"legendColor": "string",
"observabilityWindows": [
{
"endsOn": "2022-04-13T15:42:05.901Z",
"instrumentId": 0,
"obsId": 0,
"observable": true,
"reason": "string",
"requestId": null,
"requestType": "optical_imaging",
"startsOn": "2022-04-13T15:42:05.901Z",
"telescopeId": null
}
],
"observationId": 0,
"opticalImagingConfigurationPlan": null,
"radioMappingConfigurationPlan": null,
"radioTrackingConfigurationPlan": null,
"requestPlanMap": {},
"telescope": {
"antennaIds": null,
"antennas": [
{
"apertureM": 10.12,
"deviceType": "string",
"id": null,
"imageId": null,
"manufacturer": null,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"operationalConstraintActions": [
{
"action": "keep_enclosure_closed",
"deviceId": 0,
"deviceUid": null,
"id": null,
"operationalConstraintId": 0,
"priority": 0,
"triggerOnStabilizing": true,
"triggerOnUnknown": true,
"triggerOnUnsafe": true,
"uid": "54a1d039-e1dd-40e0-bb93-57d37b67893d"
}
],
"operationalConstraintIds": null,
"ownerId": 0,
"serialNumber": null,
"telescopeId": null,
"telescopeUid": null,
"uid": "ebe70b9f-1635-4e68-b89e-6f5e291c543d"
}
],
"calibrationObservingAccountId": null,
"cameraIds": null,
"cameras": [
{
"arrayHeight": 0,
"arrayWidth": 0,
"coolerIdleTimeoutSec": 10.12,
"coolerPolicy": "always_on",
"coolerPrestartLeadTimeSec": 10.12,
"defaultReadoutMode": null,
"defaultReadoutModeUid": null,
"deviceType": "string",
"fullWellCapacityElectrons": 10.12,
"hasElectronicShutter": true,
"id": null,
"imageId": null,
"isColor": true,
"isGlobalShutter": true,
"manufacturer": null,
"model": null,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"operationalConstraintActions": null,
"operationalConstraintIds": null,
"ownerId": 0,
"pixelSizeUm": 10.12,
"readoutModes": null,
"serialNumber": null,
"telescopeId": null,
"telescopeUid": null,
"temperatureSetpointC": null,
"temperatureSetpointToleranceC": null,
"uid": "15ab198e-9e7f-4867-bbd7-864f8a1c4707"
}
],
"description": null,
"deviceIds": null,
"elevationM": 10.12,
"enclosure": null,
"enclosureId": null,
"enclosureUid": null,
"filterWheelIds": null,
"filterWheels": [
{
"deletedPositions": null,
"deviceType": "string",
"filterShape": null,
"filterSizeMm": null,
"filterWheelPositionIds": null,
"id": null,
"imageId": null,
"manufacturer": null,
"model": null,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"operationalConstraintActions": null,
"operationalConstraintIds": null,
"ownerId": 0,
"positions": [
{
"filterIds": [
"string"
],
"filterWheelId": 0,
"filterWheelUid": null,
"filters": [
{
"bandpassNm": null,
"centralWavelengthNm": null,
"filterSpecifierType": "string",
"flatExposureScaler": null,
"flatExposureSunElevationCoeffPerDeg": null,
"id": "string",
"isModifier": null,
"throughputFraction": null
}
],
"flatExposureScaler": null,
"focusOffset": null,
"id": null,
"isActive": true,
"isDeleted": true,
"label": null,
"position": 0,
"uid": "490ccd23-3eb6-40e7-b80a-183930e68ea3"
}
],
"serialNumber": null,
"telescopeId": null,
"telescopeUid": null,
"uid": "8025013a-0251-4055-961b-6630f59edb8d"
}
],
"focuserIds": null,
"focusers": [
{
"deviceType": "string",
"id": null,
"imageId": null,
"manufacturer": null,
"maxPosition": 0,
"minPosition": 0,
"model": null,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"operationalConstraintActions": null,
"operationalConstraintIds": null,
"ownerId": 0,
"serialNumber": null,
"stepSize": 10.12,
"telescopeId": null,
"telescopeUid": null,
"temperatureCompensated": true,
"uid": "ec508105-ec64-4a32-b4c9-851c3abc110c"
}
],
"galleryItemIds": null,
"galleryItems": null,
"iauCode": null,
"id": null,
"imageId": null,
"instrumentIds": null,
"instruments": [
null
],
"ipCameraIds": null,
"ipCameras": [
{
"id": null,
"isPrimary": true,
"isPublic": true,
"lastSeen": null,
"name": "string",
"observatoryId": null,
"onvifHost": null,
"order": 0,
"pose": null,
"ptz": true,
"role": "pier",
"streams": [
{
"active": true,
"cameraId": 0,
"expiresSec": null,
"id": 0,
"kind": "rtsp",
"quality": null
}
],
"telescopeId": null,
"uid": "68adb84b-82f5-415c-82b7-f5569ed290ae",
"vendor": null
}
],
"isAvailable": true,
"isPublic": true,
"latitudeDeg": 10.12,
"localHorizon": null,
"location": "string",
"longitudeDeg": 10.12,
"mount": null,
"mountId": null,
"mountUid": null,
"name": "string",
"observatory": null,
"observatoryId": 0,
"observatoryUid": null,
"otaIds": null,
"otas": [
{
"apertureM": 10.12,
"deviceType": "string",
"focalLengthM": 10.12,
"id": null,
"imageId": null,
"manufacturer": null,
"model": null,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"offsetScalar": null,
"offsetXM": null,
"offsetYM": null,
"offsetZM": null,
"operationalConstraintActions": null,
"operationalConstraintIds": null,
"opticalDesign": null,
"ownerId": 0,
"parentOta": null,
"parentOtaId": null,
"serialNumber": null,
"telescopeId": null,
"telescopeUid": null,
"uid": "34ef4389-4256-44f0-9467-ce3f6b57d810"
}
],
"owner": null,
"ownerId": 0,
"publicLatitudeDeg": null,
"publicLongitudeDeg": null,
"radioBackendIds": null,
"radioBackends": [
{
"description": null,
"deviceType": "string",
"id": null,
"imageId": null,
"manufacturer": null,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"operationalConstraintActions": null,
"operationalConstraintIds": null,
"ownerId": 0,
"serialNumber": null,
"telescopeId": null,
"telescopeUid": null,
"uid": "f26b0f87-430b-4ef0-8768-8a732518254c"
}
],
"receiverIds": null,
"receivers": [
{
"attenuationMaxDb": null,
"attenuationMinDb": null,
"attenuationStepDb": null,
"availableNoiseDiodeLevels": 0,
"band": null,
"deviceType": "string",
"feeds": [
{
"feedBackendConnections": [
{
"id": 0,
"isActive": true,
"radioBackendId": 0,
"receiverFeedId": 0
}
],
"id": 0,
"isActive": true,
"offsetXArcsec": 10.12,
"offsetYArcsec": 10.12,
"receiverId": 0
}
],
"id": 0,
"imageId": null,
"isAvailable": true,
"localOscillatorMaxFrequencyMhz": null,
"localOscillatorMinFrequencyMhz": null,
"manufacturer": null,
"maxFrequencyMhz": 10.12,
"minFrequencyMhz": 10.12,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"operationalConstraintActions": null,
"operationalConstraintIds": null,
"ownerId": 0,
"polarization": "none",
"radioFilters": [
{
"id": 0,
"maxFrequencyMhz": 10.12,
"minFrequencyMhz": 10.12,
"name": null,
"receiverId": 0
}
],
"serialNumber": null,
"telescopeId": null,
"telescopeUid": null,
"temperatureSetpointK": null,
"temperatureSetpointToleranceK": null,
"uid": "36fc3349-70f4-4338-9362-a1910013be19"
}
],
"rotatorIds": null,
"rotators": [
{
"deviceType": "string",
"id": null,
"imageId": null,
"manufacturer": null,
"modelId": null,
"name": null,
"observatoryId": null,
"observatoryUid": null,
"operationalConstraintActions": null,
"operationalConstraintIds": null,
"ownerId": 0,
"serialNumber": null,
"telescopeId": null,
"telescopeUid": null,
"uid": "c27b7c82-50da-42ad-8a01-73b0702df168"
}
],
"shortName": null,
"slug": "string",
"uid": "bb16c580-441f-456d-9123-19109eba6fca"
}
}
],
"page": 0,
"pages": 0,
"size": 0,
"total": 0
}
Schema of the response body
{
"properties": {
"items": {
"items": {
"$ref": "#/components/schemas/ObservingPlan"
},
"title": "Items",
"type": "array"
},
"page": {
"minimum": 1.0,
"title": "Page",
"type": "integer"
},
"pages": {
"minimum": 0.0,
"title": "Pages",
"type": "integer"
},
"size": {
"minimum": 1.0,
"title": "Size",
"type": "integer"
},
"total": {
"minimum": 0.0,
"title": "Total",
"type": "integer"
}
},
"required": [
"items",
"total",
"page",
"size",
"pages"
],
"title": "Page[ObservingPlan]",
"type": "object"
}
GET /observations/{observation_id}/processing-settings¶
Get Observation Processing Settings
Description
The observation's processing-pipeline settings.
Returns both halves, because a settings UI needs both and one cannot be derived from the other:
override— exactly what is stored: only the fields the owner explicitly set (§4). This is what a modified-from-default indicator and a per-field reset are built on. Null means nothing has been overridden.effective— the override deep-merged onto platform defaults, which is what the pipeline will actually run under.
Reading requires only permission to view the observation; writing requires
modify_observation.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
{
"effective": {
"optical": {
"fieldCal": {
"catalogs": [
"string"
],
"maxSnr": null,
"maxStars": null,
"minSnr": 10.12,
"sourceMatchTol": 10.12,
"variableCheckTol": 10.12
},
"fieldCalSourcePolicy": {
"autoSatLevel": true,
"clipHi": 10.12,
"clipLo": 10.12,
"discardSaturated": 0,
"limit": null,
"maxEllipticity": 10.12,
"maxFwhm": 10.12,
"maxSources": 0,
"minFwhm": 10.12,
"satLevel": 10.12
},
"photometry": {
"a": null,
"aInPx": null,
"aOutPx": null,
"b": null,
"bOutPx": null,
"centroidRadius": 10.12,
"mode": "string",
"rejectBkgOutliers": true,
"theta": 10.12,
"thetaOutDeg": null
},
"photometrySourcePolicy": null,
"reduction": {
"masterMaxAgeSec": null
},
"solve": {
"allSkyFallback": true
},
"sourceDetection": {
"bkFilterSize": 0,
"bkSize": 10.12,
"centroid": true,
"clean": 10.12,
"deblend": true,
"deblendContrast": 10.12,
"deblendLevels": 0,
"downsample": 0,
"fwhm": 10.12,
"minPixels": 0,
"ratio": 10.12,
"theta": 10.12,
"threshold": 10.12
},
"stages": {
"fieldCalibration": true,
"photometry": true,
"reduction": true,
"wcsSolve": true
},
"wcsSourcePolicy": null
},
"radio": {},
"schemaVersion": 0
},
"override": null
}
Schema of the response body
{
"description": "What an observation's processing settings are, and what the owner chose.\n\nBoth halves, because a settings UI needs both and neither derives from the\nother. ``effective`` alone cannot say whether 97.5 was chosen or inherited —\nwhich is exactly the ambiguity sparse storage exists to remove (§4) — and\n``override`` alone cannot say what will run.",
"properties": {
"effective": {
"$ref": "#/components/schemas/ProcessingPipelineSettings-Output",
"description": "The override deep-merged onto platform defaults — what the pipeline will actually run under."
},
"override": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"description": "Exactly what is stored: only the fields the owner explicitly set. Null means nothing has been overridden and the observation tracks platform defaults. This is what a modified-from-default indicator and a per-field reset are built on."
}
},
"required": [
"effective"
],
"title": "ObservationProcessingSettings",
"type": "object"
}
PATCH /observations/{observation_id}/processing-settings¶
Update Observation Processing Settings
Description
Replace the observation's processing-settings override, and re-process.
The body is the WHOLE override, not a delta onto the stored one: what you send is what is stored. Resetting a field to the platform default therefore means omitting it, which keeps "what did the owner choose" answerable from the stored document alone — the property §4 exists to protect and that a delta-merge would destroy.
Stored SPARSELY: only the fields present in the request body. The typed
body is what puts this in OpenAPI and the TS SDK, but its
model_dump() would fill every unset field with today's defaults, which is
exactly the whole-document replacement §4 reverses. So the raw request JSON
is what is persisted, after being validated through the model.
Unknown keys are rejected with 422 and the offending paths (§7.3). A typo in
a settings payload that silently no-ops is indistinguishable, to the owner,
from a setting that does not work. This is checked against the raw body
because Pydantic has already dropped unknown keys by the time body is
parsed — and it is checked HERE rather than by putting extra="forbid" on
the models, which would apply to the read path too and turn a removed field
in an old stamped config into a runner crash.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Request body
{
"optical": {
"fieldCal": {
"catalogs": [
"string"
],
"maxSnr": null,
"maxStars": null,
"minSnr": 10.12,
"sourceMatchTol": 10.12,
"variableCheckTol": 10.12
},
"fieldCalSourcePolicy": {
"autoSatLevel": true,
"clipHi": 10.12,
"clipLo": 10.12,
"discardSaturated": 0,
"limit": null,
"maxEllipticity": 10.12,
"maxFwhm": 10.12,
"maxSources": 0,
"minFwhm": 10.12,
"satLevel": 10.12
},
"photometry": {
"a": null,
"aInPx": null,
"aOutPx": null,
"b": null,
"bOutPx": null,
"centroidRadius": 10.12,
"mode": "string",
"rejectBkgOutliers": true,
"theta": 10.12,
"thetaOutDeg": null
},
"photometrySourcePolicy": null,
"reduction": {
"masterMaxAgeSec": null
},
"solve": {
"allSkyFallback": true
},
"sourceDetection": {
"bkFilterSize": 0,
"bkSize": 10.12,
"centroid": true,
"clean": 10.12,
"deblend": true,
"deblendContrast": 10.12,
"deblendLevels": 0,
"downsample": 0,
"fwhm": 10.12,
"minPixels": 0,
"ratio": 10.12,
"theta": 10.12,
"threshold": 10.12
},
"stages": {
"fieldCalibration": true,
"photometry": true,
"reduction": true,
"wcsSolve": true
},
"wcsSourcePolicy": null
},
"radio": {},
"schemaVersion": 0
}
Schema of the request body
{
"description": "One owner override document for an observation's processing pipeline.\n\n``Observation.processing_settings`` holds a SPARSE override of this whole\ndocument. An optical-only owner stores ``{\"optical\": {...}}``.\n\nOne document rather than a column (or a document) per instrument family: an\nobservation can genuinely contain assets whose roles span both families, and\na mixed observation should be edited in one editor. The alternative pushes\nthe family split into the API, the UI routing and the permission checks to\nsave a key in a JSON document.\n\nThe unified document does NOT mean a unified stamp. A run records the hash\nof ITS asset's family section only, so editing radio settings cannot move an\noptical run's hash and re-process optical assets. See §5.2.",
"properties": {
"optical": {
"$ref": "#/components/schemas/OwnerOpticalProcessingSettings"
},
"radio": {
"$ref": "#/components/schemas/OwnerRadioProcessingSettings"
},
"schemaVersion": {
"default": 1,
"description": "Version of this document's shape, read by the migrator chain.",
"type": "integer"
}
},
"title": "ProcessingPipelineSettings",
"type": "object"
}
Responses
{
"effective": {
"optical": {
"fieldCal": {
"catalogs": [
"string"
],
"maxSnr": null,
"maxStars": null,
"minSnr": 10.12,
"sourceMatchTol": 10.12,
"variableCheckTol": 10.12
},
"fieldCalSourcePolicy": {
"autoSatLevel": true,
"clipHi": 10.12,
"clipLo": 10.12,
"discardSaturated": 0,
"limit": null,
"maxEllipticity": 10.12,
"maxFwhm": 10.12,
"maxSources": 0,
"minFwhm": 10.12,
"satLevel": 10.12
},
"photometry": {
"a": null,
"aInPx": null,
"aOutPx": null,
"b": null,
"bOutPx": null,
"centroidRadius": 10.12,
"mode": "string",
"rejectBkgOutliers": true,
"theta": 10.12,
"thetaOutDeg": null
},
"photometrySourcePolicy": null,
"reduction": {
"masterMaxAgeSec": null
},
"solve": {
"allSkyFallback": true
},
"sourceDetection": {
"bkFilterSize": 0,
"bkSize": 10.12,
"centroid": true,
"clean": 10.12,
"deblend": true,
"deblendContrast": 10.12,
"deblendLevels": 0,
"downsample": 0,
"fwhm": 10.12,
"minPixels": 0,
"ratio": 10.12,
"theta": 10.12,
"threshold": 10.12
},
"stages": {
"fieldCalibration": true,
"photometry": true,
"reduction": true,
"wcsSolve": true
},
"wcsSourcePolicy": null
},
"radio": {},
"schemaVersion": 0
},
"override": null
}
Schema of the response body
{
"description": "What an observation's processing settings are, and what the owner chose.\n\nBoth halves, because a settings UI needs both and neither derives from the\nother. ``effective`` alone cannot say whether 97.5 was chosen or inherited —\nwhich is exactly the ambiguity sparse storage exists to remove (§4) — and\n``override`` alone cannot say what will run.",
"properties": {
"effective": {
"$ref": "#/components/schemas/ProcessingPipelineSettings-Output",
"description": "The override deep-merged onto platform defaults — what the pipeline will actually run under."
},
"override": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"description": "Exactly what is stored: only the fields the owner explicitly set. Null means nothing has been overridden and the observation tracks platform defaults. This is what a modified-from-default indicator and a per-field reset are built on."
}
},
"required": [
"effective"
],
"title": "ObservationProcessingSettings",
"type": "object"
}
POST /observations/{observation_id}/reprocess¶
Reprocess Observation
Description
Re-process this observation's assets under the current configuration.
The explicit half of the reprocess-admission decision (PIPELINE_CLEANUP_DESIGN.md §8): a runner-version bump does NOT re-run the archive — re-processing existing results happens when someone who can edit the observation asks for it, here, or implicitly by saving a settings change. That keeps the cost of a platform change proportional to what is actually looked at, and it is what makes a tight iterate loop possible: change a default, re-process a handful of known observations, compare.
Same mechanism as a settings save — every capture asset is marked dirty and the scheduler drains the flag with a short debounce — so "save settings" and "reprocess now" cannot behave differently by accident. Derived assets are never re-processed (they are outputs); the scheduler's own eligibility filters enforce that and everything else (transferred file, valid role), which is why the receipt counts assets MARKED rather than runs created.
Requires modify permission: a re-run replaces the observation's processed products (§9.1 supersession), which is an editor's call, not a viewer's.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
Schema of the response body
{
"description": "Receipt for an explicit re-process request.\n\nThe count is assets *marked*, not runs created: the scheduler drains the\ndirty flag on its own cadence (with the same short debounce a settings save\ngets), so the work happens moments later, not inside this request.",
"properties": {
"assetsMarked": {
"description": "How many of the observation's assets were marked for re-processing.",
"type": "integer"
}
},
"required": [
"assetsMarked"
],
"title": "ObservationReprocessReceipt",
"type": "object"
}
GET /observations/{observation_id}/requests¶
Read Observation Requests
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
sortBy |
query | No | |||
token |
query | No |
Request body
Schema of the request body
{
"properties": {
"filterObservationId": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Filterobservationid"
},
"id": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Id"
},
"isDeleted": {
"anyOf": [
{
"items": {
"type": "boolean"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Isdeleted"
},
"status": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/ObservationRequestStatus"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Status"
}
},
"title": "Body_read_observation_requests_observations__observation_id__requests_get",
"type": "object"
}
Responses
Schema of the response body
{
"properties": {
"items": {
"items": {
"discriminator": {
"mapping": {
"optical_imaging": "#/components/schemas/OpticalImagingRequestSummary",
"optical_imaging_bias_calibration": "#/components/schemas/OpticalImagingBiasCalibrationRequestSummary",
"optical_imaging_dark_calibration": "#/components/schemas/OpticalImagingDarkCalibrationRequestSummary",
"optical_imaging_flat_calibration": "#/components/schemas/OpticalImagingFlatCalibrationRequestSummary",
"radio_mapping": "#/components/schemas/RadioMappingRequestSummary",
"radio_tracking": "#/components/schemas/RadioTrackingRequestSummary"
},
"propertyName": "requestType"
},
"oneOf": [
{
"$ref": "#/components/schemas/OpticalImagingRequestSummary"
},
{
"$ref": "#/components/schemas/OpticalImagingBiasCalibrationRequestSummary"
},
{
"$ref": "#/components/schemas/OpticalImagingDarkCalibrationRequestSummary"
},
{
"$ref": "#/components/schemas/OpticalImagingFlatCalibrationRequestSummary"
},
{
"$ref": "#/components/schemas/RadioTrackingRequestSummary"
},
{
"$ref": "#/components/schemas/RadioMappingRequestSummary"
}
]
},
"title": "Items",
"type": "array"
},
"page": {
"minimum": 1.0,
"title": "Page",
"type": "integer"
},
"pages": {
"minimum": 0.0,
"title": "Pages",
"type": "integer"
},
"size": {
"minimum": 1.0,
"title": "Size",
"type": "integer"
},
"total": {
"minimum": 0.0,
"title": "Total",
"type": "integer"
}
},
"required": [
"items",
"total",
"page",
"size",
"pages"
],
"title": "Page[Annotated[Union[OpticalImagingRequestSummary, OpticalImagingBiasCalibrationRequestSummary, OpticalImagingDarkCalibrationRequestSummary, OpticalImagingFlatCalibrationRequestSummary, RadioTrackingRequestSummary, RadioMappingRequestSummary], FieldInfo(annotation=NoneType, required=True, discriminator='request_type')]]",
"type": "object"
}
GET /observations/{observation_id}/requests/{request_id}¶
Read Observation Request
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
request_id |
path | integer | No | ||
token |
query | No |
Responses
Schema of the response body
{
"discriminator": {
"mapping": {
"optical_imaging": "#/components/schemas/OpticalImagingRequest",
"optical_imaging_bias_calibration": "#/components/schemas/OpticalImagingBiasCalibrationRequest",
"optical_imaging_dark_calibration": "#/components/schemas/OpticalImagingDarkCalibrationRequest",
"optical_imaging_flat_calibration": "#/components/schemas/OpticalImagingFlatCalibrationRequest",
"radio_mapping": "#/components/schemas/RadioMappingRequest",
"radio_tracking": "#/components/schemas/RadioTrackingRequest"
},
"propertyName": "requestType"
},
"oneOf": [
{
"$ref": "#/components/schemas/OpticalImagingRequest"
},
{
"$ref": "#/components/schemas/OpticalImagingBiasCalibrationRequest"
},
{
"$ref": "#/components/schemas/OpticalImagingDarkCalibrationRequest"
},
{
"$ref": "#/components/schemas/OpticalImagingFlatCalibrationRequest"
},
{
"$ref": "#/components/schemas/RadioTrackingRequest"
},
{
"$ref": "#/components/schemas/RadioMappingRequest"
}
],
"title": "Response Read Observation Request Observations Observation Id Requests Request Id Get"
}
GET /observations/{observation_id}/requests/{request_id}/detail¶
Read Observation Request Detail
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
request_id |
path | integer | No | ||
token |
query | No |
Responses
Schema of the response body
{
"discriminator": {
"mapping": {
"optical_imaging": "#/components/schemas/OpticalImagingRequestDetail",
"optical_imaging_bias_calibration": "#/components/schemas/OpticalImagingBiasCalibrationRequestDetail",
"optical_imaging_dark_calibration": "#/components/schemas/OpticalImagingDarkCalibrationRequestDetail",
"optical_imaging_flat_calibration": "#/components/schemas/OpticalImagingFlatCalibrationRequestDetail",
"radio_mapping": "#/components/schemas/RadioMappingRequestDetail",
"radio_tracking": "#/components/schemas/RadioTrackingRequestDetail"
},
"propertyName": "requestType"
},
"oneOf": [
{
"$ref": "#/components/schemas/OpticalImagingRequestDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingBiasCalibrationRequestDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingDarkCalibrationRequestDetail"
},
{
"$ref": "#/components/schemas/OpticalImagingFlatCalibrationRequestDetail"
},
{
"$ref": "#/components/schemas/RadioTrackingRequestDetail"
},
{
"$ref": "#/components/schemas/RadioMappingRequestDetail"
}
],
"title": "Response Read Observation Request Detail Observations Observation Id Requests Request Id Detail Get"
}
GET /observations/{observation_id}/requests/{request_id}/observing-plans-preview¶
Get Observing Request Plan Preview
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
instrument_ids |
query | array | No | List of instrument IDs to generate observing plans for | |
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
request_id |
path | integer | No | ||
token |
query | No |
Responses
Schema of the response body
{
"properties": {
"items": {
"items": {
"discriminator": {
"mapping": {
"optical_imaging": "#/components/schemas/OpticalImagingRequestPlan",
"optical_imaging_bias_calibration": "#/components/schemas/OpticalImagingBiasCalibrationRequestPlan",
"optical_imaging_dark_calibration": "#/components/schemas/OpticalImagingDarkCalibrationRequestPlan",
"optical_imaging_flat_calibration": "#/components/schemas/OpticalImagingFlatCalibrationRequestPlan",
"radio_mapping": "#/components/schemas/RadioMappingRequestPlan",
"radio_tracking": "#/components/schemas/RadioTrackingRequestPlan"
},
"propertyName": "requestType"
},
"oneOf": [
{
"$ref": "#/components/schemas/OpticalImagingRequestPlan"
},
{
"$ref": "#/components/schemas/OpticalImagingBiasCalibrationRequestPlan"
},
{
"$ref": "#/components/schemas/OpticalImagingDarkCalibrationRequestPlan"
},
{
"$ref": "#/components/schemas/OpticalImagingFlatCalibrationRequestPlan"
},
{
"$ref": "#/components/schemas/RadioTrackingRequestPlan"
},
{
"$ref": "#/components/schemas/RadioMappingRequestPlan"
}
]
},
"title": "Items",
"type": "array"
},
"page": {
"minimum": 1.0,
"title": "Page",
"type": "integer"
},
"pages": {
"minimum": 0.0,
"title": "Pages",
"type": "integer"
},
"size": {
"minimum": 1.0,
"title": "Size",
"type": "integer"
},
"total": {
"minimum": 0.0,
"title": "Total",
"type": "integer"
}
},
"required": [
"items",
"total",
"page",
"size",
"pages"
],
"title": "Page[Annotated[Union[OpticalImagingRequestPlan, OpticalImagingBiasCalibrationRequestPlan, OpticalImagingDarkCalibrationRequestPlan, OpticalImagingFlatCalibrationRequestPlan, RadioTrackingRequestPlan, RadioMappingRequestPlan], FieldInfo(annotation=NoneType, required=True, discriminator='request_type')]]",
"type": "object"
}
GET /observations/{observation_id}/results¶
Read Observation Results
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
page |
query | integer | 1 | No | |
size |
query | integer | 25 | No | |
token |
query | No |
Responses
{
"items": [
{
"assetsRevision": 0,
"copiesMode": "single",
"copyIndex": 0,
"currentProcessingRun": null,
"currentProcessingRunId": null,
"dataProductStatus": "PENDING",
"dirtyFromRevision": null,
"epochIndex": 0,
"fulfilledOn": null,
"fulfillmentStatus": "pending_dispatch",
"id": 0,
"instrumentId": null,
"lastBuiltRevision": null,
"nextEligibleRunAt": null,
"notBefore": null,
"observationId": 0,
"requestId": 0,
"sampleIndex": 0,
"tasks": [
null
],
"uid": "00131a39-a3da-4061-96ef-8a09d433d5f1"
}
],
"page": 0,
"pages": 0,
"size": 0,
"total": 0
}
Schema of the response body
{
"properties": {
"items": {
"items": {
"$ref": "#/components/schemas/ObservationResultDetail"
},
"title": "Items",
"type": "array"
},
"page": {
"minimum": 1.0,
"title": "Page",
"type": "integer"
},
"pages": {
"minimum": 0.0,
"title": "Pages",
"type": "integer"
},
"size": {
"minimum": 1.0,
"title": "Size",
"type": "integer"
},
"total": {
"minimum": 0.0,
"title": "Total",
"type": "integer"
}
},
"required": [
"items",
"total",
"page",
"size",
"pages"
],
"title": "Page[ObservationResultDetail]",
"type": "object"
}
GET /observations/{observation_id}/results/{result_uid}¶
Read Observation Result
Description
Fetch a single result deliverable by uid.
Backs the result page (…/observations/:id/results/:resultUid —
OBSERVATION_RESULT_SURFACES_DESIGN.md §7): same shape as one list item,
so the page and the results list share their flattening. uid-addressed
(never the int id), scoped to the observation so a uid from another
observation 404s rather than leaking across permission boundaries.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
result_uid |
path | string | No | ||
token |
query | No |
Responses
{
"assetsRevision": 0,
"copiesMode": "single",
"copyIndex": 0,
"currentProcessingRun": null,
"currentProcessingRunId": null,
"dataProductStatus": "PENDING",
"dirtyFromRevision": null,
"epochIndex": 0,
"fulfilledOn": null,
"fulfillmentStatus": "pending_dispatch",
"id": 0,
"instrumentId": null,
"lastBuiltRevision": null,
"nextEligibleRunAt": null,
"notBefore": null,
"observationId": 0,
"requestId": 0,
"sampleIndex": 0,
"tasks": [
null
],
"uid": "4b02e030-4690-4d9c-862f-1a0182b33a21"
}
Schema of the response body
{
"properties": {
"assetsRevision": {
"type": "integer"
},
"copiesMode": {
"$ref": "#/components/schemas/CopiesMode"
},
"copyIndex": {
"type": "integer"
},
"currentProcessingRun": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationResultProcessingRun"
},
{
"type": "null"
}
]
},
"currentProcessingRunId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"dataProductStatus": {
"$ref": "#/components/schemas/DataProductStatus"
},
"dirtyFromRevision": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"epochIndex": {
"type": "integer"
},
"fulfilledOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"fulfillmentStatus": {
"$ref": "#/components/schemas/ResultFulfillmentStatus"
},
"id": {
"type": "integer"
},
"instrumentId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"lastBuiltRevision": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"nextEligibleRunAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"notBefore": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"observationId": {
"type": "integer"
},
"requestId": {
"type": "integer"
},
"sampleIndex": {
"type": "integer"
},
"tasks": {
"default": [],
"items": {
"discriminator": {
"mapping": {
"optical_imaging": "#/components/schemas/OpticalImagingTask",
"optical_imaging_bias_calibration": "#/components/schemas/OpticalImagingBiasCalibrationTask",
"optical_imaging_dark_calibration": "#/components/schemas/OpticalImagingDarkCalibrationTask",
"optical_imaging_flat_calibration": "#/components/schemas/OpticalImagingFlatCalibrationTask",
"radio_mapping": "#/components/schemas/RadioMappingTask",
"radio_tracking": "#/components/schemas/RadioTrackingTask"
},
"propertyName": "taskType"
},
"oneOf": [
{
"$ref": "#/components/schemas/OpticalImagingTask"
},
{
"$ref": "#/components/schemas/OpticalImagingBiasCalibrationTask"
},
{
"$ref": "#/components/schemas/OpticalImagingDarkCalibrationTask"
},
{
"$ref": "#/components/schemas/OpticalImagingFlatCalibrationTask"
},
{
"$ref": "#/components/schemas/RadioTrackingTask"
},
{
"$ref": "#/components/schemas/RadioMappingTask"
}
]
},
"type": "array"
},
"uid": {
"format": "uuid",
"type": "string"
}
},
"required": [
"id",
"uid",
"observationId",
"requestId",
"epochIndex",
"sampleIndex",
"copyIndex",
"copiesMode",
"fulfillmentStatus",
"dataProductStatus",
"assetsRevision"
],
"title": "ObservationResultDetail",
"type": "object"
}
POST /observations/{observation_id}/results/{result_uid}/reprocess¶
Reprocess Observation Result
Description
Re-process ONE result's frames under the current configuration.
The result page's scoped sibling of reprocess_observation
(OBSERVATION_RESULT_SURFACES_DESIGN.md §7: reprocess controls live on the
result page): only the assets captured for this deliverable's tasks are
marked dirty, so re-examining one epoch/sample doesn't re-run a
hundred-cell observation. Everything else is identical — same dirty flag,
same debounce, same scheduler eligibility — and when the reruns land,
their contributions mark the result dirty again, so the deliverable
rebuilds without a separate trigger.
Requires modify permission, like the observation-wide action: a re-run replaces processed products (§9.1 supersession).
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
result_uid |
path | string | No | ||
token |
query | No |
Responses
Schema of the response body
{
"description": "Receipt for an explicit re-process request.\n\nThe count is assets *marked*, not runs created: the scheduler drains the\ndirty flag on its own cadence (with the same short debounce a settings save\ngets), so the work happens moments later, not inside this request.",
"properties": {
"assetsMarked": {
"description": "How many of the observation's assets were marked for re-processing.",
"type": "integer"
}
},
"required": [
"assetsMarked"
],
"title": "ObservationReprocessReceipt",
"type": "object"
}
GET /observations/{observation_id}/spec¶
Export Observation Spec
Description
Export a live observation as a portable, versioned ObservationSpec envelope (C3) — backs the editor's "export spec" panel.
Read-only; strips identity / ownership / funding / lifecycle. The
include_* query flags let the caller share a subset (e.g. just the
requests + configuration without a target).
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
include_configuration |
query | boolean | True | No | |
include_requests |
query | boolean | True | No | |
include_target |
query | boolean | True | No | |
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Responses
Schema of the response body
{
"description": "`{schemaKind, schemaVersion, data}` wrapper around a versioned payload.",
"properties": {
"data": {
"additionalProperties": true,
"type": "object"
},
"schemaKind": {
"type": "string"
},
"schemaVersion": {
"type": "integer"
}
},
"required": [
"schemaKind",
"schemaVersion",
"data"
],
"title": "SpecEnvelope",
"type": "object"
}
GET /observations/{observation_id}/target¶
Read Observation Target
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
sortBy |
query | No | |||
token |
query | No |
Request body
Schema of the request body
{
"properties": {
"id": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Id"
},
"isDeleted": {
"anyOf": [
{
"items": {
"type": "boolean"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Isdeleted"
},
"status": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/TargetStatus"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Status"
}
},
"title": "Body_read_observation_target_observations__observation_id__target_get",
"type": "object"
}
Responses
POST /observations/{observation_id}/target¶
Post Observation Target
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation_id |
path | string | No | Observation uid (preferred) or legacy integer id | |
token |
query | No |
Request body
{
"isDeleted": null,
"name": "string",
"position": null,
"positionOffsetFrame": "icrs_tangent",
"positionOffsetReferenceTime": null,
"positionOffsetXDeg": 10.12,
"positionOffsetYDeg": 10.12,
"status": null
}
Schema of the request body
{
"description": "Base class for creating targets.",
"properties": {
"isDeleted": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": false
},
"name": {
"type": "string"
},
"position": {
"anyOf": [
{
"discriminator": {
"mapping": {
"catalog": "#/components/schemas/CatalogPositionCreate",
"ephemeral": "#/components/schemas/EphemeralPositionCreate",
"fixed": "#/components/schemas/FixedPositionCreate",
"orbital": "#/components/schemas/OrbitalPositionCreate"
},
"propertyName": "positionType"
},
"oneOf": [
{
"$ref": "#/components/schemas/FixedPositionCreate"
},
{
"$ref": "#/components/schemas/OrbitalPositionCreate"
},
{
"$ref": "#/components/schemas/EphemeralPositionCreate"
},
{
"$ref": "#/components/schemas/CatalogPositionCreate"
}
]
},
{
"type": "null"
}
]
},
"positionOffsetFrame": {
"$ref": "#/components/schemas/ObservationPositionOffsetFrame",
"default": "icrs_tangent"
},
"positionOffsetReferenceTime": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"positionOffsetXDeg": {
"default": 0,
"type": "number"
},
"positionOffsetYDeg": {
"default": 0,
"type": "number"
},
"status": {
"anyOf": [
{
"$ref": "#/components/schemas/TargetStatus"
},
{
"type": "null"
}
],
"default": "active"
}
},
"required": [
"name"
],
"title": "TargetCreate",
"type": "object"
}
Responses
{
"id": 0,
"isDeleted": true,
"name": "string",
"positionId": null,
"positionOffsetFrame": "icrs_tangent",
"positionOffsetReferenceTime": null,
"positionOffsetXDeg": 10.12,
"positionOffsetYDeg": 10.12,
"status": "active",
"targetPosition": null
}
Schema of the response body
{
"properties": {
"id": {
"description": "Primary key for the Target",
"type": "integer"
},
"isDeleted": {
"description": "Flag indicating if the target is deleted",
"type": "boolean"
},
"name": {
"description": "Name of the Target",
"type": "string"
},
"positionId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Primary key of the target's position. Resolved through the graph bundle's `target_positions` map."
},
"positionOffsetFrame": {
"$ref": "#/components/schemas/ObservationPositionOffsetFrame",
"default": "icrs_tangent"
},
"positionOffsetReferenceTime": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"positionOffsetXDeg": {
"default": 0,
"type": "number"
},
"positionOffsetYDeg": {
"default": 0,
"type": "number"
},
"status": {
"$ref": "#/components/schemas/TargetStatus",
"description": "Status of the target"
},
"targetPosition": {
"anyOf": [
{
"discriminator": {
"mapping": {
"catalog": "#/components/schemas/CatalogPosition",
"ephemeral": "#/components/schemas/EphemeralPosition",
"fixed": "#/components/schemas/FixedPosition",
"orbital": "#/components/schemas/OrbitalPosition"
},
"propertyName": "positionType"
},
"oneOf": [
{
"$ref": "#/components/schemas/FixedPosition"
},
{
"$ref": "#/components/schemas/OrbitalPosition"
},
{
"$ref": "#/components/schemas/EphemeralPosition"
},
{
"$ref": "#/components/schemas/CatalogPosition"
}
]
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"status",
"isDeleted",
"name"
],
"title": "Target",
"type": "object"
}
GET /observations:lookup¶
Lookup Observation
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
observation |
query | No | |||
owner |
query | No | |||
token |
query | No |
Responses
{
"affinityHandoffAfterSec": null,
"affinityMigrateAt": "frame",
"cadenceCalendarUnit": null,
"cadenceGapSec": null,
"cadenceKind": "asap",
"cadenceLevel": null,
"cadencePeriodSec": null,
"cancelOn": null,
"cohesionLevel": null,
"completedOn": null,
"coordinationKind": null,
"coordinationStartToleranceSec": null,
"copiesCount": null,
"copiesMode": "single",
"coverAssetUid": null,
"coverPreviewFileId": null,
"coverThumbnailFileId": null,
"createdOn": "2022-04-13T15:42:05.901Z",
"creator": null,
"creatorId": 0,
"creatorUid": null,
"currentEpoch": 0,
"epochCount": 0,
"galleryItems": null,
"groupUid": null,
"id": 0,
"instrumentIds": null,
"instrumentMode": "none",
"interruptLowerPriority": true,
"interruptRecovery": "resume",
"isDeleted": true,
"isPublic": true,
"lastActivityOn": null,
"name": "string",
"observabilityLastUpdatedOn": null,
"observingGrantIds": null,
"observingGrants": null,
"opticalImagingConfiguration": null,
"owner": null,
"ownerId": 0,
"ownerUid": null,
"priority": 0,
"progressFraction": 10.12,
"radioMappingConfiguration": null,
"radioTrackingConfiguration": null,
"renderSettings": null,
"requestTypes": [
"optical_imaging"
],
"sampleOrdering": "request_major",
"startAfter": null,
"status": "active",
"target": null,
"targetId": null,
"targetUid": null,
"uid": "320160df-a3ad-4896-a16c-65b8ee28dbde",
"updatedOn": "2022-04-13T15:42:05.901Z"
}
Schema of the response body
{
"properties": {
"affinityHandoffAfterSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"affinityMigrateAt": {
"$ref": "#/components/schemas/ScheduleRung",
"default": "observation"
},
"cadenceCalendarUnit": {
"anyOf": [
{
"$ref": "#/components/schemas/CalendarUnit"
},
{
"type": "null"
}
]
},
"cadenceGapSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"cadenceKind": {
"$ref": "#/components/schemas/CadenceKind",
"default": "asap"
},
"cadenceLevel": {
"anyOf": [
{
"$ref": "#/components/schemas/ScheduleRung"
},
{
"type": "null"
}
]
},
"cadencePeriodSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"cancelOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"cohesionLevel": {
"$ref": "#/components/schemas/ScheduleRung",
"default": "epoch"
},
"completedOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"coordinationKind": {
"anyOf": [
{
"$ref": "#/components/schemas/CoordinationKind"
},
{
"type": "null"
}
]
},
"coordinationStartToleranceSec": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"copiesCount": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"copiesMode": {
"$ref": "#/components/schemas/CopiesMode",
"default": "single"
},
"coverAssetUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"coverPreviewFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"coverThumbnailFileId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"createdOn": {
"description": "Creation timestamp.",
"format": "date-time",
"type": "string"
},
"creator": {
"anyOf": [
{
"discriminator": {
"mapping": {
"organization": "#/components/schemas/Organization",
"user": "#/components/schemas/User"
},
"propertyName": "entityType"
},
"oneOf": [
{
"$ref": "#/components/schemas/User"
},
{
"$ref": "#/components/schemas/Organization"
}
]
},
{
"type": "null"
}
]
},
"creatorId": {
"description": "User who created it.",
"type": "integer"
},
"creatorUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"currentEpoch": {
"default": 0,
"type": "integer"
},
"epochCount": {
"default": 1,
"description": "Number of visits. 0 = repeat indefinitely.",
"type": "integer"
},
"galleryItems": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/ObservationGalleryItem"
},
"type": "array"
},
{
"type": "null"
}
]
},
"groupUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"id": {
"description": "Unique identifier of the observation.",
"type": "integer"
},
"instrumentIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"instrumentMode": {
"$ref": "#/components/schemas/InstrumentAccessMode"
},
"interruptLowerPriority": {
"description": "Interrupt lower priority.",
"type": "boolean"
},
"interruptRecovery": {
"$ref": "#/components/schemas/InterruptRecovery",
"default": "resume"
},
"isDeleted": {
"description": "Flag indicating if deleted.",
"type": "boolean"
},
"isPublic": {
"type": "boolean"
},
"lastActivityOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"name": {
"description": "Name of the observation.",
"type": "string"
},
"observabilityLastUpdatedOn": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"description": "Timestamp of the last observability refresh."
},
"observingGrantIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
]
},
"observingGrants": {
"anyOf": [
{
"items": {
"discriminator": {
"mapping": {
"externally_managed": "#/components/schemas/ExternallyManagedObservingGrantDetail",
"group": "#/components/schemas/GroupObservingGrantDetail",
"group_managed": "#/components/schemas/GroupManagedObservingGrantDetail",
"member": "#/components/schemas/MemberObservingGrantDetail",
"owner": "#/components/schemas/OwnerObservingGrantDetail"
},
"propertyName": "grantType"
},
"oneOf": [
{
"$ref": "#/components/schemas/MemberObservingGrantDetail"
},
{
"$ref": "#/components/schemas/GroupObservingGrantDetail"
},
{
"$ref": "#/components/schemas/OwnerObservingGrantDetail"
},
{
"$ref": "#/components/schemas/ExternallyManagedObservingGrantDetail"
},
{
"$ref": "#/components/schemas/GroupManagedObservingGrantDetail"
}
]
},
"type": "array"
},
{
"type": "null"
}
]
},
"opticalImagingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/OpticalImagingConfiguration-Output"
},
{
"type": "null"
}
]
},
"owner": {
"anyOf": [
{
"discriminator": {
"mapping": {
"organization": "#/components/schemas/Organization",
"user": "#/components/schemas/User"
},
"propertyName": "entityType"
},
"oneOf": [
{
"$ref": "#/components/schemas/User"
},
{
"$ref": "#/components/schemas/Organization"
}
]
},
{
"type": "null"
}
]
},
"ownerId": {
"description": "Entity that funds this observation.",
"type": "integer"
},
"ownerUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"priority": {
"type": "integer"
},
"progressFraction": {
"type": "number"
},
"radioMappingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/RadioMappingConfiguration"
},
{
"type": "null"
}
]
},
"radioTrackingConfiguration": {
"anyOf": [
{
"$ref": "#/components/schemas/RadioTrackingConfiguration"
},
{
"type": "null"
}
]
},
"renderSettings": {
"anyOf": [
{
"$ref": "#/components/schemas/RenderSettings"
},
{
"type": "null"
}
]
},
"requestTypes": {
"items": {
"$ref": "#/components/schemas/ObservationType"
},
"type": "array"
},
"sampleOrdering": {
"$ref": "#/components/schemas/SampleOrdering",
"default": "request_major"
},
"startAfter": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"status": {
"$ref": "#/components/schemas/ObservationStatus"
},
"target": {
"anyOf": [
{
"$ref": "#/components/schemas/Target"
},
{
"type": "null"
}
]
},
"targetId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Unique identifier of the target associated with the observation."
},
"targetUid": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
]
},
"uid": {
"format": "uuid",
"type": "string"
},
"updatedOn": {
"description": "Update timestamp.",
"format": "date-time",
"type": "string"
}
},
"required": [
"id",
"uid",
"targetId",
"status",
"isDeleted",
"createdOn",
"updatedOn",
"name",
"ownerId",
"creatorId",
"interruptLowerPriority",
"priority",
"progressFraction",
"isPublic",
"instrumentMode"
],
"title": "ObservationDetail",
"type": "object"
}
targets¶
GET /targets¶
Read Targets
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
id |
query | No | |||
is_deleted |
query | No | |||
isDeleted |
query | No | |||
sort_by |
query | No | |||
sortBy |
query | No | |||
status |
query | No | |||
token |
query | No |
Responses
{
"items": [
{
"id": 0,
"isDeleted": true,
"name": "string",
"positionId": null,
"positionOffsetFrame": "icrs_tangent",
"positionOffsetReferenceTime": null,
"positionOffsetXDeg": 10.12,
"positionOffsetYDeg": 10.12,
"status": "active",
"targetPosition": null
}
],
"page": 0,
"pages": 0,
"size": 0,
"total": 0
}
Schema of the response body
{
"properties": {
"items": {
"items": {
"$ref": "#/components/schemas/Target"
},
"title": "Items",
"type": "array"
},
"page": {
"minimum": 1.0,
"title": "Page",
"type": "integer"
},
"pages": {
"minimum": 0.0,
"title": "Pages",
"type": "integer"
},
"size": {
"minimum": 1.0,
"title": "Size",
"type": "integer"
},
"total": {
"minimum": 0.0,
"title": "Total",
"type": "integer"
}
},
"required": [
"items",
"total",
"page",
"size",
"pages"
],
"title": "Page[Target]",
"type": "object"
}
POST /targets¶
Create Target
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
token |
query | No |
Request body
{
"isDeleted": null,
"name": "string",
"position": null,
"positionOffsetFrame": "icrs_tangent",
"positionOffsetReferenceTime": null,
"positionOffsetXDeg": 10.12,
"positionOffsetYDeg": 10.12,
"status": null
}
Schema of the request body
{
"description": "Base class for creating targets.",
"properties": {
"isDeleted": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": false
},
"name": {
"type": "string"
},
"position": {
"anyOf": [
{
"discriminator": {
"mapping": {
"catalog": "#/components/schemas/CatalogPositionCreate",
"ephemeral": "#/components/schemas/EphemeralPositionCreate",
"fixed": "#/components/schemas/FixedPositionCreate",
"orbital": "#/components/schemas/OrbitalPositionCreate"
},
"propertyName": "positionType"
},
"oneOf": [
{
"$ref": "#/components/schemas/FixedPositionCreate"
},
{
"$ref": "#/components/schemas/OrbitalPositionCreate"
},
{
"$ref": "#/components/schemas/EphemeralPositionCreate"
},
{
"$ref": "#/components/schemas/CatalogPositionCreate"
}
]
},
{
"type": "null"
}
]
},
"positionOffsetFrame": {
"$ref": "#/components/schemas/ObservationPositionOffsetFrame",
"default": "icrs_tangent"
},
"positionOffsetReferenceTime": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"positionOffsetXDeg": {
"default": 0,
"type": "number"
},
"positionOffsetYDeg": {
"default": 0,
"type": "number"
},
"status": {
"anyOf": [
{
"$ref": "#/components/schemas/TargetStatus"
},
{
"type": "null"
}
],
"default": "active"
}
},
"required": [
"name"
],
"title": "TargetCreate",
"type": "object"
}
Responses
{
"id": 0,
"isDeleted": true,
"name": "string",
"positionId": null,
"positionOffsetFrame": "icrs_tangent",
"positionOffsetReferenceTime": null,
"positionOffsetXDeg": 10.12,
"positionOffsetYDeg": 10.12,
"status": "active",
"targetPosition": null
}
Schema of the response body
{
"properties": {
"id": {
"description": "Primary key for the Target",
"type": "integer"
},
"isDeleted": {
"description": "Flag indicating if the target is deleted",
"type": "boolean"
},
"name": {
"description": "Name of the Target",
"type": "string"
},
"positionId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Primary key of the target's position. Resolved through the graph bundle's `target_positions` map."
},
"positionOffsetFrame": {
"$ref": "#/components/schemas/ObservationPositionOffsetFrame",
"default": "icrs_tangent"
},
"positionOffsetReferenceTime": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"positionOffsetXDeg": {
"default": 0,
"type": "number"
},
"positionOffsetYDeg": {
"default": 0,
"type": "number"
},
"status": {
"$ref": "#/components/schemas/TargetStatus",
"description": "Status of the target"
},
"targetPosition": {
"anyOf": [
{
"discriminator": {
"mapping": {
"catalog": "#/components/schemas/CatalogPosition",
"ephemeral": "#/components/schemas/EphemeralPosition",
"fixed": "#/components/schemas/FixedPosition",
"orbital": "#/components/schemas/OrbitalPosition"
},
"propertyName": "positionType"
},
"oneOf": [
{
"$ref": "#/components/schemas/FixedPosition"
},
{
"$ref": "#/components/schemas/OrbitalPosition"
},
{
"$ref": "#/components/schemas/EphemeralPosition"
},
{
"$ref": "#/components/schemas/CatalogPosition"
}
]
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"status",
"isDeleted",
"name"
],
"title": "Target",
"type": "object"
}
DELETE /targets/{target_id}¶
Delete Target
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
target_id |
path | integer | No | ||
token |
query | No |
Responses
GET /targets/{target_id}¶
Read Target
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
target_id |
path | integer | No | ||
token |
query | No |
Responses
{
"id": 0,
"isDeleted": true,
"name": "string",
"positionId": null,
"positionOffsetFrame": "icrs_tangent",
"positionOffsetReferenceTime": null,
"positionOffsetXDeg": 10.12,
"positionOffsetYDeg": 10.12,
"status": "active",
"targetPosition": null
}
Schema of the response body
{
"properties": {
"id": {
"description": "Primary key for the Target",
"type": "integer"
},
"isDeleted": {
"description": "Flag indicating if the target is deleted",
"type": "boolean"
},
"name": {
"description": "Name of the Target",
"type": "string"
},
"positionId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Primary key of the target's position. Resolved through the graph bundle's `target_positions` map."
},
"positionOffsetFrame": {
"$ref": "#/components/schemas/ObservationPositionOffsetFrame",
"default": "icrs_tangent"
},
"positionOffsetReferenceTime": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"positionOffsetXDeg": {
"default": 0,
"type": "number"
},
"positionOffsetYDeg": {
"default": 0,
"type": "number"
},
"status": {
"$ref": "#/components/schemas/TargetStatus",
"description": "Status of the target"
},
"targetPosition": {
"anyOf": [
{
"discriminator": {
"mapping": {
"catalog": "#/components/schemas/CatalogPosition",
"ephemeral": "#/components/schemas/EphemeralPosition",
"fixed": "#/components/schemas/FixedPosition",
"orbital": "#/components/schemas/OrbitalPosition"
},
"propertyName": "positionType"
},
"oneOf": [
{
"$ref": "#/components/schemas/FixedPosition"
},
{
"$ref": "#/components/schemas/OrbitalPosition"
},
{
"$ref": "#/components/schemas/EphemeralPosition"
},
{
"$ref": "#/components/schemas/CatalogPosition"
}
]
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"status",
"isDeleted",
"name"
],
"title": "Target",
"type": "object"
}
PATCH /targets/{target_id}¶
Update Target
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
target_id |
path | integer | No | ||
token |
query | No |
Request body
{
"isDeleted": null,
"name": null,
"position": null,
"positionOffsetFrame": null,
"positionOffsetReferenceTime": null,
"positionOffsetXDeg": null,
"positionOffsetYDeg": null,
"status": null
}
Schema of the request body
{
"description": "Base class for updating targets.",
"properties": {
"isDeleted": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"position": {
"anyOf": [
{
"discriminator": {
"mapping": {
"catalog": "#/components/schemas/CatalogPositionUpdate",
"ephemeral": "#/components/schemas/EphemeralPositionUpdate",
"fixed": "#/components/schemas/FixedPositionUpdate",
"orbital": "#/components/schemas/OrbitalPositionUpdate"
},
"propertyName": "positionType"
},
"oneOf": [
{
"$ref": "#/components/schemas/FixedPositionUpdate"
},
{
"$ref": "#/components/schemas/OrbitalPositionUpdate"
},
{
"$ref": "#/components/schemas/EphemeralPositionUpdate"
},
{
"$ref": "#/components/schemas/CatalogPositionUpdate"
}
]
},
{
"type": "null"
}
]
},
"positionOffsetFrame": {
"anyOf": [
{
"$ref": "#/components/schemas/ObservationPositionOffsetFrame"
},
{
"type": "null"
}
]
},
"positionOffsetReferenceTime": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"positionOffsetXDeg": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"positionOffsetYDeg": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"status": {
"anyOf": [
{
"$ref": "#/components/schemas/TargetStatus"
},
{
"type": "null"
}
]
}
},
"title": "TargetUpdate",
"type": "object"
}
Responses
{
"id": 0,
"isDeleted": true,
"name": "string",
"positionId": null,
"positionOffsetFrame": "icrs_tangent",
"positionOffsetReferenceTime": null,
"positionOffsetXDeg": 10.12,
"positionOffsetYDeg": 10.12,
"status": "active",
"targetPosition": null
}
Schema of the response body
{
"properties": {
"id": {
"description": "Primary key for the Target",
"type": "integer"
},
"isDeleted": {
"description": "Flag indicating if the target is deleted",
"type": "boolean"
},
"name": {
"description": "Name of the Target",
"type": "string"
},
"positionId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Primary key of the target's position. Resolved through the graph bundle's `target_positions` map."
},
"positionOffsetFrame": {
"$ref": "#/components/schemas/ObservationPositionOffsetFrame",
"default": "icrs_tangent"
},
"positionOffsetReferenceTime": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"positionOffsetXDeg": {
"default": 0,
"type": "number"
},
"positionOffsetYDeg": {
"default": 0,
"type": "number"
},
"status": {
"$ref": "#/components/schemas/TargetStatus",
"description": "Status of the target"
},
"targetPosition": {
"anyOf": [
{
"discriminator": {
"mapping": {
"catalog": "#/components/schemas/CatalogPosition",
"ephemeral": "#/components/schemas/EphemeralPosition",
"fixed": "#/components/schemas/FixedPosition",
"orbital": "#/components/schemas/OrbitalPosition"
},
"propertyName": "positionType"
},
"oneOf": [
{
"$ref": "#/components/schemas/FixedPosition"
},
{
"$ref": "#/components/schemas/OrbitalPosition"
},
{
"$ref": "#/components/schemas/EphemeralPosition"
},
{
"$ref": "#/components/schemas/CatalogPosition"
}
]
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"status",
"isDeleted",
"name"
],
"title": "Target",
"type": "object"
}
Endpoints¶
GET /targets/{target_id}/ephemeris¶
Read Target Ephemeris
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
duration |
query | No | |||
end_time |
query | No | |||
endTime |
query | No | |||
observer_height_m |
query | No | |||
observer_lat |
query | No | |||
observer_lon |
query | No | |||
observerHeightM |
query | No | |||
observerLat |
query | No | |||
observerLon |
query | No | |||
output_frame |
query | No | |||
outputFrame |
query | No | |||
resolution |
query | number | 60 | No | |
start_time |
query | No | |||
startTime |
query | No | |||
target_id |
path | integer | No | ||
token |
query | No |
Responses
{
"entries": [
{
"distanceAu": null,
"epoch": "2022-04-13T15:42:05.901Z",
"latDeg": 10.12,
"lonDeg": 10.12
}
],
"frame": null,
"representation": null
}
Schema of the response body
{
"description": "Represents a target ephemeris.\n\nAttributes:\n frame (str): The coordinate frame (e.g., 'icrs', 'fk5').\n representation (str): The representation type (e.g., 'cartesian', 'spherical').\n entries (list[TargetEphemerisEntry]): List of ephemeris entries.",
"properties": {
"entries": {
"items": {
"$ref": "#/components/schemas/TargetEphemerisEntry"
},
"type": "array"
},
"frame": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"representation": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"frame",
"representation",
"entries"
],
"title": "TargetEphemeris",
"type": "object"
}
Schemas¶
Antenna¶
| Name | Type | Description |
|---|---|---|
apertureM |
number | |
deviceType |
string | |
id |
The unique identifier for the device. | |
imageId |
Image asset ID for the device. | |
manufacturer |
||
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
serialNumber |
Serial number for the device. | |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
uid |
string(uuid) | The unique UID for the device. |
AntennaDetail¶
| Name | Type | Description |
|---|---|---|
apertureM |
number | |
deviceType |
string | |
id |
The unique identifier for the device. | |
imageId |
Image asset ID for the device. | |
manufacturer |
||
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintActions |
Array<OperationalConstraintAction> | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
serialNumber |
Serial number for the device. | |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
uid |
string(uuid) | The unique UID for the device. |
ApplySpecRequest¶
| Name | Type | Description |
|---|---|---|
instrumentIds |
||
isPublic |
||
name |
||
observingGrantIds |
||
requestUids |
Array<> | |
spec |
SpecEnvelope | |
targetSnr |
AssetCopyStatus¶
Type: string
AssetCreationMethod¶
Type: string
BlackBodySpectralComponent¶
| Name | Type | Description |
|---|---|---|
id |
integer | |
spectralComponentType |
string | |
temperatureK |
number | The temperature of the black body. |
Body_read_observation_requests_observations__observation_id__requests_get¶
| Name | Type | Description |
|---|---|---|
filterObservationId |
||
id |
||
isDeleted |
||
status |
Body_read_observation_target_observations__observation_id__target_get¶
| Name | Type | Description |
|---|---|---|
id |
||
isDeleted |
||
status |
CadenceKind¶
Type: string
CalendarUnit¶
Type: string
CalibrationMasterStrategy¶
Type: string
Camera¶
| Name | Type | Description |
|---|---|---|
arrayHeight |
integer | Number of physical pixels along the vertical axis. |
arrayWidth |
integer | Number of physical pixels along the horizontal axis. |
coolerIdleTimeoutSec |
number | Idle timeout in seconds before turning off the cooler. |
coolerPolicy |
CameraCoolerPolicy | Camera cooler policy for automatic temperature control. |
coolerPrestartLeadTimeSec |
number | Lead time in seconds to pre-cool before tasks. |
defaultReadoutMode |
The camera's default readout mode (binning + electronics). | |
defaultReadoutModeUid |
UID of the camera's default readout mode. | |
deviceType |
string | |
fullWellCapacityElectrons |
number | Unbinned full well capacity in electrons. |
hasElectronicShutter |
boolean | Whether the camera has an electronic shutter. |
id |
The unique identifier for the device. | |
imageId |
Image asset ID for the device. | |
isColor |
boolean | Whether the camera is color or monochrome. |
isGlobalShutter |
boolean | Whether the camera is either a CCD or a global shutter CMOS. |
manufacturer |
||
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
pixelSizeUm |
number | Unbinned pixel size in microns. |
readoutModes |
||
serialNumber |
Serial number for the device. | |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
temperatureSetpointC |
Target camera temperature setpoint in degrees Celsius. | |
temperatureSetpointToleranceC |
Allowed temperature tolerance in degrees Celsius. | |
uid |
string(uuid) | The unique UID for the device. |
CameraCoolerPolicy¶
Type: string
CameraDetail¶
| Name | Type | Description |
|---|---|---|
arrayHeight |
integer | Number of physical pixels along the vertical axis. |
arrayWidth |
integer | Number of physical pixels along the horizontal axis. |
coolerIdleTimeoutSec |
number | Idle timeout in seconds before turning off the cooler. |
coolerPolicy |
CameraCoolerPolicy | Camera cooler policy for automatic temperature control. |
coolerPrestartLeadTimeSec |
number | Lead time in seconds to pre-cool before tasks. |
defaultReadoutMode |
The camera's default readout mode (binning + electronics). | |
defaultReadoutModeUid |
UID of the camera's default readout mode. | |
deviceType |
string | |
fullWellCapacityElectrons |
number | Unbinned full well capacity in electrons. |
hasElectronicShutter |
boolean | Whether the camera has an electronic shutter. |
id |
The unique identifier for the device. | |
imageId |
Image asset ID for the device. | |
isColor |
boolean | Whether the camera is color or monochrome. |
isGlobalShutter |
boolean | Whether the camera is either a CCD or a global shutter CMOS. |
manufacturer |
||
model |
||
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintActions |
Array<OperationalConstraintAction> | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
pixelSizeUm |
number | Unbinned pixel size in microns. |
readoutModes |
||
serialNumber |
Serial number for the device. | |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
temperatureSetpointC |
Target camera temperature setpoint in degrees Celsius. | |
temperatureSetpointToleranceC |
Allowed temperature tolerance in degrees Celsius. | |
uid |
string(uuid) | The unique UID for the device. |
CameraModel¶
| Name | Type | Description |
|---|---|---|
arrayHeight |
integer | |
arrayWidth |
integer | |
deviceType |
string | |
fullWellCapacityElectrons |
number | |
hasElectronicShutter |
boolean | |
id |
||
imageId |
||
isColor |
boolean | |
isGlobalShutter |
boolean | |
manufacturer |
||
modelName |
string | |
pixelSizeUm |
number | |
readoutModes |
CameraReadoutMode¶
| Name | Type | Description |
|---|---|---|
binning |
integer | Binning factor for the readout mode. |
bitDepth |
integer | Bit depth for the readout mode. |
blankLevelCounts |
number | Blank level in counts. |
cameraId |
ID of the camera this readout mode belongs to. | |
cameraModelId |
ID of the camera model this readout mode belongs to. | |
darkCurrentElectronsPerSec |
number | Dark current in electrons/second at standard temperature. |
description |
string | Description of the readout mode. |
gainElectronsPerCount |
number | Inverse gain factor in electrons/count. |
hardwareId |
string | ID of the readout mode in the TCS backend. |
id |
integer | ID of the readout mode. |
isActive |
boolean | Whether this readout mode is selectable for new science/calibration work. |
isDeleted |
boolean | Whether this readout mode has been retired from the configuration view. |
isFastReadout |
boolean | Whether the readout mode is fast. |
isHdr |
boolean | Whether the readout mode is high dynamic range. |
isHighGain |
boolean | Whether the readout mode is high gain. |
isLdr |
boolean | Whether the readout mode is low dynamic range. |
isLowGain |
boolean | Whether the readout mode is low gain. |
isLowNoise |
boolean | Whether the readout mode is low noise. |
isNonRbiFlood |
boolean | Whether RBI flooding is disabled for the readout mode. |
isRbiFlood |
boolean | Whether RBI flooding is enabled for the readout mode. |
readoutNoiseElectrons |
number | Readout noise in electrons. |
readoutTimeSec |
number | Full-frame readout time in seconds. |
uid |
string(uuid) | Unique UID for the readout mode. |
CatalogEphemerisBrightnessModel¶
| Name | Type | Description |
|---|---|---|
catalogObjectId |
integer | Catalog object whose stored ephemeris carries V |
id |
integer | Primary key |
isPointSource |
boolean | NEOs are point sources |
modelType |
string |
CatalogObjectType¶
Type: string
CatalogPosition¶
| Name | Type | Description |
|---|---|---|
catalogObject |
||
catalogObjectId |
integer | |
id |
integer | |
positionType |
string | |
targetId |
||
uid |
string(uuid) |
CatalogPositionCreate¶
| Name | Type | Description |
|---|---|---|
catalogObjectId |
integer | |
positionType |
string |
CatalogPositionUpdate¶
| Name | Type | Description |
|---|---|---|
catalogObjectId |
||
positionType |
string |
ClusterModelingTool¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
createdOn |
string(date-time) | |
creatorId |
integer | |
currentStage |
||
currentStageIndex |
||
currentStageProgressFraction |
||
dataToolType |
string | |
errorMessages |
||
id |
integer | |
name |
string | |
observationId |
||
priority |
integer | |
projectId |
||
startedOn |
||
status |
JobStatus | |
totalStages |
ClusterModelingToolCreate¶
| Name | Type | Description |
|---|---|---|
dataToolType |
string | |
name |
string | |
observationId |
||
priority |
||
projectId |
ClusterModelingToolUpdate¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
currentStage |
||
currentStageIndex |
||
currentStageProgressFraction |
||
dataToolType |
string | |
errorMessages |
||
name |
||
observationId |
||
priority |
||
projectId |
||
startedOn |
||
status |
||
totalStages |
CoordinateType¶
Type: string
CoordinationKind¶
Type: string
CopiesMode¶
Type: string
CoverUpdate¶
| Name | Type | Description |
|---|---|---|
coverAssetUid |
DataPolicy¶
Type: string
DataProductStatus¶
Type: string
DataToolDefinitionWithInstances¶
| Name | Type | Description |
|---|---|---|
allowMultiple |
boolean | |
dataToolType |
DataToolType | |
defaultConfigSchema |
||
description |
||
iconUrl |
||
id |
integer | |
instances |
Array<> | |
name |
string | |
version |
DataToolType¶
Type: string
DitherStrategy¶
Type: string
EclipticCoordinates¶
| Name | Type | Description |
|---|---|---|
coordinateType |
string | Type of the coordinate system |
distanceAu |
Distance from origin in AU | |
epoch |
Epoch of observation | |
equinoxJyear |
Equinox of coordinates in Julian years | |
id |
integer | Primary key for the TargetCoordinates |
latDeg |
number | Ecliptic latitude in degrees |
lonDeg |
number | Ecliptic longitude in degrees |
pmLatMasPerYear |
Proper motion in latitude in mas/year | |
pmLonMasPerYear |
Proper motion in longitude times cos(lat) in mas/year | |
radialVelocityKmPerSec |
Radial velocity in km/s | |
type |
Type of ecliptic coordinates |
EclipticCoordinatesCreate¶
| Name | Type | Description |
|---|---|---|
coordinateType |
string | Type of the coordinate system |
distanceAu |
Distance from origin in AU | |
epoch |
Epoch of observation | |
equinoxJyear |
Equinox of coordinates in Julian years | |
latDeg |
number | Ecliptic latitude in degrees |
lonDeg |
number | Ecliptic longitude in degrees |
pmLatMasPerYear |
Proper motion in latitude in mas/year | |
pmLonMasPerYear |
Proper motion in longitude times cos(lat) in mas/year | |
radialVelocityKmPerSec |
Radial velocity in km/s | |
type |
Type of ecliptic coordinates |
EclipticCoordinatesUpdate¶
| Name | Type | Description |
|---|---|---|
coordinateType |
string | Type of the coordinate system |
distanceAu |
Distance from origin in AU | |
epoch |
Epoch of observation | |
equinoxJyear |
Equinox of coordinates in Julian years | |
latDeg |
Ecliptic latitude in degrees | |
lonDeg |
Ecliptic longitude in degrees | |
pmLatMasPerYear |
Proper motion in latitude in mas/year | |
pmLonMasPerYear |
Proper motion in longitude times cos(lat) in mas/year | |
radialVelocityKmPerSec |
Radial velocity in km/s | |
type |
Type of ecliptic coordinates |
EclipticCoordinateType¶
Type: string
EffectiveQuotaConstraint¶
| Name | Type | Description |
|---|---|---|
appliesReason |
string | |
controllerEntity |
||
controllerGroup |
||
depth |
integer | |
isShared |
boolean | |
quota |
EffectiveQuotaSnapshot | |
scopeLabel |
||
sourceAccountId |
integer | |
sourceAccountName |
||
sourceAccountSlug |
||
sourceGrantId |
||
sourceType |
string |
EffectiveQuotaSnapshot¶
| Name | Type | Description |
|---|---|---|
anchorAt |
||
createdOn |
string(date-time) | |
creditsRemainingInWindow |
number | |
creditsUsedInWindow |
number | |
currentWindowEnd |
||
currentWindowStart |
||
enabled |
boolean | |
id |
integer | |
maxCredits |
number | |
periodType |
ObservingQuotaPeriodType | |
startsAtLocalTime |
||
timezone |
string | |
updatedOn |
string(date-time) |
EnclosureDetail¶
| Name | Type | Description |
|---|---|---|
deviceType |
string | |
diameterM |
Diameter of the enclosure in meters. | |
enclosurePolicy |
EnclosurePolicy | Enclosure policy for automatic opening/closing behavior. |
enclosureType |
EnclosureType | |
hasRotation |
boolean | |
hasShutter |
boolean | |
id |
The unique identifier for the device. | |
idleCloseTimeoutSec |
Idle time in seconds before closing when open-for-tasks-only policy is active. | |
imageId |
Image asset ID for the device. | |
manufacturer |
||
model |
||
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintActions |
Array<OperationalConstraintAction> | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
serialNumber |
Serial number for the device. | |
slitWidthM |
Width of the dome slit in meters. | |
sunAltitudeOpenCondition |
SunAltitudeOpenCondition | Condition that determines when to open based on sun altitude. |
sunAltitudeThresholdDeg |
Sun altitude threshold used to determine when to open (degrees). | |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
uid |
string(uuid) | The unique UID for the device. |
zenithOverlapAngleDeg |
Zenith overlap angle in degrees. |
EnclosureModel¶
| Name | Type | Description |
|---|---|---|
deviceType |
string | |
diameterM |
||
enclosureType |
||
hasRotation |
boolean | |
hasShutter |
boolean | |
id |
||
imageId |
||
manufacturer |
||
modelName |
string | |
slitWidthM |
||
zenithOverlapAngleDeg |
Zenith overlap angle in degrees. |
EnclosurePolicy¶
Type: string
EnclosureType¶
Type: string
EphemeralPosition¶
| Name | Type | Description |
|---|---|---|
ephemeris |
Array<EphemerisRecord> | |
id |
integer | |
positionType |
string | |
targetId |
||
uid |
string(uuid) |
EphemeralPositionCreate¶
| Name | Type | Description |
|---|---|---|
positionType |
string |
EphemeralPositionUpdate¶
| Name | Type | Description |
|---|---|---|
positionType |
string |
EphemerisRecord¶
| Name | Type | Description |
|---|---|---|
coordinates |
||
coordinatesId |
||
epoch |
string(date-time) | |
id |
EquatorialCoordinates¶
| Name | Type | Description |
|---|---|---|
coordinateType |
string | Type of the coordinate system |
decDeg |
number | ICRS declination in degrees |
distancePc |
Distance in pc | |
epoch |
Epoch of observation | |
id |
integer | Primary key for the TargetCoordinates |
pmDecMasPerYear |
Proper motion in Dec in mas/year | |
pmRaMasPerYear |
Proper motion in RA times cos(Dec) in mas/year | |
raDeg |
number | ICRS right ascension in degrees |
radialVelocityKmPerSec |
Radial velocity in km/s |
EquatorialCoordinatesCreate¶
| Name | Type | Description |
|---|---|---|
coordinateType |
string | Type of the coordinate system |
decDeg |
number | ICRS declination in degrees |
distancePc |
Distance in pc | |
epoch |
Epoch of observation | |
pmDecMasPerYear |
Proper motion in Dec in mas/year | |
pmRaMasPerYear |
Proper motion in RA times cos(Dec) in mas/year | |
raDeg |
number | ICRS right ascension in degrees |
radialVelocityKmPerSec |
Radial velocity in km/s |
EquatorialCoordinatesUpdate¶
| Name | Type | Description |
|---|---|---|
coordinateType |
string | Type of the coordinate system |
decDeg |
ICRS declination in degrees | |
distancePc |
Distance in pc | |
epoch |
Epoch of observation | |
pmDecMasPerYear |
Proper motion in Dec in mas/year | |
pmRaMasPerYear |
Proper motion in RA times cos(Dec) in mas/year | |
raDeg |
ICRS right ascension in degrees | |
radialVelocityKmPerSec |
Radial velocity in km/s |
EventKind¶
Type: string
EventRead¶
| Name | Type | Description |
|---|---|---|
createdOn |
string(date-time) | |
dedupKey |
||
deviceId |
||
eventKind |
EventKind | |
id |
integer | |
message |
||
observationId |
||
observatoryId |
||
observingAccountId |
||
operationalConstraintId |
||
ownerEntityId |
||
payload |
||
renderedMessage |
Human-readable message rendered from the event kind's template + payload at API response time. Distinct from the persisted ``message`` column, which is set only when the producer chose to pre-render. UIs should prefer ``message`` when present and fall back to ``rendered_message``. | |
resourceId |
integer | |
resourceKind |
EventResourceKind | |
telescopeId |
EventResourceKind¶
Type: string
ExponentialTemporalComponent¶
| Name | Type | Description |
|---|---|---|
eventTime |
string(date-time) | UTC time of event. |
id |
integer | |
index |
number | The exponential decay index. |
referenceTimeSec |
number | Characteristic fading time in seconds. |
temporalComponentType |
string |
ExposureStatus¶
Type: string
ExternallyManagedObservingGrantBase¶
| Name | Type | Description |
|---|---|---|
accountId |
integer | |
allowExternalDelegation |
boolean | |
createdById |
||
createdOn |
||
creditsUsed |
||
entityId |
integer | |
grantType |
string | |
id |
integer | |
quotas |
||
revoked |
boolean | |
revokedById |
||
revokedOn |
ExternallyManagedObservingGrantDetail¶
| Name | Type | Description |
|---|---|---|
account |
||
accountId |
integer | |
allowExternalDelegation |
boolean | |
createdById |
||
createdOn |
||
creditsUsed |
||
entity |
||
entityId |
integer | |
grantType |
string | |
id |
integer | |
quotas |
||
revoked |
boolean | |
revokedById |
||
revokedOn |
File¶
| Name | Type | Description |
|---|---|---|
altTag |
||
bucket |
||
createdBy |
||
createdOn |
string(date-time) | |
id |
string(uuid) | |
isDataReady |
boolean | |
lastAccessedOn |
||
mimeType |
MimeType | |
name |
string | |
objectKey |
||
remoteUri |
||
renderSettings |
||
secretLinkKey |
||
sizeBytes |
||
storageType |
||
updatedOn |
string(date-time) | |
visibility |
FileVisibility |
FileSortField¶
Type: string
FileSummary¶
| Name | Type | Description |
|---|---|---|
altTag |
||
bucket |
||
createdBy |
||
createdOn |
string(date-time) | |
id |
string(uuid) | |
isDataReady |
boolean | |
lastAccessedOn |
||
mimeType |
MimeType | |
name |
string | |
objectKey |
||
remoteUri |
||
renderSettings |
||
secretLinkKey |
||
sizeBytes |
||
storageType |
||
updatedOn |
string(date-time) | |
visibility |
FileVisibility |
FileVisibility¶
Type: string
Filter¶
| Name | Type | Description |
|---|---|---|
bandpassNm |
Bandpass of the filter in nanometers | |
centralWavelengthNm |
Central wavelength of the filter in nanometers | |
filterSpecifierType |
string | |
flatExposureScaler |
Scale factor applied to the base twilight flat exposure time for this filter. | |
flatExposureSunElevationCoeffPerDeg |
Per-degree coefficient b in the twilight-flat first-guess model exptime ~ exp(b*|sun_elevation_deg|); ~1.2 broadband, ~0.9 narrowband; null defaults to 1.2. | |
id |
string | Unique identifier of the filter specifier |
isModifier |
True if the filter is a modifier (e.g. polarizer) | |
throughputFraction |
Relative broadband throughput (0-1) for plate-solve filter selection; null = unknown |
FilterGroup¶
| Name | Type | Description |
|---|---|---|
description |
Description of the filter group | |
filterIds |
Array<string> | List of filter IDs in the group |
filters |
Array<Filter> | |
filterSpecifierType |
string | |
id |
string | Unique identifier of the filter specifier |
order |
integer | Display order of the filter group |
FilterShape¶
Type: string
FilterWheelDetail¶
| Name | Type | Description |
|---|---|---|
deletedPositions |
Deleted filter wheel positions when explicitly requested. | |
deviceType |
string | |
filterShape |
The shape of the filter slot | |
filterSizeMm |
The diameter of the filter slot if round the length of a side if square in millimeters | |
filterWheelPositionIds |
List of filter wheel position PKs | |
id |
The unique identifier for the device. | |
imageId |
Image asset ID for the device. | |
manufacturer |
||
model |
||
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintActions |
Array<OperationalConstraintAction> | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
positions |
Array<FilterWheelPositionDetail> | List of filter wheel positions. |
serialNumber |
Serial number for the device. | |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
uid |
string(uuid) | The unique UID for the device. |
FilterWheelModel¶
| Name | Type | Description |
|---|---|---|
deviceType |
string | |
filterShape |
||
filterSizeMm |
||
id |
||
imageId |
||
manufacturer |
||
modelName |
string |
FilterWheelPosition¶
| Name | Type | Description |
|---|---|---|
filterIds |
Array<string> | Filter specifier IDs for this position. |
filterWheelId |
integer | The ID of the filter wheel this position belongs to. |
filterWheelUid |
The UID of the filter wheel this position belongs to. | |
flatExposureScaler |
Initial twilight flat exposure scale in seconds for this filter wheel position. | |
focusOffset |
The focus offset in mm when this filter is in use. | |
id |
The unique identifier for the filter wheel position. | |
isActive |
boolean | Whether this filter wheel position is selectable. |
isDeleted |
boolean | Whether this filter wheel position is removed from the current configuration view. |
label |
The label of the filter wheel position. | |
position |
integer | The zero-based slot index of the filter wheel position. |
uid |
string(uuid) | The unique UID for the filter wheel position. |
FilterWheelPositionDetail¶
| Name | Type | Description |
|---|---|---|
filterIds |
Array<string> | Filter specifier IDs for this position. |
filters |
Array<Filter> | List of filters in this position |
filterWheelId |
integer | The ID of the filter wheel this position belongs to. |
filterWheelUid |
The UID of the filter wheel this position belongs to. | |
flatExposureScaler |
Initial twilight flat exposure scale in seconds for this filter wheel position. | |
focusOffset |
The focus offset in mm when this filter is in use. | |
id |
The unique identifier for the filter wheel position. | |
isActive |
boolean | Whether this filter wheel position is selectable. |
isDeleted |
boolean | Whether this filter wheel position is removed from the current configuration view. |
label |
The label of the filter wheel position. | |
position |
integer | The zero-based slot index of the filter wheel position. |
uid |
string(uuid) | The unique UID for the filter wheel position. |
FixedPosition¶
| Name | Type | Description |
|---|---|---|
coordinates |
||
coordinatesId |
integer | |
id |
integer | |
positionType |
string | |
targetId |
||
uid |
string(uuid) |
FixedPositionCreate¶
| Name | Type | Description |
|---|---|---|
coordinates |
||
positionType |
string |
FixedPositionUpdate¶
| Name | Type | Description |
|---|---|---|
coordinates |
||
positionType |
string |
FlatFieldSource¶
Type: string
Focuser¶
| Name | Type | Description |
|---|---|---|
deviceType |
string | |
id |
The unique identifier for the device. | |
imageId |
Image asset ID for the device. | |
manufacturer |
||
maxPosition |
integer | Maximum focuser position. |
minPosition |
integer | Minimum focuser position. |
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
serialNumber |
Serial number for the device. | |
stepSize |
number | Size of each step, in the focuser driver's reported position units (e.g. microns for ASCOM, motor steps for others). |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
temperatureCompensated |
boolean | Whether temperature compensation is supported. |
uid |
string(uuid) | The unique UID for the device. |
FocuserDetail¶
| Name | Type | Description |
|---|---|---|
deviceType |
string | |
id |
The unique identifier for the device. | |
imageId |
Image asset ID for the device. | |
manufacturer |
||
maxPosition |
integer | Maximum focuser position. |
minPosition |
integer | Minimum focuser position. |
model |
||
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintActions |
Array<OperationalConstraintAction> | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
serialNumber |
Serial number for the device. | |
stepSize |
number | Size of each step, in the focuser driver's reported position units (e.g. microns for ASCOM, motor steps for others). |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
temperatureCompensated |
boolean | Whether temperature compensation is supported. |
uid |
string(uuid) | The unique UID for the device. |
FocuserModel¶
| Name | Type | Description |
|---|---|---|
deviceType |
string | |
id |
||
imageId |
||
manufacturer |
||
maxPosition |
integer | |
minPosition |
integer | |
modelName |
string | |
stepSize |
number | |
temperatureCompensated |
boolean |
FocusTemperatureSource¶
Type: string
GalacticCoordinates¶
| Name | Type | Description |
|---|---|---|
coordinateType |
string | Type of the coordinate system |
distancePc |
Distance in pc | |
epoch |
Epoch of observation | |
id |
integer | Primary key for the TargetCoordinates |
latDeg |
number | Galactic latitude in degrees |
lonDeg |
number | Galactic longitude in degrees |
pmLatMasPerYear |
Proper motion in latitude in mas/year | |
pmLonMasPerYear |
Proper motion in longitude times cos(lat) in mas/year | |
radialVelocityKmPerSec |
Radial velocity in km/s |
GalacticCoordinatesCreate¶
| Name | Type | Description |
|---|---|---|
coordinateType |
string | Type of the coordinate system |
distancePc |
Distance in pc | |
epoch |
Epoch of observation | |
latDeg |
number | Galactic latitude in degrees |
lonDeg |
number | Galactic longitude in degrees |
pmLatMasPerYear |
Proper motion in latitude in mas/year | |
pmLonMasPerYear |
Proper motion in longitude times cos(lat) in mas/year | |
radialVelocityKmPerSec |
Radial velocity in km/s |
GalacticCoordinatesUpdate¶
| Name | Type | Description |
|---|---|---|
coordinateType |
string | Type of the coordinate system |
distancePc |
Distance in pc | |
epoch |
Epoch of observation | |
latDeg |
Galactic latitude in degrees | |
lonDeg |
Galactic longitude in degrees | |
pmLatMasPerYear |
Proper motion in latitude in mas/year | |
pmLonMasPerYear |
Proper motion in longitude times cos(lat) in mas/year | |
radialVelocityKmPerSec |
Radial velocity in km/s |
GroupManagedObservingGrantBase¶
| Name | Type | Description |
|---|---|---|
accountId |
integer | |
createdById |
||
createdOn |
||
creditsUsed |
||
grantType |
string | |
groupId |
integer | |
id |
integer | |
quotas |
||
revoked |
boolean | |
revokedById |
||
revokedOn |
GroupManagedObservingGrantDetail¶
| Name | Type | Description |
|---|---|---|
account |
||
accountId |
integer | |
createdById |
||
createdOn |
||
creditsUsed |
||
grantType |
string | |
group |
GroupSummary | |
groupId |
integer | |
id |
integer | |
quotas |
||
revoked |
boolean | |
revokedById |
||
revokedOn |
GroupObservingGrantDetail¶
| Name | Type | Description |
|---|---|---|
account |
||
accountId |
integer | |
createdById |
||
createdOn |
||
creditsUsed |
||
grantType |
string | |
group |
GroupSummary | |
groupId |
integer | |
id |
integer | |
quotas |
||
revoked |
boolean | |
revokedById |
||
revokedOn |
GroupSummary¶
| Name | Type | Description |
|---|---|---|
allowDataPolicyOverride |
boolean | Whether overriding the data policy is allowed |
allowInvitations |
boolean | Whether invitations are allowed |
dataPolicy |
Data policy. | |
defaultRoleId |
Default role for users in this group. | |
description |
string | Description of the group |
id |
integer | Unique identifier of the group. |
memberCount |
Number of members in the group | |
name |
string | Name of the group |
organizationId |
Unique identifier of the organization to which the group belongs | |
slug |
string | Unique identifier used in URLs referencing the group. |
HorizontalCoordinates¶
| Name | Type | Description |
|---|---|---|
altDeg |
number | Altitude in degrees |
azDeg |
number | Azimuth in degrees |
coordinateType |
string | Type of the coordinate system |
epoch |
Epoch of observation | |
id |
integer | Primary key for the TargetCoordinates |
pmAltArcsecPerSec |
Proper motion in altitude in arcsec/s | |
pmAzArcsecPerSec |
Proper motion in azimuth times cos(alt) in arcsec/s |
HorizontalCoordinatesCreate¶
| Name | Type | Description |
|---|---|---|
altDeg |
number | Altitude in degrees |
azDeg |
number | Azimuth in degrees |
coordinateType |
string | Type of the coordinate system |
epoch |
Epoch of observation | |
pmAltArcsecPerSec |
Proper motion in altitude in arcsec/s | |
pmAzArcsecPerSec |
Proper motion in azimuth times cos(alt) in arcsec/s |
HorizontalCoordinatesUpdate¶
| Name | Type | Description |
|---|---|---|
altDeg |
Altitude in degrees | |
azDeg |
Azimuth in degrees | |
coordinateType |
string | Type of the coordinate system |
epoch |
Epoch of observation | |
pmAltArcsecPerSec |
Proper motion in altitude in arcsec/s | |
pmAzArcsecPerSec |
Proper motion in azimuth times cos(alt) in arcsec/s |
HTTPValidationError¶
| Name | Type | Description |
|---|---|---|
detail |
Array<ValidationError> |
InstrumentAccessMode¶
Type: string
InstrumentRotator¶
| Name | Type | Description |
|---|---|---|
deviceType |
string | |
id |
The unique identifier for the device. | |
imageId |
Image asset ID for the device. | |
manufacturer |
||
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
serialNumber |
Serial number for the device. | |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
uid |
string(uuid) | The unique UID for the device. |
InstrumentRotatorDetail¶
| Name | Type | Description |
|---|---|---|
deviceType |
string | |
id |
The unique identifier for the device. | |
imageId |
Image asset ID for the device. | |
manufacturer |
||
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintActions |
Array<OperationalConstraintAction> | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
serialNumber |
Serial number for the device. | |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
uid |
string(uuid) | The unique UID for the device. |
InterruptRecovery¶
Type: string
IPCamera¶
| Name | Type | Description |
|---|---|---|
id |
||
isPrimary |
boolean | |
isPublic |
boolean | |
lastSeen |
||
name |
string | |
observatoryId |
||
onvifHost |
||
order |
integer | |
pose |
||
ptz |
boolean | |
role |
IPCameraRole | |
streams |
Array<IPCameraStream> | |
telescopeId |
||
uid |
string(uuid) | |
vendor |
IPCameraRole¶
Type: string
IPCameraStream¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
cameraId |
integer | |
expiresSec |
||
id |
integer | |
kind |
StreamKind | |
quality |
JobExceptionMessage¶
| Name | Type | Description |
|---|---|---|
message |
string | |
timestamp |
string(date-time) | |
traceback |
||
type |
string |
JobStatus¶
Type: string
JPLPlanetName¶
Type: string
LunarPhaseDirection¶
Type: string
MajorSolarSystemObject¶
| Name | Type | Description |
|---|---|---|
catalogObjectType |
string | |
id |
integer | Primary key of the catalog object |
name |
MajorSolarSystemObjectName | Name of the major solar‑system object |
uid |
string(uuid) | Stable UUID of the catalog object |
MajorSolarSystemObjectName¶
Type: string
MemberObservingGrantDetail¶
| Name | Type | Description |
|---|---|---|
account |
||
accountId |
integer | |
createdById |
||
createdOn |
||
creditsUsed |
||
grantType |
string | |
id |
integer | |
quotas |
||
revoked |
boolean | |
revokedById |
||
revokedOn |
||
user |
UserWithEmail | |
userId |
integer |
MimeType¶
Type: string
MountDetail¶
| Name | Type | Description |
|---|---|---|
defaultPierSide |
PierSide | |
deviceType |
string | |
id |
The unique identifier for the device. | |
imageId |
Image asset ID for the device. | |
manufacturer |
||
maxSlewAccelerationAxis1DegPerSec2 |
||
maxSlewAccelerationAxis2DegPerSec2 |
||
maxSlewRateAxis1DegPerSec |
number | |
maxSlewRateAxis2DegPerSec |
number | |
maxSlewRateDegPerSec |
number | |
maxTrackingDurationSec |
number | |
meridianAvoidanceDeg |
number | |
meridianTrackingLimitDeg |
number | |
minAltitudeDeg |
number | |
model |
||
modelId |
||
mountType |
MountType | |
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintActions |
Array<OperationalConstraintAction> | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
pivotXM |
number | X coordinate of the mount pivot in meters. |
pivotYM |
number | Y coordinate of the mount pivot in meters. |
pivotZM |
number | Z coordinate of the mount pivot in meters. |
serialNumber |
Serial number for the device. | |
settleTimeSec |
number | Seconds the mount must hold within the on-target tolerance before it reports on-target. |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
uid |
string(uuid) | The unique UID for the device. |
zenithAvoidanceDeg |
number |
MountModel¶
| Name | Type | Description |
|---|---|---|
defaultPierSide |
PierSide | |
deviceType |
string | |
id |
||
imageId |
||
manufacturer |
||
maxSlewAccelerationAxis1DegPerSec2 |
||
maxSlewAccelerationAxis2DegPerSec2 |
||
maxSlewRateAxis1DegPerSec |
number | |
maxSlewRateAxis2DegPerSec |
number | |
meridianTrackingLimitDeg |
number | |
modelName |
string | |
mountType |
MountType |
MountType¶
Type: string
MpcComet¶
| Name | Type | Description |
|---|---|---|
argumentOfPerihelionDeg |
number | Argument of perihelion in degrees |
catalogObjectType |
string | |
designation |
Comet designation | |
eccentricity |
number | Orbital eccentricity |
id |
integer | Primary key of the catalog object |
inclinationDeg |
number | Inclination in degrees |
longitudeOfAscendingNodeDeg |
number | Longitude of ascending node in degrees |
name |
string | Comet name |
number |
Comet number | |
orbitType |
string | Orbit type |
perihelionDistanceAu |
number | Perihelion distance in AU |
perihelionEpochJyear |
number | Epoch of perihelion in Julian years |
uid |
string(uuid) | Stable UUID of the catalog object |
MpcOrbit¶
| Name | Type | Description |
|---|---|---|
argumentOfPerihelionDeg |
number | Argument of perihelion in degrees |
catalogObjectType |
string | |
designation |
string | Orbit designation |
eccentricity |
number | Orbital eccentricity |
epochJyear |
number | Epoch of elements in Julian years |
gMag |
G magnitude | |
hMag |
H magnitude | |
id |
integer | Primary key of the catalog object |
inclinationDeg |
number | Inclination in degrees |
longitudeOfAscendingNodeDeg |
number | Longitude of ascending node in degrees |
meanAnomalyDeg |
number | Mean anomaly in degrees |
name |
string | Name of the orbited object |
number |
Orbit number | |
semimajorAxisAu |
number | Semimajor axis in AU |
uid |
string(uuid) | Stable UUID of the catalog object |
NeocpObject¶
| Name | Type | Description |
|---|---|---|
arcHours |
Observed arc length (Scout 'arc' is in hours) | |
catalogObjectType |
string | |
designation |
string | NEOCP temporary designation, e.g. 'P10vY9r' |
ephemerisUpdatedOn |
||
hMag |
Absolute magnitude H | |
id |
integer | Primary key of the catalog object |
lastScoutRunOn |
Scout 'lastRun' of the current orbit computation | |
neoScore |
Scout neoScore (0-100) | |
nObs |
Astrometric observation count | |
posUncertaintyArcmin |
1-sigma plane-of-sky uncertainty now (Scout sigma-pos) | |
provider |
string | Ephemeris provider |
rateArcsecPerMin |
Plane-of-sky motion rate now | |
rating |
Scout rating | |
retiredOn |
Object left the NEOCP (designated or rejected) | |
uid |
string(uuid) | Stable UUID of the catalog object |
vMag |
Apparent V magnitude now |
NoradSatellite¶
| Name | Type | Description |
|---|---|---|
catalogObjectType |
string | |
classification |
string | Satellite classification |
id |
integer | Primary key of the catalog object |
internationalDesignator |
International Designator (COSPAR ID) | |
name |
Satellite name | |
omm |
Orbit Mean‑Elements Message fields | |
satelliteCatalogNumber |
integer | NORAD catalog number |
tle |
Two‑ or Three‑Line Elements | |
uid |
string(uuid) | Stable UUID of the catalog object |
ObservabilityWindow¶
| Name | Type | Description |
|---|---|---|
endsOn |
string(date-time) | |
instrumentId |
integer | |
observable |
boolean | |
obsId |
integer | |
reason |
string | |
requestId |
||
requestType |
ObservationType | |
startsOn |
string(date-time) | |
telescopeId |
Observation¶
| Name | Type | Description |
|---|---|---|
affinityHandoffAfterSec |
||
affinityMigrateAt |
ScheduleRung | |
cadenceCalendarUnit |
||
cadenceGapSec |
||
cadenceKind |
CadenceKind | |
cadenceLevel |
||
cadencePeriodSec |
||
cancelOn |
||
cohesionLevel |
ScheduleRung | |
completedOn |
||
coordinationKind |
||
coordinationStartToleranceSec |
||
copiesCount |
||
copiesMode |
CopiesMode | |
coverAssetUid |
||
coverPreviewFileId |
||
coverThumbnailFileId |
||
createdOn |
string(date-time) | Creation timestamp. |
creatorId |
integer | User who created it. |
creatorUid |
||
currentEpoch |
integer | |
epochCount |
integer | Number of visits. 0 = repeat indefinitely. |
groupUid |
||
id |
integer | Unique identifier of the observation. |
instrumentIds |
||
instrumentMode |
InstrumentAccessMode | |
interruptLowerPriority |
boolean | Interrupt lower priority. |
interruptRecovery |
InterruptRecovery | |
isDeleted |
boolean | Flag indicating if deleted. |
isPublic |
boolean | |
lastActivityOn |
||
name |
string | Name of the observation. |
observabilityLastUpdatedOn |
Timestamp of the last observability refresh. | |
observingGrantIds |
||
opticalImagingConfiguration |
||
ownerId |
integer | Entity that funds this observation. |
ownerUid |
||
priority |
integer | |
progressFraction |
number | |
radioMappingConfiguration |
||
radioTrackingConfiguration |
||
requestTypes |
Array<ObservationType> | |
sampleOrdering |
SampleOrdering | |
startAfter |
||
status |
ObservationStatus | |
targetId |
Unique identifier of the target associated with the observation. | |
targetUid |
||
uid |
string(uuid) | |
updatedOn |
string(date-time) | Update timestamp. |
ObservationAsset¶
| Name | Type | Description |
|---|---|---|
copyStatus |
||
createdAtNode |
||
currentAnalysisRunId |
||
currentProcessingOutputId |
||
currentProcessingRunId |
||
currentRenderRunId |
||
fileId |
string(uuid) | |
id |
integer | |
instrumentId |
integer | |
instrumentUid |
||
isTransferrable |
||
lastTransferAttempt |
||
localFileId |
||
nextEligibleRenderAt |
||
nextTransferAttemptAt |
||
nodeAvailableUntil |
||
nodeCopyDeletedAt |
||
nodeFinalizedAt |
||
nodeStage |
||
observationId |
integer | |
observationUid |
||
previewFileId |
||
processingFlags |
||
qaMetrics |
||
qaReason |
||
qaStatus |
||
remoteFilePath |
||
renderDirtyAt |
||
role |
||
rootObservationAssetId |
||
rootObservationAssetUid |
||
serverQaMetrics |
||
serverQaReason |
||
serverQaStatus |
||
thumbnailFileId |
||
transferAttempts |
||
transferError |
||
transferProgressFraction |
||
transferredAt |
||
transferState |
||
uid |
string(uuid) |
ObservationAssetAnalysisRun¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
config |
||
configHash |
||
errorMessages |
||
headerCore |
||
id |
string(uuid) | |
imageQualityMetrics |
||
observationAssetId |
integer | |
runnerVersion |
||
startedAt |
||
status |
JobStatus |
ObservationAssetAnalysisRunHeaderCore¶
| Name | Type | Description |
|---|---|---|
airmass |
||
binX |
||
binY |
||
bitpix |
||
bscale |
||
bzero |
||
ccdTemperatureC |
||
decTelescopeDeg |
||
exposureTimeSec |
||
filterId |
||
gainElectronsPerCount |
||
midExposureMjd |
||
naxis |
||
naxis1 |
||
naxis2 |
||
pointingCorrectionEastArcsec |
||
pointingCorrectionNorthArcsec |
||
raTelescopeDeg |
||
readNoiseElectrons |
||
takenAtEndUtc |
||
takenAtStartUtc |
||
wcsCd11 |
||
wcsCd12 |
||
wcsCd21 |
||
wcsCd22 |
||
wcsCrota2 |
||
wcsCrpix1 |
||
wcsCrpix2 |
||
wcsCrval1 |
||
wcsCrval2 |
||
wcsInHeader |
||
wcsPixelScaleArcsecPerPx |
ObservationAssetAnalysisRunImageQualityMetrics¶
| Name | Type | Description |
|---|---|---|
backgroundCounts |
||
ellipticity |
||
fwhmArcsec |
||
sourceCount |
ObservationAssetFacets¶
| Name | Type | Description |
|---|---|---|
importableCount |
integer | Server-held FITS-image assets — the subset an external FITS consumer (e.g. the Afterglow data provider) can import right now. Gates the 'Open in Afterglow' action together with the observation's active state (an active observation may still produce importable data). |
pipeline |
ObservationAssetPipelineFacets | Per-stage capture counts for the Overview's pipeline strip. |
processingFlags |
Array<ObservationAssetProcessingFlagFacet> | Distinct processing flags present across assets, with counts (descending). |
roles |
Array<ObservationAssetRoleFacet> | Distinct roles present, with counts (descending). |
totalCount |
integer | Assets visible under the applied narrative. |
ObservationAssetNodeStage¶
Type: string
ObservationAssetPipelineFacets¶
| Name | Type | Description |
|---|---|---|
calibratedCount |
integer | Captures whose canonical run measured a photometric zero point. |
capturedCount |
integer | Science captures (excl. calibration frames and diagnostics). |
processedCount |
integer | Captures whose canonical processing run completed. |
solvedCount |
integer | Captures whose canonical run accepted a WCS solution. |
ObservationAssetPipelineOutputKind¶
Type: string
ObservationAssetProcessingFlag¶
Type: string
ObservationAssetProcessingFlagFacet¶
| Name | Type | Description |
|---|---|---|
count |
integer | |
flag |
ObservationAssetProcessingFlag |
ObservationAssetProcessingOutput¶
| Name | Type | Description |
|---|---|---|
id |
string(uuid) | |
isCanonical |
boolean | |
outputObservationAsset |
||
outputObservationAssetId |
integer | |
processingRunId |
string(uuid) | |
productKind |
ObservationAssetPipelineOutputKind |
ObservationAssetProcessingOutputSummary¶
| Name | Type | Description |
|---|---|---|
id |
string(uuid) | |
isCanonical |
boolean | |
outputObservationAssetId |
integer | |
processingRunId |
string(uuid) | |
productKind |
ObservationAssetPipelineOutputKind |
ObservationAssetProcessingRun¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
config |
||
configHash |
||
errorMessages |
||
headerCore |
||
id |
string(uuid) | |
imageQualityMetrics |
||
observationAssetId |
integer | |
outputs |
Array<ObservationAssetProcessingOutput> | |
photometry |
||
reductionInfo |
||
runnerVersion |
||
startedAt |
||
status |
JobStatus | |
wcsSolution |
ObservationAssetProcessingRunHeaderCore¶
| Name | Type | Description |
|---|---|---|
airmass |
||
binX |
||
binY |
||
bitpix |
||
bscale |
||
bzero |
||
ccdTemperatureC |
||
decTelescopeDeg |
||
exposureTimeSec |
||
filterId |
||
gainElectronsPerCount |
||
midExposureMjd |
||
naxis |
||
naxis1 |
||
naxis2 |
||
raTelescopeDeg |
||
readNoiseElectrons |
||
takenAtEndUtc |
||
takenAtStartUtc |
ObservationAssetProcessingRunImageQualityMetrics¶
| Name | Type | Description |
|---|---|---|
backgroundCounts |
||
ellipticity |
||
fwhmArcsec |
||
sourceCount |
ObservationAssetProcessingRunImageReductionInfo¶
| Name | Type | Description |
|---|---|---|
masterBiasId |
||
masterDarkId |
||
masterFlatId |
||
rawAssetId |
||
reductionOutcome |
ObservationAssetProcessingRunPhotometry¶
| Name | Type | Description |
|---|---|---|
fieldCalOutcome |
||
zeroPointErrorMag |
||
zeroPointMag |
ObservationAssetProcessingRunWcsSolution¶
| Name | Type | Description |
|---|---|---|
cd11 |
||
cd12 |
||
cd21 |
||
cd22 |
||
cdelt1 |
||
cdelt2 |
||
crota2 |
||
crpix1 |
||
crpix2 |
||
crval1 |
||
crval2 |
||
dateSolved |
||
decDeg |
||
deltaDecDeg |
||
deltaRaDeg |
||
foundSolution |
||
heightPx |
||
mirrored |
||
nField |
||
pixelScaleArcsecPerPx |
||
pointingErrorArcsec |
||
raDeg |
||
rejectionReason |
||
rotationDeg |
||
scienceHduIndex |
||
seededFromHeader |
||
solveAttempts |
||
solveBackend |
||
solveDurationSec |
||
solveFailureReason |
||
solveMethod |
||
solveRadiusDeg |
||
solverSourceCount |
||
widthPx |
ObservationAssetQaStatus¶
Type: string
ObservationAssetReductionInfo¶
| Name | Type | Description |
|---|---|---|
biasId |
||
darkId |
||
flatId |
||
observationAssetId |
||
observationAssetUid |
||
rawFileId |
||
uid |
string(uuid) |
ObservationAssetRenderRun¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
config |
||
configHash |
||
createdOn |
string(date-time) | |
currentStage |
||
currentStageIndex |
||
currentStageProgressFraction |
||
errorMessages |
||
id |
string(uuid) | |
iterations |
integer | |
observationAssetId |
integer | |
priority |
integer | |
rendererVersion |
||
startedOn |
||
status |
JobStatus | |
totalStages |
||
version |
ObservationAssetRole¶
Type: string
ObservationAssetRoleFacet¶
| Name | Type | Description |
|---|---|---|
count |
integer | |
role |
ObservationAssetRole |
ObservationAssetRootSummary¶
| Name | Type | Description |
|---|---|---|
fileId |
string(uuid) | |
id |
integer | |
previewFileId |
||
processingFlags |
||
role |
||
serverQaStatus |
||
thumbnailFileId |
||
uid |
string(uuid) |
ObservationAssetSortField¶
Type: string
ObservationAssetSummary¶
| Name | Type | Description |
|---|---|---|
copyStatus |
||
createdAtNode |
||
currentAnalysisRun |
||
currentAnalysisRunId |
||
currentProcessingOutput |
||
currentProcessingOutputId |
||
currentProcessingRun |
||
currentProcessingRunId |
||
currentRenderRun |
||
currentRenderRunId |
||
file |
||
fileId |
string(uuid) | |
id |
integer | |
instrumentId |
integer | |
instrumentUid |
||
isTransferrable |
||
lastTransferAttempt |
||
localFileId |
||
nextEligibleRenderAt |
||
nextTransferAttemptAt |
||
nodeAvailableUntil |
||
nodeCopyDeletedAt |
||
nodeFinalizedAt |
||
nodeStage |
||
observationId |
integer | |
observationUid |
||
previewFile |
||
previewFileId |
||
processingFlags |
||
processingRunCount |
||
qaMetrics |
||
qaReason |
||
qaStatus |
||
reductionInfo |
||
remoteFilePath |
||
renderDirtyAt |
||
resultProcessingOutputs |
||
role |
||
rootObservationAssetId |
||
rootObservationAssetUid |
||
serverQaMetrics |
||
serverQaReason |
||
serverQaStatus |
||
taskInfo |
||
thumbnailFile |
||
thumbnailFileId |
||
transferAttempts |
||
transferError |
||
transferProgressFraction |
||
transferredAt |
||
transferState |
||
uid |
string(uuid) |
ObservationAssetView¶
Type: string
ObservationAssetWithFile¶
| Name | Type | Description |
|---|---|---|
copyStatus |
||
createdAtNode |
||
currentAnalysisRunId |
||
currentProcessingOutputId |
||
currentProcessingRunId |
||
currentRenderRunId |
||
file |
||
fileId |
string(uuid) | |
id |
integer | |
instrumentId |
integer | |
instrumentUid |
||
isTransferrable |
||
lastTransferAttempt |
||
localFileId |
||
nextEligibleRenderAt |
||
nextTransferAttemptAt |
||
nodeAvailableUntil |
||
nodeCopyDeletedAt |
||
nodeFinalizedAt |
||
nodeStage |
||
observationId |
integer | |
observationUid |
||
previewFileId |
||
processingFlags |
||
qaMetrics |
||
qaReason |
||
qaStatus |
||
remoteFilePath |
||
renderDirtyAt |
||
role |
||
rootObservationAssetId |
||
rootObservationAssetUid |
||
serverQaMetrics |
||
serverQaReason |
||
serverQaStatus |
||
thumbnailFileId |
||
transferAttempts |
||
transferError |
||
transferProgressFraction |
||
transferredAt |
||
transferState |
||
uid |
string(uuid) |
ObservationAssetWithFileAndRoot¶
| Name | Type | Description |
|---|---|---|
copyStatus |
||
createdAtNode |
||
currentAnalysisRunId |
||
currentProcessingOutputId |
||
currentProcessingRunId |
||
currentRenderRunId |
||
file |
||
fileId |
string(uuid) | |
id |
integer | |
instrumentId |
integer | |
instrumentUid |
||
isTransferrable |
||
lastTransferAttempt |
||
localFileId |
||
nextEligibleRenderAt |
||
nextTransferAttemptAt |
||
nodeAvailableUntil |
||
nodeCopyDeletedAt |
||
nodeFinalizedAt |
||
nodeStage |
||
observationId |
integer | |
observationUid |
||
previewFileId |
||
processingFlags |
||
qaMetrics |
||
qaReason |
||
qaStatus |
||
remoteFilePath |
||
renderDirtyAt |
||
role |
||
rootObservationAsset |
||
rootObservationAssetId |
||
rootObservationAssetUid |
||
serverQaMetrics |
||
serverQaReason |
||
serverQaStatus |
||
thumbnailFileId |
||
transferAttempts |
||
transferError |
||
transferProgressFraction |
||
transferredAt |
||
transferState |
||
uid |
string(uuid) |
ObservationDetail¶
| Name | Type | Description |
|---|---|---|
affinityHandoffAfterSec |
||
affinityMigrateAt |
ScheduleRung | |
cadenceCalendarUnit |
||
cadenceGapSec |
||
cadenceKind |
CadenceKind | |
cadenceLevel |
||
cadencePeriodSec |
||
cancelOn |
||
cohesionLevel |
ScheduleRung | |
completedOn |
||
coordinationKind |
||
coordinationStartToleranceSec |
||
copiesCount |
||
copiesMode |
CopiesMode | |
coverAssetUid |
||
coverPreviewFileId |
||
coverThumbnailFileId |
||
createdOn |
string(date-time) | Creation timestamp. |
creator |
||
creatorId |
integer | User who created it. |
creatorUid |
||
currentEpoch |
integer | |
epochCount |
integer | Number of visits. 0 = repeat indefinitely. |
galleryItems |
||
groupUid |
||
id |
integer | Unique identifier of the observation. |
instrumentIds |
||
instrumentMode |
InstrumentAccessMode | |
interruptLowerPriority |
boolean | Interrupt lower priority. |
interruptRecovery |
InterruptRecovery | |
isDeleted |
boolean | Flag indicating if deleted. |
isPublic |
boolean | |
lastActivityOn |
||
name |
string | Name of the observation. |
observabilityLastUpdatedOn |
Timestamp of the last observability refresh. | |
observingGrantIds |
||
observingGrants |
||
opticalImagingConfiguration |
||
owner |
||
ownerId |
integer | Entity that funds this observation. |
ownerUid |
||
priority |
integer | |
progressFraction |
number | |
radioMappingConfiguration |
||
radioTrackingConfiguration |
||
renderSettings |
||
requestTypes |
Array<ObservationType> | |
sampleOrdering |
SampleOrdering | |
startAfter |
||
status |
ObservationStatus | |
target |
||
targetId |
Unique identifier of the target associated with the observation. | |
targetUid |
||
uid |
string(uuid) | |
updatedOn |
string(date-time) | Update timestamp. |
ObservationEditSeed¶
| Name | Type | Description |
|---|---|---|
instrumentIds |
Array<integer> | |
isPublic |
boolean | |
observingGrantIds |
Array<integer> | |
ownerName |
string | |
ownerSlug |
string | |
requestUids |
Array<string(uuid)> | |
spec |
SpecEnvelope | |
status |
string |
ObservationGalleryItem¶
| Name | Type | Description |
|---|---|---|
file |
||
fileId |
string(uuid) | |
id |
integer | |
observationId |
integer | |
observationUid |
||
order |
||
visibility |
boolean |
ObservationPositionOffsetFrame¶
Type: string
ObservationProcessingSettings¶
| Name | Type | Description |
|---|---|---|
effective |
ProcessingPipelineSettings-Output | The override deep-merged onto platform defaults — what the pipeline will actually run under. |
override |
Exactly what is stored: only the fields the owner explicitly set. Null means nothing has been overridden and the observation tracks platform defaults. This is what a modified-from-default indicator and a per-field reset are built on. |
ObservationReprocessReceipt¶
| Name | Type | Description |
|---|---|---|
assetsMarked |
integer | How many of the observation's assets were marked for re-processing. |
ObservationRequestSortField¶
Type: string
ObservationRequestStatus¶
Type: string
ObservationResultDetail¶
| Name | Type | Description |
|---|---|---|
assetsRevision |
integer | |
copiesMode |
CopiesMode | |
copyIndex |
integer | |
currentProcessingRun |
||
currentProcessingRunId |
||
dataProductStatus |
DataProductStatus | |
dirtyFromRevision |
||
epochIndex |
integer | |
fulfilledOn |
||
fulfillmentStatus |
ResultFulfillmentStatus | |
id |
integer | |
instrumentId |
||
lastBuiltRevision |
||
nextEligibleRunAt |
||
notBefore |
||
observationId |
integer | |
requestId |
integer | |
sampleIndex |
integer | |
tasks |
Array<> | |
uid |
string(uuid) |
ObservationResultPipelineOutputKind¶
Type: string
ObservationResultProcessingRun¶
| Name | Type | Description |
|---|---|---|
id |
integer | |
inputAssets |
Array<ObservationAsset> | |
outputs |
Array<ObservationResultProcessingRunOutput> | |
resultId |
integer | |
status |
JobStatus |
ObservationResultProcessingRunOutput¶
| Name | Type | Description |
|---|---|---|
id |
integer | |
observationAsset |
||
observationAssetId |
integer | |
outputKind |
ObservationResultPipelineOutputKind | |
processingRunId |
integer | |
tileId |
||
zeroPointMag |
ObservationResultProcessingRunOutputSummary¶
| Name | Type | Description |
|---|---|---|
id |
integer | |
observationAssetId |
integer | |
outputKind |
ObservationResultPipelineOutputKind | |
processingRunId |
integer | |
tileId |
||
zeroPointMag |
ObservationSortField¶
Type: string
ObservationStatus¶
Type: string
ObservationSummary¶
| Name | Type | Description |
|---|---|---|
affinityHandoffAfterSec |
||
affinityMigrateAt |
ScheduleRung | |
cadenceCalendarUnit |
||
cadenceGapSec |
||
cadenceKind |
CadenceKind | |
cadenceLevel |
||
cadencePeriodSec |
||
cancelOn |
||
cohesionLevel |
ScheduleRung | |
completedOn |
||
coordinationKind |
||
coordinationStartToleranceSec |
||
copiesCount |
||
copiesMode |
CopiesMode | |
coverAssetUid |
||
coverPreviewFileId |
||
coverThumbnailFileId |
||
createdOn |
string(date-time) | Creation timestamp. |
creator |
||
creatorId |
integer | User who created it. |
creatorUid |
||
currentEpoch |
integer | |
epochCount |
integer | Number of visits. 0 = repeat indefinitely. |
galleryItems |
||
groupUid |
||
id |
integer | Unique identifier of the observation. |
instrumentIds |
||
instrumentMode |
InstrumentAccessMode | |
interruptLowerPriority |
boolean | Interrupt lower priority. |
interruptRecovery |
InterruptRecovery | |
isDeleted |
boolean | Flag indicating if deleted. |
isPublic |
boolean | |
lastActivityOn |
||
name |
string | Name of the observation. |
observabilityLastUpdatedOn |
Timestamp of the last observability refresh. | |
observingGrantIds |
||
opticalImagingConfiguration |
||
owner |
||
ownerId |
integer | Entity that funds this observation. |
ownerUid |
||
priority |
integer | |
progressFraction |
number | |
radioMappingConfiguration |
||
radioTrackingConfiguration |
||
requestTypes |
Array<ObservationType> | |
sampleOrdering |
SampleOrdering | |
startAfter |
||
status |
ObservationStatus | |
target |
||
targetId |
Unique identifier of the target associated with the observation. | |
targetUid |
||
uid |
string(uuid) | |
updatedOn |
string(date-time) | Update timestamp. |
ObservationTaskSortField¶
Type: string
ObservationTaskStatus¶
Type: string
ObservationTrackingMode¶
Type: string
ObservationType¶
Type: string
ObservationUpdate¶
| Name | Type | Description |
|---|---|---|
affinityHandoffAfterSec |
||
affinityMigrateAt |
||
cadenceCalendarUnit |
||
cadenceGapSec |
||
cadenceKind |
||
cadenceLevel |
||
cadencePeriodSec |
||
cancelOn |
||
cohesionLevel |
||
completedOn |
||
coordinationKind |
||
coordinationStartToleranceSec |
||
copiesCount |
||
copiesMode |
||
epochCount |
||
instrumentIds |
||
instrumentMode |
||
interruptLowerPriority |
||
interruptRecovery |
||
isDeleted |
||
isPublic |
||
lastActivityOn |
||
name |
||
observabilityLastUpdatedOn |
||
observingGrantIds |
||
opticalImagingConfiguration |
||
ownerId |
||
priority |
||
progressFraction |
||
radioMappingConfiguration |
||
radioTrackingConfiguration |
||
renderSettings |
||
sampleOrdering |
||
startAfter |
||
status |
ObservatoryGalleryItem¶
| Name | Type | Description |
|---|---|---|
file |
||
fileId |
string(uuid) | |
id |
integer | |
observatoryId |
integer | |
order |
||
visibility |
boolean |
ObservatorySummary¶
| Name | Type | Description |
|---|---|---|
countryCode |
string | |
description |
||
elevationM |
number | |
galleryItemIds |
||
iauCode |
||
id |
||
imageId |
||
ipCameraIds |
||
isAvailable |
boolean | |
isPublic |
boolean | |
latitudeDeg |
number | |
location |
string | |
longitudeDeg |
number | |
name |
string | |
owner |
||
ownerId |
integer | |
publicLatitudeDeg |
||
publicLongitudeDeg |
||
shortName |
||
site |
||
siteId |
||
siteUid |
||
slug |
string | |
telescopeIds |
||
uid |
string(uuid) | |
weatherSensorIds |
ObservatoryWithoutTelescopes¶
| Name | Type | Description |
|---|---|---|
countryCode |
string | |
description |
||
elevationM |
number | |
galleryItemIds |
||
galleryItems |
Array<ObservatoryGalleryItem> | |
iauCode |
||
id |
||
imageId |
||
ipCameraIds |
||
ipCameras |
Array<IPCamera> | |
isAvailable |
boolean | |
isPublic |
boolean | |
latitudeDeg |
number | |
location |
string | |
longitudeDeg |
number | |
name |
string | |
owner |
||
ownerId |
integer | |
publicLatitudeDeg |
||
publicLongitudeDeg |
||
shortName |
||
site |
||
siteId |
||
siteUid |
||
slug |
string | |
telescopeIds |
||
telescopes |
Array<TelescopeSummary> | |
uid |
string(uuid) | |
weatherSensorIds |
||
weatherSensors |
Array<WeatherSensor> |
ObservingAccountDetail¶
| Name | Type | Description |
|---|---|---|
creditsUsed |
||
effectiveQueueAccessGrants |
||
id |
integer | |
isDeleted |
boolean | |
lastActivityOn |
||
managingGroup |
||
managingGroupId |
||
name |
||
observingPolicy |
||
observingPolicyId |
||
order |
integer | |
owner |
||
ownerId |
integer | |
path |
||
queueAccessGrantIds |
||
quotas |
||
slug |
||
sourceAccountGrant |
||
sourceAccountGrantId |
||
sourceAccountId |
||
sponsor |
||
upstreamQuotaConstraints |
ObservingAccountQuota¶
| Name | Type | Description |
|---|---|---|
accountId |
integer | |
anchorAt |
||
createdOn |
string(date-time) | |
creditsRemainingInWindow |
number | |
creditsUsedInWindow |
number | |
currentWindowEnd |
||
currentWindowStart |
||
enabled |
boolean | |
id |
integer | |
maxCredits |
number | |
periodType |
ObservingQuotaPeriodType | |
startsAtLocalTime |
||
timezone |
string | |
updatedOn |
string(date-time) |
ObservingDataPolicy¶
Type: string
ObservingGrantQuota¶
| Name | Type | Description |
|---|---|---|
anchorAt |
||
createdOn |
string(date-time) | |
creditsRemainingInWindow |
number | |
creditsUsedInWindow |
number | |
currentWindowEnd |
||
currentWindowStart |
||
enabled |
boolean | |
grantId |
integer | |
id |
integer | |
maxCredits |
number | |
periodType |
ObservingQuotaPeriodType | |
startsAtLocalTime |
||
timezone |
string | |
updatedOn |
string(date-time) |
ObservingPlan¶
| Name | Type | Description |
|---|---|---|
allRequestsObservable |
boolean | |
anyRequestsObservable |
boolean | |
constraints |
Array<string> | |
instrument |
||
isObservable |
boolean | |
legendColor |
string | |
observabilityWindows |
Array<ObservabilityWindow> | |
observationId |
integer | |
opticalImagingConfigurationPlan |
||
radioMappingConfigurationPlan |
||
radioTrackingConfigurationPlan |
||
requestPlanMap |
||
telescope |
TelescopeDetail |
ObservingPolicySummary¶
| Name | Type | Description |
|---|---|---|
allowedCatalogObjectTypes |
||
allowedCoordinateTypes |
||
allowedDataPolicies |
Array<ObservingDataPolicy> | |
allowedRequestTypes |
Array<ObservationType> | |
allowedTargetPositionTypes |
||
allowHiddenObservation |
boolean | |
allowHiddenTelemetry |
boolean | |
dataPublicAfter |
||
description |
||
id |
integer | |
name |
string | |
organizationId |
integer |
ObservingQueueAccessGrantSummary¶
| Name | Type | Description |
|---|---|---|
effectiveOrder |
integer | |
id |
integer | |
observingPolicyId |
||
order |
integer | |
queue |
||
queueId |
integer | |
revoked |
boolean | |
telescopeAccessGrant |
||
telescopeAccessGrantId |
integer | |
timeContested |
number | |
timeUsed |
number | |
timeWaiting |
number |
ObservingQueueAccessPrioritization¶
Type: string
ObservingQueueSummary¶
| Name | Type | Description |
|---|---|---|
accessPrioritization |
ObservingQueueAccessPrioritization | |
canInterrupt |
boolean | |
description |
string | |
enabled |
boolean | |
id |
integer | |
name |
string | |
order |
integer | |
slug |
string | |
telescope |
||
telescopeId |
integer |
ObservingQuotaPeriodType¶
Type: string
OperationalConstraintAction¶
| Name | Type | Description |
|---|---|---|
action |
OperationalConstraintActionType | |
deviceId |
integer | |
deviceUid |
||
id |
||
operationalConstraintId |
integer | |
priority |
integer | |
triggerOnStabilizing |
boolean | |
triggerOnUnknown |
boolean | |
triggerOnUnsafe |
boolean | |
uid |
string(uuid) |
OperationalConstraintActionType¶
Type: string
OpticalFrameQaMetrics¶
| Name | Type | Description |
|---|---|---|
appliedPointingOffsetEastArcsec |
||
appliedPointingOffsetNorthArcsec |
||
backgroundCounts |
||
elongation |
||
fwhmArcsec |
||
kind |
string | |
pointingErrorArcsec |
||
schemaVersion |
integer | |
sourceCount |
||
wcsMethod |
||
wcsSolved |
OpticalImagerCalibrationConfiguration¶
| Name | Type | Description |
|---|---|---|
biasMaxSunElevationDeg |
number | Maximum allowed Sun elevation for bias calibrations (degrees) |
biasMinSunElevationDeg |
number | Minimum allowed Sun elevation for bias calibrations (degrees) |
calibrationIntervalHours |
number | Interval between bias/dark calibration samples (hours) |
calibrationObservationMaxAgeHours |
number | Roll the calibration observation over once it is older than this (hours) |
calibrationObservationMaxTasks |
integer | Roll the calibration observation over once it has this many tasks |
darkExposureTimes |
Array<number> | Dark exposure times to collect, in seconds. |
darkFilterMoveEnabled |
boolean | When true, SkyNode moves the filter wheel to the opaque dark filter before dark/bias frames |
darkFilterWheelPosition |
Resolved filter wheel position (opaque/blank slot) used for dark/bias frames when dark_filter_move_enabled | |
darkMaxSunElevationDeg |
number | Maximum allowed Sun elevation for dark calibrations (degrees) |
darkMinSunElevationDeg |
number | Minimum allowed Sun elevation for dark calibrations (degrees) |
flatFieldSource |
FlatFieldSource | Flat field illumination source |
flatToleranceFraction |
number | Fractional tolerance for flat-field average counts |
imagerId |
integer | Optical imager ID |
maxExposureTimeSec |
number | Maximum acceptable exposure time for flats (seconds) |
minExposureTimeSec |
number | Minimum acceptable exposure time for flats (seconds) |
numBiases |
integer | Number of bias frames |
numDarks |
integer | Number of dark frames |
numFlats |
integer | Number of flat frames |
screenFlatEnclosureAzimuthDeg |
Enclosure azimuth for enclosure-screen flats (degrees) | |
screenFlatMaxSunElevationDeg |
number | Maximum allowed Sun elevation for enclosure-screen flat calibrations (degrees) |
screenFlatMinSunElevationDeg |
number | Minimum allowed Sun elevation for enclosure-screen flat calibrations (degrees) |
screenFlatMountAltitudeDeg |
Mount altitude for enclosure-screen flats (degrees) | |
screenFlatMountAzimuthDeg |
Mount azimuth for enclosure-screen flats (degrees) | |
targetFullWellFraction |
number | Target fraction of full well depth for flats |
twilightFlatIntervalHours |
number | Interval between samples of each twilight-flat filter (hours) |
twilightFlatMaxSunElevationDeg |
number | Maximum allowed Sun elevation for twilight flat calibrations (degrees) |
twilightFlatMinSunElevationDeg |
number | Minimum allowed Sun elevation for twilight flat calibrations (degrees) |
OpticalImagerDetail¶
| Name | Type | Description |
|---|---|---|
calibrationConfiguration |
Calibration configuration | |
calibrationMasterStrategy |
CalibrationMasterStrategy | How calibration masters are produced |
camera |
Camera details | |
cameraId |
integer | Camera PK |
cameraUid |
Camera UID | |
configurationUpdatedOn |
string(date-time) | Timestamp of last scheduling-relevant configuration update |
configurationVersion |
integer | Monotonic scheduling configuration version |
filterCombinations |
Allowed filter combos | |
filterWheelIds |
Array<integer> | Filter Wheel PKs |
filterWheels |
Array<FilterWheelDetail> | |
filterWheelUids |
Filter Wheel UIDs | |
focuser |
Focuser details | |
focuserId |
Focuser PK | |
focuserUid |
Focuser UID | |
focusReferenceTemperatureC |
Reference temperature for focus calibration | |
focusTemperatureCompensationEnabled |
boolean | Whether focus temperature compensation is enabled |
focusTemperatureSlope |
Focus slope (position units per degree) | |
focusTemperatureSource |
Temperature source for focus compensation | |
focusZeroPoint |
Focuser position at reference temperature | |
fov |
FOV (width, height) in degrees | |
id |
Instrument PK | |
instrumentRotator |
Instrument rotator details | |
instrumentRotatorId |
Instrument rotator PK | |
instrumentRotatorUid |
Instrument rotator UID | |
instrumentType |
string | Optical imager |
isActive |
boolean | Is active? |
name |
string | Instrument name |
ota |
OTA details | |
otaId |
integer | OTA PK |
otaUid |
OTA UID | |
pixelScale |
Pixel scale (arcsec/pixel) | |
pointingRefinementEnabled |
boolean | Whether pre-flight pointing refinement runs for this imager |
seeingArcsec |
number | Seeing (arcsec) |
skyParams |
Sky parameters | |
solveBlindFallbackEnabled |
boolean | On an adequate-source miss, fall back to a blind triangle solve to recover the reference PA + parity |
solveExposureSec |
number | Base solve test-exposure time, scaled by filter throughput |
solveFilterPolicy |
SolveFilterPolicy | Solve-filter selection policy |
solveLastMeasuredAt |
When the server pipeline last confirmed/corrected PA/parity | |
solveMinFilterThroughputFraction |
number | Min filter throughput (0-1) usable for a solve exposure |
solveMinSources |
integer | Extracted-source floor splitting the miss remedy: at/above = blind-eligible, below = repoint-eligible |
solveParity |
Net image handedness as the WCS-determinant sign (+1 normal, -1 flipped) | |
solvePointingRadiusArcmin |
number | Pointing-uncertainty search radius for the constrained solve |
solveReferencePositionAngleDeg |
On-sky PA when the rotator reads 0 (solver adds the live rotator angle) | |
solveRepointAttempts |
integer | Max repoint-and-retry fields tried on star-poor misses (only used when solve_repoint_enabled) |
solveRepointDistanceArcmin |
number | Distance to slew for each repoint attempt (cycling N/E/S/W) |
solveRepointEnabled |
boolean | On a star-poor miss, slew to a nearby field, solve there, and apply the correction back to the target |
solveRotationToleranceDeg |
number | Max rotation deviation from the prior for the constrained solve |
solveScaleToleranceFraction |
number | Max scale deviation from the prior (0-1) for the constrained solve |
telescope |
Telescope | |
telescopeId |
integer | Owning telescope PK |
telescopeUid |
Owning telescope UID | |
uid |
string(uuid) | Instrument UID |
weatherSensorId |
Weather sensor PK for ambient focus compensation | |
weatherSensorUid |
Weather sensor UID for ambient focus compensation |
OpticalImagerWithoutTelescope¶
| Name | Type | Description |
|---|---|---|
calibrationConfiguration |
Calibration configuration | |
calibrationMasterStrategy |
CalibrationMasterStrategy | How calibration masters are produced |
camera |
Camera details | |
cameraId |
integer | Camera PK |
cameraUid |
Camera UID | |
configurationUpdatedOn |
string(date-time) | Timestamp of last scheduling-relevant configuration update |
configurationVersion |
integer | Monotonic scheduling configuration version |
filterCombinations |
Allowed filter combos | |
filterWheelIds |
Array<integer> | Filter Wheel PKs |
filterWheels |
Array<FilterWheelDetail> | |
filterWheelUids |
Filter Wheel UIDs | |
focuser |
Focuser details | |
focuserId |
Focuser PK | |
focuserUid |
Focuser UID | |
focusReferenceTemperatureC |
Reference temperature for focus calibration | |
focusTemperatureCompensationEnabled |
boolean | Whether focus temperature compensation is enabled |
focusTemperatureSlope |
Focus slope (position units per degree) | |
focusTemperatureSource |
Temperature source for focus compensation | |
focusZeroPoint |
Focuser position at reference temperature | |
fov |
FOV (width, height) in degrees | |
id |
Instrument PK | |
instrumentRotator |
Instrument rotator details | |
instrumentRotatorId |
Instrument rotator PK | |
instrumentRotatorUid |
Instrument rotator UID | |
instrumentType |
string | Optical imager |
isActive |
boolean | Is active? |
name |
string | Instrument name |
ota |
OTA details | |
otaId |
integer | OTA PK |
otaUid |
OTA UID | |
pixelScale |
Pixel scale (arcsec/pixel) | |
pointingRefinementEnabled |
boolean | Whether pre-flight pointing refinement runs for this imager |
seeingArcsec |
number | Seeing (arcsec) |
skyParams |
Sky parameters | |
solveBlindFallbackEnabled |
boolean | On an adequate-source miss, fall back to a blind triangle solve to recover the reference PA + parity |
solveExposureSec |
number | Base solve test-exposure time, scaled by filter throughput |
solveFilterPolicy |
SolveFilterPolicy | Solve-filter selection policy |
solveLastMeasuredAt |
When the server pipeline last confirmed/corrected PA/parity | |
solveMinFilterThroughputFraction |
number | Min filter throughput (0-1) usable for a solve exposure |
solveMinSources |
integer | Extracted-source floor splitting the miss remedy: at/above = blind-eligible, below = repoint-eligible |
solveParity |
Net image handedness as the WCS-determinant sign (+1 normal, -1 flipped) | |
solvePointingRadiusArcmin |
number | Pointing-uncertainty search radius for the constrained solve |
solveReferencePositionAngleDeg |
On-sky PA when the rotator reads 0 (solver adds the live rotator angle) | |
solveRepointAttempts |
integer | Max repoint-and-retry fields tried on star-poor misses (only used when solve_repoint_enabled) |
solveRepointDistanceArcmin |
number | Distance to slew for each repoint attempt (cycling N/E/S/W) |
solveRepointEnabled |
boolean | On a star-poor miss, slew to a nearby field, solve there, and apply the correction back to the target |
solveRotationToleranceDeg |
number | Max rotation deviation from the prior for the constrained solve |
solveScaleToleranceFraction |
number | Max scale deviation from the prior (0-1) for the constrained solve |
telescope |
Telescope | |
telescopeId |
integer | Owning telescope PK |
telescopeUid |
Owning telescope UID | |
uid |
string(uuid) | Instrument UID |
weatherSensorId |
Weather sensor PK for ambient focus compensation | |
weatherSensorUid |
Weather sensor UID for ambient focus compensation |
OpticalImagingBiasCalibrationRequest¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
cameraId |
||
ccdTemperatureC |
||
createdOn |
||
currentSample |
integer | |
expiresOn |
||
id |
integer | |
instrumentId |
||
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
modifiedOn |
||
observationId |
integer | |
observationUid |
||
order |
integer | |
progressFraction |
number | |
readoutModeId |
||
requestType |
string | |
requiredFrames |
integer | |
sampleCount |
integer | |
status |
ObservationRequestStatus | |
temperatureBand |
||
uid |
string(uuid) |
OpticalImagingBiasCalibrationRequestCreate¶
| Name | Type | Description |
|---|---|---|
active |
||
cameraId |
||
ccdTemperatureC |
||
createdOn |
||
expiresOn |
||
instrumentId |
||
instrumentMode |
||
isDeleted |
||
modifiedOn |
||
observationId |
||
order |
integer | |
readoutModeId |
||
requestType |
string | |
requiredFrames |
integer | |
sampleCount |
||
status |
||
temperatureBand |
OpticalImagingBiasCalibrationRequestDetail¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
cameraId |
||
ccdTemperatureC |
||
createdOn |
||
currentSample |
integer | |
currentTask |
||
expiresOn |
||
id |
integer | |
instrumentId |
||
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
modifiedOn |
||
observationId |
integer | |
observationUid |
||
order |
integer | |
progressFraction |
number | |
readoutModeId |
||
requestType |
string | |
requiredFrames |
integer | |
sampleCount |
integer | |
status |
ObservationRequestStatus | |
temperatureBand |
||
uid |
string(uuid) |
OpticalImagingBiasCalibrationRequestPlan¶
| Name | Type | Description |
|---|---|---|
acquiredFrames |
integer | |
constraints |
Array<string> | |
expiresOn |
||
instrumentId |
integer | |
isObservable |
boolean | |
requestId |
integer | |
requestType |
string | |
requiredFrames |
integer | |
sampleCount |
integer |
OpticalImagingBiasCalibrationRequestSummary¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
cameraId |
||
ccdTemperatureC |
||
createdOn |
||
currentSample |
integer | |
expiresOn |
||
id |
integer | |
instrumentId |
||
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
modifiedOn |
||
observationId |
integer | |
observationUid |
||
order |
integer | |
progressFraction |
number | |
readoutModeId |
||
requestType |
string | |
requiredFrames |
integer | |
sampleCount |
integer | |
status |
ObservationRequestStatus | |
temperatureBand |
||
uid |
string(uuid) |
OpticalImagingBiasCalibrationRequestUpdate¶
| Name | Type | Description |
|---|---|---|
active |
||
cameraId |
||
ccdTemperatureC |
||
createdOn |
||
expiresOn |
||
instrumentId |
||
instrumentMode |
||
isDeleted |
||
modifiedOn |
||
observationId |
||
order |
||
readoutModeId |
||
requestType |
string | |
requiredFrames |
||
sampleCount |
||
status |
||
temperatureBand |
OpticalImagingBiasCalibrationTask¶
| Name | Type | Description |
|---|---|---|
acquiredFrames |
integer | |
actualEndTime |
||
actualStartTime |
||
assetsRevision |
integer | |
cameraId |
||
cameraUid |
||
ccdTemperatureC |
||
completedOn |
||
earliestStartTime |
||
expirationTime |
||
expiresOn |
||
id |
integer | |
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
masterFileId |
||
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
readoutModeId |
||
requestId |
integer | |
requestUid |
||
requiredFrames |
integer | |
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
targetId |
||
taskType |
string | |
temperatureBand |
||
totalPlannedDuration |
||
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
OpticalImagingBiasCalibrationTaskDetail¶
| Name | Type | Description |
|---|---|---|
acquiredFrames |
integer | |
actualEndTime |
||
actualStartTime |
||
assetsRevision |
integer | |
camera |
||
cameraId |
||
cameraUid |
||
ccdTemperatureC |
||
completedOn |
||
earliestStartTime |
||
expirationTime |
||
expiresOn |
||
id |
integer | |
instrument |
OpticalImagerDetail | |
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
masterFileId |
||
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
readoutMode |
||
readoutModeId |
||
request |
OpticalImagingBiasCalibrationRequestDetail | |
requestId |
integer | |
requestUid |
||
requiredFrames |
integer | |
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
target |
||
targetId |
||
taskType |
string | |
temperatureBand |
||
totalPlannedDuration |
||
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
OpticalImagingBiasCalibrationTaskSummary¶
| Name | Type | Description |
|---|---|---|
acquiredFrames |
integer | |
actualEndTime |
||
actualStartTime |
||
assetsRevision |
integer | |
cameraId |
||
cameraUid |
||
ccdTemperatureC |
||
completedOn |
||
earliestStartTime |
||
expirationTime |
||
expiresOn |
||
id |
integer | |
instrument |
||
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
masterFileId |
||
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
readoutModeId |
||
requestId |
integer | |
requestUid |
||
requiredFrames |
integer | |
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
targetId |
||
taskType |
string | |
temperatureBand |
||
totalPlannedDuration |
||
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
OpticalImagingCalibrationObservationAssetTaskInfoDetail¶
| Name | Type | Description |
|---|---|---|
exposureTimeSec |
||
frameNumber |
||
observationAssetId |
||
observationAssetUid |
||
task |
||
taskId |
integer | |
taskType |
string | |
taskUid |
||
uid |
string(uuid) |
OpticalImagingConfiguration-Input¶
| Name | Type | Description |
|---|---|---|
brightnessModel |
||
brightnessModelId |
||
ditherPositionAngleDeg |
||
ditherSteps |
||
ditherStepSizeDeg |
||
ditherStrategy |
DitherStrategy | |
fieldLockedOn |
||
imageNormalizationSettingsId |
||
lunarPhaseDirection |
||
maxElevationDeg |
||
maxFovXArcmin |
||
maxFovYArcmin |
||
maxMoonPhaseFraction |
||
maxPixelScaleArcsecPerPx |
||
maxSunElevationDeg |
||
maxTiles |
integer | |
minElevationDeg |
||
minFovXArcmin |
||
minFovYArcmin |
||
minMoonPhaseFraction |
||
minMoonSeparationDeg |
||
minPixelScaleArcsecPerPx |
||
minPixelsPerFwhm |
||
minSunElevationDeg |
||
positionAngleDeg |
||
recenteringThreshold |
||
repointingStrategy |
RepointingStrategy | |
saturationModel |
||
saturationModelId |
||
temporalOffsetSec |
number | |
tileOverlap |
number | |
trackingMode |
ObservationTrackingMode |
OpticalImagingConfiguration-Output¶
| Name | Type | Description |
|---|---|---|
brightnessModel |
||
brightnessModelId |
||
ditherPositionAngleDeg |
||
ditherSteps |
||
ditherStepSizeDeg |
||
ditherStrategy |
DitherStrategy | |
fieldLockedOn |
||
imageNormalizationSettingsId |
||
lunarPhaseDirection |
||
maxElevationDeg |
||
maxFovXArcmin |
||
maxFovYArcmin |
||
maxMoonPhaseFraction |
||
maxPixelScaleArcsecPerPx |
||
maxSunElevationDeg |
||
maxTiles |
integer | |
minElevationDeg |
||
minFovXArcmin |
||
minFovYArcmin |
||
minMoonPhaseFraction |
||
minMoonSeparationDeg |
||
minPixelScaleArcsecPerPx |
||
minPixelsPerFwhm |
||
minSunElevationDeg |
||
positionAngleDeg |
||
recenteringThreshold |
||
repointingStrategy |
RepointingStrategy | |
saturationModel |
||
saturationModelId |
||
temporalOffsetSec |
number | |
tileOverlap |
number | |
trackingMode |
ObservationTrackingMode |
OpticalImagingConfigurationPlan¶
| Name | Type | Description |
|---|---|---|
dither |
Array<OpticalImagingOffset> | |
positionAngleDeg |
number | |
selectedFiltersByRequest |
||
tiles |
Array<OpticalImagingOffset> | |
totalExposures |
integer | |
totalExposureTimeSec |
number | |
xFov |
number | |
yFov |
number |
OpticalImagingDarkCalibrationRequest¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
cameraId |
||
ccdTemperatureC |
||
createdOn |
||
currentSample |
integer | |
expiresOn |
||
exposureTimeSec |
||
id |
integer | |
instrumentId |
||
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
modifiedOn |
||
observationId |
integer | |
observationUid |
||
order |
integer | |
progressFraction |
number | |
readoutModeId |
||
requestType |
string | |
requiredFrames |
integer | |
sampleCount |
integer | |
status |
ObservationRequestStatus | |
temperatureBand |
||
uid |
string(uuid) |
OpticalImagingDarkCalibrationRequestCreate¶
| Name | Type | Description |
|---|---|---|
active |
||
cameraId |
||
ccdTemperatureC |
||
createdOn |
||
expiresOn |
||
exposureTimeSec |
||
instrumentId |
||
instrumentMode |
||
isDeleted |
||
modifiedOn |
||
observationId |
||
order |
integer | |
readoutModeId |
||
requestType |
string | |
requiredFrames |
integer | |
sampleCount |
||
status |
||
temperatureBand |
OpticalImagingDarkCalibrationRequestDetail¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
cameraId |
||
ccdTemperatureC |
||
createdOn |
||
currentSample |
integer | |
currentTask |
||
expiresOn |
||
exposureTimeSec |
||
id |
integer | |
instrumentId |
||
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
modifiedOn |
||
observationId |
integer | |
observationUid |
||
order |
integer | |
progressFraction |
number | |
readoutModeId |
||
requestType |
string | |
requiredFrames |
integer | |
sampleCount |
integer | |
status |
ObservationRequestStatus | |
temperatureBand |
||
uid |
string(uuid) |
OpticalImagingDarkCalibrationRequestPlan¶
| Name | Type | Description |
|---|---|---|
acquiredFrames |
integer | |
constraints |
Array<string> | |
expiresOn |
||
instrumentId |
integer | |
isObservable |
boolean | |
requestId |
integer | |
requestType |
string | |
requiredFrames |
integer | |
sampleCount |
integer |
OpticalImagingDarkCalibrationRequestSummary¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
cameraId |
||
ccdTemperatureC |
||
createdOn |
||
currentSample |
integer | |
expiresOn |
||
exposureTimeSec |
||
id |
integer | |
instrumentId |
||
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
modifiedOn |
||
observationId |
integer | |
observationUid |
||
order |
integer | |
progressFraction |
number | |
readoutModeId |
||
requestType |
string | |
requiredFrames |
integer | |
sampleCount |
integer | |
status |
ObservationRequestStatus | |
temperatureBand |
||
uid |
string(uuid) |
OpticalImagingDarkCalibrationRequestUpdate¶
| Name | Type | Description |
|---|---|---|
active |
||
cameraId |
||
ccdTemperatureC |
||
createdOn |
||
expiresOn |
||
exposureTimeSec |
||
instrumentId |
||
instrumentMode |
||
isDeleted |
||
modifiedOn |
||
observationId |
||
order |
||
readoutModeId |
||
requestType |
string | |
requiredFrames |
||
sampleCount |
||
status |
||
temperatureBand |
OpticalImagingDarkCalibrationTask¶
| Name | Type | Description |
|---|---|---|
acquiredFrames |
integer | |
actualEndTime |
||
actualStartTime |
||
assetsRevision |
integer | |
cameraId |
||
cameraUid |
||
ccdTemperatureC |
||
completedOn |
||
earliestStartTime |
||
expirationTime |
||
expiresOn |
||
exposureTimeSec |
||
id |
integer | |
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
masterFileId |
||
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
readoutModeId |
||
requestId |
integer | |
requestUid |
||
requiredFrames |
integer | |
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
targetId |
||
taskType |
string | |
temperatureBand |
||
totalPlannedDuration |
||
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
OpticalImagingDarkCalibrationTaskDetail¶
| Name | Type | Description |
|---|---|---|
acquiredFrames |
integer | |
actualEndTime |
||
actualStartTime |
||
assetsRevision |
integer | |
camera |
||
cameraId |
||
cameraUid |
||
ccdTemperatureC |
||
completedOn |
||
earliestStartTime |
||
expirationTime |
||
expiresOn |
||
exposureTimeSec |
||
id |
integer | |
instrument |
OpticalImagerDetail | |
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
masterFileId |
||
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
readoutMode |
||
readoutModeId |
||
request |
OpticalImagingDarkCalibrationRequestDetail | |
requestId |
integer | |
requestUid |
||
requiredFrames |
integer | |
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
target |
||
targetId |
||
taskType |
string | |
temperatureBand |
||
totalPlannedDuration |
||
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
OpticalImagingDarkCalibrationTaskSummary¶
| Name | Type | Description |
|---|---|---|
acquiredFrames |
integer | |
actualEndTime |
||
actualStartTime |
||
assetsRevision |
integer | |
cameraId |
||
cameraUid |
||
ccdTemperatureC |
||
completedOn |
||
earliestStartTime |
||
expirationTime |
||
expiresOn |
||
exposureTimeSec |
||
id |
integer | |
instrument |
||
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
masterFileId |
||
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
readoutModeId |
||
requestId |
integer | |
requestUid |
||
requiredFrames |
integer | |
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
targetId |
||
taskType |
string | |
temperatureBand |
||
totalPlannedDuration |
||
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
OpticalImagingFlatCalibrationRequest¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
cameraId |
||
ccdTemperatureC |
||
createdOn |
||
currentSample |
integer | |
expiresOn |
||
filterIds |
Array<string> | |
id |
integer | |
instrumentId |
||
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
maxExposureTimeSec |
||
minExposureTimeSec |
||
modifiedOn |
||
observationId |
integer | |
observationUid |
||
order |
integer | |
progressFraction |
number | |
readoutModeId |
||
requestType |
string | |
requiredFrames |
integer | |
sampleCount |
integer | |
status |
ObservationRequestStatus | |
targetFullWellFraction |
||
temperatureBand |
||
uid |
string(uuid) |
OpticalImagingFlatCalibrationRequestCreate¶
| Name | Type | Description |
|---|---|---|
active |
||
cameraId |
||
ccdTemperatureC |
||
createdOn |
||
expiresOn |
||
filterIds |
||
instrumentId |
||
instrumentMode |
||
isDeleted |
||
maxExposureTimeSec |
||
minExposureTimeSec |
||
modifiedOn |
||
observationId |
||
order |
integer | |
readoutModeId |
||
requestType |
string | |
requiredFrames |
integer | |
sampleCount |
||
status |
||
targetFullWellFraction |
||
temperatureBand |
OpticalImagingFlatCalibrationRequestDetail¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
cameraId |
||
ccdTemperatureC |
||
createdOn |
||
currentSample |
integer | |
currentTask |
||
expiresOn |
||
filterIds |
Array<string> | |
filters |
Array<Filter> | |
id |
integer | |
instrumentId |
||
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
maxExposureTimeSec |
||
minExposureTimeSec |
||
modifiedOn |
||
observationId |
integer | |
observationUid |
||
order |
integer | |
progressFraction |
number | |
readoutModeId |
||
requestType |
string | |
requiredFrames |
integer | |
sampleCount |
integer | |
status |
ObservationRequestStatus | |
targetFullWellFraction |
||
temperatureBand |
||
uid |
string(uuid) |
OpticalImagingFlatCalibrationRequestPlan¶
| Name | Type | Description |
|---|---|---|
acquiredFrames |
integer | |
constraints |
Array<string> | |
expiresOn |
||
instrumentId |
integer | |
isObservable |
boolean | |
requestId |
integer | |
requestType |
string | |
requiredFrames |
integer | |
sampleCount |
integer |
OpticalImagingFlatCalibrationRequestSummary¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
cameraId |
||
ccdTemperatureC |
||
createdOn |
||
currentSample |
integer | |
expiresOn |
||
filterIds |
Array<string> | |
filters |
Array<Filter> | |
id |
integer | |
instrumentId |
||
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
maxExposureTimeSec |
||
minExposureTimeSec |
||
modifiedOn |
||
observationId |
integer | |
observationUid |
||
order |
integer | |
progressFraction |
number | |
readoutModeId |
||
requestType |
string | |
requiredFrames |
integer | |
sampleCount |
integer | |
status |
ObservationRequestStatus | |
targetFullWellFraction |
||
temperatureBand |
||
uid |
string(uuid) |
OpticalImagingFlatCalibrationRequestUpdate¶
| Name | Type | Description |
|---|---|---|
active |
||
cameraId |
||
ccdTemperatureC |
||
createdOn |
||
expiresOn |
||
filterIds |
||
instrumentId |
||
instrumentMode |
||
isDeleted |
||
maxExposureTimeSec |
||
minExposureTimeSec |
||
modifiedOn |
||
observationId |
||
order |
||
readoutModeId |
||
requestType |
string | |
requiredFrames |
||
sampleCount |
||
status |
||
targetFullWellFraction |
||
temperatureBand |
OpticalImagingFlatCalibrationTask¶
| Name | Type | Description |
|---|---|---|
acquiredFrames |
integer | |
actualEndTime |
||
actualStartTime |
||
assetsRevision |
integer | |
cameraId |
||
cameraUid |
||
ccdTemperatureC |
||
completedOn |
||
earliestStartTime |
||
expirationTime |
||
expiresOn |
||
filterIds |
||
filterWheelPositionIds |
||
id |
integer | |
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
masterFileId |
||
maxExposureTimeSec |
||
minExposureTimeSec |
||
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
readoutModeId |
||
requestId |
integer | |
requestUid |
||
requiredFrames |
integer | |
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
targetFullWellFraction |
||
targetId |
||
taskType |
string | |
temperatureBand |
||
totalPlannedDuration |
||
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
OpticalImagingFlatCalibrationTaskDetail¶
| Name | Type | Description |
|---|---|---|
acquiredFrames |
integer | |
actualEndTime |
||
actualStartTime |
||
assetsRevision |
integer | |
camera |
||
cameraId |
||
cameraUid |
||
ccdTemperatureC |
||
completedOn |
||
earliestStartTime |
||
expirationTime |
||
expiresOn |
||
filterIds |
||
filters |
Array<Filter> | |
filterWheelPositionIds |
||
filterWheelPositions |
Array<FilterWheelPosition> | |
id |
integer | |
instrument |
OpticalImagerDetail | |
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
masterFileId |
||
maxExposureTimeSec |
||
minExposureTimeSec |
||
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
readoutMode |
||
readoutModeId |
||
request |
OpticalImagingFlatCalibrationRequestDetail | |
requestId |
integer | |
requestUid |
||
requiredFrames |
integer | |
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
target |
||
targetFullWellFraction |
||
targetId |
||
taskType |
string | |
temperatureBand |
||
totalPlannedDuration |
||
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
OpticalImagingFlatCalibrationTaskSummary¶
| Name | Type | Description |
|---|---|---|
acquiredFrames |
integer | |
actualEndTime |
||
actualStartTime |
||
assetsRevision |
integer | |
cameraId |
||
cameraUid |
||
ccdTemperatureC |
||
completedOn |
||
earliestStartTime |
||
expirationTime |
||
expiresOn |
||
filterIds |
||
filterWheelPositionIds |
||
id |
integer | |
instrument |
||
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
masterFileId |
||
maxExposureTimeSec |
||
minExposureTimeSec |
||
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
readoutModeId |
||
requestId |
integer | |
requestUid |
||
requiredFrames |
integer | |
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
targetFullWellFraction |
||
targetId |
||
taskType |
string | |
temperatureBand |
||
totalPlannedDuration |
||
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
OpticalImagingObservationAssetTaskInfoDetail¶
| Name | Type | Description |
|---|---|---|
exposureTimeSec |
||
frameNumber |
||
observationAssetId |
||
observationAssetUid |
||
task |
||
taskId |
integer | |
taskType |
string | |
taskUid |
||
tileId |
||
uid |
string(uuid) |
OpticalImagingOffset¶
| Name | Type | Description |
|---|---|---|
cs |
||
sn |
||
x |
number | |
y |
number |
OpticalImagingRequest¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
allowBinning |
||
allowCoadding |
boolean | |
allowFastReadout |
||
allowRegistration |
boolean | |
allowSubframe |
||
createdOn |
||
currentSample |
integer | |
electronicShutter |
||
exposureTimeSec |
||
filterSpecifierIds |
Array<string> | |
globalShutter |
||
hdr |
||
highGain |
||
id |
integer | |
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
maxBitDepth |
||
minBitDepth |
||
modifiedOn |
||
observationId |
integer | |
observationUid |
||
optimizeFor |
||
order |
integer | |
progressFraction |
number | |
rbiFlood |
||
requestType |
string | |
sampleCount |
integer | |
status |
ObservationRequestStatus | |
targetFullWellFraction |
||
targetSnr |
||
uid |
string(uuid) |
OpticalImagingRequestCreate¶
| Name | Type | Description |
|---|---|---|
active |
||
allowBinning |
||
allowCoadding |
||
allowFastReadout |
||
allowRegistration |
||
allowSubframe |
||
createdOn |
||
electronicShutter |
||
exposureTimeSec |
||
filterSpecifierIds |
||
globalShutter |
||
hdr |
||
highGain |
||
instrumentMode |
||
isDeleted |
||
maxBitDepth |
||
minBitDepth |
||
modifiedOn |
||
observationId |
||
optimizeFor |
||
order |
integer | |
rbiFlood |
||
requestType |
string | |
sampleCount |
||
status |
||
targetFullWellFraction |
||
targetSnr |
OpticalImagingRequestDetail¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
allowBinning |
||
allowCoadding |
boolean | |
allowFastReadout |
||
allowRegistration |
boolean | |
allowSubframe |
||
createdOn |
||
currentSample |
integer | |
currentTask |
||
electronicShutter |
||
exposureTimeSec |
||
filterSpecifierIds |
Array<string> | |
filterSpecifiers |
Array<> | |
globalShutter |
||
hdr |
||
highGain |
||
id |
integer | |
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
maxBitDepth |
||
minBitDepth |
||
modifiedOn |
||
observationId |
integer | |
observationUid |
||
optimizeFor |
||
order |
integer | |
progressFraction |
number | |
rbiFlood |
||
requestType |
string | |
sampleCount |
integer | |
status |
ObservationRequestStatus | |
targetFullWellFraction |
||
targetSnr |
||
uid |
string(uuid) |
OpticalImagingRequestPlan¶
| Name | Type | Description |
|---|---|---|
constraints |
Array<string> | |
exposures |
integer | |
exposureTimeSec |
number | |
filters |
Array<Filter> | |
instrumentId |
integer | |
isObservable |
boolean | |
requestId |
integer | |
requestType |
string | |
sampleCount |
integer |
OpticalImagingRequestSummary¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
allowBinning |
||
allowCoadding |
boolean | |
allowFastReadout |
||
allowRegistration |
boolean | |
allowSubframe |
||
createdOn |
||
currentSample |
integer | |
electronicShutter |
||
exposureTimeSec |
||
filterSpecifierIds |
Array<string> | |
filterSpecifiers |
Array<> | |
globalShutter |
||
hdr |
||
highGain |
||
id |
integer | |
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
maxBitDepth |
||
minBitDepth |
||
modifiedOn |
||
observationId |
integer | |
observationUid |
||
optimizeFor |
||
order |
integer | |
progressFraction |
number | |
rbiFlood |
||
requestType |
string | |
sampleCount |
integer | |
status |
ObservationRequestStatus | |
targetFullWellFraction |
||
targetSnr |
||
uid |
string(uuid) |
OpticalImagingRequestUpdate¶
| Name | Type | Description |
|---|---|---|
active |
||
allowBinning |
||
allowCoadding |
||
allowFastReadout |
||
allowRegistration |
||
allowSubframe |
||
createdOn |
||
electronicShutter |
||
exposureTimeSec |
||
filterSpecifierIds |
||
globalShutter |
||
hdr |
||
highGain |
||
instrumentMode |
||
isDeleted |
||
maxBitDepth |
||
minBitDepth |
||
modifiedOn |
||
observationId |
||
optimizeFor |
||
order |
||
rbiFlood |
||
requestType |
string | |
sampleCount |
||
status |
||
targetFullWellFraction |
||
targetSnr |
OpticalImagingTask¶
| Name | Type | Description |
|---|---|---|
acquiredExposureTimeSec |
number | |
acquiredFrames |
integer | |
actualEndTime |
||
actualStartTime |
||
allowSubframe |
boolean | |
assetsRevision |
integer | |
cameraId |
||
cameraUid |
||
completedOn |
||
earliestStartTime |
||
expirationTime |
||
fieldLockedOn |
||
filterIds |
Array<string> | |
filterWheelPositionIds |
Array<integer> | |
id |
integer | |
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
maxExposureTimeSec |
||
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
otaId |
||
otaUid |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
readoutModeId |
||
recenteringThreshold |
||
repointingStrategy |
RepointingStrategy | |
requestId |
integer | |
requestUid |
||
requiredExposureTimeSec |
||
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
subframeFovXArcmin |
||
subframeFovYArcmin |
||
targetId |
||
taskType |
string | |
temporalOffsetSec |
number | |
totalExposures |
integer | |
totalPlannedDuration |
||
trackingMode |
ObservationTrackingMode | |
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
OpticalImagingTaskDetail¶
| Name | Type | Description |
|---|---|---|
acquiredExposureTimeSec |
number | |
acquiredFrames |
integer | |
actualEndTime |
||
actualStartTime |
||
allowSubframe |
boolean | |
assetsRevision |
integer | |
camera |
||
cameraId |
||
cameraUid |
||
completedOn |
||
earliestStartTime |
||
expirationTime |
||
fieldLockedOn |
||
filterIds |
Array<string> | |
filters |
Array<Filter> | |
filterWheelPositionIds |
Array<integer> | |
filterWheelPositions |
Array<FilterWheelPosition> | |
id |
integer | |
instrument |
OpticalImagerDetail | |
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
maxExposureTimeSec |
||
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
ota |
||
otaId |
||
otaUid |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
readoutMode |
||
readoutModeId |
||
recenteringThreshold |
||
repointingStrategy |
RepointingStrategy | |
request |
OpticalImagingRequestDetail | |
requestId |
integer | |
requestUid |
||
requiredExposureTimeSec |
||
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
subframeFovXArcmin |
||
subframeFovYArcmin |
||
target |
Target | |
targetId |
||
taskType |
string | |
temporalOffsetSec |
number | |
tiles |
Array<OpticalImagingTaskTile> | |
totalExposures |
integer | |
totalPlannedDuration |
||
trackingMode |
ObservationTrackingMode | |
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
OpticalImagingTaskSummary¶
| Name | Type | Description |
|---|---|---|
acquiredExposureTimeSec |
number | |
acquiredFrames |
integer | |
actualEndTime |
||
actualStartTime |
||
allowSubframe |
boolean | |
assetsRevision |
integer | |
cameraId |
||
cameraUid |
||
completedOn |
||
earliestStartTime |
||
expirationTime |
||
fieldLockedOn |
||
filterIds |
Array<string> | |
filters |
Array<Filter> | |
filterWheelPositionIds |
Array<integer> | |
id |
integer | |
instrument |
||
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
maxExposureTimeSec |
||
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
otaId |
||
otaUid |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
readoutModeId |
||
recenteringThreshold |
||
repointingStrategy |
RepointingStrategy | |
requestId |
integer | |
requestUid |
||
requiredExposureTimeSec |
||
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
subframeFovXArcmin |
||
subframeFovYArcmin |
||
targetId |
||
taskType |
string | |
temporalOffsetSec |
number | |
totalExposures |
integer | |
totalPlannedDuration |
||
trackingMode |
ObservationTrackingMode | |
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
OpticalImagingTaskTile¶
| Name | Type | Description |
|---|---|---|
acquiredExposureTimeSec |
number | |
acquiredFrames |
integer | |
id |
integer | |
offsetXDeg |
number | |
offsetYDeg |
number | |
order |
integer | |
status |
ExposureStatus | |
taskId |
integer | |
totalExposureTimeSec |
number | |
totalFrames |
integer | |
uid |
OpticalReadoutObjective¶
Type: string
OrbitalPosition¶
| Name | Type | Description |
|---|---|---|
argumentOfPerihelionDeg |
number | |
eccentricity |
number | |
epochJyear |
number | |
id |
integer | |
inclinationDeg |
number | |
longitudeOfAscendingNodeDeg |
number | |
meanAnomalyDeg |
number | |
orbitType |
OrbitType | |
positionType |
string | |
semilatusRectumAu |
number | |
targetId |
||
uid |
string(uuid) |
OrbitalPositionCreate¶
| Name | Type | Description |
|---|---|---|
argumentOfPerihelionDeg |
number | |
eccentricity |
number | |
epochJyear |
number | |
inclinationDeg |
number | |
longitudeOfAscendingNodeDeg |
number | |
meanAnomalyDeg |
number | |
orbitType |
OrbitType | |
positionType |
string | |
semilatusRectumAu |
number |
OrbitalPositionUpdate¶
| Name | Type | Description |
|---|---|---|
argumentOfPerihelionDeg |
||
eccentricity |
||
epochJyear |
||
inclinationDeg |
||
longitudeOfAscendingNodeDeg |
||
meanAnomalyDeg |
||
orbitType |
||
positionType |
string | |
semilatusRectumAu |
OrbitType¶
Type: string
Organization¶
| Name | Type | Description |
|---|---|---|
allowRequestToJoin |
boolean | Whether request-to-join is allowed |
country |
Country provided by the user or organization in their public profile | |
createdOn |
Creation time of this account | |
defaultRoleId |
Default role for users in this organization. | |
description |
Description/Bio provided by the user or organization in their public profile | |
entityType |
string | |
id |
integer | Unique identifier of the user/organization. |
isPublic |
boolean | Whether the organization is listed in the public directory and exposes a public profile. |
location |
Location provided by the user or organization in their public profile | |
memberCount |
Number of members in the organization | |
membersVisibleToMembers |
boolean | Whether ordinary members can see the organization's member roster (both the /members endpoint and the public directory). |
name |
string | Name of the user/organization. |
observingPolicyIds |
Observing policy PKs configured for the organization. | |
profileImageId |
Profile image of the user/organization. | |
shortName |
Short name of the organization | |
slug |
string | Unique identifier used in URLs referencing the user/organization. |
uid |
string(uuid) | Stable, opaque universally-unique identifier for the user/organization. Prefer this over the integer `id` for cross-system references (e.g. it is the OIDC `sub`). See docs/internal/design/auth/AUTH_OIDC_PROVIDER_DESIGN.md and the UID-migration directive. |
websiteUrl |
Website URL provided by the user or organization in their public profile |
OrganizationPublic¶
| Name | Type | Description |
|---|---|---|
allowRequestToJoin |
boolean | Whether request-to-join is allowed |
country |
Country provided by the user or organization in their public profile | |
createdOn |
Creation time of this account | |
defaultRoleId |
Default role for users in this organization. | |
description |
Description/Bio provided by the user or organization in their public profile | |
entityType |
string | |
id |
integer | Unique identifier of the user/organization. |
isPublic |
boolean | Whether the organization is listed in the public directory and exposes a public profile. |
location |
Location provided by the user or organization in their public profile | |
memberCount |
Number of members in the organization | |
membersVisibleToMembers |
boolean | Whether ordinary members can see the organization's member roster (both the /members endpoint and the public directory). |
name |
string | Name of the user/organization. |
observingPolicyIds |
Observing policy PKs configured for the organization. | |
profileImageId |
Profile image of the user/organization. | |
shortName |
Short name of the organization | |
slug |
string | Unique identifier used in URLs referencing the user/organization. |
uid |
string(uuid) | Stable, opaque universally-unique identifier for the user/organization. Prefer this over the integer `id` for cross-system references (e.g. it is the OIDC `sub`). See docs/internal/design/auth/AUTH_OIDC_PROVIDER_DESIGN.md and the UID-migration directive. |
websiteUrl |
Website URL provided by the user or organization in their public profile |
OrganizationSummary¶
| Name | Type | Description |
|---|---|---|
allowRequestToJoin |
boolean | Whether request-to-join is allowed |
country |
Country provided by the user or organization in their public profile | |
createdOn |
Creation time of this account | |
defaultRoleId |
Default role for users in this organization. | |
description |
Description/Bio provided by the user or organization in their public profile | |
entityType |
string | |
id |
integer | Unique identifier of the user/organization. |
isPublic |
boolean | Whether the organization is listed in the public directory and exposes a public profile. |
location |
Location provided by the user or organization in their public profile | |
memberCount |
Number of members in the organization | |
membersVisibleToMembers |
boolean | Whether ordinary members can see the organization's member roster (both the /members endpoint and the public directory). |
name |
string | Name of the user/organization. |
observingPolicyIds |
Observing policy PKs configured for the organization. | |
profileImageId |
Profile image of the user/organization. | |
shortName |
Short name of the organization | |
slug |
string | Unique identifier used in URLs referencing the user/organization. |
uid |
string(uuid) | Stable, opaque universally-unique identifier for the user/organization. Prefer this over the integer `id` for cross-system references (e.g. it is the OIDC `sub`). See docs/internal/design/auth/AUTH_OIDC_PROVIDER_DESIGN.md and the UID-migration directive. |
websiteUrl |
Website URL provided by the user or organization in their public profile |
Ota¶
| Name | Type | Description |
|---|---|---|
apertureM |
number | Unobstructed aperture of the OTA in meters. |
deviceType |
string | |
focalLengthM |
number | Focal length of the OTA in meters. |
id |
The unique identifier for the device. | |
imageId |
Image asset ID for the device. | |
manufacturer |
||
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
offsetScalar |
Distance from mount pivot to OTA axis in meters along mount reference axis. | |
offsetXM |
X offset from parent OTA axis in meters. | |
offsetYM |
Y offset from parent OTA axis in meters. | |
offsetZM |
Z offset from parent OTA axis in meters. | |
operationalConstraintIds |
Operational constraint PKs | |
opticalDesign |
||
ownerId |
integer | The organization or user which owns the device. |
parentOta |
||
parentOtaId |
ID of the parent OTA if piggybacked. | |
serialNumber |
Serial number for the device. | |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
uid |
string(uuid) | The unique UID for the device. |
OtaDetail¶
| Name | Type | Description |
|---|---|---|
apertureM |
number | Unobstructed aperture of the OTA in meters. |
deviceType |
string | |
focalLengthM |
number | Focal length of the OTA in meters. |
id |
The unique identifier for the device. | |
imageId |
Image asset ID for the device. | |
manufacturer |
||
model |
||
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
offsetScalar |
Distance from mount pivot to OTA axis in meters along mount reference axis. | |
offsetXM |
X offset from parent OTA axis in meters. | |
offsetYM |
Y offset from parent OTA axis in meters. | |
offsetZM |
Z offset from parent OTA axis in meters. | |
operationalConstraintActions |
Array<OperationalConstraintAction> | |
operationalConstraintIds |
Operational constraint PKs | |
opticalDesign |
||
ownerId |
integer | The organization or user which owns the device. |
parentOta |
||
parentOtaId |
ID of the parent OTA if piggybacked. | |
serialNumber |
Serial number for the device. | |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
uid |
string(uuid) | The unique UID for the device. |
OtaModel¶
| Name | Type | Description |
|---|---|---|
apertureM |
number | |
deviceType |
string | |
focalLengthM |
number | |
id |
||
imageId |
||
manufacturer |
||
modelName |
string | |
opticalDesign |
OwnerFieldCalibrationSettings¶
| Name | Type | Description |
|---|---|---|
catalogs |
Array<string> | Catalogs to solve the zero point against, in priority order. |
maxSnr |
Highest signal-to-noise a source may have, excluding near-saturated stars. Null disables the ceiling. | |
maxStars |
Cap on calibration stars used. Null means no cap. | |
minSnr |
number | Lowest signal-to-noise a source may have and still calibrate. 0 disables the floor. |
sourceMatchTol |
number | Match radius between a detected source and a catalog star, arcseconds. 0 disables matching. |
variableCheckTol |
number | Match radius against the variable-star catalog, arcseconds. 0 skips the variable check. |
OwnerObservingGrantDetail¶
| Name | Type | Description |
|---|---|---|
account |
||
accountId |
integer | |
createdById |
||
createdOn |
||
creditsUsed |
||
grantType |
string | |
id |
integer | |
quotas |
||
revoked |
boolean | |
revokedById |
||
revokedOn |
OwnerOpticalProcessingSettings¶
| Name | Type | Description |
|---|---|---|
fieldCal |
OwnerFieldCalibrationSettings | |
fieldCalSourcePolicy |
OwnerSourceCullingSettings | |
photometry |
OwnerPhotometrySettings | |
photometrySourcePolicy |
OwnerSourceCullingSettings | |
reduction |
OwnerReductionSettings | |
solve |
OwnerSolveSettings | |
sourceDetection |
OwnerSourceDetectionSettings | |
stages |
OwnerStageToggles | |
wcsSourcePolicy |
OwnerSourceCullingSettings |
OwnerPhotometrySettings¶
| Name | Type | Description |
|---|---|---|
a |
Aperture semi-major axis, pixels. | |
aInPx |
Background annulus inner semi-major axis, pixels. | |
aOutPx |
Background annulus outer semi-major axis, pixels. | |
b |
Aperture semi-minor axis, pixels. | |
bOutPx |
Background annulus outer semi-minor axis, pixels. | |
centroidRadius |
number | Radius in pixels for re-centring on each source; 0 disables centroiding, which is correct in dense fields where a centroid picks up neighbour flux. |
mode |
string | Photometry mode. |
rejectBkgOutliers |
boolean | Reject outlying pixels when estimating the background. |
theta |
number | Aperture position angle, degrees. |
thetaOutDeg |
Background annulus position angle, degrees. |
OwnerRadioProcessingSettings¶
OwnerReductionSettings¶
| Name | Type | Description |
|---|---|---|
masterMaxAgeSec |
How stale a master calibration frame may be, measured from the frame's capture time. Null means no bound, which will happily pair a science frame with a six-month-old flat. |
OwnerSolveSettings¶
| Name | Type | Description |
|---|---|---|
allSkyFallback |
boolean | When the constrained solve ladder finds nothing, run a wide-area astrometry.net search. Slow by design; catches gross mispointing. Requires the deployment to provide astrometry.net indexes. |
OwnerSourceCullingSettings¶
| Name | Type | Description |
|---|---|---|
autoSatLevel |
boolean | Estimate the saturation level from the frame instead. |
clipHi |
number | Reject sources above this brightness percentile. |
clipLo |
number | Reject the faintest percentile of sources. |
discardSaturated |
integer | Drop sources with at least this many saturated pixels. 0 keeps them. |
limit |
Hard cap applied after all other cuts. Null means no cap. | |
maxEllipticity |
number | Reject sources more elongated than this. |
maxFwhm |
number | Reject sources wider than this FWHM, pixels. |
maxSources |
integer | Keep at most this many sources, brightest first. |
minFwhm |
number | Reject sources narrower than this FWHM, pixels. |
satLevel |
number | Saturation level in ADU. |
OwnerSourceDetectionSettings¶
| Name | Type | Description |
|---|---|---|
bkFilterSize |
integer | Background mesh median-filter size. |
bkSize |
number | Background mesh size: a fraction of the image in (0, 1], or pixels above 1. |
centroid |
boolean | Refine positions with windowed centroids. |
clean |
number | SEP cleaning parameter. 0 disables cleaning. |
deblend |
boolean | Deblend overlapping sources. |
deblendContrast |
number | Minimum deblending contrast. |
deblendLevels |
integer | Deblending sub-threshold levels. |
downsample |
integer | Detection downsampling factor. |
fwhm |
number | Matched-filter kernel FWHM prior, pixels. 0 disables. |
minPixels |
integer | Minimum connected pixels for a detection. |
ratio |
number | Kernel axis ratio prior. |
theta |
number | Kernel position-angle prior, degrees. |
threshold |
number | Detection threshold in sigma above background. Lower finds fainter sources for every stage. |
OwnerStageToggles¶
| Name | Type | Description |
|---|---|---|
fieldCalibration |
boolean | Solve the photometric zero point against catalog stars. |
photometry |
boolean | Extract and measure sources on the frame. |
reduction |
boolean | Subtract masters and flat-correct before anything else runs. |
wcsSolve |
boolean | Plate-solve the frame and write the WCS into the product. |
Page_Annotated_Union_OpticalImagingRequestPlan__OpticalImagingBiasCalibrationRequestPlan__OpticalImagingDarkCalibrationRequestPlan__OpticalImagingFlatCalibrationRequestPlan__RadioTrackingRequestPlan__RadioMappingRequestPlanFieldInfoannotation_NoneTyperequired_True__discriminator__request_type____¶
| Name | Type | Description |
|---|---|---|
items |
Array<> | |
page |
integer | |
pages |
integer | |
size |
integer | |
total |
integer |
Page_Annotated_Union_OpticalImagingRequestSummary__OpticalImagingBiasCalibrationRequestSummary__OpticalImagingDarkCalibrationRequestSummary__OpticalImagingFlatCalibrationRequestSummary__RadioTrackingRequestSummary__RadioMappingRequestSummaryFieldInfoannotation_NoneTyperequired_True__discriminator__request_type____¶
| Name | Type | Description |
|---|---|---|
items |
Array<> | |
page |
integer | |
pages |
integer | |
size |
integer | |
total |
integer |
Page_Annotated_Union_OpticalImagingTaskSummary__OpticalImagingBiasCalibrationTaskSummary__OpticalImagingDarkCalibrationTaskSummary__OpticalImagingFlatCalibrationTaskSummary__RadioTrackingTaskSummary__RadioMappingTaskSummaryFieldInfoannotation_NoneTyperequired_True__discriminator__task_type____¶
| Name | Type | Description |
|---|---|---|
items |
Array<> | |
page |
integer | |
pages |
integer | |
size |
integer | |
total |
integer |
Page_DataToolDefinitionWithInstances_¶
| Name | Type | Description |
|---|---|---|
items |
Array<DataToolDefinitionWithInstances> | |
page |
integer | |
pages |
integer | |
size |
integer | |
total |
integer |
Page_EventRead_¶
| Name | Type | Description |
|---|---|---|
items |
Array<EventRead> | |
page |
integer | |
pages |
integer | |
size |
integer | |
total |
integer |
Page_ObservabilityWindow_¶
| Name | Type | Description |
|---|---|---|
items |
Array<ObservabilityWindow> | |
page |
integer | |
pages |
integer | |
size |
integer | |
total |
integer |
Page_ObservationAssetSummary_¶
| Name | Type | Description |
|---|---|---|
items |
Array<ObservationAssetSummary> | |
page |
integer | |
pages |
integer | |
size |
integer | |
total |
integer |
Page_ObservationResultDetail_¶
| Name | Type | Description |
|---|---|---|
items |
Array<ObservationResultDetail> | |
page |
integer | |
pages |
integer | |
size |
integer | |
total |
integer |
Page_ObservationSummary_¶
| Name | Type | Description |
|---|---|---|
items |
Array<ObservationSummary> | |
page |
integer | |
pages |
integer | |
size |
integer | |
total |
integer |
Page_ObservingPlan_¶
| Name | Type | Description |
|---|---|---|
items |
Array<ObservingPlan> | |
page |
integer | |
pages |
integer | |
size |
integer | |
total |
integer |
Page_Target_¶
| Name | Type | Description |
|---|---|---|
items |
Array<Target> | |
page |
integer | |
pages |
integer | |
size |
integer | |
total |
integer |
PierSide¶
Type: string
PlanetarySatellite¶
| Name | Type | Description |
|---|---|---|
bsp |
string | Name of the SPK ephemeris file |
catalogObjectType |
string | |
id |
integer | Primary key of the catalog object |
name |
string | Name of the satellite |
number |
integer | The JPL number of the satellite |
planet |
JPLPlanetName | Central planet of the satellite |
uid |
string(uuid) | Stable UUID of the catalog object |
PolarizationType¶
Type: string
PowerLawSpectralComponent¶
| Name | Type | Description |
|---|---|---|
id |
integer | |
index |
number | The power law decay index. |
spectralComponentType |
string |
PowerLawTemporalComponent¶
| Name | Type | Description |
|---|---|---|
eventTime |
string(date-time) | UTC time of event. |
id |
integer | |
index |
number | The power law decay index. |
referenceTimeSec |
number | Characteristic fading time in seconds. |
temporalComponentType |
string |
ProcessingPipelineSettings-Input¶
| Name | Type | Description |
|---|---|---|
optical |
OwnerOpticalProcessingSettings | |
radio |
OwnerRadioProcessingSettings | |
schemaVersion |
integer | Version of this document's shape, read by the migrator chain. |
ProcessingPipelineSettings-Output¶
| Name | Type | Description |
|---|---|---|
optical |
OwnerOpticalProcessingSettings | |
radio |
OwnerRadioProcessingSettings | |
schemaVersion |
integer | Version of this document's shape, read by the migrator chain. |
RadioBackend¶
| Name | Type | Description |
|---|---|---|
description |
Description | |
deviceType |
string | |
id |
Radio backend PK | |
imageId |
Image asset ID for the device. | |
manufacturer |
||
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
serialNumber |
Serial number for the device. | |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
uid |
string(uuid) | The unique UID for the device. |
RadioBackendConfiguration¶
| Name | Type | Description |
|---|---|---|
bandwidthMhz |
number | |
centerFrequenciesMhz |
Array<number> | |
channels |
integer | |
integrationTimeMs |
number | |
recordMode |
RadioBackendRecordMode |
RadioBackendDetail¶
| Name | Type | Description |
|---|---|---|
description |
Description | |
deviceType |
string | |
id |
Radio backend PK | |
imageId |
Image asset ID for the device. | |
manufacturer |
||
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintActions |
Array<OperationalConstraintAction> | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
serialNumber |
Serial number for the device. | |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
uid |
string(uuid) | The unique UID for the device. |
RadioBackendMode¶
| Name | Type | Description |
|---|---|---|
bandwidthMhz |
number | Bandwidth (MHz) |
channelsExponent |
integer | Channels exponent |
frequencyWindows |
integer | Number of frequency windows |
id |
integer | Radio backend mode PK |
integrationTimesMs |
Integration times (ms) | |
isSimultaneous |
boolean | Is simultaneous? |
minimumIntegrationTimeMs |
Minimum integration time (ms) | |
name |
string | Mode name |
radioBackendId |
integer | Radio backend PK |
recordMode |
RadioBackendRecordMode | Acquisition/output family (spectrometer → SDFITS, pulsar_* → PSRFITS) |
RadioBackendRecordMode¶
Type: string
RadioCoordinateUnit¶
Type: string
RadioFilter¶
| Name | Type | Description |
|---|---|---|
id |
integer | Radio filter PK |
maxFrequencyMhz |
number | Filter upper frequency bound (MHz) |
minFrequencyMhz |
number | Filter lower frequency bound (MHz) |
name |
Filter name | |
receiverId |
integer | Owning receiver PK |
RadioGainCalibrationPlacement¶
Type: string
RadioMappingConfiguration¶
| Name | Type | Description |
|---|---|---|
coordinateType |
CoordinateType | |
coordinateUnit |
RadioCoordinateUnit | |
daisyDiameter |
||
densityAlongSweeps |
number | |
densityBetweenSweeps |
||
enableSphericalCorrection |
boolean | |
integrationTimeSec |
||
mappingStrategy |
RadioMappingStrategy | |
maxSunElevationDeg |
number | |
minElevationDeg |
number | |
minSunSeparationDeg |
number | |
rasterSizeX |
||
rasterSizeY |
||
slewSpeedDegPerSec |
||
sweepDirection |
RadioMappingConfigurationPlan¶
| Name | Type | Description |
|---|---|---|
densityAlongSweepsDeg |
||
densityBetweenSweepsDeg |
||
integrationTimeSec |
||
mappingStrategy |
RadioMappingStrategy | |
samplePoints |
Array<RadioMappingSamplePoint> | |
slewSpeedDegPerSec |
RadioMappingRasterDirection¶
Type: string
RadioMappingRequest¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
createdOn |
||
currentSample |
integer | |
id |
integer | |
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
minResolutionMhz |
||
modifiedOn |
||
observationId |
integer | |
observationUid |
||
order |
integer | |
polarization |
||
progressFraction |
number | |
requestType |
string | |
sampleCount |
integer | |
spectroscopyWindowIds |
Array<integer> | |
status |
ObservationRequestStatus | |
uid |
string(uuid) |
RadioMappingRequestCreate¶
| Name | Type | Description |
|---|---|---|
active |
||
createdOn |
||
instrumentMode |
||
isDeleted |
||
minResolutionMhz |
||
modifiedOn |
||
observationId |
||
order |
integer | |
polarization |
||
requestType |
string | |
sampleCount |
||
spectroscopyWindows |
||
status |
RadioMappingRequestDetail¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
createdOn |
||
currentSample |
integer | |
currentTask |
||
id |
integer | |
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
minResolutionMhz |
||
modifiedOn |
||
observationId |
integer | |
observationUid |
||
order |
integer | |
polarization |
||
progressFraction |
number | |
requestType |
string | |
sampleCount |
integer | |
spectroscopyWindowIds |
Array<integer> | |
spectroscopyWindows |
Array<RadioSpectroscopyWindow> | |
status |
ObservationRequestStatus | |
uid |
string(uuid) |
RadioMappingRequestPlan¶
| Name | Type | Description |
|---|---|---|
backendConfiguration |
RadioBackendConfiguration | |
constraints |
Array<string> | |
daisyDiameterDeg |
||
densityAlongSweepsDeg |
number | |
densityBetweenPathsDeg |
number | |
instrumentId |
integer | |
isObservable |
boolean | |
mappingStrategy |
||
requestId |
integer | |
requestType |
string | |
sampleCount |
integer | |
sizeXDeg |
||
sizeYDeg |
||
slewSpeedDegPerSec |
number | |
sweepDirection |
RadioMappingRequestSummary¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
createdOn |
||
currentSample |
integer | |
id |
integer | |
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
minResolutionMhz |
||
modifiedOn |
||
observationId |
integer | |
observationUid |
||
order |
integer | |
polarization |
||
progressFraction |
number | |
requestType |
string | |
sampleCount |
integer | |
spectroscopyWindowIds |
Array<integer> | |
spectroscopyWindows |
Array<RadioSpectroscopyWindow> | |
status |
ObservationRequestStatus | |
uid |
string(uuid) |
RadioMappingRequestUpdate¶
| Name | Type | Description |
|---|---|---|
active |
||
createdOn |
||
instrumentMode |
||
isDeleted |
||
minResolutionMhz |
||
modifiedOn |
||
observationId |
||
order |
||
polarization |
||
requestType |
string | |
sampleCount |
||
spectroscopyWindows |
||
status |
RadioMappingSamplePoint¶
| Name | Type | Description |
|---|---|---|
index |
integer | |
x |
number | |
y |
number |
RadioMappingStrategy¶
Type: string
RadioMappingTask¶
| Name | Type | Description |
|---|---|---|
actualEndTime |
||
actualStartTime |
||
antennaId |
integer | |
antennaUid |
||
assetsRevision |
integer | |
centralFrequenciesMhz |
Array<number> | |
completedOn |
||
daisyDurationSec |
||
daisyRadialPeriodSec |
||
daisyRadiusDeg |
||
earliestStartTime |
||
expirationTime |
||
id |
integer | |
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
integrationTimeMs |
number | |
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
radioBackendId |
integer | |
radioBackendModeId |
integer | |
radioBackendUid |
||
rasterDensityBetweenSweepsDeg |
||
rasterSizeXDeg |
||
rasterSizeYDeg |
||
rasterSlewSpeedDegPerSec |
||
rasterSweepDirection |
||
receiverFeedIds |
Array<integer> | |
requestId |
integer | |
requestUid |
||
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
targetId |
||
taskType |
string | |
totalPlannedDuration |
||
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
RadioMappingTaskDetail¶
| Name | Type | Description |
|---|---|---|
actualEndTime |
||
actualStartTime |
||
antenna |
Antenna | |
antennaId |
integer | |
antennaUid |
||
assetsRevision |
integer | |
centralFrequenciesMhz |
Array<number> | |
completedOn |
||
daisyDurationSec |
||
daisyRadialPeriodSec |
||
daisyRadiusDeg |
||
earliestStartTime |
||
expirationTime |
||
feeds |
Array<ReceiverFeed> | |
id |
integer | |
instrument |
RadioSpectrometerDetail | |
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
integrationTimeMs |
number | |
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
radioBackend |
RadioBackend | |
radioBackendId |
integer | |
radioBackendMode |
RadioBackendMode | |
radioBackendModeId |
integer | |
radioBackendUid |
||
radioFilters |
Array<RadioFilter> | |
rasterDensityBetweenSweepsDeg |
||
rasterSizeXDeg |
||
rasterSizeYDeg |
||
rasterSlewSpeedDegPerSec |
||
rasterSweepDirection |
||
request |
RadioMappingRequestDetail | |
requestId |
integer | |
requestUid |
||
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
target |
Target | |
targetId |
||
taskType |
string | |
totalPlannedDuration |
||
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
RadioMappingTaskSummary¶
| Name | Type | Description |
|---|---|---|
actualEndTime |
||
actualStartTime |
||
antennaId |
integer | |
antennaUid |
||
assetsRevision |
integer | |
centralFrequenciesMhz |
Array<number> | |
completedOn |
||
daisyDurationSec |
||
daisyRadialPeriodSec |
||
daisyRadiusDeg |
||
earliestStartTime |
||
expirationTime |
||
id |
integer | |
instrument |
||
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
integrationTimeMs |
number | |
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
radioBackendId |
integer | |
radioBackendModeId |
integer | |
radioBackendUid |
||
rasterDensityBetweenSweepsDeg |
||
rasterSizeXDeg |
||
rasterSizeYDeg |
||
rasterSlewSpeedDegPerSec |
||
rasterSweepDirection |
||
receiverFeedIds |
Array<integer> | |
requestId |
integer | |
requestUid |
||
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
targetId |
||
taskType |
string | |
totalPlannedDuration |
||
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
RadioReceiverBand¶
Type: string
RadioReceiverSummary¶
| Name | Type | Description |
|---|---|---|
band |
Receiver band | |
id |
integer | Receiver PK |
maxFrequencyMhz |
number | Maximum frequency (MHz) |
minFrequencyMhz |
number | Minimum frequency (MHz) |
name |
string | Receiver name |
RadioSpectrometerConfiguration¶
| Name | Type | Description |
|---|---|---|
calCycles |
integer | Number of on/off cycles each gain cal runs through |
calDurationSec |
number | Per-phase gain-cal duration (seconds): diode ON for this long, then OFF for this long |
calLevel |
integer | Noise-diode level injected during the ON phase (bounded by the receiver's available levels) |
calMethod |
RadioGainCalibrationPlacement | Where the gain cal sits relative to the science segment |
focusStampIntervalSec |
number | Cadence for stamping focuser position into the acquisition (seconds) |
mountStampIntervalSec |
number | Cadence for stamping actual mount pointing into the acquisition (seconds) |
radioSpectrometerId |
integer | Radio spectrometer ID |
weatherStampIntervalSec |
number | Cadence for stamping ambient temperature into the acquisition (seconds) |
RadioSpectrometerDetail¶
| Name | Type | Description |
|---|---|---|
antenna |
Antenna details | |
antennaId |
Antenna PK | |
antennaUid |
Antenna UID | |
beamwidth |
Beamwidth (degrees) | |
configuration |
Radio spectrometer configuration (gain calibration) | |
configurationUpdatedOn |
string(date-time) | Timestamp of last scheduling-relevant configuration update |
configurationVersion |
integer | Monotonic scheduling configuration version |
focuser |
Focuser details | |
focuserId |
Focuser PK | |
focuserUid |
Focuser UID | |
id |
Instrument PK | |
instrumentType |
string | Radio spectrometer |
isActive |
boolean | Is active? |
name |
string | Instrument name |
receiverId |
Receiver PK (instrument membership) | |
receiverIds |
Receiver PKs | |
receivers |
Receivers | |
receiverSummaries |
Compact descriptors of the connected receivers | |
receiverUid |
Receiver UID | |
telescope |
Telescope | |
telescopeId |
integer | Owning telescope PK |
telescopeUid |
Owning telescope UID | |
uid |
string(uuid) | Instrument UID |
RadioSpectrometerWithoutTelescope¶
| Name | Type | Description |
|---|---|---|
antenna |
Antenna details | |
antennaId |
Antenna PK | |
antennaUid |
Antenna UID | |
beamwidth |
Beamwidth (degrees) | |
configuration |
Radio spectrometer configuration (gain calibration) | |
configurationUpdatedOn |
string(date-time) | Timestamp of last scheduling-relevant configuration update |
configurationVersion |
integer | Monotonic scheduling configuration version |
focuser |
Focuser details | |
focuserId |
Focuser PK | |
focuserUid |
Focuser UID | |
id |
Instrument PK | |
instrumentType |
string | Radio spectrometer |
isActive |
boolean | Is active? |
name |
string | Instrument name |
receiverId |
Receiver PK (instrument membership) | |
receiverIds |
Receiver PKs | |
receivers |
Receivers | |
receiverSummaries |
Compact descriptors of the connected receivers | |
receiverUid |
Receiver UID | |
telescope |
Telescope | |
telescopeId |
integer | Owning telescope PK |
telescopeUid |
Owning telescope UID | |
uid |
string(uuid) | Instrument UID |
RadioSpectroscopyWindow¶
| Name | Type | Description |
|---|---|---|
bandwidthMhz |
number | |
centerFrequencyMhz |
number | |
id |
integer | |
requestId |
integer |
RadioSpectroscopyWindowCreate¶
| Name | Type | Description |
|---|---|---|
bandwidthMhz |
number | |
centerFrequencyMhz |
number |
RadioSpectroscopyWindowUpdate¶
| Name | Type | Description |
|---|---|---|
bandwidthMhz |
||
centerFrequencyMhz |
||
id |
RadioTrackingConfiguration¶
| Name | Type | Description |
|---|---|---|
coordinateUnit |
||
maxSunElevationDeg |
number | |
minElevationDeg |
number | |
minSunSeparationDeg |
number | |
offOffsetX |
||
offOffsetY |
||
trackingStrategy |
RadioTrackingStrategy |
RadioTrackingConfigurationPlan¶
| Name | Type | Description |
|---|---|---|
offOffsetX |
||
offOffsetY |
RadioTrackingContinuumDataTool¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
createdOn |
string(date-time) | |
creatorId |
integer | |
currentStage |
||
currentStageIndex |
||
currentStageProgressFraction |
||
dataToolType |
string | |
errorMessages |
||
id |
integer | |
name |
string | |
observationId |
||
priority |
integer | |
projectId |
||
startedOn |
||
status |
JobStatus | |
totalStages |
RadioTrackingContinuumDataToolCreate¶
| Name | Type | Description |
|---|---|---|
dataToolType |
string | |
name |
string | |
observationId |
||
priority |
||
projectId |
RadioTrackingContinuumDataToolUpdate¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
currentStage |
||
currentStageIndex |
||
currentStageProgressFraction |
||
dataToolType |
string | |
errorMessages |
||
name |
||
observationId |
||
priority |
||
projectId |
||
startedOn |
||
status |
||
totalStages |
RadioTrackingObservationAssetTaskInfoDetail¶
| Name | Type | Description |
|---|---|---|
durationSec |
||
observationAssetId |
||
observationAssetUid |
||
task |
||
taskId |
integer | |
taskType |
string | |
taskUid |
||
uid |
string(uuid) |
RadioTrackingRequest¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
createdOn |
||
currentSample |
integer | |
durationSec |
number | |
id |
integer | |
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
maxIntegrationTimeMs |
||
minResolutionMhz |
||
modifiedOn |
||
observationId |
integer | |
observationUid |
||
order |
integer | |
polarization |
||
progressFraction |
number | |
recordMode |
RadioBackendRecordMode | |
requestType |
string | |
requireContinuum |
boolean | |
sampleCount |
integer | |
spectroscopyWindowIds |
Array<integer> | |
status |
ObservationRequestStatus | |
uid |
string(uuid) |
RadioTrackingRequestCreate¶
| Name | Type | Description |
|---|---|---|
active |
||
createdOn |
||
durationSec |
number | |
instrumentMode |
||
isDeleted |
||
maxIntegrationTimeMs |
||
minResolutionMhz |
||
modifiedOn |
||
observationId |
||
order |
integer | |
polarization |
||
recordMode |
RadioBackendRecordMode | |
requestType |
string | |
requireContinuum |
boolean | |
sampleCount |
||
spectroscopyWindows |
||
status |
RadioTrackingRequestDetail¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
createdOn |
||
currentSample |
integer | |
currentTask |
||
durationSec |
number | |
id |
integer | |
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
maxIntegrationTimeMs |
||
minResolutionMhz |
||
modifiedOn |
||
observationId |
integer | |
observationUid |
||
order |
integer | |
polarization |
||
progressFraction |
number | |
recordMode |
RadioBackendRecordMode | |
requestType |
string | |
requireContinuum |
boolean | |
sampleCount |
integer | |
spectroscopyWindowIds |
Array<integer> | |
spectroscopyWindows |
Array<RadioSpectroscopyWindow> | |
status |
ObservationRequestStatus | |
uid |
string(uuid) |
RadioTrackingRequestPlan¶
| Name | Type | Description |
|---|---|---|
backendConfiguration |
RadioBackendConfiguration | |
constraints |
Array<string> | |
durationSec |
number | |
instrumentId |
integer | |
isObservable |
boolean | |
requestId |
integer | |
requestType |
string | |
sampleCount |
integer |
RadioTrackingRequestSummary¶
| Name | Type | Description |
|---|---|---|
active |
boolean | |
createdOn |
||
currentSample |
integer | |
durationSec |
number | |
id |
integer | |
instrumentMode |
InstrumentAccessMode | |
isDeleted |
boolean | |
maxIntegrationTimeMs |
||
minResolutionMhz |
||
modifiedOn |
||
observationId |
integer | |
observationUid |
||
order |
integer | |
polarization |
||
progressFraction |
number | |
recordMode |
RadioBackendRecordMode | |
requestType |
string | |
requireContinuum |
boolean | |
sampleCount |
integer | |
spectroscopyWindowIds |
Array<integer> | |
spectroscopyWindows |
Array<RadioSpectroscopyWindow> | |
status |
ObservationRequestStatus | |
uid |
string(uuid) |
RadioTrackingRequestUpdate¶
| Name | Type | Description |
|---|---|---|
active |
||
createdOn |
||
durationSec |
||
instrumentMode |
||
isDeleted |
||
maxIntegrationTimeMs |
||
minResolutionMhz |
||
modifiedOn |
||
observationId |
||
order |
||
polarization |
||
recordMode |
||
requestType |
string | |
requireContinuum |
||
sampleCount |
||
spectroscopyWindows |
||
status |
RadioTrackingSpectrumDataTool¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
createdOn |
string(date-time) | |
creatorId |
integer | |
currentStage |
||
currentStageIndex |
||
currentStageProgressFraction |
||
dataToolType |
string | |
errorMessages |
||
id |
integer | |
name |
string | |
observationId |
||
priority |
integer | |
projectId |
||
startedOn |
||
status |
JobStatus | |
totalStages |
RadioTrackingSpectrumDataToolCreate¶
| Name | Type | Description |
|---|---|---|
dataToolType |
string | |
name |
string | |
observationId |
||
priority |
||
projectId |
RadioTrackingSpectrumDataToolUpdate¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
currentStage |
||
currentStageIndex |
||
currentStageProgressFraction |
||
dataToolType |
string | |
errorMessages |
||
name |
||
observationId |
||
priority |
||
projectId |
||
startedOn |
||
status |
||
totalStages |
RadioTrackingStrategy¶
Type: string
RadioTrackingTask¶
| Name | Type | Description |
|---|---|---|
actualEndTime |
||
actualStartTime |
||
antennaId |
integer | |
antennaUid |
||
assetsRevision |
integer | |
centralFrequenciesMhz |
Array<number> | |
completedOn |
||
durationSec |
number | |
earliestStartTime |
||
expirationTime |
||
id |
integer | |
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
integrationTimeMs |
number | |
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
offOffsetXDeg |
||
offOffsetYDeg |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
radioBackendId |
integer | |
radioBackendModeId |
integer | |
radioBackendUid |
||
receiverFeedIds |
Array<integer> | |
requestId |
integer | |
requestUid |
||
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
targetId |
||
taskType |
string | |
totalPlannedDuration |
||
trackingStrategy |
RadioTrackingStrategy | |
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
RadioTrackingTaskDetail¶
| Name | Type | Description |
|---|---|---|
actualEndTime |
||
actualStartTime |
||
antenna |
Antenna | |
antennaId |
integer | |
antennaUid |
||
assetsRevision |
integer | |
centralFrequenciesMhz |
Array<number> | |
completedOn |
||
durationSec |
number | |
earliestStartTime |
||
expirationTime |
||
feeds |
Array<ReceiverFeed> | |
id |
integer | |
instrument |
RadioSpectrometerDetail | |
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
integrationTimeMs |
number | |
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
offOffsetXDeg |
||
offOffsetYDeg |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
radioBackend |
RadioBackend | |
radioBackendId |
integer | |
radioBackendMode |
RadioBackendMode | |
radioBackendModeId |
integer | |
radioBackendUid |
||
radioFilters |
Array<RadioFilter> | |
receivers |
Array<ReceiverDetail> | |
request |
RadioTrackingRequestDetail | |
requestId |
integer | |
requestUid |
||
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
target |
Target | |
targetId |
||
taskType |
string | |
totalPlannedDuration |
||
trackingStrategy |
RadioTrackingStrategy | |
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
RadioTrackingTaskSummary¶
| Name | Type | Description |
|---|---|---|
actualEndTime |
||
actualStartTime |
||
antennaId |
integer | |
antennaUid |
||
assetsRevision |
integer | |
centralFrequenciesMhz |
Array<number> | |
completedOn |
||
durationSec |
number | |
earliestStartTime |
||
expirationTime |
||
id |
integer | |
instrument |
||
instrumentConfigurationVersion |
||
instrumentId |
integer | |
instrumentUid |
||
integrationTimeMs |
number | |
modifiedOn |
string(date-time) | |
observationId |
integer | |
observationUid |
||
observingGrantId |
||
observingGrantUid |
||
offOffsetXDeg |
||
offOffsetYDeg |
||
plannedDuration |
||
plannedStartTime |
||
progressFraction |
number | |
queueAccessGrantId |
||
queueAccessGrantUid |
||
radioBackendId |
integer | |
radioBackendModeId |
integer | |
radioBackendUid |
||
receiverFeedIds |
Array<integer> | |
requestId |
integer | |
requestUid |
||
resultId |
integer | |
resultUid |
||
schedulerRunId |
||
schedulerRunUid |
||
status |
ObservationTaskStatus | |
statusMessage |
||
statusReasonCode |
||
targetId |
||
taskType |
string | |
totalPlannedDuration |
||
trackingStrategy |
RadioTrackingStrategy | |
uid |
string(uuid) | |
windowInfeasibilityAction |
WindowInfeasibilityAction |
Receiver¶
| Name | Type | Description |
|---|---|---|
attenuationMaxDb |
Maximum adjustable attenuation (dB); null if no attenuator | |
attenuationMinDb |
Minimum adjustable attenuation (dB); null if no attenuator | |
attenuationStepDb |
Attenuation step (dB); 0/null = continuously variable | |
availableNoiseDiodeLevels |
integer | Distinct non-zero noise-diode injection levels (0 = none, 1 = on/off, 2 = off/lo/hi) |
band |
Receiver band | |
deviceType |
string | |
feeds |
Array<ReceiverFeed> | Receiver feeds |
id |
integer | Receiver PK |
imageId |
Image asset ID for the device. | |
isAvailable |
boolean | Is receiver available? |
localOscillatorMaxFrequencyMhz |
Maximum achievable window-center sky frequency via LO tuning (MHz); null if fixed-tuned | |
localOscillatorMinFrequencyMhz |
Minimum achievable window-center sky frequency via LO tuning (MHz); null if fixed-tuned | |
manufacturer |
||
maxFrequencyMhz |
number | Maximum frequency (MHz) |
minFrequencyMhz |
number | Minimum frequency (MHz) |
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
polarization |
ReceiverPolarizationSpecification | Polarization capability of the receiver front-end (shared by its feeds) |
radioFilters |
Array<RadioFilter> | Radio filters available on this receiver |
serialNumber |
Serial number for the device. | |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
temperatureSetpointK |
Cryogenic cooling setpoint (K); null if uncooled | |
temperatureSetpointToleranceK |
Cooling setpoint tolerance (K); null if uncooled | |
uid |
string(uuid) | The unique UID for the device. |
ReceiverDetail¶
| Name | Type | Description |
|---|---|---|
attenuationMaxDb |
Maximum adjustable attenuation (dB); null if no attenuator | |
attenuationMinDb |
Minimum adjustable attenuation (dB); null if no attenuator | |
attenuationStepDb |
Attenuation step (dB); 0/null = continuously variable | |
availableNoiseDiodeLevels |
integer | Distinct non-zero noise-diode injection levels (0 = none, 1 = on/off, 2 = off/lo/hi) |
band |
Receiver band | |
deviceType |
string | |
feeds |
Array<ReceiverFeed> | Receiver feeds |
id |
integer | Receiver PK |
imageId |
Image asset ID for the device. | |
isAvailable |
boolean | Is receiver available? |
localOscillatorMaxFrequencyMhz |
Maximum achievable window-center sky frequency via LO tuning (MHz); null if fixed-tuned | |
localOscillatorMinFrequencyMhz |
Minimum achievable window-center sky frequency via LO tuning (MHz); null if fixed-tuned | |
manufacturer |
||
maxFrequencyMhz |
number | Maximum frequency (MHz) |
minFrequencyMhz |
number | Minimum frequency (MHz) |
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintActions |
Array<OperationalConstraintAction> | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
polarization |
ReceiverPolarizationSpecification | Polarization capability of the receiver front-end (shared by its feeds) |
radioFilters |
Array<RadioFilter> | Radio filters available on this receiver |
serialNumber |
Serial number for the device. | |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
temperatureSetpointK |
Cryogenic cooling setpoint (K); null if uncooled | |
temperatureSetpointToleranceK |
Cooling setpoint tolerance (K); null if uncooled | |
uid |
string(uuid) | The unique UID for the device. |
ReceiverFeed¶
| Name | Type | Description |
|---|---|---|
feedBackendConnections |
Array<ReceiverFeedBackendConnection> | Feed to backend connections |
id |
integer | Receiver feed PK |
isActive |
boolean | Is active? |
offsetXArcsec |
number | Offset in X (arcsec) |
offsetYArcsec |
number | Offset in Y (arcsec) |
receiverId |
integer | Receiver PK |
ReceiverFeedBackendConnection¶
| Name | Type | Description |
|---|---|---|
id |
integer | Connection PK |
isActive |
boolean | Is active? |
radioBackendId |
integer | Radio backend PK |
receiverFeedId |
integer | Receiver feed PK |
ReceiverPolarizationSpecification¶
Type: string
RemoteAssetTransferState¶
Type: string
RenderNormalization¶
| Name | Type | Description |
|---|---|---|
backgroundPercentile |
number | Percentile used for the background level. |
midtonePercentile |
number | Percentile used for the midtone level. |
saturationPercentile |
number | Percentile used for the saturation level. |
stretch |
string | Stretch algorithm to apply. |
RenderPalette¶
| Name | Type | Description |
|---|---|---|
colormap |
string | Colormap name. |
invert |
boolean | Whether to invert the colormap. |
nan |
string | How to render NaN values. |
RenderSettings¶
| Name | Type | Description |
|---|---|---|
normalization |
RenderNormalization | |
rendering |
RenderPalette | |
schemaVersion |
integer | Render settings schema version. |
RepointingStrategy¶
Type: string
ResultFulfillmentStatus¶
Type: string
SampleOrdering¶
Type: string
ScheduleRung¶
Type: string
SiteSummary¶
| Name | Type | Description |
|---|---|---|
countryCode |
string | |
elevationM |
number | |
iauCode |
||
id |
||
latitudeDeg |
number | |
location |
string | |
longitudeDeg |
number | |
name |
string | |
owner |
||
ownerId |
||
slug |
string | |
uid |
string(uuid) |
SkyBrightnessModel¶
| Name | Type | Description |
|---|---|---|
id |
integer | Primary key |
modelType |
string |
SkyBrightnessModelCreate¶
| Name | Type | Description |
|---|---|---|
modelType |
string |
SkynetStorageType¶
Type: string
SolveFilterPolicy¶
Type: string
SourceBrightnessModel¶
| Name | Type | Description |
|---|---|---|
avMag |
number | Absolute V-band extinction |
filter |
||
filterId |
Filter used as reference | |
id |
integer | Primary key |
isPointSource |
boolean | True if point source, False if extended |
magnitudeMag |
number | Point source magnitude or extended source surface brightness |
modelType |
string | |
rv |
number | Ratio of total to selective extinction |
spectralComponent |
||
spectralComponentId |
Associated spectral component | |
temporalComponent |
||
temporalComponentId |
Associated temporal component |
SourceBrightnessModelCreate¶
| Name | Type | Description |
|---|---|---|
avMag |
Absolute V-band extinction | |
filterId |
Filter used as reference | |
isPointSource |
True if point source, False if extended | |
magnitudeMag |
number | Point source magnitude or extended source surface brightness |
modelType |
string | |
rv |
Ratio of total to selective extinction | |
spectralComponentId |
Associated spectral component | |
temporalComponentId |
Associated temporal component |
SpecEnvelope¶
| Name | Type | Description |
|---|---|---|
data |
||
schemaKind |
string | |
schemaVersion |
integer |
SpectralComposerTool¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
createdOn |
string(date-time) | |
creatorId |
integer | |
currentStage |
||
currentStageIndex |
||
currentStageProgressFraction |
||
dataToolType |
string | |
errorMessages |
||
id |
integer | |
name |
string | |
observationId |
||
priority |
integer | |
projectId |
||
startedOn |
||
status |
JobStatus | |
totalStages |
SpectralComposerToolCreate¶
| Name | Type | Description |
|---|---|---|
dataToolType |
string | |
name |
string | |
observationId |
||
priority |
||
projectId |
SpectralComposerToolUpdate¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
currentStage |
||
currentStageIndex |
||
currentStageProgressFraction |
||
dataToolType |
string | |
errorMessages |
||
name |
||
observationId |
||
priority |
||
projectId |
||
startedOn |
||
status |
||
totalStages |
StreamKind¶
Type: string
StreamQuality¶
Type: string
SunAltitudeOpenCondition¶
Type: string
Target¶
| Name | Type | Description |
|---|---|---|
id |
integer | Primary key for the Target |
isDeleted |
boolean | Flag indicating if the target is deleted |
name |
string | Name of the Target |
positionId |
Primary key of the target's position. Resolved through the graph bundle's `target_positions` map. | |
positionOffsetFrame |
ObservationPositionOffsetFrame | |
positionOffsetReferenceTime |
||
positionOffsetXDeg |
number | |
positionOffsetYDeg |
number | |
status |
TargetStatus | Status of the target |
targetPosition |
TargetCreate¶
| Name | Type | Description |
|---|---|---|
isDeleted |
||
name |
string | |
position |
||
positionOffsetFrame |
ObservationPositionOffsetFrame | |
positionOffsetReferenceTime |
||
positionOffsetXDeg |
number | |
positionOffsetYDeg |
number | |
status |
TargetEphemeris¶
| Name | Type | Description |
|---|---|---|
entries |
Array<TargetEphemerisEntry> | |
frame |
||
representation |
TargetEphemerisEntry¶
| Name | Type | Description |
|---|---|---|
distanceAu |
||
epoch |
string(date-time) | |
latDeg |
number | |
lonDeg |
number |
TargetPositionType¶
Type: string
TargetSortField¶
Type: string
TargetStatus¶
Type: string
TargetUpdate¶
| Name | Type | Description |
|---|---|---|
isDeleted |
||
name |
||
position |
||
positionOffsetFrame |
||
positionOffsetReferenceTime |
||
positionOffsetXDeg |
||
positionOffsetYDeg |
||
status |
TelescopeAccessGrant¶
| Name | Type | Description |
|---|---|---|
entityId |
||
id |
integer | |
revoked |
boolean | |
shares |
number | |
telescopeId |
integer | |
timeContested |
number | |
timeUsed |
number | |
timeWaiting |
number |
TelescopeDetail¶
| Name | Type | Description |
|---|---|---|
antennaIds |
||
antennas |
Array<AntennaDetail> | |
calibrationObservingAccountId |
||
cameraIds |
||
cameras |
Array<CameraDetail> | |
description |
||
deviceIds |
||
elevationM |
number | |
enclosure |
||
enclosureId |
||
enclosureUid |
||
filterWheelIds |
||
filterWheels |
Array<FilterWheelDetail> | |
focuserIds |
||
focusers |
Array<FocuserDetail> | |
galleryItemIds |
||
galleryItems |
||
iauCode |
||
id |
||
imageId |
||
instrumentIds |
||
instruments |
Array<> | |
ipCameraIds |
||
ipCameras |
Array<IPCamera> | |
isAvailable |
boolean | |
isPublic |
boolean | |
latitudeDeg |
number | |
localHorizon |
||
location |
string | |
longitudeDeg |
number | |
mount |
||
mountId |
||
mountUid |
||
name |
string | |
observatory |
||
observatoryId |
integer | |
observatoryUid |
||
otaIds |
||
otas |
Array<OtaDetail> | |
owner |
||
ownerId |
integer | |
publicLatitudeDeg |
||
publicLongitudeDeg |
||
radioBackendIds |
||
radioBackends |
Array<RadioBackendDetail> | |
receiverIds |
||
receivers |
Array<ReceiverDetail> | |
rotatorIds |
||
rotators |
Array<InstrumentRotatorDetail> | |
shortName |
||
slug |
string | |
uid |
string(uuid) |
TelescopeGalleryItem¶
| Name | Type | Description |
|---|---|---|
file |
||
fileId |
string(uuid) | |
id |
integer | |
order |
||
telescopeId |
integer | |
visibility |
boolean |
TelescopeLtd¶
| Name | Type | Description |
|---|---|---|
antennaIds |
||
calibrationObservingAccountId |
||
cameraIds |
||
description |
||
deviceIds |
||
elevationM |
number | |
enclosureId |
||
enclosureUid |
||
filterWheelIds |
||
focuserIds |
||
galleryItemIds |
||
iauCode |
||
id |
||
imageId |
||
instrumentIds |
||
ipCameraIds |
||
isAvailable |
boolean | |
isPublic |
boolean | |
latitudeDeg |
number | |
location |
string | |
longitudeDeg |
number | |
mountId |
||
mountUid |
||
name |
string | |
observatoryId |
integer | |
observatoryUid |
||
otaIds |
||
ownerId |
integer | |
publicLatitudeDeg |
||
publicLongitudeDeg |
||
radioBackendIds |
||
receiverIds |
||
rotatorIds |
||
shortName |
||
slug |
string | |
uid |
string(uuid) |
TelescopeSummary¶
| Name | Type | Description |
|---|---|---|
antennaIds |
||
calibrationObservingAccountId |
||
cameraIds |
||
description |
||
deviceIds |
||
elevationM |
number | |
enclosureId |
||
enclosureUid |
||
filterWheelIds |
||
focuserIds |
||
galleryItemIds |
||
iauCode |
||
id |
||
imageId |
||
instrumentIds |
||
ipCameraIds |
||
isAvailable |
boolean | |
isPublic |
boolean | |
latitudeDeg |
number | |
localHorizon |
||
location |
string | |
longitudeDeg |
number | |
mountId |
||
mountUid |
||
name |
string | |
observatory |
||
observatoryId |
integer | |
observatoryUid |
||
otaIds |
||
owner |
||
ownerId |
integer | |
publicLatitudeDeg |
||
publicLongitudeDeg |
||
radioBackendIds |
||
receiverIds |
||
rotatorIds |
||
shortName |
||
slug |
string | |
uid |
string(uuid) |
TimeLapseCreatorTool¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
createdOn |
string(date-time) | |
creatorId |
integer | |
currentStage |
||
currentStageIndex |
||
currentStageProgressFraction |
||
dataToolType |
string | |
errorMessages |
||
id |
integer | |
name |
string | |
observationId |
||
priority |
integer | |
projectId |
||
startedOn |
||
status |
JobStatus | |
totalStages |
TimeLapseCreatorToolCreate¶
| Name | Type | Description |
|---|---|---|
dataToolType |
string | |
name |
string | |
observationId |
||
priority |
||
projectId |
TimeLapseCreatorToolUpdate¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
currentStage |
||
currentStageIndex |
||
currentStageProgressFraction |
||
dataToolType |
string | |
errorMessages |
||
name |
||
observationId |
||
priority |
||
projectId |
||
startedOn |
||
status |
||
totalStages |
TimeSeriesPhotometryTool¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
createdOn |
string(date-time) | |
creatorId |
integer | |
currentStage |
||
currentStageIndex |
||
currentStageProgressFraction |
||
dataToolType |
string | |
errorMessages |
||
id |
integer | |
name |
string | |
objects |
Array<TimeSeriesPhotometryToolObject> | |
observationId |
||
priority |
integer | |
projectId |
||
stacks |
Array<TimeSeriesPhotometryToolExposureStack> | |
startedOn |
||
status |
JobStatus | |
totalStages |
TimeSeriesPhotometryToolCreate¶
| Name | Type | Description |
|---|---|---|
dataToolType |
string | |
name |
string | |
observationId |
||
priority |
||
projectId |
TimeSeriesPhotometryToolExposureStack¶
| Name | Type | Description |
|---|---|---|
dataToolId |
integer | |
effectiveTime |
||
id |
integer |
TimeSeriesPhotometryToolObject¶
| Name | Type | Description |
|---|---|---|
catalogObjectId |
||
dataToolId |
integer | |
decDeg |
number | |
epoch |
||
id |
integer | |
name |
string | |
parallaxMas |
||
pmDecMasPerYear |
||
pmRaMasPerYear |
||
raDeg |
number | |
radialVelocityKmPerSec |
TimeSeriesPhotometryToolUpdate¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
currentStage |
||
currentStageIndex |
||
currentStageProgressFraction |
||
dataToolType |
string | |
errorMessages |
||
name |
||
observationId |
||
priority |
||
projectId |
||
startedOn |
||
status |
||
totalStages |
TopocentricCoordinates¶
| Name | Type | Description |
|---|---|---|
coordinateType |
string | Type of the coordinate system |
decDeg |
number | Topocentric or observed declination in degrees |
epoch |
Epoch of observation | |
haDeg |
number | Topocentric or observed hour angle in degrees |
id |
integer | Primary key for the TargetCoordinates |
pmDecArcsecPerSec |
Proper motion in Dec in arcsec/s | |
pmHaArcsecPerSec |
Proper motion in HA times cos(Dec) in arcsec/s | |
refraction |
boolean | Coordinates need correction for refraction? False = observed (refraction-corrected), true = topocentric |
TopocentricCoordinatesCreate¶
| Name | Type | Description |
|---|---|---|
coordinateType |
string | Type of the coordinate system |
decDeg |
number | Topocentric or observed declination in degrees |
epoch |
Epoch of observation | |
haDeg |
number | Topocentric or observed hour angle in degrees |
pmDecArcsecPerSec |
Proper motion in Dec in arcsec/s | |
pmHaArcsecPerSec |
Proper motion in HA times cos(Dec) in arcsec/s | |
refraction |
boolean | Coordinates need correction for refraction? False = observed (refraction-corrected), true = topocentric |
TopocentricCoordinatesUpdate¶
| Name | Type | Description |
|---|---|---|
coordinateType |
string | Type of the coordinate system |
decDeg |
Topocentric or observed declination in degrees | |
epoch |
Epoch of observation | |
haDeg |
Topocentric or observed hour angle in degrees | |
pmDecArcsecPerSec |
Proper motion in Dec in arcsec/s | |
pmHaArcsecPerSec |
Proper motion in HA times cos(Dec) in arcsec/s | |
refraction |
Coordinates need correction for refraction? False = observed (refraction-corrected), true = topocentric |
TransientDetectorTool¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
createdOn |
string(date-time) | |
creatorId |
integer | |
currentStage |
||
currentStageIndex |
||
currentStageProgressFraction |
||
dataToolType |
string | |
errorMessages |
||
id |
integer | |
name |
string | |
observationId |
||
priority |
integer | |
projectId |
||
startedOn |
||
status |
JobStatus | |
totalStages |
TransientDetectorToolCreate¶
| Name | Type | Description |
|---|---|---|
dataToolType |
string | |
name |
string | |
observationId |
||
priority |
||
projectId |
TransientDetectorToolUpdate¶
| Name | Type | Description |
|---|---|---|
completedOn |
||
currentStage |
||
currentStageIndex |
||
currentStageProgressFraction |
||
dataToolType |
string | |
errorMessages |
||
name |
||
observationId |
||
priority |
||
projectId |
||
startedOn |
||
status |
||
totalStages |
User¶
| Name | Type | Description |
|---|---|---|
affiliation |
Affiliation provided by the user in their public profile | |
age |
Age of the user | |
birthdate |
Birthdate provided by the user in their public profile | |
country |
Country provided by the user or organization in their public profile | |
createdOn |
Creation time of this account | |
description |
Description/Bio provided by the user or organization in their public profile | |
entityType |
string | |
facebookId |
Facebook ID provided by the user in their public profile | |
firstName |
First name of the user | |
githubId |
GitHub ID provided by the user in their public profile | |
id |
integer | Unique identifier of the user/organization. |
language |
Language provided by the user or organization in their public profile | |
lastName |
Last name of the user | |
linkedinId |
LinkedIn ID provided by the user in their public profile | |
location |
Location provided by the user or organization in their public profile | |
name |
string | Name of the user/organization. |
orcidId |
OAuth-verified ORCID iD shown on the public profile | |
orcidVerifiedAt |
When the ORCID iD was verified via OAuth (null = no verified iD) | |
profileImageId |
Profile image of the user/organization. | |
slug |
string | Unique identifier used in URLs referencing the user/organization. |
title |
Title provided by the user in their public profile | |
twitterId |
Twitter ID provided by the user in their public profile | |
uid |
string(uuid) | Stable, opaque universally-unique identifier for the user/organization. Prefer this over the integer `id` for cross-system references (e.g. it is the OIDC `sub`). See docs/internal/design/auth/AUTH_OIDC_PROVIDER_DESIGN.md and the UID-migration directive. |
username |
string | Username of the user |
websiteUrl |
Website URL provided by the user or organization in their public profile |
UserPublic¶
| Name | Type | Description |
|---|---|---|
affiliation |
Affiliation provided by the user in their public profile | |
age |
Age of the user | |
birthdate |
Birthdate provided by the user in their public profile | |
country |
Country provided by the user or organization in their public profile | |
createdOn |
Creation time of this account | |
description |
Description/Bio provided by the user or organization in their public profile | |
entityType |
string | |
facebookId |
Facebook ID provided by the user in their public profile | |
firstName |
First name of the user | |
githubId |
GitHub ID provided by the user in their public profile | |
id |
integer | Unique identifier of the user/organization. |
language |
Language provided by the user or organization in their public profile | |
lastName |
Last name of the user | |
linkedinId |
LinkedIn ID provided by the user in their public profile | |
location |
Location provided by the user or organization in their public profile | |
name |
string | Name of the user/organization. |
orcidId |
OAuth-verified ORCID iD shown on the public profile | |
orcidVerifiedAt |
When the ORCID iD was verified via OAuth (null = no verified iD) | |
profileImageId |
Profile image of the user/organization. | |
slug |
string | Unique identifier used in URLs referencing the user/organization. |
title |
Title provided by the user in their public profile | |
twitterId |
Twitter ID provided by the user in their public profile | |
uid |
string(uuid) | Stable, opaque universally-unique identifier for the user/organization. Prefer this over the integer `id` for cross-system references (e.g. it is the OIDC `sub`). See docs/internal/design/auth/AUTH_OIDC_PROVIDER_DESIGN.md and the UID-migration directive. |
username |
string | Username of the user |
websiteUrl |
Website URL provided by the user or organization in their public profile |
UserSummary¶
| Name | Type | Description |
|---|---|---|
affiliation |
Affiliation provided by the user in their public profile | |
age |
Age of the user | |
birthdate |
Birthdate provided by the user in their public profile | |
country |
Country provided by the user or organization in their public profile | |
createdOn |
Creation time of this account | |
description |
Description/Bio provided by the user or organization in their public profile | |
entityType |
string | |
facebookId |
Facebook ID provided by the user in their public profile | |
firstName |
First name of the user | |
githubId |
GitHub ID provided by the user in their public profile | |
id |
integer | Unique identifier of the user/organization. |
language |
Language provided by the user or organization in their public profile | |
lastName |
Last name of the user | |
linkedinId |
LinkedIn ID provided by the user in their public profile | |
location |
Location provided by the user or organization in their public profile | |
name |
string | Name of the user/organization. |
orcidId |
OAuth-verified ORCID iD shown on the public profile | |
orcidVerifiedAt |
When the ORCID iD was verified via OAuth (null = no verified iD) | |
profileImageId |
Profile image of the user/organization. | |
slug |
string | Unique identifier used in URLs referencing the user/organization. |
title |
Title provided by the user in their public profile | |
twitterId |
Twitter ID provided by the user in their public profile | |
uid |
string(uuid) | Stable, opaque universally-unique identifier for the user/organization. Prefer this over the integer `id` for cross-system references (e.g. it is the OIDC `sub`). See docs/internal/design/auth/AUTH_OIDC_PROVIDER_DESIGN.md and the UID-migration directive. |
username |
string | Username of the user |
websiteUrl |
Website URL provided by the user or organization in their public profile |
UserWithEmail¶
| Name | Type | Description |
|---|---|---|
affiliation |
Affiliation provided by the user in their public profile | |
age |
Age of the user | |
birthdate |
Birthdate provided by the user in their public profile | |
country |
Country provided by the user or organization in their public profile | |
createdOn |
Creation time of this account | |
description |
Description/Bio provided by the user or organization in their public profile | |
email |
string | Email address of the user |
entityType |
string | Type of entity (user/organization) |
facebookId |
Facebook ID provided by the user in their public profile | |
firstName |
First name of the user | |
githubId |
GitHub ID provided by the user in their public profile | |
id |
integer | Unique identifier of the user/organization. |
language |
Language provided by the user or organization in their public profile | |
lastName |
Last name of the user | |
linkedinId |
LinkedIn ID provided by the user in their public profile | |
location |
Location provided by the user or organization in their public profile | |
name |
string | Name of the user/organization. |
orcidId |
OAuth-verified ORCID iD shown on the public profile | |
orcidVerifiedAt |
When the ORCID iD was verified via OAuth (null = no verified iD) | |
profileImageId |
Profile image of the user/organization. | |
slug |
string | Unique identifier used in URLs referencing the user/organization. |
title |
Title provided by the user in their public profile | |
twitterId |
Twitter ID provided by the user in their public profile | |
uid |
string(uuid) | Stable, opaque universally-unique identifier for the user/organization. Prefer this over the integer `id` for cross-system references (e.g. it is the OIDC `sub`). See docs/internal/design/auth/AUTH_OIDC_PROVIDER_DESIGN.md and the UID-migration directive. |
username |
string | Username of the user |
websiteUrl |
Website URL provided by the user or organization in their public profile |
ValidationError¶
| Name | Type | Description |
|---|---|---|
ctx |
||
input |
||
loc |
Array<> | |
msg |
string | |
type |
string |
WeatherSensor¶
| Name | Type | Description |
|---|---|---|
deviceType |
string | |
hasAmbientTemperature |
boolean | |
hasCloudTemperatureDeltaC |
boolean | |
hasHumidity |
boolean | |
hasLightLevel |
boolean | |
hasLightningDistance |
boolean | |
hasPressure |
boolean | |
hasRainDistance |
boolean | |
hasRainRate |
boolean | |
hasRainStorm |
boolean | |
hasSurfaceWetness |
boolean | |
hasWindDirection |
boolean | |
hasWindSpeedAvg10Min |
boolean | |
hasWindSpeedAvg1Min |
boolean | |
hasWindSpeedAvg2Min |
boolean | |
hasWindSpeedInstantaneous |
boolean | |
hasWindSpeedPeak10Min |
boolean | |
hasWindSpeedPeak1Min |
boolean | |
hasWindSpeedPeak2Min |
boolean | |
id |
The unique identifier for the device. | |
imageId |
Image asset ID for the device. | |
manufacturer |
||
modelId |
||
name |
The name of the device. | |
observatoryId |
The observatory ID this device belongs to. | |
observatoryUid |
The observatory UID this device belongs to. | |
operationalConstraintIds |
Operational constraint PKs | |
ownerId |
integer | The organization or user which owns the device. |
serialNumber |
Serial number for the device. | |
telescopeId |
The telescope ID this device belongs to. | |
telescopeUid |
The telescope UID this device belongs to. | |
uid |
string(uuid) | The unique UID for the device. |
WindowInfeasibilityAction¶
Type: string