Aven Cloud

API documentation

Aven is API-first: everything you can do in the dashboard, you can script. Drive the GPU catalog, your wallet, instances, invoices and receipts over a plain REST API.

Base URL https://api.aven.cloud·All requests over HTTPS.

Authentication

Authenticate every request (except the public catalog) with your API key as a Bearer token. Create and revoke keys in dashboard → settings, or via the account endpoints. Keys are shown once at creation — store them securely and never commit them to source control.

curl https://api.aven.cloud/v1/wallet \
  -H "Authorization: Bearer $AVEN_API_KEY"

Conventions

  • Money is always an exact decimal string in USD (e.g. "12.50") — never a floating-point number. Parse it with a decimal type.
  • Timestamps are ISO 8601 in UTC (e.g. 2026-07-10T02:23:15Z).
  • Idempotency — send an Idempotency-Key header on POST /v1/wallet/topups so a retried request is never charged twice.
  • Pagination — list endpoints that page return next_cursor and has_more; pass the cursor back as ?cursor=.

Errors

Errors use the standard application/problem+json format (RFC 7807). The HTTP status is authoritative; detail is a human-readable message.

{
  "type": "https://aven.cloud/problems/insufficient-funds",
  "title": "Insufficient funds",
  "status": 402,
  "detail": "Wallet balance is below the amount required to start this instance."
}

Common statuses: 401 invalid/expired key · 402 insufficient wallet balance · 404 not found · 409 conflict (e.g. capacity) · 422 validation · 429 rate limited.

Quickstart

# 1. List the live GPU catalog (public, no key needed)
curl https://api.aven.cloud/v1/catalog

# 2. Check your wallet balance
curl https://api.aven.cloud/v1/wallet -H "Authorization: Bearer $AVEN_API_KEY"

# 3. Order a single H100
curl -X POST https://api.aven.cloud/v1/instances \
  -H "Authorization: Bearer $AVEN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"gpu_type":"H100_SXM5","gpu_count":1,"interruptible":false}'

# 4. Release it when done — you pay only for the seconds used
curl -X DELETE https://api.aven.cloud/v1/instances/<id> \
  -H "Authorization: Bearer $AVEN_API_KEY"

Catalog

Live GPU availability and pricing. Public — no authentication required. Filter with query parameters such as gpu_type, region, interruptible, max_usd_per_hour, min_gpu_count, min_gpu_memory_gb.

GET/v1/catalogLive GPU types, availability and per-GPU pricing.public

Instances

Order, inspect, pause and release GPU instances. Metering is per second against your prepaid wallet. Stop/start is available on instance types that support it (see supports_stop).

POST/v1/instancesOrder an instance (gpu_type, gpu_count, region?, interruptible, disk_gb?).
GET/v1/instancesList your instances.
GET/v1/instances/{id}Get one instance, incl. SSH host/port and live metrics.
POST/v1/instances/{id}/stopPause a stoppable instance (keeps its disk).
POST/v1/instances/{id}/startResume a previously stopped instance.
DELETE/v1/instances/{id}Release the instance and stop billing.

Wallet & top-ups

A prepaid balance in USD. Top up by card, save a card for automatic reloads, and read your transaction and usage history.

GET/v1/walletBalance, reserved and available amounts, saved-card and auto-reload status.
GET/v1/wallet/transactionsPaginated double-entry ledger.
GET/v1/wallet/activityRolled-up activity feed (top-ups, usage, refunds).
POST/v1/wallet/topupsStart a card top-up — returns a hosted checkout URL. Send an Idempotency-Key.
POST/v1/wallet/cardSave a card for automatic reloads — returns a hosted setup URL.
DELETE/v1/wallet/cardRemove the saved card.
PUT/v1/wallet/auto-topupEnable/disable auto-reload with a threshold and reload amount.

Invoices & receipts

A downloadable PDF receipt for every top-up, and an itemized monthly usage invoice for each month you consume GPU time.

GET/v1/receiptsList top-up receipts.
GET/v1/wallet/payments/{id}/receipt.pdfDownload a top-up receipt as PDF.
GET/v1/invoicesList your monthly invoices with line items.
GET/v1/invoices/{id}Get one invoice.
GET/v1/invoices/{id}/pdfDownload an invoice as PDF.

Account & keys

Manage your profile, API keys and SSH keys. Add SSH keys so ordered instances trust you on first boot.

GET/v1/accountYour profile (contact, company details, verification status).
PATCH/v1/accountUpdate profile, phone, country and company details.
GET/v1/account/keysList API keys.
POST/v1/account/keysCreate a key (shown once). Optional name and scopes.
DELETE/v1/account/keys/{id}Revoke a key.
GET/v1/account/ssh-keysList SSH keys.
POST/v1/account/ssh-keysAdd an SSH public key.
DELETE/v1/account/ssh-keys/{id}Remove an SSH key.

Need a hand?

Ask the in-app assistant, or open a ticket from the dashboard. We're happy to help you get integrated.