Resize My Box
Resize the project’s box to a larger tier (upgrade-only).
The actual stop → modify → start dance runs in a background task; this handler returns immediately with status=RESIZING. The FE polls /me to watch the box flip back to READY when the new instance is up. Takes ~60-90s end-to-end (stop ~30s, start ~30s, growpart instant).
Constraints enforced here:
- new size must be a known tier
- new size must be strictly larger than current (downsize → 400)
- box must be in READY state (otherwise → 409)
- project must clear the eligibility gate at the new size’s min-balance (a small box upgrading to large is now playing by large-box rules)
Authorizations
Body
Resize an existing box to a larger tier.
Upgrade-only: the backend rejects requests where size isn't strictly
larger than the box's current size. Downsize → 400 with a hint to
destroy + redeploy. Same size → 409 (idempotent failure — no work to do).
small, medium, large Response
Successful Response
small, medium, large User-visible spec sheet for one size tier. Returned alongside BoxView so the UI can render the tooltip ("2 vCPU · 4 GB · 20 GB") without a second round trip + so the picker on /bux can show all three rows without us hardcoding prices in the frontend.
provisioning, awaiting_oauth, ready, resizing, error, halted, destroyed