openapi: 3.0.4 info: title: GSN Predictor - OpenAPI 3.0 version: 0.0.1 paths: /api/v1/prediction: get: tags: - Prediction summary: Perform prediction operationId: performPrediction parameters: - in: query name: launch_latitude schema: type: number - in: query name: launch_longitude schema: type: number - in: query name: launch_datetime schema: type: string format: date-time - in: query name: launch_altitude schema: type: number - in: query name: profile schema: type: string enum: [standard_profile, float_profile, reverse_profile, custom_profile] - in: query name: ascent_rate schema: type: number - in: query name: burst_altitude schema: type: number - in: query name: descent_rate schema: type: number - in: query name: float_altitude schema: type: number - in: query name: stop_datetime schema: type: string format: date-time - in: query name: ascent_curve schema: type: string - in: query name: descent_curve schema: type: string - in: query name: interpolate schema: type: boolean - in: query name: format schema: type: string enum: [json] - in: query name: dataset schema: type: string format: date-time responses: "200": description: "Prediction response" content: application/json: schema: $ref: '#/components/schemas/PredictionResult' default: description: Error content: application/json: schema: $ref: "#/components/schemas/Error" /ready: get: tags: - Health summary: Readiness check operationId: readinessCheck responses: "200": description: Readiness status content: application/json: schema: $ref: '#/components/schemas/ReadinessResponse' default: description: Error content: application/json: schema: $ref: "#/components/schemas/Error" components: schemas: Error: type: object required: - message properties: message: type: string details: type: string PredictionResult: type: object required: - metadata - prediction properties: metadata: type: object required: - complete_datetime - start_datetime properties: complete_datetime: type: string format: date-time start_datetime: type: string format: date-time prediction: type: array items: type: object required: - stage - trajectory properties: stage: type: string enum: ["ascent", "descent"] trajectory: type: array items: type: object required: - datetime - latitude - longitude - altitude properties: datetime: type: string format: date-time latitude: type: number longitude: type: number altitude: type: number ReadinessResponse: type: object properties: status: type: string enum: [ok, not_ready, error] last_update: type: string format: date-time is_fresh: type: boolean error_message: type: string required: - status