Together APItogether.ai ↗
Retrieve live GPU cloud pricing from Together AI. Get per-hour rates, availability, and tenor details for all GPU hardware via a single endpoint.
What is the Together API?
The Together AI Pricing API exposes 1 endpoint — get_gpu_pricing — that returns the full catalog of GPU hardware offerings from Together AI's pricing page, covering both Dedicated Inference and GPU Clusters sections. Each response object includes 7 fields: gpu_model, price_per_hour, gpu_count, tenor, region, availability, and is_from_price, giving a complete snapshot of on-demand and reserved GPU capacity rates in USD.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/a570965b-300f-45ce-bcfd-72156b21229e/get_gpu_pricing' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace together-ai-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: Together AI GPU Pricing — list all offerings, filter by tenor."""
from parse_apis.together_ai_api import TogetherAI, ParseError
client = TogetherAI()
# Fetch all GPU pricing offerings (single-page, but capped for safety).
try:
for offering in client.gpu_offerings.list(limit=10):
label = f"{offering.gpu_model} x{offering.gpu_count} ({offering.tenor})"
if offering.price_per_hour is not None:
print(f"{label}: ${offering.price_per_hour:.2f}/hr")
else:
print(f"{label}: contact for pricing")
except ParseError as e:
# Upstream page structure changed; surface the error code for diagnostics.
print(f"Parse failure (code={e.code}): {e}")
# Grab the first on-demand offering to inspect its fields.
first = client.gpu_offerings.list(limit=1).first()
if first is not None:
print(f"\nFirst offering — GPU: {first.gpu_model}, "
f"available: {first.availability}, from_price: {first.is_from_price}")
print("\nexercised: gpu_offerings.list")
Returns every GPU offering from Together AI's pricing page, covering both Dedicated Inference and GPU Clusters sections. Each row represents one GPU model at one pricing tenor. Prices are per GPU per hour in USD. Makes a single request to the pricing page and parses all GPU hardware tables.
No input parameters required.
{
"type": "object",
"fields": {
"offerings": "array of GPU pricing objects, each with gpu_model, price_per_hour, gpu_count, tenor, region, availability, and is_from_price"
},
"sample": {
"data": {
"offerings": [
{
"tenor": "on-demand",
"region": null,
"gpu_count": 1,
"gpu_model": "NVIDIA HGX H100",
"availability": "available",
"is_from_price": false,
"price_per_hour": 3.99
},
{
"tenor": "reserved_7_30_days",
"region": null,
"gpu_count": 1,
"gpu_model": "NVIDIA HGX H100",
"availability": "available",
"is_from_price": false,
"price_per_hour": 3.69
},
{
"tenor": "reserved_181_plus_days",
"region": null,
"gpu_count": 1,
"gpu_model": "NVIDIA HGX B200",
"availability": "contact_us",
"is_from_price": false,
"price_per_hour": null
},
{
"tenor": "on-demand",
"region": null,
"gpu_count": 1,
"gpu_model": "NVIDIA HGX H100",
"availability": "available",
"is_from_price": true,
"price_per_hour": 5.49
}
]
},
"status": "success"
}
}About the Together API
What the API Returns
The get_gpu_pricing endpoint takes no input parameters and returns an offerings array containing every GPU pricing row published on Together AI's pricing page. Each object in the array describes a single GPU model at a specific pricing tenor — covering both Dedicated Inference configurations and GPU Cluster configurations. Prices are denominated in USD per GPU per hour.
Response Fields
Each offering object contains:
- gpu_model — the hardware name (e.g., H100, A100, L40S)
- price_per_hour — the numeric rate in USD per GPU per hour
- gpu_count — number of GPUs in the configuration
- tenor — the pricing duration type, such as on-demand or reserved term lengths
- region — the geographic deployment region for the hardware
- availability — current availability status of that configuration
- is_from_price — boolean indicating whether the listed price is a starting rate rather than a fixed rate
Coverage Scope
The endpoint covers all GPU hardware tiers listed on Together AI's public pricing page at the time of the request. Both sections of the page — Dedicated Inference and GPU Clusters — are included in a single response. Because is_from_price is returned per row, callers can distinguish exact prices from floor estimates without additional lookups.
The Together API is a managed, monitored endpoint for together.ai — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when together.ai changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official together.ai API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Compare on-demand vs. reserved GPU pricing across all Together AI hardware tiers
- Monitor availability changes for specific GPU models like H100 or A100 over time
- Build a GPU cost calculator that maps gpu_model and gpu_count to hourly spend
- Track regional pricing differences across Together AI's deployment locations
- Aggregate Together AI GPU rates alongside other cloud providers for multi-cloud cost analysis
- Alert teams when a previously unavailable GPU model shows as available
- Identify which GPU configurations carry a 'from price' qualifier vs. a fixed rate
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Together AI have an official developer API?+
What does the `is_from_price` field indicate?+
is_from_price is true, the price_per_hour value represents a starting rate and the actual price may be higher depending on configuration or availability. When false, the listed price is the fixed rate for that GPU model and tenor combination.Does the API return historical pricing or only the current snapshot?+
get_gpu_pricing endpoint returns the current published prices at the time of the request. No historical pricing data is stored or returned. If you need a price history, you would need to call the endpoint periodically and store results externally.Does the API cover Together AI's serverless inference or model-level pricing?+
Can I filter results by region or GPU model within the endpoint?+
get_gpu_pricing endpoint accepts no input parameters and always returns the full offerings array. Filtering by region, gpu_model, or tenor would need to be applied client-side after receiving the response. You can fork this API on Parse and revise it to add server-side filtering parameters.