HomeDocs

API Reference

REST API

Query the pricing catalog, export filtered data, and manage price alerts. This reference is organized by resource so engineers can find endpoints, parameters, and request examples without reading product copy first.

Base URL
https://rateplane.com
Format
JSON responses, CSV exports
Coverage
8 documented endpoints

Authentication

Endpoints marked Auth required need an authenticated Rateplane session or supported API credential. Public catalog endpoints can be called without authentication, subject to global rate limits.

Need SDK examples?

TypeScript, Python, and direct HTTP usage are covered separately.

Open SDK docs

Endpoint Index

MethodPathResourceAccess
GET/api/instancesCatalogPublic
GET/api/instances/:idCatalogPublic
GET/api/regionsCatalogPublic
GET/api/exportExportAuthenticated
GET/api/alertsPrice AlertsAuthenticated
POST/api/alertsPrice AlertsAuthenticated
DELETE/api/alerts/:idPrice AlertsAuthenticated
GET/api/compareComparePublic

Catalog

Read normalized compute catalog data and region metadata.

Back to index
GET/api/instances

List instances from the normalized catalog with filtering and pagination.

Public
ParameterTypeRequiredDescription
qstringNoFull-text search across instance name, family, and description.
providerAWS | AZURE | GCP | OCINoFilter to a single cloud provider.
regionstringNoRegion name, such as us-east-1, eastus, or us-central1.
priceTypeON_DEMAND | SPOT | RESERVED_1YR | RESERVED_3YRNoPrice type to sort and filter against. Default: ON_DEMAND.
familyCategoryGENERAL | COMPUTE | MEMORY | STORAGE | GPU | HPCNoInstance family category.
minVcpusnumberNoMinimum vCPU count.
maxVcpusnumberNoMaximum vCPU count.
minMemoryGbnumberNoMinimum memory in GiB.
maxMemoryGbnumberNoMaximum memory in GiB.
maxHourlynumberNoMaximum on-demand hourly price in USD.
pagenumberNoPage number, 1-based. Default: 1.
pageSizenumberNoResults per page. Default: 50, max: 200.
Example request
curl "https://rateplane.com/api/instances?provider=AWS&minVcpus=8&maxHourly=0.5&pageSize=10"
GET/api/instances/:id

Get a single instance offer by catalog ID.

Public
Example request
curl "https://rateplane.com/api/instances/aws-m7i.large-us-east-1"
GET/api/regions

List regions available in the catalog with display names.

Public
Example request
curl "https://rateplane.com/api/regions"

Export

Download filtered catalog data for spreadsheets, analysis, or internal tooling.

Back to index
GET/api/export

Export the current filtered catalog view as CSV. Accepts the same query parameters as /api/instances.

Auth required
ParameterTypeRequiredDescription
qstringNoFull-text search.
providerstringNoCloud provider.
regionstringNoRegion name.
priceTypestringNoPrice type.
Example request
curl -H "Cookie: next-auth.session-token=..." \
  "https://rateplane.com/api/export?provider=GCP&minVcpus=4" \
  -o instances.csv

Price Alerts

Create, list, and remove price threshold notifications.

Back to index
GET/api/alerts

List all price alerts for the authenticated user.

Auth required
Example request
curl -H "Cookie: next-auth.session-token=..." \
  "https://rateplane.com/api/alerts"
POST/api/alerts

Create a new price alert. A confirmation email is sent to the alert email address.

Auth required
ParameterTypeRequiredDescription
providerAWS | AZURE | GCP | OCIYesCloud provider.
instanceNamestringYesInstance type name, such as m7i.large.
instanceLabelstringYesHuman-readable instance label.
regionNamestringYesRegion identifier.
regionLabelstringYesHuman-readable region name.
conditionBELOW | ABOVEYesTrigger condition.
targetPricenumberYesTarget price in USD/hr.
priceTypestringNoPrice type. Default: ON_DEMAND.
emailstringYesEmail address for the alert notification.
Example request
curl -X POST -H "Content-Type: application/json" \
  -H "Cookie: next-auth.session-token=..." \
  -d '{"provider":"AWS","instanceName":"m7i.large","instanceLabel":"m7i.large","regionName":"us-east-1","regionLabel":"US East (N. Virginia)","condition":"BELOW","targetPrice":0.09,"email":"you@example.com"}' \
  "https://rateplane.com/api/alerts"
DELETE/api/alerts/:id

Delete a price alert.

Auth required
Example request
curl -X DELETE -H "Cookie: next-auth.session-token=..." \
  "https://rateplane.com/api/alerts/clx..."

Compare

Fetch selected catalog offers for side-by-side comparisons.

Back to index
GET/api/compare

Fetch multiple instances by ID for side-by-side comparison.

Public
ParameterTypeRequiredDescription
idstring[]YesOne or more catalog offer IDs. Repeat the param: ?id=a&id=b.
Example request
curl "https://rateplane.com/api/compare?id=aws-m7i.large-us-east-1&id=azure-Standard_D4s_v5-eastus"

Rate Limits

Limits vary by plan and endpoint family. Use the values below for integration planning and handle 429 responses with retry backoff.

PlanCatalog readsExportsAlerts
FREE60 req/min10/day5 active
PRO300 req/minunlimited100 active
ENTERPRISE1,000 req/minunlimited1,000 active