CAE. Constraint-aware execution planning.
The first API for orbital compute scheduling. POST a satellite and a workload, get back a physically-accurate plan that respects power, thermal, comms, and orbital windows - or an explicit reason it can't be done.
POST a workload. Get a feasible plan.
$ curl https://api.rotastellar.com/v1/plan \ -H "Content-Type: application/json" \ -d '{ "satellite_id": "25544", "preset_id": "onboard-ml-inference" }' # CAE returns a constraint-aware plan { "satellite": { "name": "ISS (ZARYA)", "altitude_km": 408 }, "preset": { "id": "onboard-ml-inference", "steps": 4 }, "orbital_environment": { "eclipse_fraction": 0.35 }, "plan": { "total_duration_s": 2700, "windows_used": 8, "status": "scheduled" }, "error_budget": { "delivery_confidence": 0.98 } }
You can't downlink your way out of orbit.
A satellite can generate on the order of 1 TB/day, while a single ground-station pass moves roughly 7.5 GB. You can't send it all home - so the compute has to happen where the data is, inside power, thermal, and link budgets that change every minute. CAE turns that into a planning problem and solves it.
Four-phase planning, from real orbital mechanics.
Resolve the windows
Propagate the satellite with SGP4 and resolve illumination, eclipse, thermal margin, and ground-station and inter-satellite-link geometry into time-varying envelopes.
Place every step
Assign each workload step to a node - on-satellite, ground, or deferred - given its compute, memory, and I/O requirements.
Close the data budget
Schedule uploads and downloads into contact windows under the link budget, or reject a workload that can't close it.
Lay it on a timeline
Place the steps where every envelope is satisfied simultaneously - or return the first constraint that cannot be met.
Not one plan. A frontier of them.
CAE doesn't just hand back a single answer. It explores the trade-off between delivery confidence and the energy a plan costs, and returns the Pareto frontier, so you pick the point that fits your mission, not ours.
Six workload presets.
Presets capture real orbital compute patterns, so you describe what you want to run and CAE handles the orbital mechanics. Pass a preset_id in your plan request, or define a custom_job.
Endpoints.
Put your first workload in orbit.
Tell us what you want to run and the satellite you want to run it on. We'll come back with a feasible plan - or an honest reason it can't be done yet.