generated: '2026-10-08' method: derived generator: derive-data-model.py source: - openapi/_original/openapi.json notation: has_one = property $ref; has_many = array of $ref; belongs_to = _id field summary: entities: 368 entities_in_spec: 368 relationships: 295 entities: - name: AddUserToGroupRequest fields: 1 - name: AdminUserRead fields: 11 - name: AdvancedStateBundleResponse fields: 10 - name: Alert fields: 26 - name: AlertSubscription fields: 18 - name: AlertSubscriptionCreate fields: 10 - name: AlertSubscriptionUpdate fields: 5 - name: Antenna fields: 29 - name: AntennaCreate fields: 15 - name: AntennaUpdate fields: 16 - name: AntennaUpsert fields: 16 - name: AssociationCandidate fields: 7 - name: AssociationCandidateScreeningRequest fields: 4 - name: AssociationCandidateScreeningResponse fields: 3 - name: AssociationJobStatus fields: 4 - name: AssociationJobSubmitted fields: 1 - name: AssociationPoint fields: 14 - name: BatchCollectionRequestCreate fields: 11 description: 'Schema for batch creation of collection requests across multiple satellites: one request per satellite a selected sensor sees, over the span it sees it, placed by the scheduler.' - name: BatchCollectionRequestResponse fields: 5 description: Response schema for batch collection request creation. - name: BoundSensor fields: 2 description: A telescope or antenna bound to the device that asked. - name: BoxApprovalRequest fields: 5 description: 'Which box: by the token in its setup link, or by box id when the caller''s boxes see it.' - name: BoxApprovalResponse fields: 2 - name: BoxAssignment fields: 14 description: A box given to a group that has not enrolled yet. - name: BoxAssignmentRequest fields: 3 description: 'Give a box to a group: `null` assigns it to the admin alone. A limelink device is given the' - name: BoxAssignmentResult fields: 2 - name: BoxAssignments fields: 2 description: What an admin sees to assign boxes (plan §3.8). - name: BoxCommandAnswer fields: 5 description: A box's answer to a setup command. - name: BoxCommandRequest fields: 2 - name: BoxForApproval fields: 0 description: A box the consent page shows before Allow. - name: BoxOwnerGroup fields: 3 description: A group the caller may give a box to. - name: Build fields: 2 description: A build of a release for one hardware class and OS. - name: CandidateMergeRequest fields: 1 description: Body for merging a UCT candidate into an approved satellite. - name: CartesianStateOut fields: 2 - name: CartesianVectorOut fields: 3 - name: CatalogNumberResolveRequest fields: 1 description: A batch of catalog-number tokens to resolve. - name: CatalogNumberResolveResponse fields: 2 description: Resolution outcome, partitioned so the caller can preview both sides. - name: ChannelRollout fields: 9 description: 'One product''s channel: what its signed plan names, and how far the rollout has got.' - name: ChatFeedback fields: 8 - name: ChatFeedbackCreate fields: 3 - name: CitraSensors fields: 2 - name: CloseApproach fields: 8 - name: CollectionRequest fields: 22 description: CollectionRequest schema for reading - name: CollectionRequestCreate fields: 11 description: CollectionRequest schema for creation - name: Conversation fields: 6 - name: ConversationCreate fields: 2 - name: ConversationMessageResponse fields: 4 - name: CoordinatedAccessWindow fields: 8 description: A coordinated observation window where multiple ground stations can observe a satellite. - name: CorridorSnapshot fields: 6 description: A corridor frozen onto a launch definition. - name: CounterIsrPreferences fields: 1 - name: CounterIsrPreferencesUpdate fields: 1 - name: CountryOption fields: 3 description: Country option for filtering. - name: CreateGroupRequest fields: 5 - name: CurrentWeather fields: 15 - name: DOAObservationHistoryResponse fields: 9 description: Response containing historical DOA observation data (hot/PostgreSQL only). - name: DOAObservationRead fields: 23 - name: DailyFeelsLike fields: 4 - name: DailyForecast fields: 22 - name: DailyTemperature fields: 6 - name: DecisionNoteCreate fields: 1 - name: DeletedAlertsResponse fields: 1 - name: Detection fields: 4 - name: DeviceAntennaUpdate fields: 3 description: What a device may change on one of its antennas (`PATCH /devices/me/antennas`). - name: DeviceBindings fields: 2 description: The telescopes and antennas a device serves (`GET`/`POST /devices/me/bindings`). - name: DeviceBindingsRequest fields: 2 description: 'The telescopes and antennas a device is to serve, exactly: those named are bound, those it' - name: DeviceCheckInRequest fields: 9 description: What a box that is not enrolled says about itself every 30 seconds (monorepo ADR 0009). The - name: DeviceCheckInResponse fields: 1 description: 'An approval waiting for the box: it exchanges this code with its state at' - name: DeviceIQUpload fields: 8 description: A linked device's request to upload an IQ recording for a TDOA task of an antenna it serves - name: DeviceImageUpload fields: 6 description: 'A linked device''s request to upload a FITS image (monorepo ADR 0011, Bulk data): the query' - name: DeviceProduct fields: 7 description: 'What a box last reported about one product. Self-reported: shown, never acted on.' - name: DeviceSightingsRequest fields: 1 description: The box ids an enrolled box sees on its network over mDNS. - name: DeviceSiteWeather fields: 7 description: The forecast at one site of the device's sensors. - name: DeviceTelescopeUpdate fields: 5 description: 'What a device may change on one of its telescopes (`PATCH /devices/me/telescopes`): whether' - name: DeviceUpdate fields: 5 description: One switch or refusal a box reported. - name: DeviceWeather fields: 1 description: The forecast at every site of the device's sensors (`GET /devices/me/weather`). - name: DiscreteFilterConfig fields: 2 description: Configuration for telescopes with discrete filter wheels. - name: EdgeNodeSummary fields: 6 description: Compact edge-node view for the mission form's picker (GET /edge-node). - name: EdgePreferences fields: 4 - name: EdgePreferencesUpdate fields: 4 - name: EdgeSensorLinkRequest fields: 4 description: 'Link a device to telescopes and antennas before it exists (monorepo ADR 0011): the fleet and' - name: EdgeSensorLinkResponse fields: 3 - name: Effector fields: 8 description: Full effector read schema. Wraps exactly one satellite OR one ground station. - name: EffectorSummary fields: 5 - name: Elset fields: 28 - name: Elset-Input fields: 28 - name: Elset-Output fields: 30 - name: ElsetCountBin fields: 2 - name: ElsetHistoryPoint fields: 18 description: A single point in the elset history timeline. - name: ElsetHistoryResponse fields: 9 description: Response containing historical elset data for a satellite. - name: EnrollRequest fields: 3 description: Device-supplied body for ``POST /api/edge-sensor/enroll`` (camelCase over the wire). - name: EnrollResponse fields: 6 description: Device leaf package returned to a successfully enrolled device. - name: EphemerisPoint fields: 4 description: A single ephemeris point with position in TEME inertial coordinates. - name: EphemerisRequest fields: 4 description: Request for satellite ephemeris data. Returns pre-computed TEME (True Equator Mean Equinox) inertial positions for accurate orbit visualization, supporting both SGP4 and SGP4-XP propagation. Use Cesiu - name: ErrorRegimeBin fields: 7 description: Residual error statistics for one orbit regime, split by comparison-group membership. - name: FITSImageDataResponse fields: 14 description: Response model for FITS image data formatted for Plotly heatmap - name: FOVAccessPost fields: 8 - name: FilterExpandListResponse fields: 1 - name: FilterExpandRequest fields: 1 - name: FilterExpandResponse fields: 6 - name: FilterInfo fields: 2 - name: FilterListResponse fields: 1 - name: FilterOptions fields: 7 description: Distinct values for satellite text-field filters. - name: FilterSpec fields: 8 description: Specification for a single filter-wheel slot. - name: FrequencyRangeMhz fields: 2 description: A frequency range defined by min and max values in MHz. - name: GEOSatellitePlotData fields: 7 - name: GPSJammingResponse fields: 3 - name: GetResidualsRequest fields: 3 description: Optional request model for calculating residuals with custom parameters - name: GlobeSatellite fields: 13 - name: GratingProvenance fields: 7 description: Dispersing-element provenance for a slitless-spectroscopy (grating) spectrum. - name: GroundStation fields: 11 - name: GroundStationCreate fields: 6 - name: GroundStationInput fields: 6 - name: GroundStationList fields: 1 - name: GroundStationSensorSelection fields: 3 - name: GroundTrackPoint fields: 4 description: A single point in a satellite's ground track. - name: GroundTrackResponse fields: 10 description: Ground track data for a satellite over a time period. - name: GroupMemberRead fields: 7 - name: HTTPValidationError fields: 1 - name: HealthResponse fields: 3 - name: HealthRow fields: 15 - name: HorizonAccess fields: 7 description: A single ground station's access window to a satellite. - name: HorizonState fields: 7 - name: HourlyForecast fields: 16 - name: HyperspectralConfig fields: 5 description: Configuration for hyperspectral instruments and spectrographs. - name: HyperspectralObservationSummary fields: 6 description: Lightweight metadata for one hyperspectral observation (no spectrum arrays). - name: IQUpload fields: 13 description: Full IQ upload record schema. - name: IQUploadCreate fields: 7 description: Request body for initiating an IQ upload. - name: IQUploadInitiateResponse fields: 5 description: Response from initiating an IQ upload - contains presigned URL. - name: IQUploadListResponse fields: 2 description: Response for listing IQ uploads. - name: IngestDelayBucket fields: 6 description: Ingest-delay percentiles for one time bucket and obs type. - name: KeplerianElementsOut fields: 6 - name: LaunchCorridor fields: 4 - name: LaunchDefinitionCreate fields: 12 description: Launch definition creation schema. - name: LaunchDefinitionRead fields: 19 description: Launch definition returned by the public API. - name: LaunchDefinitionUpdate fields: 11 description: Documentation-only PATCH schema. Runtime parsing uses a tri-state model so - name: LaunchManeuver fields: 3 - name: LaunchScenarioDefinition fields: 15 - name: LaunchScenarioReadDefinition fields: 15 description: Schema-only read contract for legacy launch-family compatibility. - name: LaunchSeparation fields: 4 - name: LaunchSiteName fields: 2 description: Public launch-site name suggestion (code + name only; no coordinates). - name: LaunchWarning fields: 4 - name: LaunchWarningRead fields: 18 description: Launch warning returned by the public API. - name: LeoElsetPoint fields: 9 - name: LinkableSensor fields: 2 description: A telescope or antenna the caller may link to a new device. - name: LinkableSensors fields: 2 description: 'The telescopes and antennas the caller may link for a group: theirs, or the group''s, that no' - name: LookAnglePoint fields: 4 description: A single topocentric look-angle sample from the observer to a satellite. - name: LookAnglesRequest fields: 7 description: Request for satellite look-angle data from a single ground observer. Returns a topocentric azimuth/elevation/range time series per satellite, suitable for a polar sky-view plot (looking up from the ob - name: Maneuver fields: 18 - name: ManeuverCreate fields: 14 - name: ManeuverUpdate fields: 11 - name: MarkedAlertsResponse fields: 1 - name: Message fields: 6 - name: MessageCreate fields: 2 - name: MinutelyForecast fields: 2 - name: Mission fields: 27 - name: MissionCreate fields: 15 - name: MissionDecisionLogPage fields: 4 - name: MissionDecisionLogRead fields: 10 - name: MissionEffectBatchCreate fields: 8 description: 'One effect on each of several satellites: those named and every member of the groups named' - name: MissionEffectBatchResponse fields: 2 - name: MissionEffectCreate fields: 6 - name: MissionEffectDetail fields: 13 - name: MissionEffectPriority fields: 1 - name: MissionEventRead fields: 11 - name: MissionLaunchRead fields: 4 - name: MissionOperatingPictureGroup fields: 3 - name: MissionOperatingPictureSatellitesResponse fields: 2 - name: MissionThreatCustodyRead fields: 7 - name: MissionUpdate fields: 14 - name: MsiBusPredictionRead fields: 9 - name: MsiBusPredictionReadList fields: 2 - name: MyUploadUsageResponse fields: 2 - name: NearGeoElsetPoint fields: 9 - name: NearbyBox fields: 12 description: 'A box on the caller''s network that is not enrolled yet: one row of Add Sensor''s Found on Your' - name: NodeEnrollRequest fields: 3 description: Node-supplied body for ``POST /api/edge-node/enroll`` (camelCase over the wire). - name: NodeEnrollResponse fields: 5 description: Node leaf package returned to a successfully enrolled node. - name: NodeRenewRequest fields: 2 description: Node-supplied body for ``POST /api/edge-node/renew-cert`` (camelCase over the wire). - name: ObservationBounds fields: 4 description: Response schema for observation time bounds for a satellite. - name: ObservationCountBin fields: 3 - name: ObservationEpochsRequest fields: 4 description: Return observation epochs for the given satellites within [start, end], grouped by satellite then by sensor. - name: ObservationReassignRequest fields: 2 - name: ObservationReassignResult fields: 3 - name: ObservationReassignUndoResult fields: 3 - name: ObservationRef fields: 2 description: One observation identified by row id + which table it lives in. - name: ObservationResidual fields: 21 - name: ObservationSpectrumResponse fields: 4 description: A single observation's spectrum, fetched on demand when the observation is selected. - name: ObservationVolumeBucket fields: 4 - name: OdHealthResponse fields: 3 - name: OdHealthRow fields: 15 - name: OdRunDetail fields: 25 - name: OdRunObservation fields: 3 - name: OdRunResiduals fields: 4 - name: OdRunSummary fields: 19 - name: OperatingPicturePreferences fields: 1 - name: OperatingPicturePreferencesUpdate fields: 1 - name: OperatingPictureSatellite fields: 29 description: Slim satellite payload for the Operating Picture batched fetch. - name: OpportunityWindow fields: 6 description: A single (satellite, sensor) interval where the sensor's hardcoded - name: OpportunityWindowRequest fields: 5 description: Compute (satellite, sensor) opportunity windows using hardcoded sensor-kind constraint profiles. At least one of telescope_ids or antenna_ids must be non-empty. - name: OpticalObservationCreate fields: 17 description: Schema for creating optical observations - excludes auto-generated fields - name: OpticalObservationHistoryPoint fields: 23 description: A single point in the optical observation history. - name: OpticalObservationHistoryResponse fields: 12 description: Response containing historical optical observation data. - name: OrbitalElementPoint fields: 16 description: A single point in orbital elements history. - name: OrbitalElementsResponse fields: 5 description: Response containing orbital elements history for plotting. - name: OsculatingKeplerianOut fields: 1 - name: OwnedBox fields: 5 description: A box the caller may set up from Core (plan WP-C6). - name: PaginatedResponse_Alert_ fields: 7 - name: PaginatedResponse_HyperspectralObservationSummary_ fields: 7 - name: PaginatedResponse_MissionEventRead_ fields: 7 - name: PaginatedResponse_SatelliteSummary_ fields: 7 - name: PaginatedResponse_TaskHistoryRow_ fields: 7 - name: PersonalAccessToken fields: 3 - name: PersonalAccessTokenCreate fields: 1 - name: PersonalAccessTokenCreated fields: 4 - name: PersonalAccessTokenList fields: 1 - name: PhaseTransitionRequest fields: 2 - name: PlanRef fields: 2 description: A channel plan the repository lists but Citra Core could not read or would not accept. - name: PowerSpectralDensity fields: 2 - name: ProcessorTiming fields: 4 description: Per-pipeline-stage aggregate from ``report->'stages'`` elements. - name: Provider fields: 2 - name: ProviderChannelConvention fields: 9 description: A recorded provider sign convention, active or withdrawn. - name: ProviderChannelConventionCreate fields: 4 description: Request body recording that a provider reports one channel with the opposite sign - name: ProviderContributionRow fields: 5 - name: ProvisionNodeRequest fields: 3 description: Admin body for POST /edge-node (camelCase over the wire). - name: ProvisionNodeResponse fields: 2 description: The created node plus the one-use enrollment token (shown once; never logged). - name: ProvisionSensorRequest fields: 4 description: Admin body for POST /edge-sensor (camelCase over the wire). - name: ProvisionSensorResponse fields: 2 description: The created device plus the one-use enrollment token (shown once; never logged). - name: ProvisionedNode fields: 5 - name: ProvisionedSensor fields: 5 - name: RFCaptureCreate fields: 5 - name: RFCaptureData fields: 2 - name: RFCaptureResponse fields: 10 - name: RFCaptureSummary fields: 10 - name: RadarObservationCreate fields: 21 - name: RadarObservationHistoryResponse fields: 9 description: Response containing historical radar observation data (hot/PostgreSQL only). - name: RadarObservationRead fields: 28 - name: ReachabilitySnapshotRead fields: 9 - name: RegionCircle fields: 5 description: Circle region overlay - name: RegionPolygon fields: 4 description: Polygon region overlay - name: RelativePlotData fields: 14 - name: Release fields: 6 description: A release of one product, as the repository holds it. - name: RenewRequest fields: 1 description: Device-supplied body for ``POST /api/edge-sensor/renew-cert`` (camelCase over the wire). - name: RepositoryHealth fields: 6 description: The repository's freshness, from its signed metadata. - name: ResidualRequest fields: 3 - name: ResolvedCatalogNumber fields: 4 description: A token that identified exactly one approved satellite. - name: RfObservationHistoryResponse fields: 9 description: '`GET /observations/rf`: RF observations, hot rows only, shaped like the radar and DOA' - name: RfObservationRead fields: 23 description: 'One RF observation: a passive single-antenna detection. Range rate is the only' - name: RiskCategoryPolicyCreate fields: 2 - name: RiskCategoryPolicyRead fields: 6 - name: RoleExpiry fields: 2 description: When one role's signed metadata stops being accepted. - name: RunDetail fields: 0 - name: RunObservation fields: 3 - name: RunSummary fields: 19 - name: SatelliteAlias fields: 10 - name: SatelliteAssociations fields: 9 - name: SatelliteEphemeris fields: 3 description: Ephemeris data for a single satellite. - name: SatelliteEpochsEntry fields: 2 - name: SatelliteEventRead fields: 9 - name: SatelliteGroup fields: 13 - name: SatelliteGroupAddSatellites fields: 1 - name: SatelliteGroupCreate fields: 4 - name: SatelliteGroupRemoveSatellites fields: 1 - name: SatelliteGroupUpsert fields: 5 - name: SatelliteIdentityScore fields: 3 description: Server-computed identity-confidence chip shown by the Operating - name: SatelliteInFOV fields: 4 - name: SatelliteLookAngles fields: 3 description: Look-angle series for a single satellite. - name: SatelliteOriginEventRead fields: 4 - name: SatelliteOverview fields: 2 - name: SatellitePage fields: 2 - name: SatelliteSummary fields: 54 - name: SatelliteTransmissionRead fields: 10 - name: SatelliteWithFreshness fields: 60 description: '`Satellite` plus Operating Picture freshness signals + the' - name: ScenarioControlAccepted fields: 3 - name: ScenarioCreate fields: 3 - name: ScenarioPromotionCreate fields: 1 - name: ScenarioRead fields: 11 - name: ScenarioRunCreate fields: 4 - name: ScenarioRunRead fields: 23 - name: ScenarioSensorDefinition fields: 16 - name: ScenarioStatus fields: 8 - name: ScenarioUpdate fields: 4 description: OpenAPI shape for the presence-aware PATCH parser in the handler. - name: ScienceHealth fields: 5 description: Science-QC verdict counts (returned, not currently rendered). - name: SensorBindingsResponse fields: 2 description: The catalog instruments an operator has bound to one edge_sensor. - name: SensorCalibrationAudit fields: 31 description: A per-sensor calibration audit from keplime's ``audit_citra_sensors``. - name: SensorCalibrationHealthResponse fields: 4 - name: SensorCalibrationOverride fields: 11 description: An installed calibration override, active or withdrawn. - name: SensorCalibrationOverrideCreate fields: 6 description: Request body for installing a hand-set calibration value (documentation only; the path - name: SensorCalibrationState fields: 6 description: Whether one sensor's observations may be consumed by orbit determination. - name: SensorCalibrationStateWrite fields: 2 description: Request body for moving one sensor to a calibration state (documentation only). - name: SensorCalibrationView fields: 10 description: One sensor's calibration as it is actually being applied. - name: SensorCommandAnswer fields: 7 description: A node's answer to a command Core sent it. - name: SensorCommandRequest fields: 2 - name: SensorComparisonGroup fields: 3 description: The satellite group the residuals response is split against. - name: SensorConnectApproveRequest fields: 6 - name: SensorConnectApproveResponse fields: 1 - name: SensorConnectExchangeRequest fields: 3 - name: SensorConnectExchangeResponse fields: 3 - name: SensorCoverageSummaryResponse fields: 16 description: Coverage extremes and counts for one sensor's observations in a window. - name: SensorDevice fields: 11 description: The CitraSense box behind a telescope or antenna. - name: SensorEpochsEntry fields: 5 - name: SensorEventRead fields: 9 - name: SensorGroup fields: 12 - name: SensorGroupAddSensors fields: 2 - name: SensorGroupCreate fields: 5 - name: SensorGroupMemberSummary fields: 17 - name: SensorGroupObservationVolumeResponse fields: 5 - name: SensorGroupPerformanceSummaryResponse fields: 14 - name: SensorGroupRemoveSensors fields: 2 - name: SensorGroupUpsert fields: 6 - name: SensorIngestDelayResponse fields: 5 - name: SensorObservationStats fields: 4 description: Aggregate per-sensor stats for the Operating Picture's Sensor - name: SensorPass fields: 11 description: One pass of a satellite where a sensor can observe it, earliest first. - name: SensorPassRequest fields: 7 description: 'A sensor''s pass search: the satellites that pass where that sensor can observe them, by its' - name: SensorPipelineStatsResponse fields: 24 - name: SensorResidualPoint fields: 23 description: One observation's residuals against the reference elset nearest its own epoch. - name: SensorResidualSatellite fields: 18 description: Per-satellite residual summary over the requested window. - name: SensorResidualsResponse fields: 16 - name: SensorStatsResponse fields: 3 description: Single response payload for `GET /edge/operating-picture/sensor-stats`. - name: SetSensorAttachmentRequest fields: 1 description: Admin body for PUT /edge-sensor/{id}/attachment — re-home a sensor, or detach it. - name: SignedUrlResponse fields: 2 description: Response schema for a signed CloudFront URL. - name: SolveAccessGroundStationsToSatellite fields: 7 description: Fields used when making a request for access window calculations from ground stations to a satellite - name: SolveAccessSatellitesToGroundStation fields: 12 description: Fields used when making a request for access window calculations from satellites to ground station(s). Pass 1 ID for single-station access, or 2+ IDs for coordinated/TDOA access (overlapping windows o - name: SolveAccessSatellitesToLocation fields: 4 description: Fields used when making a request for access window calculations from satellites to geographic locations (waypoints) - name: SolveOD fields: 7 - name: SpectrumData fields: 3 description: 'A spectral measurement: parallel wavelength (micrometers) / flux arrays.' - name: StateCount fields: 2 description: How many boxes on a channel are in one state. - name: Task fields: 27 description: Task schema for reading - name: TaskCreate fields: 5 description: Task schema for creation. - name: TaskDomainResponse fields: 1 description: The JetStream domain THIS tier serves tasks from, for a sensor to reconcile against. - name: TaskHistoryRow fields: 39 - name: TaskInput fields: 1 description: Task schema for updates. - name: TaskReportCreate fields: 6 description: A report submitted by either the public HTTP API or an attached device. - name: TaskReportRead fields: 8 - name: TaskReportUpsertResponse fields: 8 - name: TaskingPreferences fields: 1 - name: TaskingPreferencesUpdate fields: 1 - name: Telescope fields: 40 - name: TelescopeCreate fields: 23 description: Schema for telescope creation - required fields enforced. - name: TelescopeUpdate fields: 24 description: Schema for telescope update operations (PATCH) - all fields optional - name: TelescopeUpsert fields: 24 description: Schema for telescope upsert operations (create or update) - name: TextBlock fields: 1 - name: ThreatAssessmentPage fields: 4 - name: ThreatAssessmentRead fields: 19 - name: ThreatObjectStateRead fields: 5 - name: TleOut fields: 2 - name: TunableFilterConfig fields: 5 description: Configuration for tunable filters (LCTF, AOTF). - name: UnassignedBox fields: 8 description: A box checking in that nobody has set up or assigned. - name: UnreadCountResponse fields: 1 - name: UnresolvedCatalogNumber fields: 2 description: A token that did not identify a satellite. - name: UpdateGroupPermissionsRequest fields: 1 description: Privilege flags on a group. Add new toggles here; identity stays on UpdateGroupRequest. - name: UpdateGroupRequest fields: 5 - name: UpdateRepository fields: 2 description: Where an update repository's signed metadata and targets are, on one origin. - name: UpdateUserAccessRequest fields: 4 - name: UploadInitiateResponse fields: 6 - name: UploadListItemResponse fields: 13 - name: UploadStatusResponse fields: 16 - name: UserGroupRead fields: 10 - name: UserInterfacePreferences fields: 1 - name: UserInterfacePreferencesUpdate fields: 1 - name: UserPreferences fields: 2 - name: UserPreferencesUpdate fields: 2 - name: UserProfileResponse fields: 4 - name: UserProfileSensors fields: 4 - name: UserRead fields: 8 - name: ValidationError fields: 5 - name: Wave fields: 2 description: One step of a staged rollout. - name: Waypoint fields: 5 description: A geographic location with a time range for access calculations. - name: WeatherAlert fields: 6 - name: WeatherCondition fields: 4 - name: WeatherResponse fields: 9 relationships: - from: AdminUserRead to: UserGroupRead type: has_one via: group - from: AdminUserRead to: UserPreferences type: has_one via: preferences - from: AdvancedStateBundleResponse to: CartesianStateOut type: has_one via: cartesianState - from: AdvancedStateBundleResponse to: TleOut type: has_one via: meanBrouwerXp - from: AdvancedStateBundleResponse to: TleOut type: has_one via: meanKozaiGp - from: AdvancedStateBundleResponse to: OsculatingKeplerianOut type: has_one via: osculatingKeplerian - from: Alert to: Maneuver type: belongs_to via: maneuverId - from: Alert to: Mission type: belongs_to via: missionId - from: AlertSubscription to: Mission type: belongs_to via: missionId - from: AlertSubscription to: SatelliteGroup type: belongs_to via: satelliteGroupId - from: AlertSubscriptionCreate to: Mission type: belongs_to via: missionId - from: AlertSubscriptionCreate to: SatelliteGroup type: belongs_to via: satelliteGroupId - from: Antenna to: GroundStation type: belongs_to via: groundStationId - from: AntennaCreate to: GroundStation type: belongs_to via: groundStationId - from: AntennaUpdate to: GroundStation type: belongs_to via: groundStationId - from: AntennaUpsert to: GroundStation type: belongs_to via: groundStationId - from: AssociationCandidateScreeningRequest to: ObservationRef type: has_many via: observations - from: AssociationCandidateScreeningResponse to: AssociationCandidate type: has_many via: candidates - from: AssociationJobStatus to: SatelliteAssociations type: has_one via: result - from: BatchCollectionRequestCreate to: SatelliteGroup type: belongs_to via: satelliteGroupIds - from: BatchCollectionRequestResponse to: CollectionRequest type: belongs_to via: collectionRequestIds - from: BoxApprovalRequest to: Antenna type: belongs_to via: antenna_ids - from: BoxApprovalRequest to: Telescope type: belongs_to via: telescope_ids - from: BoxAssignment to: Antenna type: belongs_to via: antenna_ids - from: BoxAssignment to: Telescope type: belongs_to via: telescope_ids - from: BoxAssignmentRequest to: Antenna type: belongs_to via: antenna_ids - from: BoxAssignmentRequest to: Telescope type: belongs_to via: telescope_ids - from: BoxAssignments to: BoxAssignment type: has_many via: assigned - from: BoxAssignments to: UnassignedBox type: has_many via: unassigned - from: CartesianStateOut to: CartesianVectorOut type: has_one via: positionKm - from: CartesianStateOut to: CartesianVectorOut type: has_one via: velocityKmS - from: CatalogNumberResolveResponse to: ResolvedCatalogNumber type: has_many via: resolved - from: CatalogNumberResolveResponse to: UnresolvedCatalogNumber type: has_many via: unresolved - from: ChannelRollout to: StateCount type: has_many via: sensors - from: ChannelRollout to: Wave type: has_many via: waves - from: ChatFeedback to: Conversation type: belongs_to via: conversationId - from: ChatFeedback to: Message type: belongs_to via: messageId - from: ChatFeedbackCreate to: Message type: belongs_to via: messageId - from: CitraSensors to: Antenna type: has_many via: antennas - from: CitraSensors to: Telescope type: has_many via: telescopes - from: CollectionRequest to: Antenna type: belongs_to via: antennaIds - from: CollectionRequest to: GroundStation type: belongs_to via: groundStationIds - from: CollectionRequest to: Mission type: belongs_to via: missionId - from: CollectionRequest to: Telescope type: belongs_to via: telescopeIds - from: CollectionRequestCreate to: Mission type: belongs_to via: missionId - from: ConversationMessageResponse to: Message type: has_one via: message - from: CoordinatedAccessWindow to: HorizonAccess type: has_many via: accesses - from: CounterIsrPreferences to: SatelliteGroup type: belongs_to via: satelliteGroupIds - from: CounterIsrPreferencesUpdate to: SatelliteGroup type: belongs_to via: satelliteGroupIds - from: CurrentWeather to: WeatherCondition type: has_many via: weather - from: DOAObservationHistoryResponse to: Antenna type: belongs_to via: antennaId - from: DOAObservationHistoryResponse to: DOAObservationRead type: has_many via: dataPoints - from: DailyForecast to: DailyFeelsLike type: has_one via: feelsLike - from: DailyForecast to: DailyTemperature type: has_one via: temp - from: DailyForecast to: WeatherCondition type: has_many via: weather - from: DeviceAntennaUpdate to: GroundStation type: belongs_to via: groundStationId - from: DeviceBindings to: BoundSensor type: has_many via: antennas - from: DeviceBindings to: BoundSensor type: has_many via: telescopes - from: DeviceBindingsRequest to: Antenna type: belongs_to via: antennaIds - from: DeviceBindingsRequest to: Telescope type: belongs_to via: telescopeIds - from: DeviceIQUpload to: Task type: belongs_to via: taskId - from: DeviceImageUpload to: Task type: belongs_to via: taskId - from: DeviceImageUpload to: Telescope type: belongs_to via: telescopeId - from: DeviceSiteWeather to: Antenna type: belongs_to via: antennaIds - from: DeviceSiteWeather to: WeatherResponse type: has_one via: forecast - from: DeviceSiteWeather to: GroundStation type: belongs_to via: groundStationId - from: DeviceSiteWeather to: Telescope type: belongs_to via: telescopeIds - from: DeviceTelescopeUpdate to: GroundStation type: belongs_to via: groundStationId - from: DeviceWeather to: DeviceSiteWeather type: has_many via: sites - from: DiscreteFilterConfig to: FilterSpec type: has_many via: filters - from: EdgeNodeSummary to: Mission type: belongs_to via: missionId - from: EdgePreferences to: CounterIsrPreferences type: has_one via: counterIsr - from: EdgePreferences to: OperatingPicturePreferences type: has_one via: operatingPicture - from: EdgePreferences to: TaskingPreferences type: has_one via: tasking - from: EdgePreferencesUpdate to: CounterIsrPreferencesUpdate type: has_one via: counterIsr - from: EdgePreferencesUpdate to: OperatingPicturePreferencesUpdate type: has_one via: operatingPicture - from: EdgePreferencesUpdate to: TaskingPreferencesUpdate type: has_one via: tasking - from: EdgeSensorLinkRequest to: Antenna type: belongs_to via: antennaIds - from: EdgeSensorLinkRequest to: Telescope type: belongs_to via: telescopeIds - from: Effector to: GroundStation type: belongs_to via: groundStationId - from: ElsetHistoryResponse to: ElsetHistoryPoint type: has_many via: dataPoints - from: FITSImageDataResponse to: RegionCircle type: has_many via: circles - from: FITSImageDataResponse to: RegionPolygon type: has_many via: polygons - from: FilterExpandListResponse to: FilterExpandResponse type: has_many via: filters - from: FilterListResponse to: FilterInfo type: has_many via: filters - from: GetResidualsRequest to: Elset-Input type: has_one via: elset - from: GroundStation to: LaunchCorridor type: has_many via: launchCorridors - from: GroundStationCreate to: LaunchCorridor type: has_many via: launchCorridors - from: GroundStationList to: GroundStation type: has_many via: groundStations - from: GroundStationSensorSelection to: GroundStation type: belongs_to via: groundStationId - from: GroundTrackResponse to: GroundTrackPoint type: has_many via: points - from: GroupMemberRead to: UserGroupRead type: has_one via: group - from: HTTPValidationError to: ValidationError type: has_many via: detail - from: HealthResponse to: HealthRow type: has_many via: rows - from: HorizonAccess to: HorizonState type: has_one via: end - from: HorizonAccess to: GroundStation type: belongs_to via: groundStationId - from: HorizonAccess to: HorizonState type: has_one via: start - from: HourlyForecast to: WeatherCondition type: has_many via: weather - from: IQUpload to: Antenna type: belongs_to via: antennaId - from: IQUpload to: Task type: belongs_to via: taskId - from: IQUploadListResponse to: IQUpload type: has_many via: items - from: LaunchDefinitionCreate to: CorridorSnapshot type: has_many via: corridors - from: LaunchDefinitionCreate to: GroundStation type: belongs_to via: groundStationId - from: LaunchDefinitionRead to: CorridorSnapshot type: has_many via: corridors - from: LaunchDefinitionRead to: GroundStation type: belongs_to via: groundStationId - from: LaunchDefinitionRead to: Mission type: belongs_to via: missionId - from: LaunchDefinitionUpdate to: GroundStation type: belongs_to via: groundStationId - from: LaunchScenarioDefinition to: LaunchManeuver type: has_many via: maneuvers - from: LaunchScenarioDefinition to: Mission type: belongs_to via: missionId - from: LaunchScenarioDefinition to: ScenarioSensorDefinition type: has_many via: sensors - from: LaunchScenarioDefinition to: LaunchSeparation type: has_many via: separations - from: LaunchScenarioDefinition to: LaunchWarning type: has_many via: warnings - from: LaunchScenarioReadDefinition to: LaunchManeuver type: has_many via: maneuvers - from: LaunchScenarioReadDefinition to: Mission type: belongs_to via: missionId - from: LaunchScenarioReadDefinition to: ScenarioSensorDefinition type: has_many via: sensors - from: LaunchScenarioReadDefinition to: LaunchSeparation type: has_many via: separations - from: LaunchScenarioReadDefinition to: LaunchWarning type: has_many via: warnings - from: LinkableSensors to: LinkableSensor type: has_many via: antennas - from: LinkableSensors to: LinkableSensor type: has_many via: telescopes - from: Message to: TextBlock type: has_many via: content - from: Message to: Conversation type: belongs_to via: conversationId - from: MessageCreate to: TextBlock type: has_many via: content - from: Mission to: Antenna type: belongs_to via: antennaIds - from: Mission to: EffectorSummary type: has_one via: effector - from: Mission to: Effector type: belongs_to via: effectorId - from: Mission to: SatelliteGroup type: belongs_to via: satelliteGroupIds - from: Mission to: Telescope type: belongs_to via: telescopeIds - from: MissionCreate to: Antenna type: belongs_to via: antennaIds - from: MissionCreate to: Effector type: belongs_to via: effectorId - from: MissionCreate to: SatelliteGroup type: belongs_to via: satelliteGroupIds - from: MissionCreate to: Telescope type: belongs_to via: telescopeIds - from: MissionDecisionLogPage to: MissionDecisionLogRead type: has_many via: items - from: MissionDecisionLogRead to: Mission type: belongs_to via: missionId - from: MissionEffectBatchCreate to: Mission type: belongs_to via: missionId - from: MissionEffectBatchCreate to: SatelliteGroup type: belongs_to via: satelliteGroupIds - from: MissionEffectDetail to: Mission type: belongs_to via: missionId - from: MissionLaunchRead to: LaunchDefinitionRead type: has_one via: definition - from: MissionOperatingPictureSatellitesResponse to: MissionOperatingPictureGroup type: has_many via: groups - from: MissionOperatingPictureSatellitesResponse to: OperatingPictureSatellite type: has_many via: satellites - from: MissionThreatCustodyRead to: Mission type: belongs_to via: missionId - from: MissionUpdate to: Antenna type: belongs_to via: antennaIds - from: MissionUpdate to: Effector type: belongs_to via: effectorId - from: MissionUpdate to: SatelliteGroup type: belongs_to via: satelliteGroupIds - from: MissionUpdate to: Telescope type: belongs_to via: telescopeIds - from: MsiBusPredictionReadList to: MsiBusPredictionRead type: has_many via: items - from: ObservationReassignRequest to: ObservationRef type: has_many via: observations - from: ObservationResidual to: Elset type: belongs_to via: elsetId - from: ObservationSpectrumResponse to: SpectrumData type: has_one via: spectrum - from: OdHealthResponse to: OdHealthRow type: has_many via: rows - from: OdRunDetail to: OdRunObservation type: has_many via: observations - from: OperatingPicturePreferences to: SatelliteGroup type: belongs_to via: satelliteGroupIds - from: OperatingPicturePreferencesUpdate to: SatelliteGroup type: belongs_to via: satelliteGroupIds - from: OperatingPictureSatellite to: SatelliteIdentityScore type: has_one via: identityScore - from: OpportunityWindowRequest to: Antenna type: belongs_to via: antennaIds - from: OpportunityWindowRequest to: Telescope type: belongs_to via: telescopeIds - from: OpticalObservationCreate to: SpectrumData type: has_one via: spectrum - from: OpticalObservationCreate to: Task type: belongs_to via: taskId - from: OpticalObservationCreate to: Telescope type: belongs_to via: telescopeId - from: OpticalObservationHistoryPoint to: SpectrumData type: has_one via: spectrum - from: OpticalObservationHistoryPoint to: Task type: belongs_to via: taskId - from: OpticalObservationHistoryPoint to: Telescope type: belongs_to via: telescopeId - from: OpticalObservationHistoryResponse to: OpticalObservationHistoryPoint type: has_many via: dataPoints - from: OpticalObservationHistoryResponse to: Telescope type: belongs_to via: telescopeId - from: OrbitalElementPoint to: Elset type: belongs_to via: elsetId - from: OrbitalElementsResponse to: OrbitalElementPoint type: has_many via: dataPoints - from: OsculatingKeplerianOut to: KeplerianElementsOut type: has_one via: elements - from: PaginatedResponse_Alert_ to: Alert type: has_many via: items - from: PaginatedResponse_HyperspectralObservationSummary_ to: HyperspectralObservationSummary type: has_many via: items - from: PaginatedResponse_MissionEventRead_ to: MissionEventRead type: has_many via: items - from: PaginatedResponse_SatelliteSummary_ to: SatelliteSummary type: has_many via: items - from: PaginatedResponse_TaskHistoryRow_ to: TaskHistoryRow type: has_many via: items - from: PersonalAccessTokenList to: PersonalAccessToken type: has_many via: tokens - from: ProvisionNodeRequest to: Mission type: belongs_to via: missionId - from: ProvisionNodeResponse to: ProvisionedNode type: has_one via: node - from: ProvisionSensorResponse to: ProvisionedSensor type: has_one via: device - from: ProvisionedNode to: Mission type: belongs_to via: missionId - from: RFCaptureCreate to: Antenna type: belongs_to via: antennaId - from: RFCaptureCreate to: RFCaptureData type: has_one via: data - from: RFCaptureCreate to: Task type: belongs_to via: taskId - from: RFCaptureData to: Detection type: has_many via: detections - from: RFCaptureData to: PowerSpectralDensity type: has_one via: powerSpectralDensity - from: RFCaptureResponse to: Antenna type: belongs_to via: antennaId - from: RFCaptureResponse to: RFCaptureData type: has_one via: data - from: RFCaptureResponse to: Task type: belongs_to via: taskId - from: RFCaptureSummary to: Antenna type: belongs_to via: antennaId - from: RFCaptureSummary to: Task type: belongs_to via: taskId - from: RadarObservationCreate to: Antenna type: belongs_to via: antennaId - from: RadarObservationHistoryResponse to: Antenna type: belongs_to via: antennaId - from: RadarObservationHistoryResponse to: RadarObservationRead type: has_many via: dataPoints - from: RadarObservationRead to: Antenna type: belongs_to via: antennaId - from: ReachabilitySnapshotRead to: Mission type: belongs_to via: missionId - from: Release to: Build type: has_many via: builds - from: RepositoryHealth to: RoleExpiry type: has_many via: roles - from: RepositoryHealth to: PlanRef type: has_many via: unreadablePlans - from: ResidualRequest to: Elset type: has_one via: elset - from: RfObservationHistoryResponse to: Antenna type: belongs_to via: antennaId - from: RfObservationHistoryResponse to: RfObservationRead type: has_many via: dataPoints - from: RfObservationRead to: Antenna type: belongs_to via: antennaId - from: RiskCategoryPolicyCreate to: Mission type: belongs_to via: missionId - from: RiskCategoryPolicyRead to: Mission type: belongs_to via: missionId - from: RunDetail to: RunObservation type: has_many via: observations - from: SatelliteAssociations to: AssociationPoint type: has_many via: points - from: SatelliteEphemeris to: EphemerisPoint type: has_many via: points - from: SatelliteEpochsEntry to: SensorEpochsEntry type: has_many via: sensors - from: SatelliteLookAngles to: LookAnglePoint type: has_many via: points - from: SatellitePage to: SatelliteSummary type: has_many via: satellites - from: SatelliteTransmissionRead to: Antenna type: belongs_to via: antennaId - from: SatelliteWithFreshness to: SatelliteIdentityScore type: has_one via: identityScore - from: ScenarioCreate to: LaunchScenarioDefinition type: has_one via: definition - from: ScenarioRead to: LaunchScenarioReadDefinition type: has_one via: definition - from: ScenarioSensorDefinition to: GroundStation type: belongs_to via: groundStationId - from: ScenarioUpdate to: LaunchScenarioDefinition type: has_one via: definition - from: SensorBindingsResponse to: Antenna type: belongs_to via: antennaIds - from: SensorBindingsResponse to: Telescope type: belongs_to via: telescopeIds - from: SensorCalibrationHealthResponse to: SensorCalibrationAudit type: has_one via: baseline - from: SensorCalibrationHealthResponse to: SensorCalibrationAudit type: has_one via: latestTrend - from: SensorCalibrationView to: SensorCalibrationAudit type: has_one via: baseline - from: SensorCalibrationView to: SensorCalibrationOverride type: has_many via: overrides - from: SensorCalibrationView to: ProviderChannelConvention type: has_many via: providerConventions - from: SensorCalibrationView to: Provider type: belongs_to via: providerId - from: SensorCalibrationView to: SensorCalibrationState type: has_one via: state - from: SensorDevice to: DeviceProduct type: has_many via: products - from: SensorGroup to: Antenna type: belongs_to via: antennaIds - from: SensorGroup to: Telescope type: belongs_to via: telescopeIds - from: SensorGroupAddSensors to: Antenna type: belongs_to via: antennaIds - from: SensorGroupAddSensors to: Telescope type: belongs_to via: telescopeIds - from: SensorGroupCreate to: Antenna type: belongs_to via: antennaIds - from: SensorGroupCreate to: Telescope type: belongs_to via: telescopeIds - from: SensorGroupObservationVolumeResponse to: ObservationVolumeBucket type: has_many via: buckets - from: SensorGroupPerformanceSummaryResponse to: SensorGroupMemberSummary type: has_many via: sensors - from: SensorGroupRemoveSensors to: Antenna type: belongs_to via: antennaIds - from: SensorGroupRemoveSensors to: Telescope type: belongs_to via: telescopeIds - from: SensorGroupUpsert to: Antenna type: belongs_to via: antennaIds - from: SensorGroupUpsert to: Telescope type: belongs_to via: telescopeIds - from: SensorIngestDelayResponse to: IngestDelayBucket type: has_many via: buckets - from: SensorPassRequest to: SatelliteGroup type: belongs_to via: satelliteGroupIds - from: SensorPipelineStatsResponse to: ProcessorTiming type: has_many via: perProcessorTiming - from: SensorPipelineStatsResponse to: ScienceHealth type: has_one via: scienceHealth - from: SensorResidualPoint to: Elset type: belongs_to via: elsetId - from: SensorResidualSatellite to: Elset type: belongs_to via: elsetId - from: SensorResidualsResponse to: SensorComparisonGroup type: has_one via: comparisonGroup - from: SensorResidualsResponse to: ErrorRegimeBin type: has_many via: errorRegimeBins - from: SensorResidualsResponse to: SensorResidualPoint type: has_many via: points - from: SensorResidualsResponse to: SensorResidualSatellite type: has_many via: satellites - from: SensorStatsResponse to: SensorObservationStats type: has_many via: stats - from: SolveAccessSatellitesToGroundStation to: GroundStation type: belongs_to via: groundStationIds - from: SolveAccessSatellitesToGroundStation to: SatelliteGroup type: belongs_to via: satelliteGroupIds - from: SolveAccessSatellitesToLocation to: SatelliteGroup type: belongs_to via: satelliteGroupIds - from: SolveAccessSatellitesToLocation to: Waypoint type: has_many via: waypoints - from: SolveOD to: Elset-Input type: has_one via: seedElset - from: SpectrumData to: GratingProvenance type: has_one via: grating - from: Task to: Antenna type: belongs_to via: antennaId - from: Task to: CollectionRequest type: belongs_to via: collectionRequestId - from: Task to: GroundStation type: belongs_to via: groundStationId - from: Task to: Mission type: belongs_to via: missionId - from: Task to: Telescope type: belongs_to via: telescopeId - from: TaskCreate to: Antenna type: belongs_to via: antennaId - from: TaskCreate to: Telescope type: belongs_to via: telescopeId - from: TaskReportRead to: Task type: belongs_to via: taskId - from: TaskReportUpsertResponse to: Task type: belongs_to via: taskId - from: TaskingPreferences to: GroundStationSensorSelection type: has_many via: groundStations - from: Telescope to: GroundStation type: belongs_to via: groundStationId - from: Telescope to: DiscreteFilterConfig type: has_one via: spectralConfig - from: Telescope to: TunableFilterConfig type: has_one via: spectralConfig - from: Telescope to: HyperspectralConfig type: has_one via: spectralConfig - from: TelescopeCreate to: GroundStation type: belongs_to via: groundStationId - from: TelescopeCreate to: DiscreteFilterConfig type: has_one via: spectralConfig - from: TelescopeCreate to: TunableFilterConfig type: has_one via: spectralConfig - from: TelescopeCreate to: HyperspectralConfig type: has_one via: spectralConfig - from: TelescopeUpdate to: GroundStation type: belongs_to via: groundStationId - from: TelescopeUpdate to: DiscreteFilterConfig type: has_one via: spectralConfig - from: TelescopeUpdate to: TunableFilterConfig type: has_one via: spectralConfig - from: TelescopeUpdate to: HyperspectralConfig type: has_one via: spectralConfig - from: TelescopeUpsert to: GroundStation type: belongs_to via: groundStationId - from: TelescopeUpsert to: DiscreteFilterConfig type: has_one via: spectralConfig - from: TelescopeUpsert to: TunableFilterConfig type: has_one via: spectralConfig - from: TelescopeUpsert to: HyperspectralConfig type: has_one via: spectralConfig - from: ThreatAssessmentPage to: ThreatAssessmentRead type: has_many via: items - from: ThreatAssessmentRead to: Mission type: belongs_to via: missionId - from: ThreatObjectStateRead to: Mission type: belongs_to via: missionId - from: UploadListItemResponse to: Task type: belongs_to via: taskId - from: UploadListItemResponse to: Telescope type: belongs_to via: telescopeId - from: UploadStatusResponse to: Task type: belongs_to via: taskId - from: UploadStatusResponse to: Telescope type: belongs_to via: telescopeId - from: UserPreferences to: EdgePreferences type: has_one via: edge - from: UserPreferences to: UserInterfacePreferences type: has_one via: interface - from: UserPreferencesUpdate to: EdgePreferencesUpdate type: has_one via: edge - from: UserPreferencesUpdate to: UserInterfacePreferencesUpdate type: has_one via: interface - from: UserProfileResponse to: GroundStation type: has_many via: groundStations - from: UserProfileResponse to: UserProfileSensors type: has_one via: sensors - from: UserProfileSensors to: Antenna type: has_many via: antennas - from: UserProfileSensors to: Telescope type: has_many via: telescopes - from: UserRead to: UserGroupRead type: has_one via: group - from: UserRead to: UserPreferences type: has_one via: preferences - from: WeatherResponse to: CurrentWeather type: has_one via: current