Problem
#2000 introduced /v1/sandboxes collection and item routes while retaining /v1/instances as compatibility aliases. The route families are still inconsistent: some operations are available under both names, while reset remains available only as POST /v1/instances/{id}/reset.
This forces clients to know operation-specific naming exceptions and leaves the canonical sandbox API incomplete.
Proposed behavior
Make /v1/sandboxes the canonical namespace for every sandbox operation.
- Add a
/v1/sandboxes equivalent for every supported /v1/instances route.
- Route both names through the same handlers and preserve identical status codes, response bodies, idempotency, authorization, and side effects.
- Keep
/v1/instances as a documented compatibility alias during an explicit migration window.
- Define the deprecation and eventual removal policy for
/v1/instances before removing any route.
Acceptance criteria
Scope
This issue does not implement successful reset behavior and does not authorize immediate removal of /v1/instances. It tracks namespace consistency and a compatible migration plan.
Related: #2000, #2290, #2472.
Problem
#2000 introduced
/v1/sandboxescollection and item routes while retaining/v1/instancesas compatibility aliases. The route families are still inconsistent: some operations are available under both names, while reset remains available only asPOST /v1/instances/{id}/reset.This forces clients to know operation-specific naming exceptions and leaves the canonical sandbox API incomplete.
Proposed behavior
Make
/v1/sandboxesthe canonical namespace for every sandbox operation./v1/sandboxesequivalent for every supported/v1/instancesroute./v1/instancesas a documented compatibility alias during an explicit migration window./v1/instancesbefore removing any route.Acceptance criteria
/v1/instancesroute and its/v1/sandboxesequivalent.POST /v1/sandboxes/{id}/reset./v1/sandboxesin primary examples and client-facing documentation./v1/instancesas a compatibility namespace and document its migration window.Scope
This issue does not implement successful reset behavior and does not authorize immediate removal of
/v1/instances. It tracks namespace consistency and a compatible migration plan.Related: #2000, #2290, #2472.