Coming soon. Reserved capacity is not yet available. The contract below
may change before launch.
Interval
A 15-minute window on the UTC quarter-hour grid.| Field | Meaning |
|---|---|
startsAt | Inclusive start. Always ends in :00, :15, :30, or :45 with zero seconds. |
endsAt | Exclusive end. Always startsAt + 15 minutes. |
[startsAt, endsAt)) mean two adjacent reservations
never overlap and never leave gaps.
Reservation
A commitment event. EachPOST /api/capacity/reservations creates one
reservation: a server-generated UUID, a createdAt timestamp, and one or
more (interval, capacityGb) line items. capacityGb must be a positive
multiple of 4 (= 1 GB-hour over the 15-minute interval); single-GB
reservations aren’t accepted.
The reservation log
The list of all your reservations is the durable, auditable record of your commitments over time.GET /api/capacity/reservations returns it in
reverse-chronological order.
This is also how the calendar is computed internally: at any moment,
reservedGb for an interval is just the sum of capacityGb across all
your reservations covering that interval.
Calendar
The planning read model. Given a time range, returns one row per interval with the numbers you need to plan:| Field | Meaning |
|---|---|
reservableGb | Additional GB you could add to this interval right now. |
reservationLimitGb | The policy cap on how much you can hold in this interval (your org’s max_memory_gb). |
reservedGb | What you already hold in this interval (sum of all your reservations covering it). |
capacity_not_available and you
re-read.
See Reading the calendar for the full shape.
Per-org capacity cap
Your org has a single configured ceiling:max_memory_gb. It applies in
two places:
| Where | What it limits |
|---|---|
| Reservations | Across any single interval, your reservedGb cannot exceed max_memory_gb. |
| Runtime | Your concurrent running memory across all sandboxes cannot exceed max_memory_gb either. |
reservationLimitGb in calendar interval rows.
Usage and overage
Starting and stopping sandboxes is independent of reserving capacity. Reservations don’t pre-warm or pre-allocate compute; they’re an accounting commitment. For each 15-minute interval, at every instant:- If your concurrent memory ≤
reservedGb→ you’re inside your reserved capacity. That portion of the interval is billed at the reserved rate. - If your concurrent memory >
reservedGb→ the excess is overage, billed at the on-demand rate.
Where to go next
Reading the calendar
Plan reservations before you commit.
Reserving capacity
The write flow, idempotency, atomicity.
Usage and overage
How reserved capacity is consumed.
API reference
Every endpoint with full request/response shapes.