---
title: "Cancel a Reservation"
method: DELETE
path: "/reservations/{reservationId}"
tags: ["Reservations"]
---

# Cancel a Reservation

`DELETE /reservations/{reservationId}`

## Request

- Base URL: `https://gpucloud.ca/api`
- URL: `https://gpucloud.ca/api/reservations/{reservationId}`
- Auth: HTTP bearer

Cancel a waiting reservation (nothing is charged). While a launch attempt runs, the answer is 202 CANCEL_REQUESTED: the attempt stops before any charge or launch not made yet.

## Response `200`

The reservation

- object
  - `reservation` Reservation: A GPU reservation: GPU Cloud launches the server automatically as soon as the machine is back in stock (first come, first served per machine).
    - `id` string
    - `productId` string: Exact machine reserved (model and size).
    - `productName` string
    - `status` 'ACTIVE' | 'PROCESSING' | 'FULFILLED' | 'PAYMENT_FAILED' | 'EXPIRED' | 'CANCELLED'
    - `maxHourlyCad` number: Highest hourly price accepted (CAD). Above it at launch time, the reservation waits.
    - `acceptAlternative` boolean
    - `templateId` string, nullable
    - `templateModel` string, nullable
    - `name` string, nullable
    - `expiresAt` string, date-time
    - `createdAt` string, date-time
    - `queuePosition` integer, nullable: Place in the queue of this machine (1 = next) while waiting.
    - `waitingReason` string, nullable: PRICE_ABOVE_MAX, BUDGET_LIMIT_REACHED, KEY_CAP_REACHED, SETUP_REQUIRED or SSH_KEY_MISSING while it waits for that reason.
    - `cancelRequested` boolean
    - `serverId` string, nullable: Server launched for it (FULFILLED).
    - `fulfilledProductId` string, nullable
    - `fulfilledAt` string, date-time, nullable
    - `source` 'console' | 'api' | 'mcp'
    - `onFundsExhausted` 'HIBERNATE' | 'DELETE': Action at the threshold of the server this reservation launches.

## Other responses

- `202`: The reservation
- `401`: No API key (accountAction.code NO_API_KEY) or an invalid, expired, revoked or read only key on a write (INVALID_API_KEY). Provide a valid API key as `Authorization: Bearer <key>`; accountAction gives the links to create an account and a key.
- `404`: Resource not found
- `409`: No longer waiting
- `429`: Rate limit exceeded
- `500`: Internal server error

---

[API](https://skmtc.dev/gpucloud/apis/gpu-cloud-api.md) · [All operations](https://skmtc.dev/gpucloud/apis/gpu-cloud-api/llms.txt) · [OpenAPI document](https://skmtc.dev/gpucloud/apis/gpu-cloud-api/revisions/ed530411f5c7?raw)
