Instance Types

Browse GPU instance types, hourly pricing, and daily price history across cloud providers. These endpoints power comparison views and GPU price charts and are available without authentication.


List instance types

GET /instances/types

Returns GPU instance types aggregated from cloud providers (via Shadeform). Results are filtered to common GPU families (for example A100, H100, L40S, RTX series).

No API key is required. Responses are cached for one hour (Cache-Control: public, max-age=3600).

Query parameters

ParameterTypeDescription
gpu_typestringFilter by GPU model name (for example H100, A100)
num_gpusstringFilter by GPU count (for example 1, 8)
cloudstringFilter by provider key (for example aws, runpod, lambdalabs)
regionstringFilter by region code
availablestringWhen true, only types with at least one available region
shade_instance_typestringFilter by instance type key
rental_typestringon_demand or spot. Keeps only that rental type's availability entries; with available=true, drops types that have none in stock
sortstringSort order (passed through to the provider catalog)

Response

The body is a JSON array of instance type objects under data.

json
1[2  {3    "id": "runpod.NVIDIA H100 80GB HBM3",4    "cloud": "runpod",5    "cloud_logo_url": "https://cloud.inference.sh/logos/runpod.com.png",6    "region": "us-east-1",7    "shade_instance_type": "NVIDIA H100 80GB HBM3",8    "cloud_instance_type": "gpu_1x_h100_sxm5",9    "deployment_type": "vm",10    "hourly_price": 299,11    "configuration": {12      "gpu_type": "H100",13      "gpu_manufacturer": "nvidia",14      "interconnect": "sxm5",15      "memory_in_gb": 180,16      "num_gpus": 1,17      "nvlink": false,18      "os_options": ["ubuntu22.04"],19      "storage_in_gb": 500,20      "vcpus": 26,21      "vram_per_gpu_in_gb": 8022    },23    "availability": [24      { "available": true, "region": "us-east-1", "rental_type": "on_demand" },25      { "available": true, "region": "us-east-1", "rental_type": "spot", "hourly_price": 120 }26    ],27    "boot_time": {28      "average_seconds": 420,29      "updated_at": "2026-05-20T12:00:00Z",30      "sample_size": 12031    }32  }33]

Fields

FieldDescription
idStable id ({cloud}.{shade_instance_type})
cloudProvider key (aws, runpod, lambdalabs, …)
cloud_logo_urlProvider logo URL (https://cloud.inference.sh/logos/{domain}.png)
regionDefault or selected region for this row
shade_instance_typeProvider catalog name
cloud_instance_typeProvider-specific SKU or machine type
deployment_typevm, container, or baremetal
hourly_priceOn-demand price in cents per hour (divide by 100 for USD)
configurationGPU and machine specs (see below)
availabilityPer-region availability flags. Each entry has a rental_type (on_demand or spot); types that offer spot list a region once per rental type. Spot entries carry their own hourly_price in cents. Spot instances are cheaper but the provider can reclaim them at any time
boot_timeOptional average boot time stats

configuration

FieldDescription
gpu_typeGPU model name
gpu_manufacturerChip vendor (for example nvidia, amd)
interconnectInterconnect type when applicable
num_gpusNumber of GPUs
nvlinkWhether NVLink is available on this type
vram_per_gpu_in_gbVRAM per GPU
memory_in_gbSystem RAM
vcpusvCPU count
storage_in_gbAttached storage
os_optionsSupported OS images

Example

bash
1curl "https://api.inference.sh/instances/types?gpu_type=H100&available=true"
bash
1curl "https://api.inference.sh/instances/types?cloud=runpod&num_gpus=1"

Instance type price history

GET /instances/types/price-history

Returns one data point per calendar day (UTC) for a GPU configuration, derived from daily catalog snapshots. Use this to chart how listed and in-stock prices change over time for a given gpu_type and num_gpus.

No API key is required. Responses are cached for one hour (Cache-Control: public, max-age=3600).

Query parameters

ParameterTypeDescription
gpu_typestringRequired. GPU model name (for example H100, A100)
num_gpusintegerGPU count; defaults to 1
daysintegerNumber of days to include, counting back from today (UTC); defaults to 90, maximum 365

Response

The body is a JSON array of daily points under data, oldest day first.

json
1[2  {3    "day": "2026-10-01",4    "on_demand": 230,5    "on_demand_in_stock": 250,6    "spot": 120,7    "spot_in_stock": 120,8    "providers": 2,9    "regions": 210  },11  {12    "day": "2026-10-02",13    "on_demand": 240,14    "providers": 1,15    "regions": 016  }17]

Fields

FieldDescription
dayCalendar date in YYYY-MM-DD (UTC)
on_demandCheapest listed on-demand hourly price that day, in cents (in stock or not)
spotCheapest listed spot hourly price that day, in cents; omitted when no spot listing existed
on_demand_in_stockCheapest on-demand price among listings that had stock that day; omitted when none had stock
spot_in_stockCheapest spot price among listings that had stock that day; omitted when none had stock
providersNumber of distinct cloud providers with a listing that day (on-demand and spot counts are merged; the larger value wins when both exist)
regionsTotal count of provider regions with on-demand stock that day (summed across providers)

Listed catalog prices are stable day to day; in-stock prices and regions move as availability changes. All prices are in cents per hour (divide by 100 for USD).

Errors

StatusWhen
400gpu_type is missing

Example

bash
1curl "https://api.inference.sh/instances/types/price-history?gpu_type=H100&num_gpus=1&days=30"

Authenticated catalog (workspace)

When provisioning remote engines in the workspace, the authenticated endpoint GET /engines/types (requires engines:read scope) returns a deduplicated catalog: one cheapest option per GPU type, GPU count and rental type for engine setup flows. Each entry has a rental_type, and its region and hourly_price are for that rental type. Spot options are listed only while in stock. CPU-only types get one entry per shape (vCPUs and RAM). Each entry also has options: every in-stock provider for it, cheapest first, with its configuration and in-stock regions (each with its own hourly_price in cents; spot prices can differ by region). Launch with an option's cloud and shade_instance_type, one of its regions, and the entry's rental_type. Pass the entry's rental_type when creating the engine; the price is set by the server from the live catalog. A reclaimed spot engine stops with reason preempted and unused time is refunded. Details: Engines API — List engine instance types.

Use GET /instances/types for the full public catalog with filters; use GET /engines/types inside authenticated integrations tied to engine provisioning.


→ Workers concept — cloud vs private workers for running apps
→ Private engine configuration — GPU workers on your own hardware
→ REST overview — base URL and authentication

we use cookies

we use cookies to ensure you get the best experience on our website. for more information on how we use cookies, please see our cookie policy.

by clicking "accept", you agree to our use of cookies.
learn more.