Propulsion Systems API
Programmatic access to AeroVance propulsion telemetry, ignition sequences, fuel mixing ratios, and real-time thrust vector control.
GET
/v2/propulsion/status
Stable âĸ v2.1+
Overview
The Propulsion Systems API provides read-only access to engine health metrics, combustion chamber pressure, turbine RPM, and cryogenic fuel levels. This endpoint requires `propulsion:read` scope and military-grade TLS 1.3+ certificates.
Rate limits are strictly enforced at 60 requests/minute per client ID. Exceeding this threshold will trigger a 429 response and temporary IP throttling.
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| mission_id | string | REQUIRED | Unique 24-character hex identifier for the active launch window. |
| engine_group | enum | REQUIRED | Target propulsion cluster: `primary`, `secondary`, or `auxiliary`. |
| telemetry_depth | integer | Granularity level (1-5). Higher values include raw CAN bus frames. Default: 3. | |
| window_seconds | integer | Time window for aggregated metrics. Max: 3600. Default: 60. |
Request Example
cURL
curl -X GET "https://api.aerovance.io/v2/propulsion/status?mission_id=8f3a9c2e...&engine_group=primary&telemetry_depth=3" \
-H "Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9..." \
-H "X-Client-Id: AV-PROP-CLIENT-094" \
-H "Accept: application/json"
Python Example
Python 3.9+
import requests
def fetch_propulsion_status(mission_id, engine_group="primary"):
url = f"https://api.aerovance.io/v2/propulsion/status"
headers = {
"Authorization": f"Bearer {os.getenv('AV_API_TOKEN')}",
"X-Client-Id": os.getenv("AV_CLIENT_ID"),
}
params = {
"mission_id": mission_id,
"engine_group": engine_group,
"telemetry_depth": 3,
}
response = requests.get(url, headers=headers, params=params)
response.raise_for_status()
return response.json()
# Usage
data = fetch_propulsion_status("8f3a9c2e1b4d...")
Response Schema
JSON Response (200 OK)
{
"status": "nominal",
"mission_id": "8f3a9c2e1b4d9f...",
"engine_group": "primary",
"timestamp_ms": 1718492831042,
"metrics": {
"chamber_pressure_kpa": 2045.8,
"turbine_rpm": 31200,
"thrust_vector_deg": { "x": 0.12, "y": -0.04 },
"fuel_mix_ratio": 5.4,
"combustion_efficiency": 0.982
},
"health": {
"overall": "green",
"alerts": [],
"last_maintenance_iso": "2024-05-12T08:30:00Z"
}
}
Thrust vector angles are reported in decimal degrees relative to the gimbal zero position. Values exceeding ¹2.5° trigger automatic flight termination protocols unless overridden by ground control.
Error Codes
| Code | Status | Description |
|---|---|---|
| AV_PROP_001 | 401 | Invalid or expired JWT. Re-authenticate via `/auth/propulsion`. |
| AV_PROP_014 | 403 | Client lacks `propulsion:read` scope. Contact security@erovance.io. |
| AV_PROP_029 | 422 | Invalid `engine_group` enum value. Must be `primary`, `secondary`, or `auxiliary`. |
| AV_PROP_044 | 429 | Rate limit exceeded. Retry after `X-RateLimit-Reset` header. |
| AV_PROP_088 | 503 | Propulsion telemetry buffer overflow. System is temporarily unresponsive. |