---
title: "search offers"
method: POST
path: "/api/v0/bundles/"
tags: ["Search"]
---

# search offers

`POST /api/v0/bundles/`

Search for available GPU machine offers with advanced filtering and sorting.

Each filter parameter (such as `verified`, `gpu_name`, `num_gpus`, etc.) should be an object specifying the operator and value you want to match.

**Filter operators:**

| Operator | Meaning                | Example                        |
|:---------|:-----------------------|:-------------------------------|
| `eq`     | Equal to               | `{ "eq": true }`               |
| `neq`    | Not equal to           | `{ "neq": false }`             |
| `gt`     | Greater than           | `{ "gt": 0.99 }`               |
| `lt`     | Less than              | `{ "lt": 10000 }`              |
| `gte`    | Greater than or equal  | `{ "gte": 4 }`                 |
| `lte`    | Less than or equal     | `{ "lte": 8 }`                 |
| `in`     | Value is in a list     | `{ "in": ["RTX_3090", "RTX_4090"] }` |
| `notin`  | Value is not in a list | `{ "notin": ["TW", "SE"] }`    |

CLI Usage: `vastai search offers 'reliability > 0.99 num_gpus>=4' --order=dph_total`

## Request body

- object
  - `limit` integer — Max offers to return
  - `type` 'ondemand' | 'bid' | 'reserved' — Instance type for the offer. Affects pricing calculation. - **ondemand**: Fixed pricing based on listed rates. Default. - **bid** (interruptible): Uses minimum bid price. Lower cost but may be interrupted if outbid. - **reserved**: Reserved instance pricing.
  - `verified` object — Machine verification status
    - `eq` boolean
  - `rentable` object — Whether machine is rentable
    - `eq` boolean
  - `rented` object — When set to true, include offers where the calling user already has rented GPUs. This is useful for finding offers on machines you're already renting.
    - `eq` boolean
  - `gpu_name` object — GPU model name. Example: {"eq": "RTX_4090"} or {"in": ["RTX_3090", "RTX_4090"]}
    - `in` string[]
  - `reliability` object — Machine reliability score (0-1). Example: {"gte": 0.99}
  - `num_gpus` object — Number of GPUs. Example: {"gte": 4} or {"in": [1, 2, 4, 8]}
    - `in` integer[]
  - `gpu_ram` object — GPU RAM in MB. Example: {"gte": 24000}
  - `duration` object — Minimum required rental duration in seconds (the offer must be available for at least this long from now).
  - `machine_id` object — Filter by specific host machine ID
  - `dlperf_per_dphtotal` object — DLPerf per dollar per hour
  - `dph_total` object — Total $/hour rental cost. Example: {"lte": 0.5}
  - `flops_per_dphtotal` object — TFLOPs per $/hour
  - `geolocation` object — Machine location (two letter country code). Example: {"in": ["US", "CA"]}
    - `in` string[]
  - `gpu_arch` object — Host machine GPU architecture (e.g. nvidia, amd). Example: {"eq": "nvidia"}
  - `dlperf` object — Deep Learning performance score
  - `cuda_max_good` object — Maximum supported CUDA version
  - `inet_down` object — Download bandwidth (MB/s)
  - `inet_up` object — Upload bandwidth (MB/s)
  - `inet_down_cost` object — Download bandwidth cost ($/GB)
  - `inet_up_cost` object — Upload bandwidth cost ($/GB)
  - `driver_version` object — NVIDIA driver version in the format "XXX.XX.XX"
  - `compute_cap` object — CUDA compute capability x 100. Use 650 for compute capability 6.5 or 700 for 7.0.
  - `cpu_arch` object — Host machine CPU architecture (Default is amd64). Example: {"eq": "amd64"}
  - `has_avx` object — CPU supports AVX instruction set
  - `cpu_cores` object — Number of virtual CPUs
  - `cpu_cores_effective` object — Effective vCPU count for the offer
  - `cpu_ghz` object — CPU clock speed in GHz
  - `cpu_ram` object — CPU RAM in MB
  - `datacenter` object — Show only datacenter offers
  - `external` object — Show external offers in addition to datacenter offers
  - `disk_bw` object — Disk read bandwidth in MB/s
  - `disk_space` object — Disk storage space in GB
  - `bw_nvlink` object — NVLink interconnect bandwidth in GB/s. Use when filtering for multi-GPU systems with high-speed NVLink.
  - `gpu_max_power` object — GPU power limit in watts
  - `gpu_max_temp` object — GPU temperature limit in Celsius
  - `gpu_mem_bw` object — GPU memory bandwidth in GB/s
  - `gpu_total_ram` object — Total GPU RAM across all GPUs in MB
  - `gpu_frac` object — Fraction of the total GPU resources being offered
  - `gpu_display_active` object — Whether the GPU has an attached display
  - `direct_port_count` object — Number of direct ports
  - `host_id` object — Host user ID
  - `id` object — Offer ID
  - `min_bid` object — Minimum bid price ($/hour)
  - `mobo_name` object — Motherboard name
  - `pci_gen` object — PCIe generation
  - `pcie_bw` object — PCIe bandwidth (CPU to GPU)
  - `storage_cost` object — Storage cost in $/GB/month
  - `static_ip` object — Whether the IP address is static/stable
  - `total_flops` object — Total theoretical GPU compute performance (TFLOPs) across all GPUs.
  - `os_version` object — Host machine Ubuntu OS version
  - `ubuntu_version` object — Host machine Ubuntu OS version (alias for os_version)
  - `verification` object — Machine verification status string (verified, deverified, unverified). Example: {"eq": "verified"}
  - `vms_enabled` object — Whether the machine is a VM instance
  - `order` array[] — Sort fields and directions
    - string[]
  - `allocated_storage` number — Storage allocation size in GB for the instance. This sets the disk size when creating the instance and cannot be changed later. Default is 8GB.

## Response `200`

Successful search response

- object
  - `offers` object[]

## Other responses

- `400` — Bad request - invalid query parameters
- `404` — Unauthorized - invalid or missing API key

---

[API](https://skmtc.net/vast/apis/vast-ai-api.md) · [All operations](https://skmtc.net/vast/apis/vast-ai-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/vast/vast-ai-api/revisions/4ed14f79f796/schema)
