{
  "openapi": "3.1.0",
  "info": {
    "title": "Hyperbolic API",
    "description": "HTTP API for Hyperbolic's on-demand GPU compute: rent virtual machines and bare-metal instances, manage storage volumes, and track usage and billing. Authenticate with a Bearer API key (`Authorization: Bearer <api-key>`).",
    "version": "2.0.0",
    "contact": {
      "name": "Hyperbolic",
      "url": "https://hyperbolic.ai",
      "email": "support@hyperbolic.ai"
    }
  },
  "servers": [
    {
      "url": "https://api.hyperbolic.ai",
      "description": "Production"
    },
    {
      "url": "https://api.hyperbolic.xyz",
      "description": "Legacy host — the same API on Hyperbolic's original domain, kept for existing integrations."
    }
  ],
  "tags": [
    {
      "name": "openapi",
      "description": "OpenAPI specification",
      "x-group": "OpenAPI"
    },
    {
      "name": "rentals",
      "description": "Manage rentals",
      "x-group": "Rentals"
    },
    {
      "name": "storage-volumes",
      "description": "Manage storage volumes",
      "x-group": "Storage Volumes"
    },
    {
      "name": "billing",
      "description": "Manage billing",
      "x-group": "Billing"
    },
    {
      "name": "users",
      "description": "Manage users",
      "x-group": "Users"
    },
    {
      "name": "balances",
      "description": "Manage balances",
      "x-group": "Balances"
    },
    {
      "name": "api-keys",
      "description": "Manage API keys",
      "x-group": "API Keys"
    },
    {
      "name": "ssh-keys",
      "description": "Manage SSH public keys",
      "x-group": "SSH Keys"
    },
    {
      "name": "virtual-machine-rentals",
      "description": "**Deprecated.** Manage virtual machine rentals. These endpoints are still supported for now but are no longer preferred.",
      "x-group": "Virtual Machine Rentals (Deprecated)",
      "x-deprecated": true
    },
    {
      "name": "bare-metal-rentals",
      "description": "**Deprecated.** Manage bare metal rentals. These endpoints are still supported for now but are no longer preferred.",
      "x-group": "Bare Metal Rentals (Deprecated)",
      "x-deprecated": true
    }
  ],
  "paths": {
    "/v2/openapi.json": {
      "get": {
        "operationId": "openApiJson",
        "summary": "Get the public API specification",
        "description": "Returns the OpenAPI 3.1 document for the public API exactly as this environment serves it, including only the endpoints this environment has enabled. This endpoint is open: it takes no API key, and sending one changes nothing about the response.",
        "tags": [
          "openapi"
        ],
        "security": [],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "openapi": {
                      "type": "string"
                    },
                    "info": {
                      "type": "object",
                      "properties": {
                        "title": {
                          "type": "string"
                        },
                        "description": {
                          "type": "string"
                        },
                        "version": {
                          "type": "string"
                        },
                        "contact": {
                          "type": "object",
                          "properties": {
                            "name": {
                              "type": "string"
                            },
                            "url": {
                              "type": "string"
                            }
                          },
                          "additionalProperties": {}
                        }
                      },
                      "required": [
                        "title",
                        "version"
                      ],
                      "additionalProperties": {}
                    },
                    "servers": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "url": {
                            "type": "string"
                          },
                          "description": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "url"
                        ],
                        "additionalProperties": {}
                      }
                    },
                    "tags": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "name": {
                            "type": "string"
                          },
                          "description": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "name"
                        ],
                        "additionalProperties": {}
                      }
                    },
                    "paths": {
                      "type": "object",
                      "propertyNames": {
                        "type": "string"
                      },
                      "additionalProperties": {
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "type": "object",
                          "properties": {
                            "operationId": {
                              "type": "string"
                            },
                            "summary": {
                              "type": "string"
                            },
                            "description": {
                              "type": "string"
                            },
                            "tags": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "deprecated": {
                              "type": "boolean"
                            },
                            "security": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "propertyNames": {
                                  "type": "string"
                                },
                                "additionalProperties": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  }
                                }
                              }
                            },
                            "parameters": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {},
                                "additionalProperties": {}
                              }
                            },
                            "requestBody": {
                              "type": "object",
                              "properties": {},
                              "additionalProperties": {}
                            },
                            "responses": {
                              "type": "object",
                              "propertyNames": {
                                "type": "string"
                              },
                              "additionalProperties": {
                                "type": "object",
                                "properties": {},
                                "additionalProperties": {}
                              }
                            }
                          },
                          "required": [
                            "responses"
                          ],
                          "additionalProperties": {}
                        }
                      }
                    },
                    "components": {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": {}
                    }
                  },
                  "required": [
                    "openapi",
                    "info",
                    "servers",
                    "paths"
                  ],
                  "additionalProperties": {},
                  "title": "OpenAPI document",
                  "description": "The OpenAPI 3.1 document describing the public API as the environment serving it actually runs. The example is abridged — the real response lists every public operation and the schemas they reference.",
                  "example": {
                    "openapi": "3.1.0",
                    "info": {
                      "title": "Hyperbolic API",
                      "description": "HTTP API for Hyperbolic's on-demand GPU compute: rent virtual machines and bare-metal instances, manage storage volumes, and track usage and billing. Authenticate with a Bearer API key (`Authorization: Bearer <api-key>`).",
                      "version": "2.0.0",
                      "contact": {
                        "name": "Hyperbolic",
                        "url": "https://hyperbolic.ai",
                        "email": "support@hyperbolic.ai"
                      }
                    },
                    "servers": [
                      {
                        "url": "https://api.hyperbolic.ai",
                        "description": "Production"
                      },
                      {
                        "url": "https://api.hyperbolic.xyz",
                        "description": "Legacy host — the same API on Hyperbolic's original domain, kept for existing integrations."
                      }
                    ],
                    "tags": [
                      {
                        "name": "virtual-machine-rentals",
                        "description": "Manage virtual machine rentals",
                        "x-group": "Virtual Machine Rentals"
                      }
                    ],
                    "paths": {
                      "/v2/on-demand/virtual-machine-rentals": {
                        "get": {
                          "operationId": "ondemand-getActiveVirtualMachineRentals",
                          "summary": "Get a list of active virtual machine rentals",
                          "description": "Get a list of active virtual machine rentals",
                          "tags": [
                            "virtual-machine-rentals"
                          ],
                          "security": [
                            {
                              "Authorization": []
                            }
                          ],
                          "parameters": [],
                          "responses": {
                            "200": {
                              "description": "Successful response",
                              "content": {
                                "application/json": {
                                  "schema": {
                                    "type": "array",
                                    "items": {
                                      "type": "object"
                                    }
                                  }
                                }
                              }
                            },
                            "401": {
                              "description": "Authorization not provided",
                              "content": {
                                "application/json": {
                                  "schema": {
                                    "$ref": "#/components/schemas/error.UNAUTHORIZED"
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    },
                    "components": {
                      "securitySchemes": {
                        "Authorization": {
                          "type": "http",
                          "scheme": "bearer"
                        }
                      },
                      "schemas": {
                        "error.UNAUTHORIZED": {
                          "type": "object",
                          "properties": {
                            "message": {
                              "type": "string"
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/storage-volumes/attach": {
      "post": {
        "operationId": "ondemand-attachStorageVolume",
        "summary": "Attach a storage volume to bare metal instance(s)",
        "description": "Attach a storage volume to bare metal instance(s)",
        "tags": [
          "storage-volumes"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "storageVolumeId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "rentalIds": {
                    "minItems": 1,
                    "type": "array",
                    "items": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "exclusiveMinimum": 0,
                          "maximum": 9007199254740991
                        },
                        {
                          "type": "string",
                          "minLength": 1
                        }
                      ]
                    }
                  }
                },
                "required": [
                  "storageVolumeId",
                  "rentalIds"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachStorageVolumeResponse"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/bare-metal-rentals": {
      "post": {
        "operationId": "ondemand-createBareMetalRental",
        "summary": "Create a bare metal rental",
        "description": "**Deprecated.** Use `POST /v2/on-demand/rentals` with `rentalType: \"bare-metal\"`, which takes the same fields.",
        "tags": [
          "bare-metal-rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "networkType": {
                    "type": "string",
                    "enum": [
                      "infiniband",
                      "ethernet"
                    ]
                  },
                  "gpuCount": {
                    "type": "number",
                    "minimum": 1,
                    "multipleOf": 8
                  },
                  "storageVolume": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "isNew": {
                            "type": "boolean",
                            "const": false
                          },
                          "id": {
                            "anyOf": [
                              {
                                "type": "integer",
                                "exclusiveMinimum": 0,
                                "maximum": 9007199254740991
                              },
                              {
                                "type": "string",
                                "minLength": 1
                              }
                            ]
                          }
                        },
                        "required": [
                          "isNew",
                          "id"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "isNew": {
                            "type": "boolean",
                            "const": true
                          },
                          "label": {
                            "type": "string",
                            "minLength": 4,
                            "maxLength": 255,
                            "pattern": "^[a-zA-Z0-9_-]+$"
                          },
                          "sizeInGb": {
                            "type": "integer",
                            "minimum": 256,
                            "maximum": 64000
                          }
                        },
                        "required": [
                          "isNew",
                          "label",
                          "sizeInGb"
                        ]
                      }
                    ],
                    "type": "object"
                  },
                  "region": {
                    "default": "us-central-1",
                    "type": "string",
                    "enum": [
                      "us-central-1",
                      "uk-central-3",
                      "uk-southeast-3",
                      "eu-southwest-3",
                      "eu-southwest-3-1",
                      "eu-west-3",
                      "eu-west-4"
                    ]
                  },
                  "gpuType": {
                    "default": "h100",
                    "type": "string",
                    "enum": [
                      "h100",
                      "h200",
                      "b200",
                      "rtx-6000-pro"
                    ]
                  },
                  "cudaVersion": {
                    "type": "string",
                    "enum": [
                      "cuda12.8",
                      "cuda12.9"
                    ]
                  },
                  "label": {
                    "type": "string"
                  },
                  "termType": {
                    "default": "on-demand",
                    "type": "string",
                    "enum": [
                      "on-demand",
                      "reserved"
                    ]
                  },
                  "discountPercentage": {
                    "default": 0,
                    "type": "number"
                  },
                  "termPeriodDays": {
                    "type": "number"
                  },
                  "monitoringEnabled": {
                    "type": "boolean"
                  },
                  "convertToOnDemandOnExpiry": {
                    "default": true,
                    "type": "boolean"
                  },
                  "sshPublicKeyId": {
                    "type": "integer",
                    "minimum": -9007199254740991,
                    "maximum": 9007199254740991
                  },
                  "sshPublicKeyIds": {
                    "minItems": 1,
                    "type": "array",
                    "items": {
                      "type": "integer",
                      "minimum": -9007199254740991,
                      "maximum": 9007199254740991
                    }
                  }
                },
                "required": [
                  "networkType",
                  "gpuCount"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Rental"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      },
      "get": {
        "operationId": "ondemand-getActiveBareMetalRentals",
        "summary": "Get a list of active bare metal rentals",
        "description": "**Deprecated.** Returns every active bare metal rental in one response. Use `GET /v2/on-demand/rentals/active?rentalType=bare-metal`, which returns them a page at a time.",
        "tags": [
          "bare-metal-rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RentalWithStatus"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/convert-to-reserved": {
      "post": {
        "operationId": "ondemand-convertRentalToReserved",
        "summary": "Convert a rental to a reserved term",
        "description": "Convert a rental to a reserved term",
        "tags": [
          "rentals"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "rentalId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "termPeriodDays": {
                    "type": "integer",
                    "exclusiveMinimum": 0,
                    "maximum": 9007199254740991
                  },
                  "expectedTotalPriceCents": {
                    "type": "integer",
                    "exclusiveMinimum": 0,
                    "maximum": 9007199254740991
                  }
                },
                "required": [
                  "rentalId",
                  "termPeriodDays",
                  "expectedTotalPriceCents"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReservedRentalConversion"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/request-reservation": {
      "post": {
        "operationId": "ondemand-requestReservation",
        "summary": "Request a reservation",
        "description": "Request a reservation for a large instance",
        "tags": [
          "rentals"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "gpuCount": {
                    "type": "number",
                    "minimum": 1
                  }
                },
                "required": [
                  "gpuCount"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "message": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "message"
                  ],
                  "additionalProperties": false
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/storage-volumes": {
      "post": {
        "operationId": "ondemand-createStorageVolume",
        "summary": "Create a storage volume",
        "description": "Create a storage volume",
        "tags": [
          "storage-volumes"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "region": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "us-central-1",
                          "us-central-2",
                          "eu-north-2",
                          "eu-west-2",
                          "eu-north-4",
                          "eu-north-5",
                          "us-east-1",
                          "us-east-2",
                          "ca-east-3",
                          "eu-north-6",
                          "eu-north-7",
                          "eu-north-8",
                          "ca-west-1",
                          "ca-east-1",
                          "us-central-3",
                          "us-southeast-1",
                          "me-central-1",
                          "ca-east-2",
                          "eu-west-1",
                          "us-southeast-2",
                          "jp-east-1",
                          "us-southeast-3",
                          "eu-west-5",
                          "us-east-3"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "us-central-1",
                          "uk-central-3",
                          "uk-southeast-3",
                          "eu-southwest-3",
                          "eu-southwest-3-1",
                          "eu-west-3",
                          "eu-west-4"
                        ]
                      }
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": "^[a-zA-Z0-9_-]+$"
                  },
                  "sizeInGb": {
                    "type": "integer",
                    "minimum": 256,
                    "maximum": 64000,
                    "multipleOf": 256
                  },
                  "rentalIds": {
                    "type": "array",
                    "items": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "exclusiveMinimum": 0,
                          "maximum": 9007199254740991
                        },
                        {
                          "type": "string",
                          "minLength": 1
                        }
                      ]
                    }
                  }
                },
                "required": [
                  "region",
                  "label",
                  "sizeInGb"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatedStorageVolume"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      },
      "get": {
        "operationId": "ondemand-getStorageVolumes",
        "summary": "Get a list of storage volumes",
        "description": "Get a list of storage volumes",
        "tags": [
          "storage-volumes"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/StorageVolume"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/virtual-machine-rentals": {
      "post": {
        "operationId": "ondemand-createVirtualMachineRental",
        "summary": "Create a virtual machine rental",
        "description": "**Deprecated.** Use `POST /v2/on-demand/rentals` with `rentalType: \"virtual-machine\"`, which takes the same fields.",
        "tags": [
          "virtual-machine-rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "gpuCount": {
                    "type": "number"
                  },
                  "networkType": {
                    "default": "ethernet",
                    "type": "string",
                    "enum": [
                      "infiniband",
                      "ethernet"
                    ]
                  },
                  "region": {
                    "default": "us-central-1",
                    "type": "string",
                    "enum": [
                      "us-central-1",
                      "us-central-2",
                      "eu-north-2",
                      "eu-west-2",
                      "eu-north-4",
                      "eu-north-5",
                      "us-east-1",
                      "us-east-2",
                      "ca-east-3",
                      "eu-north-6",
                      "eu-north-7",
                      "eu-north-8",
                      "ca-west-1",
                      "ca-east-1",
                      "us-central-3",
                      "us-southeast-1",
                      "me-central-1",
                      "ca-east-2",
                      "eu-west-1",
                      "us-southeast-2",
                      "jp-east-1",
                      "us-southeast-3",
                      "eu-west-5",
                      "us-east-3"
                    ]
                  },
                  "gpuType": {
                    "default": "h100",
                    "type": "string",
                    "enum": [
                      "h100",
                      "h200",
                      "b200",
                      "rtx-6000-pro"
                    ]
                  },
                  "label": {
                    "type": "string"
                  },
                  "termType": {
                    "default": "on-demand",
                    "type": "string",
                    "enum": [
                      "on-demand",
                      "reserved"
                    ]
                  },
                  "termPeriodDays": {
                    "type": "number"
                  },
                  "discountPercentage": {
                    "default": 0,
                    "type": "number"
                  },
                  "monitoringEnabled": {
                    "type": "boolean"
                  },
                  "customPorts": {
                    "maxItems": 20,
                    "type": "array",
                    "items": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 65535
                    }
                  },
                  "convertToOnDemandOnExpiry": {
                    "default": true,
                    "type": "boolean"
                  },
                  "sshPublicKeyId": {
                    "type": "integer",
                    "minimum": -9007199254740991,
                    "maximum": 9007199254740991
                  },
                  "sshPublicKeyIds": {
                    "minItems": 1,
                    "type": "array",
                    "items": {
                      "type": "integer",
                      "minimum": -9007199254740991,
                      "maximum": 9007199254740991
                    }
                  }
                },
                "required": [
                  "gpuCount"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Rental"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      },
      "get": {
        "operationId": "ondemand-getActiveVirtualMachineRentals",
        "summary": "Get a list of active virtual machine rentals",
        "description": "**Deprecated.** Returns every active virtual machine rental in one response. Use `GET /v2/on-demand/rentals/active?rentalType=virtual-machine`, which returns them a page at a time.",
        "tags": [
          "virtual-machine-rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [
          {
            "in": "query",
            "name": "includeClusterPools",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RentalWithStatus"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/extend-reserved": {
      "post": {
        "operationId": "ondemand-extendReservedRental",
        "summary": "Extend a reserved rental",
        "description": "Extend a reserved rental",
        "tags": [
          "rentals"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "rentalId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "termPeriodDays": {
                    "type": "integer",
                    "exclusiveMinimum": 0,
                    "maximum": 9007199254740991
                  },
                  "expectedTotalPriceCents": {
                    "type": "integer",
                    "exclusiveMinimum": 0,
                    "maximum": 9007199254740991
                  },
                  "expectedReservedUntil": {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  }
                },
                "required": [
                  "rentalId",
                  "termPeriodDays",
                  "expectedTotalPriceCents",
                  "expectedReservedUntil"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReservedRentalExtension"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/active-rental-summary": {
      "get": {
        "operationId": "ondemand-getActiveRentalSummary",
        "summary": "Get a summary of active rentals",
        "description": "Count the caller's active rentals and sum their hourly cost in cents, in total and per term type.",
        "tags": [
          "rentals"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ActiveRentalSummary"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/rental": {
      "get": {
        "operationId": "ondemand-getRental",
        "summary": "Get a rental",
        "description": "Look up one rental by its ID, whether it is still running or has ended. Returns null when no rental with that ID belongs to the caller.",
        "tags": [
          "rentals"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [
          {
            "in": "query",
            "name": "rentalId",
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "The rental's `rentalId`."
            },
            "required": true,
            "description": "The rental's `rentalId`."
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "anyOf": [
                    {
                      "oneOf": [
                        {
                          "$ref": "#/components/schemas/ActiveRentalLookup"
                        },
                        {
                          "$ref": "#/components/schemas/TerminatedRentalLookup"
                        }
                      ],
                      "type": "object",
                      "discriminator": {
                        "propertyName": "state",
                        "mapping": {
                          "active": "#/components/schemas/ActiveRentalLookup",
                          "terminated": "#/components/schemas/TerminatedRentalLookup"
                        }
                      }
                    },
                    {
                      "type": "null"
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/rental-history": {
      "get": {
        "operationId": "ondemand-getRentalHistory",
        "summary": "Get a list of past rentals",
        "description": "**Deprecated.** Returns every past rental in one response. Use `GET /v2/on-demand/rentals/history`, which returns them a page at a time.",
        "tags": [
          "rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/HistoricalRental"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/rentals/active": {
      "get": {
        "operationId": "ondemand-listActiveRentals",
        "summary": "List active rentals",
        "description": "Active rentals of one machine type with their live status, most recently started first, as numbered pages.",
        "tags": [
          "rentals"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [
          {
            "in": "query",
            "name": "page",
            "schema": {
              "default": 1,
              "type": "integer",
              "minimum": 1,
              "maximum": 9007199254740991
            }
          },
          {
            "in": "query",
            "name": "pageSize",
            "schema": {
              "default": 25,
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "in": "query",
            "name": "gpuType",
            "schema": {
              "type": "string",
              "enum": [
                "h100",
                "h200",
                "b200",
                "rtx-6000-pro"
              ]
            }
          },
          {
            "in": "query",
            "name": "region",
            "schema": {
              "type": "string",
              "enum": [
                "us-central-1",
                "us-central-2",
                "eu-north-2",
                "eu-west-2",
                "eu-north-4",
                "eu-north-5",
                "us-east-1",
                "us-east-2",
                "ca-east-3",
                "eu-north-6",
                "eu-north-7",
                "eu-north-8",
                "ca-west-1",
                "ca-east-1",
                "us-central-3",
                "us-southeast-1",
                "me-central-1",
                "ca-east-2",
                "eu-west-1",
                "us-southeast-2",
                "jp-east-1",
                "us-southeast-3",
                "eu-west-5",
                "us-east-3",
                "uk-central-3",
                "uk-southeast-3",
                "eu-southwest-3",
                "eu-southwest-3-1",
                "eu-west-3",
                "eu-west-4",
                "private-cloud"
              ]
            }
          },
          {
            "in": "query",
            "name": "termType",
            "schema": {
              "type": "string",
              "enum": [
                "on-demand",
                "reserved",
                "private-cloud"
              ]
            }
          },
          {
            "in": "query",
            "name": "includePrivateCloud",
            "schema": {
              "description": "Include private-cloud rentals. Ignored when `termType` is set.",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "rentalType",
            "schema": {
              "type": "string",
              "enum": [
                "virtual-machine",
                "bare-metal"
              ],
              "description": "The machine type to list."
            },
            "required": true,
            "description": "The machine type to list."
          },
          {
            "in": "query",
            "name": "includeClusterPools",
            "schema": {
              "description": "Also list the node pools of managed Kubernetes clusters. They cannot be terminated or rebooted individually; manage them through the cluster.",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ActiveRentalsPage"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/rentals/history": {
      "get": {
        "operationId": "ondemand-listRentalHistory",
        "summary": "List past rentals",
        "description": "Past rentals, most recently terminated first, one page at a time. Pass the response's `nextCursor` as `cursor` to read the next page.",
        "tags": [
          "rentals"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [
          {
            "in": "query",
            "name": "cursor",
            "schema": {
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 512
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          {
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "in": "query",
            "name": "gpuType",
            "schema": {
              "type": "string",
              "enum": [
                "h100",
                "h200",
                "b200",
                "rtx-6000-pro"
              ]
            }
          },
          {
            "in": "query",
            "name": "region",
            "schema": {
              "type": "string",
              "enum": [
                "us-central-1",
                "us-central-2",
                "eu-north-2",
                "eu-west-2",
                "eu-north-4",
                "eu-north-5",
                "us-east-1",
                "us-east-2",
                "ca-east-3",
                "eu-north-6",
                "eu-north-7",
                "eu-north-8",
                "ca-west-1",
                "ca-east-1",
                "us-central-3",
                "us-southeast-1",
                "me-central-1",
                "ca-east-2",
                "eu-west-1",
                "us-southeast-2",
                "jp-east-1",
                "us-southeast-3",
                "eu-west-5",
                "us-east-3",
                "uk-central-3",
                "uk-southeast-3",
                "eu-southwest-3",
                "eu-southwest-3-1",
                "eu-west-3",
                "eu-west-4",
                "private-cloud"
              ]
            }
          },
          {
            "in": "query",
            "name": "termType",
            "schema": {
              "type": "string",
              "enum": [
                "on-demand",
                "reserved",
                "private-cloud"
              ]
            }
          },
          {
            "in": "query",
            "name": "includePrivateCloud",
            "schema": {
              "description": "Include private-cloud rentals. Ignored when `termType` is set.",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "rentalType",
            "schema": {
              "type": "string",
              "enum": [
                "virtual-machine",
                "bare-metal"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RentalHistoryPage"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/rental-options": {
      "get": {
        "operationId": "ondemand-getRentalOptions",
        "summary": "Get a list of rental options",
        "description": "Get a list of rental options",
        "tags": [
          "rentals"
        ],
        "security": [],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "enabled": {
                            "type": "boolean"
                          },
                          "costPerHourCents": {
                            "type": "number"
                          },
                          "region": {
                            "anyOf": [
                              {
                                "type": "string",
                                "enum": [
                                  "us-central-1",
                                  "us-central-2",
                                  "eu-north-2",
                                  "eu-west-2",
                                  "eu-north-4",
                                  "eu-north-5",
                                  "us-east-1",
                                  "us-east-2",
                                  "ca-east-3",
                                  "eu-north-6",
                                  "eu-north-7",
                                  "eu-north-8",
                                  "ca-west-1",
                                  "ca-east-1",
                                  "us-central-3",
                                  "us-southeast-1",
                                  "me-central-1",
                                  "ca-east-2",
                                  "eu-west-1",
                                  "us-southeast-2",
                                  "jp-east-1",
                                  "us-southeast-3",
                                  "eu-west-5",
                                  "us-east-3"
                                ]
                              },
                              {
                                "type": "string",
                                "enum": [
                                  "us-central-1",
                                  "uk-central-3",
                                  "uk-southeast-3",
                                  "eu-southwest-3",
                                  "eu-southwest-3-1",
                                  "eu-west-3",
                                  "eu-west-4"
                                ]
                              }
                            ]
                          },
                          "gpuCount": {
                            "type": "number"
                          },
                          "gpuType": {
                            "type": "string",
                            "enum": [
                              "h100",
                              "h200",
                              "b200",
                              "rtx-6000-pro"
                            ]
                          },
                          "gpuFormFactor": {
                            "type": "string",
                            "enum": [
                              "sxm5",
                              "sxm6",
                              "pcie"
                            ]
                          },
                          "connectionType": {
                            "type": "string",
                            "enum": [
                              "infiniband",
                              "ethernet"
                            ]
                          },
                          "ethernetVariant": {
                            "type": "string",
                            "enum": [
                              "normal",
                              "rocev2"
                            ]
                          },
                          "totalAvailable": {
                            "type": "number"
                          },
                          "machineType": {
                            "type": "string",
                            "const": "virtual-machine"
                          },
                          "nodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "cpuModel": {
                                  "type": "string"
                                },
                                "gpuCount": {
                                  "type": "number"
                                },
                                "ramGb": {
                                  "type": "number"
                                },
                                "storageGb": {
                                  "type": "number"
                                },
                                "vcpuCount": {
                                  "type": "number"
                                }
                              },
                              "required": [
                                "cpuModel",
                                "gpuCount",
                                "ramGb",
                                "storageGb",
                                "vcpuCount"
                              ],
                              "additionalProperties": false
                            }
                          }
                        },
                        "required": [
                          "enabled",
                          "costPerHourCents",
                          "region",
                          "gpuCount",
                          "gpuType",
                          "gpuFormFactor",
                          "connectionType",
                          "machineType",
                          "nodes"
                        ],
                        "additionalProperties": false
                      },
                      {
                        "type": "object",
                        "properties": {
                          "enabled": {
                            "type": "boolean"
                          },
                          "costPerHourCents": {
                            "type": "number"
                          },
                          "region": {
                            "anyOf": [
                              {
                                "type": "string",
                                "enum": [
                                  "us-central-1",
                                  "us-central-2",
                                  "eu-north-2",
                                  "eu-west-2",
                                  "eu-north-4",
                                  "eu-north-5",
                                  "us-east-1",
                                  "us-east-2",
                                  "ca-east-3",
                                  "eu-north-6",
                                  "eu-north-7",
                                  "eu-north-8",
                                  "ca-west-1",
                                  "ca-east-1",
                                  "us-central-3",
                                  "us-southeast-1",
                                  "me-central-1",
                                  "ca-east-2",
                                  "eu-west-1",
                                  "us-southeast-2",
                                  "jp-east-1",
                                  "us-southeast-3",
                                  "eu-west-5",
                                  "us-east-3"
                                ]
                              },
                              {
                                "type": "string",
                                "enum": [
                                  "us-central-1",
                                  "uk-central-3",
                                  "uk-southeast-3",
                                  "eu-southwest-3",
                                  "eu-southwest-3-1",
                                  "eu-west-3",
                                  "eu-west-4"
                                ]
                              }
                            ]
                          },
                          "gpuCount": {
                            "type": "number"
                          },
                          "gpuType": {
                            "type": "string",
                            "enum": [
                              "h100",
                              "h200",
                              "b200",
                              "rtx-6000-pro"
                            ]
                          },
                          "gpuFormFactor": {
                            "type": "string",
                            "enum": [
                              "sxm5",
                              "sxm6",
                              "pcie"
                            ]
                          },
                          "connectionType": {
                            "type": "string",
                            "enum": [
                              "infiniband",
                              "ethernet"
                            ]
                          },
                          "ethernetVariant": {
                            "type": "string",
                            "enum": [
                              "normal",
                              "rocev2"
                            ]
                          },
                          "totalAvailable": {
                            "type": "number"
                          },
                          "machineType": {
                            "type": "string",
                            "const": "bare-metal"
                          },
                          "nodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "cpuModel": {
                                  "type": "string"
                                },
                                "gpuCount": {
                                  "type": "number"
                                },
                                "ramGb": {
                                  "type": "number"
                                },
                                "storageGb": {
                                  "type": "number"
                                },
                                "cpuCount": {
                                  "type": "number"
                                }
                              },
                              "required": [
                                "cpuModel",
                                "gpuCount",
                                "ramGb",
                                "storageGb",
                                "cpuCount"
                              ],
                              "additionalProperties": false
                            }
                          }
                        },
                        "required": [
                          "enabled",
                          "costPerHourCents",
                          "region",
                          "gpuCount",
                          "gpuType",
                          "gpuFormFactor",
                          "connectionType",
                          "machineType",
                          "nodes"
                        ],
                        "additionalProperties": false
                      }
                    ],
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/get-reservation-extension-quote": {
      "get": {
        "operationId": "ondemand-getReservationExtensionQuote",
        "summary": "Get a reservation extension quote",
        "description": "Get a reservation extension quote",
        "tags": [
          "rentals"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [
          {
            "in": "query",
            "name": "rentalId",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReservationExtensionQuote"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/get-reserved-conversion-quote": {
      "get": {
        "operationId": "ondemand-getReservedConversionQuote",
        "summary": "Get a reserved conversion quote",
        "description": "Get a reserved conversion quote",
        "tags": [
          "rentals"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [
          {
            "in": "query",
            "name": "rentalId",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReservedConversionQuote"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/reserve-options": {
      "get": {
        "operationId": "ondemand-getReserveOptions",
        "summary": "Get a list of reserve options",
        "description": "Get a list of reserve options",
        "tags": [
          "rentals"
        ],
        "security": [],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "options": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "termPeriodDays": {
                            "type": "number"
                          },
                          "discountPercentage": {
                            "type": "number"
                          }
                        },
                        "required": [
                          "termPeriodDays",
                          "discountPercentage"
                        ],
                        "additionalProperties": false
                      }
                    }
                  },
                  "required": [
                    "options"
                  ],
                  "additionalProperties": false
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/has-rental-history": {
      "get": {
        "operationId": "ondemand-hasRentalHistory",
        "summary": "Check whether any past rentals exist",
        "description": "Whether the caller has at least one rental that has ended.",
        "tags": [
          "rentals"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [
          {
            "in": "query",
            "name": "includePrivateCloud",
            "schema": {
              "description": "Count ended private-cloud rentals too. Defaults to true.",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "boolean"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/virtual-machine-rentals/reboot-instance": {
      "post": {
        "operationId": "ondemand-rebootVirtualMachineInstance",
        "summary": "Reboot a single instance within a virtual machine rental",
        "description": "**Deprecated.** Use `POST /v2/on-demand/rentals/reboot-instance`, which takes the same fields.",
        "tags": [
          "virtual-machine-rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "rentalId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "instanceRef": {
                    "type": "string"
                  }
                },
                "required": [
                  "rentalId",
                  "instanceRef"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RebootVirtualMachineInstanceResponse"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/bare-metal-rentals/terminate": {
      "post": {
        "operationId": "ondemand-terminateBareMetalRental",
        "summary": "Terminate a bare metal rental",
        "description": "**Deprecated.** Use `POST /v2/on-demand/rentals/terminate`, which terminates either machine type.",
        "tags": [
          "bare-metal-rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "rentalId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "reason": {
                    "type": "string"
                  }
                },
                "required": [
                  "rentalId"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TerminateBareMetalRentalResponse"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/storage-volumes/terminate": {
      "post": {
        "operationId": "ondemand-terminateStorageVolume",
        "summary": "Terminate a storage volume",
        "description": "Terminate a storage volume",
        "tags": [
          "storage-volumes"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "storageVolumeId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "reason": {
                    "type": "string"
                  }
                },
                "required": [
                  "storageVolumeId"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TerminateStorageVolumeResponse"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/virtual-machine-rentals/terminate": {
      "post": {
        "operationId": "ondemand-terminateVirtualMachineRental",
        "summary": "Terminate a virtual machine rental",
        "description": "**Deprecated.** Use `POST /v2/on-demand/rentals/terminate`, which terminates either machine type.",
        "tags": [
          "virtual-machine-rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "rentalId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "reason": {
                    "type": "string"
                  }
                },
                "required": [
                  "rentalId"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TerminateVirtualMachineRentalResponse"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/rentals": {
      "post": {
        "operationId": "ondemand-createRental",
        "summary": "Create a rental",
        "description": "Rent a virtual machine or a bare metal server. `rentalType` decides which machine-type-specific fields apply; sending a field for the other type is a BAD_REQUEST (INVALID_INPUT_FOR_RENTAL_TYPE).",
        "tags": [
          "rentals"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "rentalType": {
                    "type": "string",
                    "enum": [
                      "virtual-machine",
                      "bare-metal"
                    ],
                    "description": "The machine type to rent. Fields marked for one machine type are rejected for the other."
                  },
                  "gpuCount": {
                    "type": "number",
                    "description": "GPUs to rent. Bare metal rents whole nodes, so a multiple of 8."
                  },
                  "networkType": {
                    "type": "string",
                    "enum": [
                      "infiniband",
                      "ethernet"
                    ],
                    "description": "Required for bare metal. Virtual machines default to `ethernet`."
                  },
                  "region": {
                    "default": "us-central-1",
                    "type": "string",
                    "enum": [
                      "us-central-1",
                      "us-central-2",
                      "eu-north-2",
                      "eu-west-2",
                      "eu-north-4",
                      "eu-north-5",
                      "us-east-1",
                      "us-east-2",
                      "ca-east-3",
                      "eu-north-6",
                      "eu-north-7",
                      "eu-north-8",
                      "ca-west-1",
                      "ca-east-1",
                      "us-central-3",
                      "us-southeast-1",
                      "me-central-1",
                      "ca-east-2",
                      "eu-west-1",
                      "us-southeast-2",
                      "jp-east-1",
                      "us-southeast-3",
                      "eu-west-5",
                      "us-east-3",
                      "uk-central-3",
                      "uk-southeast-3",
                      "eu-southwest-3",
                      "eu-southwest-3-1",
                      "eu-west-3",
                      "eu-west-4"
                    ],
                    "description": "A region that offers the chosen machine type."
                  },
                  "gpuType": {
                    "default": "h100",
                    "type": "string",
                    "enum": [
                      "h100",
                      "h200",
                      "b200",
                      "rtx-6000-pro"
                    ]
                  },
                  "label": {
                    "type": "string"
                  },
                  "termType": {
                    "default": "on-demand",
                    "type": "string",
                    "enum": [
                      "on-demand",
                      "reserved"
                    ]
                  },
                  "termPeriodDays": {
                    "type": "number"
                  },
                  "discountPercentage": {
                    "default": 0,
                    "type": "number"
                  },
                  "convertToOnDemandOnExpiry": {
                    "default": true,
                    "type": "boolean"
                  },
                  "monitoringEnabled": {
                    "type": "boolean"
                  },
                  "sshPublicKeyId": {
                    "type": "integer",
                    "minimum": -9007199254740991,
                    "maximum": 9007199254740991,
                    "description": "The saved SSH key to authorize on the rental. Defaults to the most recently added key."
                  },
                  "sshPublicKeyIds": {
                    "minItems": 1,
                    "type": "array",
                    "items": {
                      "type": "integer",
                      "minimum": -9007199254740991,
                      "maximum": 9007199254740991
                    },
                    "description": "The saved SSH keys to authorize on the rental."
                  },
                  "customPorts": {
                    "maxItems": 20,
                    "type": "array",
                    "items": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 65535
                    },
                    "description": "Virtual machines only."
                  },
                  "cudaVersion": {
                    "type": "string",
                    "enum": [
                      "cuda12.8",
                      "cuda12.9"
                    ],
                    "description": "Bare metal only."
                  },
                  "storageVolume": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "isNew": {
                            "type": "boolean",
                            "const": false
                          },
                          "id": {
                            "anyOf": [
                              {
                                "type": "integer",
                                "exclusiveMinimum": 0,
                                "maximum": 9007199254740991
                              },
                              {
                                "type": "string",
                                "minLength": 1
                              }
                            ]
                          }
                        },
                        "required": [
                          "isNew",
                          "id"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "isNew": {
                            "type": "boolean",
                            "const": true
                          },
                          "label": {
                            "type": "string",
                            "minLength": 4,
                            "maxLength": 255,
                            "pattern": "^[a-zA-Z0-9_-]+$"
                          },
                          "sizeInGb": {
                            "type": "integer",
                            "minimum": 256,
                            "maximum": 64000
                          }
                        },
                        "required": [
                          "isNew",
                          "label",
                          "sizeInGb"
                        ]
                      }
                    ],
                    "type": "object",
                    "description": "Bare metal only."
                  }
                },
                "required": [
                  "rentalType",
                  "gpuCount"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Rental"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/rentals/terminate": {
      "post": {
        "operationId": "ondemand-terminateRental",
        "summary": "Terminate a rental",
        "description": "Terminate a virtual machine or bare metal rental.",
        "tags": [
          "rentals"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "rentalId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "reason": {
                    "type": "string"
                  }
                },
                "required": [
                  "rentalId"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RentalTermination"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/rentals/reboot-instance": {
      "post": {
        "operationId": "ondemand-rebootRentalInstance",
        "summary": "Reboot a single instance within a rental",
        "description": "Reboots one instance in place; tenant data is preserved. Call it only for an instance whose `instances[].supportedFeatures` includes `guest-reboot`. Reports INVALID_INSTANCE_REF for an `instanceRef` outside this rental, REBOOT_NOT_SUPPORTED for a rental whose provider cannot reboot, and REBOOT_ALREADY_IN_PROGRESS while one is in flight.",
        "tags": [
          "rentals"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "rentalId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "instanceRef": {
                    "type": "string"
                  }
                },
                "required": [
                  "rentalId",
                  "instanceRef"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RentalInstanceReboot"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/rentals/update": {
      "post": {
        "operationId": "ondemand-updateRental",
        "summary": "Update a rental",
        "description": "Update a rental's label and/or its reserved-term end-of-term action. Pass an empty label to clear it.",
        "tags": [
          "rentals"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "rentalId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "label": {
                    "type": "string"
                  },
                  "convertToOnDemandOnExpiry": {
                    "type": "boolean"
                  }
                },
                "required": [
                  "rentalId"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Rental"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/storage-volumes/update": {
      "post": {
        "operationId": "ondemand-updateStorageVolume",
        "summary": "Update a storage volume",
        "description": "Update a storage volume's attached instances and/or size",
        "tags": [
          "storage-volumes"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "storageVolumeId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": "^[a-zA-Z0-9_-]+$"
                  },
                  "rentalIds": {
                    "type": "array",
                    "items": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "exclusiveMinimum": 0,
                          "maximum": 9007199254740991
                        },
                        {
                          "type": "string",
                          "minLength": 1
                        }
                      ]
                    }
                  },
                  "sizeInGb": {
                    "type": "integer",
                    "minimum": 256,
                    "maximum": 64000
                  }
                },
                "required": [
                  "storageVolumeId"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateStorageVolumeResponse"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/on-demand/storage-volume-options": {
      "get": {
        "operationId": "ondemand-getStorageVolumeOptions",
        "summary": "Get a list of storage volume options",
        "description": "Get a list of storage volume options",
        "tags": [
          "storage-volumes"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "region": {
                        "type": "string"
                      },
                      "costPerGbHourCents": {
                        "type": "number",
                        "minimum": 0
                      },
                      "maxSizeInGb": {
                        "type": "number",
                        "minimum": 0
                      }
                    },
                    "required": [
                      "region",
                      "costPerGbHourCents",
                      "maxSizeInGb"
                    ],
                    "additionalProperties": false
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/users/me": {
      "get": {
        "operationId": "user-getCurrent",
        "summary": "Get the current user",
        "description": "Get the current user",
        "tags": [
          "users"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CurrentUser"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "user-deleteCurrentUser",
        "summary": "Delete the current user",
        "description": "Delete the current user",
        "tags": [
          "users"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessResponse"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      },
      "put": {
        "operationId": "user-updateCurrentUser",
        "summary": "Update the current user",
        "description": "Update the current user",
        "tags": [
          "users"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "onboardedFor": {
                    "anyOf": [
                      {
                        "type": "string",
                        "maxLength": 50
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "name": {
                    "anyOf": [
                      {
                        "type": "string",
                        "maxLength": 255,
                        "pattern": "^[^<>\\u0000-\\u001F\\u007F]*$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserMutationResponse"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/users/me/verify-phone-number": {
      "put": {
        "operationId": "user-verifyPhoneNumber",
        "summary": "Verify a phone number",
        "description": "Verify a phone number",
        "tags": [
          "users"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "phoneNumber": {
                    "type": "string"
                  }
                },
                "required": [
                  "phoneNumber"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessResponse"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/api-keys/list": {
      "get": {
        "operationId": "apiKey-list",
        "summary": "List all API keys for the current user or organization",
        "description": "List all API keys for the current user or organization",
        "tags": [
          "api-keys"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ApiKey"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/customer/balance": {
      "get": {
        "operationId": "customer-getBalance",
        "summary": "Get the current user or organization account's balance",
        "description": "Get the current account's balance",
        "tags": [
          "balances"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountBalance"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/ssh-keys": {
      "get": {
        "operationId": "sshKeys-list",
        "summary": "List SSH public keys for the current user or organization",
        "description": "List SSH public keys for the current user or organization",
        "tags": [
          "ssh-keys"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SshKeyWithLiveRentalCount"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "sshKeys-create",
        "summary": "Create an SSH public key for the current user or organization",
        "description": "Create an SSH public key for the current user or organization. Reports SSH_PUBLIC_KEY_ALREADY_EXISTS when a key with identical type and body already exists under the current user or organization.",
        "tags": [
          "ssh-keys"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "publicKey": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 16384
                  },
                  "name": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "required": [
                  "publicKey"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SshKey"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/ssh-keys/rental": {
      "get": {
        "operationId": "sshKeys-listForRental",
        "summary": "List the SSH public keys attached to a rental",
        "description": "List the SSH public keys attached to a rental. Reports RENTAL_NOT_FOUND for rentals that don't exist or the user doesn't control.",
        "tags": [
          "ssh-keys"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [
          {
            "in": "query",
            "name": "rentalId",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SshKey"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/ssh-keys/update": {
      "post": {
        "operationId": "sshKeys-update",
        "summary": "Rename an SSH public key",
        "description": "Renames an SSH public key. Reports SSH_PUBLIC_KEY_NOT_FOUND for keys that don't exist or the user doesn't control, and NOT_AUTHORIZED_TO_ACCESS_OWNED_RESOURCE for an organization key added by another member unless the caller is an organization admin.",
        "tags": [
          "ssh-keys"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "integer",
                    "minimum": -9007199254740991,
                    "maximum": 9007199254740991
                  },
                  "name": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "required": [
                  "id",
                  "name"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SshKey"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/v2/ssh-keys/delete": {
      "post": {
        "operationId": "sshKeys-delete",
        "summary": "Delete an SSH public key",
        "description": "Deletes an SSH public key. Reports SSH_PUBLIC_KEY_IN_USE while the key is attached to a live rental, SSH_PUBLIC_KEY_NOT_FOUND for a key that doesn't exist or the user doesn't control, and NOT_AUTHORIZED_TO_ACCESS_OWNED_RESOURCE for an organization key added by another member unless the caller is an organization admin.",
        "tags": [
          "ssh-keys"
        ],
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "integer",
                    "minimum": -9007199254740991,
                    "maximum": 9007199254740991
                  }
                },
                "required": [
                  "id"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeletedSshKey"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            }
          }
        }
      }
    },
    "/users/me": {
      "get": {
        "operationId": "user-getCurrent-legacy",
        "summary": "Get the current user",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/users/me` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/users/me`.\n\nGet the current user",
        "tags": [
          "users"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CurrentUser"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "user-deleteCurrentUser-legacy",
        "summary": "Delete the current user",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/users/me` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/users/me`.\n\nDelete the current user",
        "tags": [
          "users"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessResponse"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "put": {
        "operationId": "user-updateCurrentUser-legacy",
        "summary": "Update the current user",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/users/me` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/users/me`.\n\nUpdate the current user",
        "tags": [
          "users"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "onboardedFor": {
                    "anyOf": [
                      {
                        "type": "string",
                        "maxLength": 50
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "name": {
                    "anyOf": [
                      {
                        "type": "string",
                        "maxLength": 255,
                        "pattern": "^[^<>\\u0000-\\u001F\\u007F]*$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserMutationResponse"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/users/me/verify-phone-number": {
      "put": {
        "operationId": "user-verifyPhoneNumber-legacy",
        "summary": "Verify a phone number",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/users/me/verify-phone-number` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/users/me/verify-phone-number`.\n\nVerify a phone number",
        "tags": [
          "users"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "phoneNumber": {
                    "type": "string"
                  }
                },
                "required": [
                  "phoneNumber"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessResponse"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/api-keys/list": {
      "get": {
        "operationId": "apiKey-list-legacy",
        "summary": "List all API keys for the current user or organization",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/api-keys/list` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/api-keys/list`.\n\nList all API keys for the current user or organization",
        "tags": [
          "api-keys"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ApiKey"
                  }
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/customer/balance": {
      "get": {
        "operationId": "customer-getBalance-legacy",
        "summary": "Get the current user or organization account's balance",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/customer/balance` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/customer/balance`.\n\nGet the current account's balance",
        "tags": [
          "balances"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountBalance"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/on-demand/bare-metal-rentals": {
      "post": {
        "operationId": "ondemand-createBareMetalRental-legacy",
        "summary": "Create a bare metal rental",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/bare-metal-rentals` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/bare-metal-rentals`.\n\nCreate a bare metal rental",
        "tags": [
          "bare-metal-rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "networkType": {
                    "type": "string",
                    "enum": [
                      "infiniband",
                      "ethernet"
                    ]
                  },
                  "gpuCount": {
                    "type": "number",
                    "minimum": 1,
                    "multipleOf": 8
                  },
                  "storageVolume": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "isNew": {
                            "type": "boolean",
                            "const": false
                          },
                          "id": {
                            "anyOf": [
                              {
                                "type": "integer",
                                "exclusiveMinimum": 0,
                                "maximum": 9007199254740991
                              },
                              {
                                "type": "string",
                                "minLength": 1
                              }
                            ]
                          }
                        },
                        "required": [
                          "isNew",
                          "id"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "isNew": {
                            "type": "boolean",
                            "const": true
                          },
                          "label": {
                            "type": "string",
                            "minLength": 4,
                            "maxLength": 255,
                            "pattern": "^[a-zA-Z0-9_-]+$"
                          },
                          "sizeInGb": {
                            "type": "integer",
                            "minimum": 256,
                            "maximum": 64000
                          }
                        },
                        "required": [
                          "isNew",
                          "label",
                          "sizeInGb"
                        ]
                      }
                    ],
                    "type": "object"
                  },
                  "region": {
                    "default": "us-central-1",
                    "type": "string",
                    "enum": [
                      "us-central-1",
                      "uk-central-3",
                      "uk-southeast-3",
                      "eu-southwest-3",
                      "eu-southwest-3-1",
                      "eu-west-3",
                      "eu-west-4"
                    ]
                  },
                  "gpuType": {
                    "default": "h100",
                    "type": "string",
                    "enum": [
                      "h100",
                      "h200",
                      "b200",
                      "rtx-6000-pro"
                    ]
                  },
                  "cudaVersion": {
                    "type": "string",
                    "enum": [
                      "cuda12.8",
                      "cuda12.9"
                    ]
                  },
                  "label": {
                    "type": "string"
                  },
                  "termType": {
                    "default": "on-demand",
                    "type": "string",
                    "enum": [
                      "on-demand",
                      "reserved"
                    ]
                  },
                  "discountPercentage": {
                    "default": 0,
                    "type": "number"
                  },
                  "termPeriodDays": {
                    "type": "number"
                  },
                  "monitoringEnabled": {
                    "type": "boolean"
                  },
                  "convertToOnDemandOnExpiry": {
                    "default": true,
                    "type": "boolean"
                  },
                  "sshPublicKeyId": {
                    "type": "integer",
                    "minimum": -9007199254740991,
                    "maximum": 9007199254740991
                  },
                  "sshPublicKeyIds": {
                    "minItems": 1,
                    "type": "array",
                    "items": {
                      "type": "integer",
                      "minimum": -9007199254740991,
                      "maximum": 9007199254740991
                    }
                  }
                },
                "required": [
                  "networkType",
                  "gpuCount"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Rental"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "get": {
        "operationId": "ondemand-getActiveBareMetalRentals-legacy",
        "summary": "Get a list of active bare metal rentals",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/bare-metal-rentals` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/bare-metal-rentals`.\n\n**Deprecated.** Returns every active bare metal rental in one response. Use `GET /v2/on-demand/rentals/active?rentalType=bare-metal`, which returns them a page at a time.",
        "tags": [
          "bare-metal-rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RentalWithStatus"
                  }
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/on-demand/bare-metal-rentals/terminate": {
      "post": {
        "operationId": "ondemand-terminateBareMetalRental-legacy",
        "summary": "Terminate a bare metal rental",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/bare-metal-rentals/terminate` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/bare-metal-rentals/terminate`.\n\nTerminate a bare metal rental",
        "tags": [
          "bare-metal-rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "rentalId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "reason": {
                    "type": "string"
                  }
                },
                "required": [
                  "rentalId"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TerminateBareMetalRentalResponse"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/on-demand/rental-history": {
      "get": {
        "operationId": "ondemand-getRentalHistory-legacy",
        "summary": "Get a list of past rentals",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/rental-history` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/rental-history`.\n\n**Deprecated.** Returns every past rental in one response. Use `GET /v2/on-demand/rentals/history`, which returns them a page at a time.",
        "tags": [
          "rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/HistoricalRental"
                  }
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/on-demand/rental-options": {
      "get": {
        "operationId": "ondemand-getRentalOptions-legacy",
        "summary": "Get a list of rental options",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/rental-options` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/rental-options`.\n\nGet a list of rental options",
        "tags": [
          "rentals"
        ],
        "deprecated": true,
        "security": [],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "enabled": {
                            "type": "boolean"
                          },
                          "costPerHourCents": {
                            "type": "number"
                          },
                          "region": {
                            "anyOf": [
                              {
                                "type": "string",
                                "enum": [
                                  "us-central-1",
                                  "us-central-2",
                                  "eu-north-2",
                                  "eu-west-2",
                                  "eu-north-4",
                                  "eu-north-5",
                                  "us-east-1",
                                  "us-east-2",
                                  "ca-east-3",
                                  "eu-north-6",
                                  "eu-north-7",
                                  "eu-north-8",
                                  "ca-west-1",
                                  "ca-east-1",
                                  "us-central-3",
                                  "us-southeast-1",
                                  "me-central-1",
                                  "ca-east-2",
                                  "eu-west-1",
                                  "us-southeast-2",
                                  "jp-east-1",
                                  "us-southeast-3",
                                  "eu-west-5",
                                  "us-east-3"
                                ]
                              },
                              {
                                "type": "string",
                                "enum": [
                                  "us-central-1",
                                  "uk-central-3",
                                  "uk-southeast-3",
                                  "eu-southwest-3",
                                  "eu-southwest-3-1",
                                  "eu-west-3",
                                  "eu-west-4"
                                ]
                              }
                            ]
                          },
                          "gpuCount": {
                            "type": "number"
                          },
                          "gpuType": {
                            "type": "string",
                            "enum": [
                              "h100",
                              "h200",
                              "b200",
                              "rtx-6000-pro"
                            ]
                          },
                          "gpuFormFactor": {
                            "type": "string",
                            "enum": [
                              "sxm5",
                              "sxm6",
                              "pcie"
                            ]
                          },
                          "connectionType": {
                            "type": "string",
                            "enum": [
                              "infiniband",
                              "ethernet"
                            ]
                          },
                          "ethernetVariant": {
                            "type": "string",
                            "enum": [
                              "normal",
                              "rocev2"
                            ]
                          },
                          "totalAvailable": {
                            "type": "number"
                          },
                          "machineType": {
                            "type": "string",
                            "const": "virtual-machine"
                          },
                          "nodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "cpuModel": {
                                  "type": "string"
                                },
                                "gpuCount": {
                                  "type": "number"
                                },
                                "ramGb": {
                                  "type": "number"
                                },
                                "storageGb": {
                                  "type": "number"
                                },
                                "vcpuCount": {
                                  "type": "number"
                                }
                              },
                              "required": [
                                "cpuModel",
                                "gpuCount",
                                "ramGb",
                                "storageGb",
                                "vcpuCount"
                              ],
                              "additionalProperties": false
                            }
                          }
                        },
                        "required": [
                          "enabled",
                          "costPerHourCents",
                          "region",
                          "gpuCount",
                          "gpuType",
                          "gpuFormFactor",
                          "connectionType",
                          "machineType",
                          "nodes"
                        ],
                        "additionalProperties": false
                      },
                      {
                        "type": "object",
                        "properties": {
                          "enabled": {
                            "type": "boolean"
                          },
                          "costPerHourCents": {
                            "type": "number"
                          },
                          "region": {
                            "anyOf": [
                              {
                                "type": "string",
                                "enum": [
                                  "us-central-1",
                                  "us-central-2",
                                  "eu-north-2",
                                  "eu-west-2",
                                  "eu-north-4",
                                  "eu-north-5",
                                  "us-east-1",
                                  "us-east-2",
                                  "ca-east-3",
                                  "eu-north-6",
                                  "eu-north-7",
                                  "eu-north-8",
                                  "ca-west-1",
                                  "ca-east-1",
                                  "us-central-3",
                                  "us-southeast-1",
                                  "me-central-1",
                                  "ca-east-2",
                                  "eu-west-1",
                                  "us-southeast-2",
                                  "jp-east-1",
                                  "us-southeast-3",
                                  "eu-west-5",
                                  "us-east-3"
                                ]
                              },
                              {
                                "type": "string",
                                "enum": [
                                  "us-central-1",
                                  "uk-central-3",
                                  "uk-southeast-3",
                                  "eu-southwest-3",
                                  "eu-southwest-3-1",
                                  "eu-west-3",
                                  "eu-west-4"
                                ]
                              }
                            ]
                          },
                          "gpuCount": {
                            "type": "number"
                          },
                          "gpuType": {
                            "type": "string",
                            "enum": [
                              "h100",
                              "h200",
                              "b200",
                              "rtx-6000-pro"
                            ]
                          },
                          "gpuFormFactor": {
                            "type": "string",
                            "enum": [
                              "sxm5",
                              "sxm6",
                              "pcie"
                            ]
                          },
                          "connectionType": {
                            "type": "string",
                            "enum": [
                              "infiniband",
                              "ethernet"
                            ]
                          },
                          "ethernetVariant": {
                            "type": "string",
                            "enum": [
                              "normal",
                              "rocev2"
                            ]
                          },
                          "totalAvailable": {
                            "type": "number"
                          },
                          "machineType": {
                            "type": "string",
                            "const": "bare-metal"
                          },
                          "nodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "cpuModel": {
                                  "type": "string"
                                },
                                "gpuCount": {
                                  "type": "number"
                                },
                                "ramGb": {
                                  "type": "number"
                                },
                                "storageGb": {
                                  "type": "number"
                                },
                                "cpuCount": {
                                  "type": "number"
                                }
                              },
                              "required": [
                                "cpuModel",
                                "gpuCount",
                                "ramGb",
                                "storageGb",
                                "cpuCount"
                              ],
                              "additionalProperties": false
                            }
                          }
                        },
                        "required": [
                          "enabled",
                          "costPerHourCents",
                          "region",
                          "gpuCount",
                          "gpuType",
                          "gpuFormFactor",
                          "connectionType",
                          "machineType",
                          "nodes"
                        ],
                        "additionalProperties": false
                      }
                    ],
                    "type": "object"
                  }
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/on-demand/rentals/update": {
      "post": {
        "operationId": "ondemand-updateRental-legacy",
        "summary": "Update a rental",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/rentals/update` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/rentals/update`.\n\nUpdate a rental's label and/or its reserved-term end-of-term action. Pass an empty label to clear it.",
        "tags": [
          "rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "rentalId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "label": {
                    "type": "string"
                  },
                  "convertToOnDemandOnExpiry": {
                    "type": "boolean"
                  }
                },
                "required": [
                  "rentalId"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Rental"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/on-demand/request-reservation": {
      "post": {
        "operationId": "ondemand-requestReservation-legacy",
        "summary": "Request a reservation",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/request-reservation` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/request-reservation`.\n\nRequest a reservation for a large instance",
        "tags": [
          "rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "gpuCount": {
                    "type": "number",
                    "minimum": 1
                  }
                },
                "required": [
                  "gpuCount"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "message": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "message"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/on-demand/reserve-options": {
      "get": {
        "operationId": "ondemand-getReserveOptions-legacy",
        "summary": "Get a list of reserve options",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/reserve-options` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/reserve-options`.\n\nGet a list of reserve options",
        "tags": [
          "rentals"
        ],
        "deprecated": true,
        "security": [],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "options": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "termPeriodDays": {
                            "type": "number"
                          },
                          "discountPercentage": {
                            "type": "number"
                          }
                        },
                        "required": [
                          "termPeriodDays",
                          "discountPercentage"
                        ],
                        "additionalProperties": false
                      }
                    }
                  },
                  "required": [
                    "options"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/on-demand/storage-volume-options": {
      "get": {
        "operationId": "ondemand-getStorageVolumeOptions-legacy",
        "summary": "Get a list of storage volume options",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/storage-volume-options` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/storage-volume-options`.\n\nGet a list of storage volume options",
        "tags": [
          "storage-volumes"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "region": {
                        "type": "string"
                      },
                      "costPerGbHourCents": {
                        "type": "number",
                        "minimum": 0
                      },
                      "maxSizeInGb": {
                        "type": "number",
                        "minimum": 0
                      }
                    },
                    "required": [
                      "region",
                      "costPerGbHourCents",
                      "maxSizeInGb"
                    ],
                    "additionalProperties": false
                  }
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/on-demand/storage-volumes": {
      "post": {
        "operationId": "ondemand-createStorageVolume-legacy",
        "summary": "Create a storage volume",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/storage-volumes` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/storage-volumes`.\n\nCreate a storage volume",
        "tags": [
          "storage-volumes"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "region": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "us-central-1",
                          "us-central-2",
                          "eu-north-2",
                          "eu-west-2",
                          "eu-north-4",
                          "eu-north-5",
                          "us-east-1",
                          "us-east-2",
                          "ca-east-3",
                          "eu-north-6",
                          "eu-north-7",
                          "eu-north-8",
                          "ca-west-1",
                          "ca-east-1",
                          "us-central-3",
                          "us-southeast-1",
                          "me-central-1",
                          "ca-east-2",
                          "eu-west-1",
                          "us-southeast-2",
                          "jp-east-1",
                          "us-southeast-3",
                          "eu-west-5",
                          "us-east-3"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "us-central-1",
                          "uk-central-3",
                          "uk-southeast-3",
                          "eu-southwest-3",
                          "eu-southwest-3-1",
                          "eu-west-3",
                          "eu-west-4"
                        ]
                      }
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": "^[a-zA-Z0-9_-]+$"
                  },
                  "sizeInGb": {
                    "type": "integer",
                    "minimum": 256,
                    "maximum": 64000,
                    "multipleOf": 256
                  },
                  "rentalIds": {
                    "type": "array",
                    "items": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "exclusiveMinimum": 0,
                          "maximum": 9007199254740991
                        },
                        {
                          "type": "string",
                          "minLength": 1
                        }
                      ]
                    }
                  }
                },
                "required": [
                  "region",
                  "label",
                  "sizeInGb"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatedStorageVolume"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "get": {
        "operationId": "ondemand-getStorageVolumes-legacy",
        "summary": "Get a list of storage volumes",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/storage-volumes` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/storage-volumes`.\n\nGet a list of storage volumes",
        "tags": [
          "storage-volumes"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/StorageVolume"
                  }
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/on-demand/storage-volumes/attach": {
      "post": {
        "operationId": "ondemand-attachStorageVolume-legacy",
        "summary": "Attach a storage volume to bare metal instance(s)",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/storage-volumes/attach` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/storage-volumes/attach`.\n\nAttach a storage volume to bare metal instance(s)",
        "tags": [
          "storage-volumes"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "storageVolumeId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "rentalIds": {
                    "minItems": 1,
                    "type": "array",
                    "items": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "exclusiveMinimum": 0,
                          "maximum": 9007199254740991
                        },
                        {
                          "type": "string",
                          "minLength": 1
                        }
                      ]
                    }
                  }
                },
                "required": [
                  "storageVolumeId",
                  "rentalIds"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachStorageVolumeResponse"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/on-demand/storage-volumes/terminate": {
      "post": {
        "operationId": "ondemand-terminateStorageVolume-legacy",
        "summary": "Terminate a storage volume",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/storage-volumes/terminate` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/storage-volumes/terminate`.\n\nTerminate a storage volume",
        "tags": [
          "storage-volumes"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "storageVolumeId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "reason": {
                    "type": "string"
                  }
                },
                "required": [
                  "storageVolumeId"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TerminateStorageVolumeResponse"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/on-demand/storage-volumes/update": {
      "post": {
        "operationId": "ondemand-updateStorageVolume-legacy",
        "summary": "Update a storage volume",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/storage-volumes/update` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/storage-volumes/update`.\n\nUpdate a storage volume's attached instances and/or size",
        "tags": [
          "storage-volumes"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "storageVolumeId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": "^[a-zA-Z0-9_-]+$"
                  },
                  "rentalIds": {
                    "type": "array",
                    "items": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "exclusiveMinimum": 0,
                          "maximum": 9007199254740991
                        },
                        {
                          "type": "string",
                          "minLength": 1
                        }
                      ]
                    }
                  },
                  "sizeInGb": {
                    "type": "integer",
                    "minimum": 256,
                    "maximum": 64000
                  }
                },
                "required": [
                  "storageVolumeId"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateStorageVolumeResponse"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/on-demand/virtual-machine-rentals": {
      "post": {
        "operationId": "ondemand-createVirtualMachineRental-legacy",
        "summary": "Create a virtual machine rental",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/virtual-machine-rentals` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/virtual-machine-rentals`.\n\nCreate a virtual machine rental",
        "tags": [
          "virtual-machine-rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "gpuCount": {
                    "type": "number"
                  },
                  "networkType": {
                    "default": "ethernet",
                    "type": "string",
                    "enum": [
                      "infiniband",
                      "ethernet"
                    ]
                  },
                  "region": {
                    "default": "us-central-1",
                    "type": "string",
                    "enum": [
                      "us-central-1",
                      "us-central-2",
                      "eu-north-2",
                      "eu-west-2",
                      "eu-north-4",
                      "eu-north-5",
                      "us-east-1",
                      "us-east-2",
                      "ca-east-3",
                      "eu-north-6",
                      "eu-north-7",
                      "eu-north-8",
                      "ca-west-1",
                      "ca-east-1",
                      "us-central-3",
                      "us-southeast-1",
                      "me-central-1",
                      "ca-east-2",
                      "eu-west-1",
                      "us-southeast-2",
                      "jp-east-1",
                      "us-southeast-3",
                      "eu-west-5",
                      "us-east-3"
                    ]
                  },
                  "gpuType": {
                    "default": "h100",
                    "type": "string",
                    "enum": [
                      "h100",
                      "h200",
                      "b200",
                      "rtx-6000-pro"
                    ]
                  },
                  "label": {
                    "type": "string"
                  },
                  "termType": {
                    "default": "on-demand",
                    "type": "string",
                    "enum": [
                      "on-demand",
                      "reserved"
                    ]
                  },
                  "termPeriodDays": {
                    "type": "number"
                  },
                  "discountPercentage": {
                    "default": 0,
                    "type": "number"
                  },
                  "monitoringEnabled": {
                    "type": "boolean"
                  },
                  "customPorts": {
                    "maxItems": 20,
                    "type": "array",
                    "items": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 65535
                    }
                  },
                  "convertToOnDemandOnExpiry": {
                    "default": true,
                    "type": "boolean"
                  },
                  "sshPublicKeyId": {
                    "type": "integer",
                    "minimum": -9007199254740991,
                    "maximum": 9007199254740991
                  },
                  "sshPublicKeyIds": {
                    "minItems": 1,
                    "type": "array",
                    "items": {
                      "type": "integer",
                      "minimum": -9007199254740991,
                      "maximum": 9007199254740991
                    }
                  }
                },
                "required": [
                  "gpuCount"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Rental"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "get": {
        "operationId": "ondemand-getActiveVirtualMachineRentals-legacy",
        "summary": "Get a list of active virtual machine rentals",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/virtual-machine-rentals` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/virtual-machine-rentals`.\n\n**Deprecated.** Returns every active virtual machine rental in one response. Use `GET /v2/on-demand/rentals/active?rentalType=virtual-machine`, which returns them a page at a time.",
        "tags": [
          "virtual-machine-rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [
          {
            "in": "query",
            "name": "includeClusterPools",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RentalWithStatus"
                  }
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.NOT_FOUND"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/v2/alpha/on-demand/virtual-machine-rentals/terminate": {
      "post": {
        "operationId": "ondemand-terminateVirtualMachineRental-legacy",
        "summary": "Terminate a virtual machine rental",
        "description": "**Deprecated.** This path is the pre-`/v2/` URL for `/v2/on-demand/virtual-machine-rentals/terminate` and is kept only so existing integrations keep working. It behaves identically, responds with a `Sunset` header, and stops being served on 2027-03-01. Move to `/v2/on-demand/virtual-machine-rentals/terminate`.\n\nTerminate a virtual machine rental",
        "tags": [
          "virtual-machine-rentals"
        ],
        "deprecated": true,
        "security": [
          {
            "Authorization": []
          }
        ],
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "rentalId": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "string",
                        "minLength": 1
                      }
                    ]
                  },
                  "reason": {
                    "type": "string"
                  }
                },
                "required": [
                  "rentalId"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TerminateVirtualMachineRentalResponse"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.BAD_REQUEST"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Authorization not provided",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.UNAUTHORIZED"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Insufficient access",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.FORBIDDEN"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error.INTERNAL_SERVER_ERROR"
                }
              }
            },
            "headers": {
              "Sunset": {
                "description": "RFC 8594 sunset date for this deprecated path (`Mon, 01 Mar 2027 00:00:00 GMT`).",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "error.BAD_REQUEST": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "description": "The error message",
            "example": "Invalid input data"
          },
          "code": {
            "type": "string",
            "description": "The error code",
            "example": "BAD_REQUEST"
          },
          "issues": {
            "description": "An array of issues that were responsible for the error",
            "example": [],
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "message": {
                  "type": "string"
                }
              },
              "required": [
                "message"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "message",
          "code"
        ],
        "additionalProperties": false,
        "title": "Invalid input data error (400)",
        "description": "The error information",
        "example": {
          "code": "BAD_REQUEST",
          "message": "Invalid input data",
          "issues": []
        }
      },
      "error.NOT_FOUND": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "description": "The error message",
            "example": "Not found"
          },
          "code": {
            "type": "string",
            "description": "The error code",
            "example": "NOT_FOUND"
          },
          "issues": {
            "description": "An array of issues that were responsible for the error",
            "example": [],
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "message": {
                  "type": "string"
                }
              },
              "required": [
                "message"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "message",
          "code"
        ],
        "additionalProperties": false,
        "title": "Not found error (404)",
        "description": "The error information",
        "example": {
          "code": "NOT_FOUND",
          "message": "Not found",
          "issues": []
        }
      },
      "error.INTERNAL_SERVER_ERROR": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "description": "The error message",
            "example": "Internal server error"
          },
          "code": {
            "type": "string",
            "description": "The error code",
            "example": "INTERNAL_SERVER_ERROR"
          },
          "issues": {
            "description": "An array of issues that were responsible for the error",
            "example": [],
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "message": {
                  "type": "string"
                }
              },
              "required": [
                "message"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "message",
          "code"
        ],
        "additionalProperties": false,
        "title": "Internal server error error (500)",
        "description": "The error information",
        "example": {
          "code": "INTERNAL_SERVER_ERROR",
          "message": "Internal server error",
          "issues": []
        }
      },
      "AttachStorageVolumeResponse": {
        "type": "object",
        "properties": {
          "storageVolumeId": {
            "type": "string"
          },
          "attachedRentalIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "storageVolumeId",
          "attachedRentalIds",
          "message"
        ],
        "additionalProperties": false,
        "description": "Confirmation that a storage volume is being attached."
      },
      "error.UNAUTHORIZED": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "description": "The error message",
            "example": "Authorization not provided"
          },
          "code": {
            "type": "string",
            "description": "The error code",
            "example": "UNAUTHORIZED"
          },
          "issues": {
            "description": "An array of issues that were responsible for the error",
            "example": [],
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "message": {
                  "type": "string"
                }
              },
              "required": [
                "message"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "message",
          "code"
        ],
        "additionalProperties": false,
        "title": "Authorization not provided error (401)",
        "description": "The error information",
        "example": {
          "code": "UNAUTHORIZED",
          "message": "Authorization not provided",
          "issues": []
        }
      },
      "error.FORBIDDEN": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "description": "The error message",
            "example": "Insufficient access"
          },
          "code": {
            "type": "string",
            "description": "The error code",
            "example": "FORBIDDEN"
          },
          "issues": {
            "description": "An array of issues that were responsible for the error",
            "example": [],
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "message": {
                  "type": "string"
                }
              },
              "required": [
                "message"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "message",
          "code"
        ],
        "additionalProperties": false,
        "title": "Insufficient access error (403)",
        "description": "The error information",
        "example": {
          "code": "FORBIDDEN",
          "message": "Insufficient access",
          "issues": []
        }
      },
      "Rental": {
        "type": "object",
        "properties": {
          "rentalId": {
            "type": "string"
          },
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "label": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "rentalType": {
            "type": "string",
            "enum": [
              "virtual-machine",
              "bare-metal"
            ]
          },
          "region": {
            "type": "string",
            "enum": [
              "us-central-1",
              "us-central-2",
              "eu-north-2",
              "eu-west-2",
              "eu-north-4",
              "eu-north-5",
              "us-east-1",
              "us-east-2",
              "ca-east-3",
              "eu-north-6",
              "eu-north-7",
              "eu-north-8",
              "ca-west-1",
              "ca-east-1",
              "us-central-3",
              "us-southeast-1",
              "me-central-1",
              "ca-east-2",
              "eu-west-1",
              "us-southeast-2",
              "jp-east-1",
              "us-southeast-3",
              "eu-west-5",
              "us-east-3",
              "uk-central-3",
              "uk-southeast-3",
              "eu-southwest-3",
              "eu-southwest-3-1",
              "eu-west-3",
              "eu-west-4",
              "private-cloud"
            ]
          },
          "gpuType": {
            "type": "string",
            "enum": [
              "h100",
              "h200",
              "b200",
              "rtx-6000-pro"
            ]
          },
          "gpuCount": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
          },
          "gpuFormFactor": {
            "type": "string",
            "enum": [
              "sxm5",
              "sxm6",
              "pcie"
            ]
          },
          "connectionType": {
            "type": "string",
            "enum": [
              "infiniband",
              "ethernet"
            ]
          },
          "ethernetVariant": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "normal",
                  "rocev2"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "nodes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RentalNode"
            }
          },
          "sshEndpoints": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SshEndpoint"
            }
          },
          "networkInterfaces": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NetworkInterface"
            }
          },
          "portMappings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PortMapping"
            }
          },
          "supportsPortForwarding": {
            "type": "boolean"
          },
          "exposedPorts": {
            "type": "array",
            "items": {
              "type": "number"
            }
          },
          "supportsCustomPorts": {
            "type": "boolean"
          },
          "attachedStorage": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AttachedStorage"
            }
          },
          "supportsAttachedStorage": {
            "type": "boolean"
          },
          "monitoringEnabled": {
            "type": "boolean"
          },
          "convertToOnDemandOnExpiry": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ]
          },
          "terminationReason": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "currentTerm": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "effectiveAt": {
                    "type": "string",
                    "format": "date-time",
                    "example": "2025-01-31T12:00:00.000Z"
                  },
                  "termType": {
                    "type": "string",
                    "const": "on-demand"
                  },
                  "costPerHour": {
                    "type": "number"
                  },
                  "reservedUntil": {
                    "type": "null"
                  },
                  "reservationEndsAt": {
                    "type": "null"
                  },
                  "termPeriodDays": {
                    "type": "null"
                  },
                  "discountPercentage": {
                    "type": "null"
                  },
                  "originalCostPerHour": {
                    "type": "null"
                  }
                },
                "required": [
                  "effectiveAt",
                  "termType",
                  "costPerHour",
                  "reservedUntil",
                  "reservationEndsAt",
                  "termPeriodDays",
                  "discountPercentage",
                  "originalCostPerHour"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "effectiveAt": {
                    "type": "string",
                    "format": "date-time",
                    "example": "2025-01-31T12:00:00.000Z"
                  },
                  "termType": {
                    "type": "string",
                    "const": "reserved"
                  },
                  "costPerHour": {
                    "type": "number"
                  },
                  "reservedUntil": {
                    "anyOf": [
                      {
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-01-31T12:00:00.000Z"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "reservationEndsAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-01-31T12:00:00.000Z"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "termPeriodDays": {
                    "type": "number"
                  },
                  "discountPercentage": {
                    "type": "number"
                  },
                  "originalCostPerHour": {
                    "type": "number"
                  }
                },
                "required": [
                  "effectiveAt",
                  "termType",
                  "costPerHour",
                  "reservedUntil",
                  "reservationEndsAt",
                  "termPeriodDays",
                  "discountPercentage",
                  "originalCostPerHour"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "effectiveAt": {
                    "type": "string",
                    "format": "date-time",
                    "example": "2025-01-31T12:00:00.000Z"
                  },
                  "termType": {
                    "type": "string",
                    "const": "private-cloud"
                  },
                  "costPerHour": {
                    "type": "number"
                  },
                  "reservedUntil": {
                    "type": "null"
                  },
                  "reservationEndsAt": {
                    "type": "null"
                  },
                  "termPeriodDays": {
                    "type": "null"
                  },
                  "discountPercentage": {
                    "type": "null"
                  },
                  "originalCostPerHour": {
                    "type": "null"
                  }
                },
                "required": [
                  "effectiveAt",
                  "termType",
                  "costPerHour",
                  "reservedUntil",
                  "reservationEndsAt",
                  "termPeriodDays",
                  "discountPercentage",
                  "originalCostPerHour"
                ],
                "additionalProperties": false
              }
            ],
            "type": "object"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time",
            "example": "2025-01-31T12:00:00.000Z"
          },
          "updatedAt": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-31T12:00:00.000Z"
              },
              {
                "type": "null"
              }
            ]
          },
          "startedAt": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-31T12:00:00.000Z"
              },
              {
                "type": "null"
              }
            ]
          },
          "terminatedAt": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-31T12:00:00.000Z"
              },
              {
                "type": "null"
              }
            ]
          },
          "userId": {
            "type": "string"
          },
          "orgId": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "createdBy": {
            "$ref": "#/components/schemas/RentalCreator"
          },
          "privateCluster": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/PrivateCluster"
              },
              {
                "type": "null"
              }
            ]
          },
          "managedCluster": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/ManagedClusterRef"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "rentalId",
          "name",
          "label",
          "rentalType",
          "region",
          "gpuType",
          "gpuCount",
          "gpuFormFactor",
          "connectionType",
          "ethernetVariant",
          "nodes",
          "sshEndpoints",
          "networkInterfaces",
          "portMappings",
          "supportsPortForwarding",
          "exposedPorts",
          "supportsCustomPorts",
          "attachedStorage",
          "supportsAttachedStorage",
          "monitoringEnabled",
          "convertToOnDemandOnExpiry",
          "terminationReason",
          "currentTerm",
          "createdAt",
          "updatedAt",
          "startedAt",
          "terminatedAt",
          "userId",
          "orgId",
          "createdBy",
          "privateCluster",
          "managedCluster"
        ],
        "additionalProperties": false,
        "description": "A GPU rental."
      },
      "RentalNode": {
        "type": "object",
        "properties": {
          "cpuModel": {
            "type": "string"
          },
          "cpuCount": {
            "anyOf": [
              {
                "type": "number"
              },
              {
                "type": "null"
              }
            ]
          },
          "vcpuCount": {
            "anyOf": [
              {
                "type": "number"
              },
              {
                "type": "null"
              }
            ]
          },
          "gpuCount": {
            "type": "number"
          },
          "ramGb": {
            "type": "number"
          },
          "storageGb": {
            "type": "number"
          }
        },
        "required": [
          "cpuModel",
          "cpuCount",
          "vcpuCount",
          "gpuCount",
          "ramGb",
          "storageGb"
        ],
        "additionalProperties": false,
        "description": "Hardware of one node of a rental, normalised across machine types."
      },
      "SshEndpoint": {
        "type": "object",
        "properties": {
          "host": {
            "type": "string"
          },
          "port": {
            "type": "number"
          },
          "user": {
            "type": "string"
          }
        },
        "required": [
          "host",
          "port",
          "user"
        ],
        "additionalProperties": false,
        "description": "Where to connect to a rental over SSH."
      },
      "NetworkInterface": {
        "type": "object",
        "properties": {
          "publicIp": {
            "type": "string"
          },
          "privateIp": {
            "type": "string"
          }
        },
        "required": [
          "publicIp",
          "privateIp"
        ],
        "additionalProperties": false,
        "description": "The public and private addresses of one node of a rental."
      },
      "PortMapping": {
        "type": "object",
        "properties": {
          "externalPort": {
            "type": "number"
          },
          "internalPort": {
            "type": "number"
          }
        },
        "required": [
          "externalPort",
          "internalPort"
        ],
        "additionalProperties": false,
        "description": "A port reachable from outside, and the port it reaches inside the machine."
      },
      "AttachedStorage": {
        "type": "object",
        "properties": {
          "storageVolumeId": {
            "type": "string"
          },
          "label": {
            "type": "string"
          },
          "sizeInGb": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
          },
          "virtualIp": {
            "type": "string"
          },
          "costPerHourCents": {
            "type": "number"
          }
        },
        "required": [
          "storageVolumeId",
          "label",
          "sizeInGb",
          "virtualIp",
          "costPerHourCents"
        ],
        "additionalProperties": false,
        "description": "A storage volume as seen from a rental it is attached to."
      },
      "RentalCreator": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "email": {
            "type": "string"
          },
          "picture": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "id",
          "name",
          "email",
          "picture"
        ],
        "additionalProperties": false,
        "description": "The user who created a rental."
      },
      "PrivateCluster": {
        "type": "object",
        "properties": {
          "gpuModel": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "location": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "sshUser": {
            "type": "string"
          },
          "sshPort": {
            "anyOf": [
              {
                "type": "number"
              },
              {
                "type": "null"
              }
            ]
          },
          "nodes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PrivateClusterNode"
            }
          },
          "handover": {
            "type": "object",
            "propertyNames": {
              "type": "string"
            },
            "additionalProperties": {}
          }
        },
        "required": [
          "gpuModel",
          "location",
          "sshUser",
          "sshPort",
          "nodes",
          "handover"
        ],
        "additionalProperties": false,
        "description": "The topology of a dedicated private cluster."
      },
      "PrivateClusterNode": {
        "type": "object",
        "properties": {
          "role": {
            "type": "string",
            "enum": [
              "login",
              "head",
              "compute"
            ]
          },
          "hostname": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "publicIp": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "privateIp": {
            "type": "string"
          }
        },
        "required": [
          "role",
          "hostname",
          "publicIp",
          "privateIp"
        ],
        "additionalProperties": false,
        "description": "One machine of a dedicated private cluster."
      },
      "ManagedClusterRef": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "label": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "name",
          "label"
        ],
        "additionalProperties": false,
        "description": "The managed Kubernetes cluster a rental is a node pool of."
      },
      "RentalWithStatus": {
        "type": "object",
        "properties": {
          "rentalId": {
            "type": "string"
          },
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "label": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "rentalType": {
            "type": "string",
            "enum": [
              "virtual-machine",
              "bare-metal"
            ]
          },
          "region": {
            "type": "string",
            "enum": [
              "us-central-1",
              "us-central-2",
              "eu-north-2",
              "eu-west-2",
              "eu-north-4",
              "eu-north-5",
              "us-east-1",
              "us-east-2",
              "ca-east-3",
              "eu-north-6",
              "eu-north-7",
              "eu-north-8",
              "ca-west-1",
              "ca-east-1",
              "us-central-3",
              "us-southeast-1",
              "me-central-1",
              "ca-east-2",
              "eu-west-1",
              "us-southeast-2",
              "jp-east-1",
              "us-southeast-3",
              "eu-west-5",
              "us-east-3",
              "uk-central-3",
              "uk-southeast-3",
              "eu-southwest-3",
              "eu-southwest-3-1",
              "eu-west-3",
              "eu-west-4",
              "private-cloud"
            ]
          },
          "gpuType": {
            "type": "string",
            "enum": [
              "h100",
              "h200",
              "b200",
              "rtx-6000-pro"
            ]
          },
          "gpuCount": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
          },
          "gpuFormFactor": {
            "type": "string",
            "enum": [
              "sxm5",
              "sxm6",
              "pcie"
            ]
          },
          "connectionType": {
            "type": "string",
            "enum": [
              "infiniband",
              "ethernet"
            ]
          },
          "ethernetVariant": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "normal",
                  "rocev2"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "nodes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RentalNode"
            }
          },
          "sshEndpoints": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SshEndpoint"
            }
          },
          "networkInterfaces": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NetworkInterface"
            }
          },
          "portMappings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PortMapping"
            }
          },
          "supportsPortForwarding": {
            "type": "boolean"
          },
          "exposedPorts": {
            "type": "array",
            "items": {
              "type": "number"
            }
          },
          "supportsCustomPorts": {
            "type": "boolean"
          },
          "attachedStorage": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AttachedStorage"
            }
          },
          "supportsAttachedStorage": {
            "type": "boolean"
          },
          "monitoringEnabled": {
            "type": "boolean"
          },
          "convertToOnDemandOnExpiry": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ]
          },
          "terminationReason": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "currentTerm": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "effectiveAt": {
                    "type": "string",
                    "format": "date-time",
                    "example": "2025-01-31T12:00:00.000Z"
                  },
                  "termType": {
                    "type": "string",
                    "const": "on-demand"
                  },
                  "costPerHour": {
                    "type": "number"
                  },
                  "reservedUntil": {
                    "type": "null"
                  },
                  "reservationEndsAt": {
                    "type": "null"
                  },
                  "termPeriodDays": {
                    "type": "null"
                  },
                  "discountPercentage": {
                    "type": "null"
                  },
                  "originalCostPerHour": {
                    "type": "null"
                  }
                },
                "required": [
                  "effectiveAt",
                  "termType",
                  "costPerHour",
                  "reservedUntil",
                  "reservationEndsAt",
                  "termPeriodDays",
                  "discountPercentage",
                  "originalCostPerHour"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "effectiveAt": {
                    "type": "string",
                    "format": "date-time",
                    "example": "2025-01-31T12:00:00.000Z"
                  },
                  "termType": {
                    "type": "string",
                    "const": "reserved"
                  },
                  "costPerHour": {
                    "type": "number"
                  },
                  "reservedUntil": {
                    "anyOf": [
                      {
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-01-31T12:00:00.000Z"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "reservationEndsAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-01-31T12:00:00.000Z"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "termPeriodDays": {
                    "type": "number"
                  },
                  "discountPercentage": {
                    "type": "number"
                  },
                  "originalCostPerHour": {
                    "type": "number"
                  }
                },
                "required": [
                  "effectiveAt",
                  "termType",
                  "costPerHour",
                  "reservedUntil",
                  "reservationEndsAt",
                  "termPeriodDays",
                  "discountPercentage",
                  "originalCostPerHour"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "effectiveAt": {
                    "type": "string",
                    "format": "date-time",
                    "example": "2025-01-31T12:00:00.000Z"
                  },
                  "termType": {
                    "type": "string",
                    "const": "private-cloud"
                  },
                  "costPerHour": {
                    "type": "number"
                  },
                  "reservedUntil": {
                    "type": "null"
                  },
                  "reservationEndsAt": {
                    "type": "null"
                  },
                  "termPeriodDays": {
                    "type": "null"
                  },
                  "discountPercentage": {
                    "type": "null"
                  },
                  "originalCostPerHour": {
                    "type": "null"
                  }
                },
                "required": [
                  "effectiveAt",
                  "termType",
                  "costPerHour",
                  "reservedUntil",
                  "reservationEndsAt",
                  "termPeriodDays",
                  "discountPercentage",
                  "originalCostPerHour"
                ],
                "additionalProperties": false
              }
            ],
            "type": "object"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time",
            "example": "2025-01-31T12:00:00.000Z"
          },
          "updatedAt": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-31T12:00:00.000Z"
              },
              {
                "type": "null"
              }
            ]
          },
          "startedAt": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-31T12:00:00.000Z"
              },
              {
                "type": "null"
              }
            ]
          },
          "terminatedAt": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-31T12:00:00.000Z"
              },
              {
                "type": "null"
              }
            ]
          },
          "userId": {
            "type": "string"
          },
          "orgId": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "createdBy": {
            "$ref": "#/components/schemas/RentalCreator"
          },
          "privateCluster": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/PrivateCluster"
              },
              {
                "type": "null"
              }
            ]
          },
          "managedCluster": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/ManagedClusterRef"
              },
              {
                "type": "null"
              }
            ]
          },
          "status": {
            "default": "Unknown",
            "type": "string",
            "enum": [
              "Failed",
              "Pending",
              "Rebooting",
              "Running",
              "Terminating",
              "Terminated",
              "Unknown"
            ]
          },
          "instances": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RentalInstance"
            }
          }
        },
        "required": [
          "rentalId",
          "name",
          "label",
          "rentalType",
          "region",
          "gpuType",
          "gpuCount",
          "gpuFormFactor",
          "connectionType",
          "ethernetVariant",
          "nodes",
          "sshEndpoints",
          "networkInterfaces",
          "portMappings",
          "supportsPortForwarding",
          "exposedPorts",
          "supportsCustomPorts",
          "attachedStorage",
          "supportsAttachedStorage",
          "monitoringEnabled",
          "convertToOnDemandOnExpiry",
          "terminationReason",
          "currentTerm",
          "createdAt",
          "updatedAt",
          "startedAt",
          "terminatedAt",
          "userId",
          "orgId",
          "createdBy",
          "privateCluster",
          "managedCluster",
          "status"
        ],
        "additionalProperties": false,
        "description": "A GPU rental with its live status."
      },
      "RentalInstance": {
        "type": "object",
        "properties": {
          "instanceRef": {
            "type": "string"
          },
          "phase": {
            "type": "string"
          },
          "ssh": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "internalIp": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "supportsReboot": {
            "type": "boolean"
          },
          "actualResources": {
            "$ref": "#/components/schemas/RentalInstanceResources"
          }
        },
        "required": [
          "instanceRef",
          "phase",
          "ssh",
          "internalIp",
          "supportsReboot"
        ],
        "additionalProperties": false,
        "description": "The live state of one node of a running rental."
      },
      "RentalInstanceResources": {
        "type": "object",
        "properties": {
          "vcpuCount": {
            "type": "number"
          },
          "ramGb": {
            "type": "number"
          },
          "gpuCount": {
            "type": "number"
          },
          "gpuMemoryGb": {
            "type": "number"
          },
          "gpuModel": {
            "type": "string"
          },
          "scratchDiskGb": {
            "type": "number"
          },
          "scratchDiskCount": {
            "type": "number"
          },
          "numaNodes": {
            "type": "number"
          }
        },
        "required": [
          "vcpuCount",
          "ramGb",
          "gpuCount"
        ],
        "additionalProperties": false,
        "description": "The hardware one node actually booted with, as its host reported it."
      },
      "ReservedRentalConversion": {
        "type": "object",
        "properties": {
          "rentalId": {
            "type": "string"
          },
          "reservedUntil": {
            "type": "string",
            "format": "date-time",
            "example": "2025-01-31T12:00:00.000Z"
          },
          "amountChargedCents": {
            "type": "number"
          },
          "usageTailCents": {
            "type": "number"
          }
        },
        "required": [
          "rentalId",
          "reservedUntil",
          "amountChargedCents",
          "usageTailCents"
        ],
        "additionalProperties": false,
        "description": "An on-demand rental converted to reserved, and what it cost."
      },
      "CreatedStorageVolume": {
        "type": "object",
        "properties": {
          "storageVolumeId": {
            "type": "string"
          },
          "region": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "us-central-1",
                  "us-central-2",
                  "eu-north-2",
                  "eu-west-2",
                  "eu-north-4",
                  "eu-north-5",
                  "us-east-1",
                  "us-east-2",
                  "ca-east-3",
                  "eu-north-6",
                  "eu-north-7",
                  "eu-north-8",
                  "ca-west-1",
                  "ca-east-1",
                  "us-central-3",
                  "us-southeast-1",
                  "me-central-1",
                  "ca-east-2",
                  "eu-west-1",
                  "us-southeast-2",
                  "jp-east-1",
                  "us-southeast-3",
                  "eu-west-5",
                  "us-east-3"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "us-central-1",
                  "uk-central-3",
                  "uk-southeast-3",
                  "eu-southwest-3",
                  "eu-southwest-3-1",
                  "eu-west-3",
                  "eu-west-4"
                ]
              }
            ]
          },
          "status": {
            "default": "unknown",
            "type": "string",
            "enum": [
              "active",
              "inactive",
              "unknown"
            ]
          },
          "label": {
            "type": "string",
            "minLength": 4,
            "maxLength": 255,
            "pattern": "^[a-zA-Z0-9_-]+$"
          },
          "sizeInGb": {
            "type": "integer",
            "minimum": 256,
            "maximum": 64000,
            "multipleOf": 256
          },
          "attachedRentalIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "storageVolumeId",
          "region",
          "status",
          "label",
          "sizeInGb",
          "attachedRentalIds",
          "message"
        ],
        "additionalProperties": false,
        "description": "A newly created storage volume."
      },
      "StorageVolume": {
        "type": "object",
        "properties": {
          "storageVolumeId": {
            "type": "string"
          },
          "label": {
            "type": "string"
          },
          "region": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "us-central-1",
                  "us-central-2",
                  "eu-north-2",
                  "eu-west-2",
                  "eu-north-4",
                  "eu-north-5",
                  "us-east-1",
                  "us-east-2",
                  "ca-east-3",
                  "eu-north-6",
                  "eu-north-7",
                  "eu-north-8",
                  "ca-west-1",
                  "ca-east-1",
                  "us-central-3",
                  "us-southeast-1",
                  "me-central-1",
                  "ca-east-2",
                  "eu-west-1",
                  "us-southeast-2",
                  "jp-east-1",
                  "us-southeast-3",
                  "eu-west-5",
                  "us-east-3"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "us-central-1",
                  "uk-central-3",
                  "uk-southeast-3",
                  "eu-southwest-3",
                  "eu-southwest-3-1",
                  "eu-west-3",
                  "eu-west-4"
                ]
              }
            ]
          },
          "sizeInGb": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
          },
          "status": {
            "type": "string",
            "enum": [
              "active",
              "inactive",
              "unknown"
            ]
          },
          "virtualIp": {
            "type": "string"
          },
          "costPerHourCents": {
            "type": "number"
          },
          "attachedRentalIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "terminationReason": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "createdAt": {
            "type": "string",
            "format": "date-time",
            "example": "2025-01-31T12:00:00.000Z"
          },
          "updatedAt": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-31T12:00:00.000Z"
              },
              {
                "type": "null"
              }
            ]
          },
          "startedAt": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-31T12:00:00.000Z"
              },
              {
                "type": "null"
              }
            ]
          },
          "terminatedAt": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-31T12:00:00.000Z"
              },
              {
                "type": "null"
              }
            ]
          },
          "userId": {
            "type": "string"
          },
          "orgId": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "storageVolumeId",
          "label",
          "region",
          "sizeInGb",
          "status",
          "virtualIp",
          "costPerHourCents",
          "attachedRentalIds",
          "terminationReason",
          "createdAt",
          "updatedAt",
          "startedAt",
          "terminatedAt",
          "userId",
          "orgId"
        ],
        "additionalProperties": false,
        "description": "A network storage volume."
      },
      "ReservedRentalExtension": {
        "type": "object",
        "properties": {
          "rentalId": {
            "type": "string"
          },
          "reservedUntil": {
            "type": "string",
            "format": "date-time",
            "example": "2025-01-31T12:00:00.000Z"
          },
          "amountChargedCents": {
            "type": "number"
          }
        },
        "required": [
          "rentalId",
          "reservedUntil",
          "amountChargedCents"
        ],
        "additionalProperties": false,
        "description": "A reserved rental's new end, and what extending it cost."
      },
      "ActiveRentalSummary": {
        "type": "object",
        "properties": {
          "count": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "costPerHourCents": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "byTermType": {
            "$ref": "#/components/schemas/ActiveRentalSummaryByTermType"
          }
        },
        "required": [
          "count",
          "costPerHourCents",
          "byTermType"
        ],
        "additionalProperties": false,
        "description": "How many rentals the caller has active, and their summed hourly cost in cents."
      },
      "ActiveRentalSummaryByTermType": {
        "type": "object",
        "properties": {
          "on-demand": {
            "$ref": "#/components/schemas/RentalTermTypeSummary"
          },
          "reserved": {
            "$ref": "#/components/schemas/RentalTermTypeSummary"
          },
          "private-cloud": {
            "$ref": "#/components/schemas/RentalTermTypeSummary"
          }
        },
        "required": [
          "on-demand",
          "reserved",
          "private-cloud"
        ],
        "additionalProperties": false,
        "description": "Active rental totals for each term type."
      },
      "RentalTermTypeSummary": {
        "type": "object",
        "properties": {
          "count": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "costPerHourCents": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          }
        },
        "required": [
          "count",
          "costPerHourCents"
        ],
        "additionalProperties": false,
        "description": "How many active rentals are on one term type, and their summed hourly cost in cents."
      },
      "ActiveRentalLookup": {
        "type": "object",
        "properties": {
          "state": {
            "type": "string",
            "const": "active"
          },
          "rental": {
            "$ref": "#/components/schemas/RentalWithStatus"
          }
        },
        "required": [
          "state",
          "rental"
        ],
        "additionalProperties": false,
        "description": "A rental lookup that found a running rental."
      },
      "TerminatedRentalLookup": {
        "type": "object",
        "properties": {
          "state": {
            "type": "string",
            "const": "terminated"
          },
          "rental": {
            "$ref": "#/components/schemas/HistoricalRental"
          }
        },
        "required": [
          "state",
          "rental"
        ],
        "additionalProperties": false,
        "description": "A rental lookup that found a rental that has ended."
      },
      "HistoricalRental": {
        "type": "object",
        "properties": {
          "rentalId": {
            "type": "string"
          },
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "label": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "rentalType": {
            "type": "string",
            "enum": [
              "virtual-machine",
              "bare-metal"
            ]
          },
          "region": {
            "type": "string",
            "enum": [
              "us-central-1",
              "us-central-2",
              "eu-north-2",
              "eu-west-2",
              "eu-north-4",
              "eu-north-5",
              "us-east-1",
              "us-east-2",
              "ca-east-3",
              "eu-north-6",
              "eu-north-7",
              "eu-north-8",
              "ca-west-1",
              "ca-east-1",
              "us-central-3",
              "us-southeast-1",
              "me-central-1",
              "ca-east-2",
              "eu-west-1",
              "us-southeast-2",
              "jp-east-1",
              "us-southeast-3",
              "eu-west-5",
              "us-east-3",
              "uk-central-3",
              "uk-southeast-3",
              "eu-southwest-3",
              "eu-southwest-3-1",
              "eu-west-3",
              "eu-west-4",
              "private-cloud"
            ]
          },
          "gpuType": {
            "type": "string",
            "enum": [
              "h100",
              "h200",
              "b200",
              "rtx-6000-pro"
            ]
          },
          "gpuCount": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
          },
          "gpuFormFactor": {
            "type": "string",
            "enum": [
              "sxm5",
              "sxm6",
              "pcie"
            ]
          },
          "connectionType": {
            "type": "string",
            "enum": [
              "infiniband",
              "ethernet"
            ]
          },
          "ethernetVariant": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "normal",
                  "rocev2"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "nodes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RentalNode"
            }
          },
          "sshEndpoints": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SshEndpoint"
            }
          },
          "networkInterfaces": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NetworkInterface"
            }
          },
          "portMappings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PortMapping"
            }
          },
          "supportsPortForwarding": {
            "type": "boolean"
          },
          "exposedPorts": {
            "type": "array",
            "items": {
              "type": "number"
            }
          },
          "supportsCustomPorts": {
            "type": "boolean"
          },
          "attachedStorage": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AttachedStorage"
            }
          },
          "supportsAttachedStorage": {
            "type": "boolean"
          },
          "monitoringEnabled": {
            "type": "boolean"
          },
          "convertToOnDemandOnExpiry": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ]
          },
          "terminationReason": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "currentTerm": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "effectiveAt": {
                    "type": "string",
                    "format": "date-time",
                    "example": "2025-01-31T12:00:00.000Z"
                  },
                  "termType": {
                    "type": "string",
                    "const": "on-demand"
                  },
                  "costPerHour": {
                    "type": "number"
                  },
                  "reservedUntil": {
                    "type": "null"
                  },
                  "reservationEndsAt": {
                    "type": "null"
                  },
                  "termPeriodDays": {
                    "type": "null"
                  },
                  "discountPercentage": {
                    "type": "null"
                  },
                  "originalCostPerHour": {
                    "type": "null"
                  }
                },
                "required": [
                  "effectiveAt",
                  "termType",
                  "costPerHour",
                  "reservedUntil",
                  "reservationEndsAt",
                  "termPeriodDays",
                  "discountPercentage",
                  "originalCostPerHour"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "effectiveAt": {
                    "type": "string",
                    "format": "date-time",
                    "example": "2025-01-31T12:00:00.000Z"
                  },
                  "termType": {
                    "type": "string",
                    "const": "reserved"
                  },
                  "costPerHour": {
                    "type": "number"
                  },
                  "reservedUntil": {
                    "anyOf": [
                      {
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-01-31T12:00:00.000Z"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "reservationEndsAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-01-31T12:00:00.000Z"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "termPeriodDays": {
                    "type": "number"
                  },
                  "discountPercentage": {
                    "type": "number"
                  },
                  "originalCostPerHour": {
                    "type": "number"
                  }
                },
                "required": [
                  "effectiveAt",
                  "termType",
                  "costPerHour",
                  "reservedUntil",
                  "reservationEndsAt",
                  "termPeriodDays",
                  "discountPercentage",
                  "originalCostPerHour"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "effectiveAt": {
                    "type": "string",
                    "format": "date-time",
                    "example": "2025-01-31T12:00:00.000Z"
                  },
                  "termType": {
                    "type": "string",
                    "const": "private-cloud"
                  },
                  "costPerHour": {
                    "type": "number"
                  },
                  "reservedUntil": {
                    "type": "null"
                  },
                  "reservationEndsAt": {
                    "type": "null"
                  },
                  "termPeriodDays": {
                    "type": "null"
                  },
                  "discountPercentage": {
                    "type": "null"
                  },
                  "originalCostPerHour": {
                    "type": "null"
                  }
                },
                "required": [
                  "effectiveAt",
                  "termType",
                  "costPerHour",
                  "reservedUntil",
                  "reservationEndsAt",
                  "termPeriodDays",
                  "discountPercentage",
                  "originalCostPerHour"
                ],
                "additionalProperties": false
              }
            ],
            "type": "object"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time",
            "example": "2025-01-31T12:00:00.000Z"
          },
          "updatedAt": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-31T12:00:00.000Z"
              },
              {
                "type": "null"
              }
            ]
          },
          "startedAt": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-31T12:00:00.000Z"
              },
              {
                "type": "null"
              }
            ]
          },
          "terminatedAt": {
            "type": "string",
            "format": "date-time",
            "example": "2025-01-31T12:00:00.000Z"
          },
          "userId": {
            "type": "string"
          },
          "orgId": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "createdBy": {
            "$ref": "#/components/schemas/RentalCreator"
          },
          "privateCluster": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/PrivateCluster"
              },
              {
                "type": "null"
              }
            ]
          },
          "managedCluster": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/ManagedClusterRef"
              },
              {
                "type": "null"
              }
            ]
          },
          "status": {
            "type": "string",
            "enum": [
              "Terminated",
              "Failed"
            ]
          },
          "totalCost": {
            "type": "number"
          }
        },
        "required": [
          "rentalId",
          "name",
          "label",
          "rentalType",
          "region",
          "gpuType",
          "gpuCount",
          "gpuFormFactor",
          "connectionType",
          "ethernetVariant",
          "nodes",
          "sshEndpoints",
          "networkInterfaces",
          "portMappings",
          "supportsPortForwarding",
          "exposedPorts",
          "supportsCustomPorts",
          "attachedStorage",
          "supportsAttachedStorage",
          "monitoringEnabled",
          "convertToOnDemandOnExpiry",
          "terminationReason",
          "currentTerm",
          "createdAt",
          "updatedAt",
          "startedAt",
          "terminatedAt",
          "userId",
          "orgId",
          "createdBy",
          "privateCluster",
          "managedCluster",
          "status",
          "totalCost"
        ],
        "additionalProperties": false,
        "description": "A GPU rental that has ended, with its total cost."
      },
      "ActiveRentalsPage": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RentalWithStatus"
            }
          },
          "total": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "page": {
            "type": "integer",
            "minimum": 1,
            "maximum": 9007199254740991
          },
          "pageSize": {
            "type": "integer",
            "minimum": 1,
            "maximum": 9007199254740991
          },
          "totalPages": {
            "type": "integer",
            "minimum": 1,
            "maximum": 9007199254740991
          }
        },
        "required": [
          "items",
          "total",
          "page",
          "pageSize",
          "totalPages"
        ],
        "additionalProperties": false,
        "description": "One numbered page of active rentals, most recently started first."
      },
      "RentalHistoryPage": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/HistoricalRental"
            }
          },
          "nextCursor": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "totalCount": {
            "anyOf": [
              {
                "type": "integer",
                "minimum": 0,
                "maximum": 9007199254740991
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "items",
          "nextCursor",
          "totalCount"
        ],
        "additionalProperties": false,
        "description": "One page of past rentals, most recently terminated first. Pass `nextCursor` back as `cursor` for the next page; it is `null` on the last page. `totalCount` is set on the first page only."
      },
      "ReservationExtensionQuote": {
        "type": "object",
        "properties": {
          "costPerHourCents": {
            "type": "number"
          },
          "reservedUntil": {
            "type": "string",
            "format": "date-time",
            "example": "2025-01-31T12:00:00.000Z"
          },
          "options": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReservationExtensionOption"
            }
          }
        },
        "required": [
          "costPerHourCents",
          "reservedUntil",
          "options"
        ],
        "additionalProperties": false,
        "description": "What extending a reserved rental would cost, per term."
      },
      "ReservationExtensionOption": {
        "type": "object",
        "properties": {
          "termPeriodDays": {
            "type": "number"
          },
          "discountPercentage": {
            "type": "number"
          },
          "totalPriceCents": {
            "type": "number"
          },
          "newReservedUntil": {
            "type": "string",
            "format": "date-time",
            "example": "2025-01-31T12:00:00.000Z"
          }
        },
        "required": [
          "termPeriodDays",
          "discountPercentage",
          "totalPriceCents",
          "newReservedUntil"
        ],
        "additionalProperties": false,
        "description": "One term a reserved rental can be extended by."
      },
      "ReservedConversionQuote": {
        "type": "object",
        "properties": {
          "costPerHourCents": {
            "type": "number"
          },
          "estimatedUsageTailCents": {
            "type": "number"
          },
          "options": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReservedConversionOption"
            }
          }
        },
        "required": [
          "costPerHourCents",
          "estimatedUsageTailCents",
          "options"
        ],
        "additionalProperties": false,
        "description": "What converting an on-demand rental to reserved would cost, per term."
      },
      "ReservedConversionOption": {
        "type": "object",
        "properties": {
          "termPeriodDays": {
            "type": "number"
          },
          "discountPercentage": {
            "type": "number"
          },
          "totalPriceCents": {
            "type": "number"
          }
        },
        "required": [
          "termPeriodDays",
          "discountPercentage",
          "totalPriceCents"
        ],
        "additionalProperties": false,
        "description": "One term an on-demand rental can be converted to."
      },
      "RebootVirtualMachineInstanceResponse": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string"
          },
          "rentalId": {
            "type": "string"
          },
          "instanceRef": {
            "type": "string"
          }
        },
        "required": [
          "message",
          "rentalId",
          "instanceRef"
        ],
        "additionalProperties": false,
        "description": "Confirmation that a node of a rental is rebooting."
      },
      "TerminateBareMetalRentalResponse": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string"
          },
          "rentalId": {
            "type": "string"
          }
        },
        "required": [
          "message",
          "rentalId"
        ],
        "additionalProperties": false,
        "description": "Confirmation that a bare-metal rental is terminating."
      },
      "TerminateStorageVolumeResponse": {
        "type": "object",
        "properties": {
          "storageVolumeId": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "storageVolumeId",
          "message"
        ],
        "additionalProperties": false,
        "description": "Confirmation that a storage volume is terminating."
      },
      "TerminateVirtualMachineRentalResponse": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string"
          },
          "rentalId": {
            "type": "string"
          }
        },
        "required": [
          "message",
          "rentalId"
        ],
        "additionalProperties": false,
        "description": "Confirmation that a virtual-machine rental is terminating."
      },
      "UpdateStorageVolumeResponse": {
        "type": "object",
        "properties": {
          "storageVolumeId": {
            "type": "string"
          },
          "attachedRentalIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "sizeInGb": {
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "storageVolumeId",
          "attachedRentalIds",
          "sizeInGb",
          "message"
        ],
        "additionalProperties": false,
        "description": "Confirmation that a storage volume is being updated."
      },
      "CurrentUser": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "picture": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "provider": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "emailVerified": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ]
          },
          "isActive": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ]
          },
          "createdAt": {
            "type": "string",
            "format": "date-time",
            "example": "2025-01-31T12:00:00.000Z"
          },
          "onboardedAt": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-31T12:00:00.000Z"
              },
              {
                "type": "null"
              }
            ]
          },
          "onboardedFor": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "referralCode": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "role": {
            "type": "string",
            "enum": [
              "user",
              "pro",
              "elite"
            ]
          },
          "completedPromos": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "hasPurchasedCredits": {
            "type": "boolean"
          },
          "reservedRentalLimit": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          }
        },
        "required": [
          "id",
          "email",
          "name",
          "picture",
          "provider",
          "emailVerified",
          "isActive",
          "createdAt",
          "onboardedAt",
          "onboardedFor",
          "referralCode",
          "role",
          "completedPromos",
          "hasPurchasedCredits"
        ],
        "additionalProperties": false,
        "description": "The authenticated user, with account state resolved."
      },
      "SuccessResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "additionalProperties": false,
        "description": "Result of an operation that returns no payload."
      },
      "UserMutationResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "user": {
            "$ref": "#/components/schemas/User"
          }
        },
        "required": [
          "success",
          "user"
        ],
        "additionalProperties": false,
        "description": "The user account as it stands after an update."
      },
      "User": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "picture": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "provider": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "emailVerified": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ]
          },
          "isActive": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ]
          },
          "createdAt": {
            "type": "string",
            "format": "date-time",
            "example": "2025-01-31T12:00:00.000Z"
          },
          "onboardedAt": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-31T12:00:00.000Z"
              },
              {
                "type": "null"
              }
            ]
          },
          "onboardedFor": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "referralCode": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "id",
          "email",
          "name",
          "picture",
          "provider",
          "emailVerified",
          "isActive",
          "createdAt",
          "onboardedAt",
          "onboardedFor",
          "referralCode"
        ],
        "additionalProperties": false,
        "description": "A Hyperbolic user account."
      },
      "ApiKey": {
        "type": "object",
        "properties": {
          "publicId": {
            "type": "string"
          },
          "userId": {
            "type": "string"
          },
          "orgId": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "last4": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time",
            "example": "2025-01-31T12:00:00.000Z"
          },
          "revokedAt": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-31T12:00:00.000Z"
              },
              {
                "type": "null"
              }
            ]
          },
          "organizationMember": {
            "$ref": "#/components/schemas/OrganizationMember"
          }
        },
        "required": [
          "publicId",
          "userId",
          "orgId",
          "last4",
          "createdAt",
          "revokedAt"
        ],
        "additionalProperties": false,
        "description": "An issued API key. The secret itself is only ever returned at creation."
      },
      "OrganizationMember": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string"
          },
          "fullName": {
            "type": "string"
          },
          "imageUrl": {
            "type": "string"
          },
          "role": {
            "type": "string",
            "enum": [
              "org:admin",
              "org:member"
            ]
          }
        },
        "required": [
          "email",
          "role"
        ],
        "additionalProperties": false,
        "description": "The organization member an API key belongs to."
      },
      "AccountBalance": {
        "type": "object",
        "properties": {
          "balanceCents": {
            "type": "number"
          },
          "maxOverdraftCents": {
            "type": "number"
          }
        },
        "required": [
          "balanceCents",
          "maxOverdraftCents"
        ],
        "additionalProperties": false,
        "description": "The authenticated account's credit balance."
      },
      "SshKeyWithLiveRentalCount": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "minimum": -2147483648,
            "maximum": 2147483647
          },
          "publicKey": {
            "type": "string"
          },
          "name": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 255
              },
              {
                "type": "null"
              }
            ]
          },
          "createdAt": {
            "type": "string",
            "format": "date-time",
            "example": "2025-01-31T12:00:00.000Z"
          },
          "userId": {
            "type": "string"
          },
          "orgId": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "createdBy": {
            "$ref": "#/components/schemas/SshKeyCreator"
          },
          "liveRentalCount": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          }
        },
        "required": [
          "id",
          "publicKey",
          "name",
          "createdAt",
          "userId",
          "orgId",
          "createdBy",
          "liveRentalCount"
        ],
        "additionalProperties": false,
        "description": "An SSH public key, with the number of live rentals it is attached to."
      },
      "SshKeyCreator": {
        "type": "object",
        "properties": {
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "email": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "email"
        ],
        "additionalProperties": false,
        "description": "The user who added an SSH public key."
      },
      "SshKey": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "minimum": -2147483648,
            "maximum": 2147483647
          },
          "publicKey": {
            "type": "string"
          },
          "name": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 255
              },
              {
                "type": "null"
              }
            ]
          },
          "createdAt": {
            "type": "string",
            "format": "date-time",
            "example": "2025-01-31T12:00:00.000Z"
          },
          "userId": {
            "type": "string"
          },
          "orgId": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "createdBy": {
            "$ref": "#/components/schemas/SshKeyCreator"
          }
        },
        "required": [
          "id",
          "publicKey",
          "name",
          "createdAt",
          "userId",
          "orgId",
          "createdBy"
        ],
        "additionalProperties": false,
        "description": "An SSH public key saved to a user's account or an organization. userId is the member who added it; orgId is set when the key belongs to an organization."
      },
      "DeletedSshKey": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
          }
        },
        "required": [
          "id"
        ],
        "additionalProperties": false,
        "description": "The id of the SSH public key that was deleted."
      },
      "RentalTermination": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string"
          },
          "rentalId": {
            "type": "string"
          }
        },
        "required": [
          "message",
          "rentalId"
        ],
        "additionalProperties": false,
        "description": "Confirmation that a rental is terminating."
      },
      "RentalInstanceReboot": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string"
          },
          "rentalId": {
            "type": "string"
          },
          "instanceRef": {
            "type": "string"
          }
        },
        "required": [
          "message",
          "rentalId",
          "instanceRef"
        ],
        "additionalProperties": false,
        "description": "Confirmation that a node of a rental is rebooting."
      }
    },
    "securitySchemes": {
      "Authorization": {
        "type": "http",
        "scheme": "bearer"
      }
    }
  }
}
