Public GPU Availability API

Read the same synchronized public configuration data used by the GPU directory and family pages. No API key, account, or deployment request is needed.

By Hostnot Network Solutions FZE LLC · Published · Updated

GET https://hostnotgpu.ae/v1/public/gpu-availability

Response fields

data
Array of currently sellable public configurations. Empty inventory returns HTTP 200 with an empty array.
updatedAt
Latest successful catalog synchronization timestamp in ISO 8601 UTC, or null if no successful synchronization time is recorded. This is not the request time or a price guarantee.
gpuType
Customer-facing model name, including the variant when supplied by the catalog.
familySlug
Optional stable family path segment. Open /gpus/{familySlug} for the family guide; do not construct variant or region landing pages.
gpuCount
Number of GPUs inside the listed machine, not a machine inventory count.
vramGb
Optional synchronized VRAM in GB per GPU. Omitted when unknown; not inferred from the model name and not total system RAM.
region
Customer-facing region label.
available
Always true for returned rows. Unavailable configurations are omitted.
hourlyPrice
Customer-facing decimal string for one whole machine-hour with the listed GPU count. Preserve decimal precision; do not treat it as a per-GPU rate.
currency
Always USD. Synchronized GPU customer rates are denominated in USD; no currency conversion is currently applied.
capacityClass
COMMUNITY, SECURE, or UNKNOWN. Unknown means no public classification is supplied.
cpu / ramGb / storageGb
Optional vCPU count, system RAM in GB, and storage in GB for the selected configuration. Omitted values are not zero.

Pricing, selection, and unavailable capacity

The endpoint reads the synchronized database and a short-lived public cache. Polling does not refresh infrastructure inventory or provision a GPU. It uses the Marketplace customer pricing engine, without account-specific discounts.

When listings share a public GPU model, GPU count, VRAM, region, and capacity class, only the lowest USD customer hourly price is returned, together with that selected listing's machine specifications. The feed is a comparison projection, not an exhaustive list of launch configurations or a count of machines.

Unavailable configurations are omitted. Supported families can remain visible in the directory while unavailable, without a price or in-stock offer. Hidden or unsupported models do not receive family pages. Confirm current capacity and the final configuration-specific rate in the Marketplace before launch.

Cache and rate limits

The synchronized projection is cached for up to 60 seconds. Successful HTTP responses use public, max-age=15, s-maxage=30, stale-while-revalidate=60; intermediary caching can add further delay. Refresh periodically rather than on every UI interaction, and show the synchronization timestamp alongside the data.

Origin requests are limited to 120 per IP per minute. A 429 response includes Retry-After; wait before retrying. Error responses are not cached. Only GET is supported; POST, PUT, PATCH, and DELETE return 405. No cross-origin browser access permission is added; use a same-origin request or a server-side integration.

Request examples

curl

curl --fail "https://hostnotgpu.ae/v1/public/gpu-availability"

PowerShell

Invoke-RestMethod -Method Get -Uri "https://hostnotgpu.ae/v1/public/gpu-availability"

JavaScript

const response = await fetch("https://hostnotgpu.ae/v1/public/gpu-availability");
if (!response.ok) throw new Error(`Catalog request failed: ${response.status}`);
const { data, updatedAt } = await response.json();
// hourlyPrice is a decimal string per machine-hour.
// Optional fields may be absent; updatedAt may be null.