virtual-machine-rentals

Create a virtual machine rental

Changed on

Deprecated. Use POST /v2/on-demand/rentals with rentalType: "virtual-machine", which takes the same fields.

post/v2/on-demand/virtual-machine-rentals

Request

  • Base URL
    https://api.hyperbolic.ai
  • Auth
    HTTP bearer

Request body

gpuCountnumber required
networkType'infiniband' | 'ethernet'
region'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' | 'eu-north-9' | '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' | 'jp-east-2' | 'us-east-3'
gpuType'h100' | 'h200' | 'b200' | 'rtx-6000-pro'
labelstring
termType'on-demand' | 'reserved'
termPeriodDaysinteger

Any whole number of days from 1 to 30 where custom reservation lengths are enabled for your account; otherwise one of the standard terms in options from GET /v2/on-demand/reserve-options.

discountPercentagenumber
convertToOnDemandOnExpiryboolean
monitoringEnabledboolean
monitoringOptOutboolean

Opt the rental out of Hyperbolic telemetry: the GPU health and system metrics (CPU, memory, root filesystem, network interfaces) Hyperbolic collects from inside the virtual machine to detect hardware faults. No logs, process lists or file contents are collected. Omitted or false leaves collection on. Only standalone virtual machine rentals in supported regions can opt out; elsewhere true gets a 400.

customPortsinteger[]
sshPublicKeyIdinteger
sshPublicKeyIdsinteger[]

Response

Successful response

rentalIdstring required
namestring nullable required
labelstring nullable required
rentalType'virtual-machine' | 'bare-metal' required
region'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' | 'eu-north-9' | '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' | 'jp-east-2' | 'us-east-3' | 'uk-central-3' | 'uk-southeast-3' | 'eu-southwest-3' | 'eu-southwest-3-1' | 'eu-west-3' | 'eu-west-4' | 'private-cloud' required
gpuType'h100' | 'h200' | 'b200' | 'rtx-6000-pro' required
gpuCountinteger required
gpuFormFactor'sxm5' | 'sxm6' | 'pcie' required
connectionType'infiniband' | 'ethernet' required
ethernetVariant'normal' | 'rocev2' nullable required
supportsPortForwardingboolean required
exposedPortsnumber[] required
supportsCustomPortsboolean required
supportsMultipleSshKeysboolean required
supportsSshKeyUpdatesboolean required
supportsAttachedStorageboolean required
monitoringEnabledboolean required
convertToOnDemandOnExpiryboolean nullable required
terminationReasonstring nullable required
createdAtstring date-time required
updatedAtstring date-time nullable required
startedAtstring date-time nullable required
terminatedAtstring date-time nullable required
userIdstring required
orgIdstring nullable required

Example response

{
  "currentTerm": {
    "effectiveAt": "2025-01-31T12:00:00.000Z"
  },
  "createdAt": "2025-01-31T12:00:00.000Z",
  "updatedAt": "2025-01-31T12:00:00.000Z",
  "startedAt": "2025-01-31T12:00:00.000Z",
  "terminatedAt": "2025-01-31T12:00:00.000Z"
}

Changes

    • breaking

      the request property's max was decreased to 30.00

    • warning

      added the new jp-east-2 enum value to the response property for the response status

    • info

      added the new jp-east-2 enum value to the request property