Skip to content

GET /api/v1/offers

Operation: listOffers.

List admitted offers (public)

Listed offers on available, admitted machines with a heartbeat in the last 90 seconds; only these can be reserved. Server-side filters are model, gpu_count, max_rate_micro_per_hour, verification_level, continent and template_id; sort defaults to price_asc, and near puts one continent’s machines first. There is no VRAM, region, RAM, disk or bandwidth filter: each item carries vram_bytes, region, ram_bytes and disk_bytes when measured, for client-side filtering. With template_id (D-19(c)) every item carries a server-computed fit object. No cached public responses.

GET https://amplerun-api.spiry.org/api/v1/offers

No default Bearer requirement is declared for this operation. Read its description for wallet signatures, host enrollment or other specialized proofs.

NameLocationPresenceTypeDescription
cursorqueryOptionalstringOpaque pagination cursor from a previous response.
limitqueryOptionalinteger
template_idqueryOptionalUUIDCompute per-offer fit against this template’s vram_fit (D-19(c)). The template’s id (UUID), not its slug; resolve a slug with GET /api/v1/templates/{templateId}. Unknown or unpublished template -> 404, a slug -> 422.
fits_forqueryOptional“all”Additive. all adds fits_template_ids to every item, the ids of every published template that fits that offer under the same rule as template_id, in one read. Any other value -> 422.
sortqueryOptional“price_asc” / “price_desc” / “vram_desc” / “reliability_desc” / “uptime_desc” / “newest” / “verification” / “net_desc” / “tflops_desc” / “ai_speed_desc”Keyset sort order; an unknown value falls back to price_asc.
verification_levelqueryOptional“unverified” / “auto_verified” / “manually_verified”Only machines at exactly this verification level.
include_unverifiedqueryOptionalbooleanAlso list machines that have not passed admission yet.
min_bandwidth_mbpsqueryOptionalintegernetfacts lane. Only machines whose MEASURED download rate is at least this; machines that never measured are excluded (they cannot claim a rate).
max_rate_micro_per_hourqueryOptionalMicroAmountOnly offers whose total machine rate is at or below this amount.
gpu_countqueryOptionalintegerOnly offers whose machine manifest lists at least this many devices.
modelqueryOptionalstringCase-insensitive substring match on the first device model in the manifest.
tierqueryOptional“container” / “inference”Only machines of this tier (D-23).
backendqueryOptional“cuda” / “rocm” / “sycl” / “vulkan” / “metal”Only machines with a device serving this backend.
continentqueryOptionalContinentFilterOnly machines on this continent (americas = NA + SA). Machines with an unknown location are excluded. Any other value -> 422.
nearqueryOptionalContinentFilterOrder this continent’s machines first (lower latency), then by sort. Keeps every other machine. Any other value -> 422.

Page of offer summaries.

application/json

FieldTypePresenceDescription
itemsarray of OfferSummaryRequired
next_cursorstring or nullRequired
{
"type": "object",
"required": [
"items",
"next_cursor"
],
"properties": {
"items": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OfferSummary"
}
},
"next_cursor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
}
}

Error envelope. 401 unauthenticated, 403/404 forbidden, 409 conflict, 422 invalid input, 429 rate limited (code UNAVAILABLE, retryable:true, no Retry-After header), 503 unavailable money/provider state with retryable:true.

application/json

FieldTypePresenceDescription
errorobjectRequired
{
"$ref": "#/components/schemas/ErrorEnvelope"
}

Replace path/query placeholders and provide the required JSON body, headers and credential from the sections above. This is a request outline, not a command that chooses an amount or starts a rental for you.

Terminal window
curl --request GET 'https://amplerun-api.spiry.org/api/v1/offers'

Schema definitions · Download OpenAPI · Authentication · Errors and recovery

Official AmpleRun documentation · Contract v3 · Generated from the API contract · Revision 52fe29de · Open AmpleRun · View Markdown · For agents