Skip to content

Observatory

An observatory is the organizational unit that manages one or more telescopes at a single physical site. It carries the institutional metadata, the operational constraints that apply to everything on the site, and the things that aren't telescope-specific (weather sensors, gallery, log book).

If you're an owner: this is the record your organization owns. Every telescope you bring online lives under one observatory.

Site vs. Observatory

The two records are deliberately separate:

  • A Site is the geographic location — latitude, longitude, elevation, country, optional IAU code. Sites can host multiple observatories (e.g., a mountain with several independent facilities).
  • An Observatory is the institutional facility on that site — ownership, public visibility, weather sensors, the telescopes you operate.

Both records are provisioned by Skynet staff today; editing existing records uses PATCH /v1/sites/{id} and PATCH /v1/observatories/{id}. See Onboarding for how to request a new one.

What lives on an observatory record

Field group What it controls
Name, slug, IAU code Display and lookup
Ownership Which user or organization owns the observatory
Site association Which site the observatory sits on
Public / private visibility Whether non-members can see the observatory at all
Image gallery Images and webcam feeds shown on the observatory page
Weather sensors Site-wide environmental telemetry (feeds into observing constraints)
Operational constraints Constraints that gate observing for every telescope on the observatory
Telescopes One or more telescopes — each modeled in its own record
Log book Hardware notes and event history at the observatory level

Operational constraints that live on the observatory apply to every telescope at the site (typical example: a single weather-sensor reading controlling go/no-go for all telescopes under the dome). Telescope-level constraints layer on top — see Telescope.

In the web app

For organization-owned observatories, the relevant React routes are at apps/website-react/app/routes/entity/org-observatories.tsx (list view) and the per-observatory detail/settings under org-observatory-*. The Angular site has the equivalent under apps/website/src/app/features/entity/observatories/.

Reference

Observatory Schema

Description: A location with one or more telescopes, owned by an Entity.

An Observatory is a *region* (e.g., a campus or part of a mountain) and
typically references a :class:`Site`. Its ``latitude``/``longitude``/
``elevation`` are usually populated from the site but may be tweaked to a
representative point for large sites. Each :class:`Telescope` within an
observatory has its own pier coordinates, which may differ from the
observatory's representative location.

Properties

Name Type Description
id Integer No description
uid UUID No description
owner_id Integer The organization or user which owns the observatory
site_id Integer (Optional) No description
country_code String(3) No description
iau_code String(3) (Optional) No description
name String(100) No description
short_name String(50) (Optional) No description
slug String(100) No description
description String(Unbounded) No description
image_id UUID (Optional) No description
is_available Boolean No description
is_public Boolean No description
location String(100) No description
latitude Float No description
longitude Float No description
elevation Float No description

Relationships

Relationship Name Type
site Site
country Country
telescopes Telescope
owner Entity
image File
gallery_items ObservatoryGalleryItem
log ObservatoryLogEntry
devices Device
ip_cameras IPCamera
shutdown_interlocks ShutdownInterlock
sky_node_installations SkyNodeInstallation

Site reference

Site Schema

Description: A geographic site that may host one or more :class:Observatory instances.

Sites are the broadest geographic grouping (e.g., "Cerro Tololo"). An
:class:`Observatory` typically inherits its coordinates from its site, and
each :class:`Telescope` within an observatory carries its own pier
coordinates.

Properties

Name Type Description
id Integer No description
uid UUID (Optional) No description
owner_id Integer (Optional) The organization or user which created the site. None if the site was created by Skynet
name String(100) No description
short_name String(50) (Optional) No description
slug String(50) No description
iau_code String(3) (Optional) No description
country_code String(3) No description
location String(100) No description
latitude Float No description
longitude Float No description
elevation Float No description

Relationships

Relationship Name Type
owner Entity
observatories Observatory
country Country