---
title: "Reboot a single instance within a rental"
method: POST
path: "/v2/on-demand/rentals/reboot-instance"
tags: ["rentals"]
---

# Reboot a single instance within a rental

`POST /v2/on-demand/rentals/reboot-instance`

## Request

- Base URL: `https://api.hyperbolic.ai`
- URL: `https://api.hyperbolic.ai/v2/on-demand/rentals/reboot-instance`
- Auth: HTTP bearer

Reboots one instance. Call it only for an instance whose `instances[].supportsReboot` is true. Virtual machines get a warm in-place guest reset; bare-metal servers are power-cycled. Disk contents are preserved either way; unsaved in-memory work is lost. Reports INVALID_INSTANCE_REF for an `instanceRef` outside this rental, REBOOT_NOT_SUPPORTED for a rental that does not support reboot, and REBOOT_ALREADY_IN_PROGRESS while one is in flight.

## Request body

- object
  - `rentalId` union, required
    - string: The rental's `rentalId`.
    - integer: Deprecated. The rental's legacy numeric id; use `rentalId`.
  - `instanceRef` string, required

## Response `200`

Successful response

- RentalInstanceReboot: Confirmation that a node of a rental is rebooting.
  - `message` string, required
  - `rentalId` string, required
  - `instanceRef` string, required

## Other responses

- `400`: Invalid input data
- `401`: Authorization not provided
- `403`: Insufficient access
- `500`: Internal server error

## Changes

- **2026-10-14** `e5723257832a`: 1 breaking, 1 info
  - removed `subschema #1, subschema #2` from the `rentalId` request property `anyOf` list
  - added `subschema #1, subschema #2` to the `rentalId` request property `anyOf` list
- **2026-10-08** `788c6928f524`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/hyperbolic/apis/castle-api/changes/v2/on-demand/rentals/reboot-instance/post.md)

---

[API](https://skmtc.dev/hyperbolic/apis/castle-api.md) - [All operations](https://skmtc.dev/hyperbolic/apis/castle-api/llms.txt) - [OpenAPI document](https://skmtc.dev/hyperbolic/apis/castle-api/revisions/d4d4f25214b8?raw)
