openapi

Get the public API specification

Changed on

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.

get/v2/openapi.json

Request

  • Base URL
    https://api.hyperbolic.ai
  • Auth
    none required

Response

Successful response

openapistring required
pathsobject required
componentsobject

Example response

{
  "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": "**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
    }
  ],
  "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"
          }
        }
      }
    }
  }
}

Changes

    • breaking

      the response's body type changed from no type to object for status

    • info

      the endpoint scheme security Authorization was removed from the API

    • info

      removed the non-success response with the status

    • info

      removed the non-success response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      api tag openapi added