Waves APIwaves.com ↗
Access Waves audio plugin and bundle data: pricing, ratings, tech specs, customer reviews, subscription plans, StudioVerse chains, and product search.
What is the Waves API?
The Waves.com API exposes 11 endpoints covering the full Waves audio plugin catalog — plugins, bundles, sales, and StudioVerse preset chains. Use list_plugins to retrieve every plugin with MSRP, sale price, discount percentage, rating, and category in one call. Other endpoints surface tech specs, paginated Yotpo reviews, subscription plan details, and keyword search across the entire product catalog.
curl -X GET 'https://api.parse.bot/scraper/faedceb8-d63e-4a2f-b6bb-cc140b7ad97b/list_plugins?sort=best&category=Vocals' \ -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 waves-com-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: Waves Audio SDK — browse plugins, bundles, specials, and reviews."""
from parse_apis.waves_audio_api import Waves, PluginSort, PluginNotFound, PluginSummary
waves = Waves()
# Search plugins sorted by best sellers, filtered to Vocals category
for plugin in waves.pluginsummaries.search(sort=PluginSort.BEST, category="Vocals", limit=5):
print(plugin.name, plugin.price, plugin.rating, plugin.reviews_total)
# Drill into a plugin's full details
top = waves.pluginsummaries.search(sort=PluginSort.BEST, limit=1).first()
if top:
detail = top.details()
print(detail.name, detail.sku, detail.description[:100])
# Browse current specials (discounted products)
for special in waves.specials.list(limit=5):
print(special.name, special.discount, special.msrp, special.price)
# Get reviews for a plugin via sub-resource navigation
if top:
for review in top.reviews.list(limit=3):
print(review.title, review.score, review.verified_buyer, review.created_at)
# Typed error handling
try:
waves._request("GET", "get_plugin_details", {"slug": "nonexistent-plugin-xyz"})
except PluginNotFound as exc:
print(f"Plugin not found: {exc.slug}")
print("exercised: pluginsummaries.search / details / specials.list / reviews.list / error handling")
Returns all Waves audio plugins with pricing, ratings, and category info. Supports filtering by category (case-insensitive substring match on gsfCategory) and sorting by popularity (review count descending) or newness. Returns the full catalog in a single page.
| Param | Type | Description |
|---|---|---|
| sort | string | Sort order for results. |
| category | string | Filter by category name (case-insensitive substring match against gsfCategory). Use list_plugin_categories to discover available values. |
{
"type": "object",
"fields": {
"total": "integer total number of plugins returned",
"plugins": "array of Plugin objects with documentName, documentUrlPath, msrp, skuPrice, discount, skuNumber, gsfCategory, rating, reviewsTotal, tagline, thumb, badgeText"
},
"sample": {
"data": {
"total": 252,
"plugins": [
{
"msrp": 199,
"thumb": "https://media.wavescdn.com/images/products/plugins/600/waves-tune-real-time.png",
"rating": 4.73,
"tagline": "Instant vocal pitch correction",
"discount": 80,
"skuPrice": 39.99,
"badgeText": "Most Popular",
"skuNumber": "TNELV",
"gsfCategory": "Vocals",
"documentName": "Waves Tune Real-Time",
"reviewsTotal": 1851,
"documentUrlPath": "/plugins/waves-tune-real-time"
}
]
},
"status": "success"
}
}About the Waves API
Plugin and Bundle Catalog
The list_plugins endpoint returns an array of plugin objects, each carrying documentName, documentUrlPath, msrp, skuPrice, discount, skuNumber, gsfCategory, rating, and reviewsTotal. You can pass a sort parameter (best or new) and a category string matched case-insensitively against gsfCategory. Use list_plugin_categories first to enumerate valid category names. The list_bundles endpoint follows the same structure for multi-plugin bundles and accepts the same category filter.
Product Detail and Reviews
get_plugin_details and get_bundle_details accept a slug — the URL path segment for the product — and return enriched fields: tagline, description, features array, image_url, and both price and sale_price. The sku field from these responses feeds directly into get_plugin_reviews, which retrieves paginated Yotpo reviews including per-review score, content, title, createdAt, verifiedBuyer, and a bottomline summary with totalReview, averageScore, and starDistribution. Use the page parameter to walk through result pages.
Tech Specs, Search, and Specials
get_plugin_tech_specs returns system requirements and supported host formats for any plugin slug — useful for compatibility checks. search_products accepts a query string and returns matching products with documentName, documentPageDescription, documentUrlPath, and a tiny thumbnail path. list_specials requires no parameters and returns all currently discounted products with their discount percentages and sale prices.
StudioVerse and Subscriptions
list_studioverse_chains returns community preset chains from StudioVerse, filterable by tag values like vocals, drums, or mastering. Each chain object includes presetName, description, likesCount, and a profile object with creator info. The response includes total_pages for pagination. get_subscription_plans returns the current Waves subscription plan names, prices, and feature lists.
The Waves API is a managed, monitored endpoint for waves.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when waves.com 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 waves.com 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?+
- Build a Waves plugin price tracker that monitors
skuPriceanddiscountchanges across the catalog vialist_plugins. - Generate a plugin compatibility checker using
get_plugin_tech_specsto match system requirements against a user's OS and DAW. - Aggregate customer sentiment by pulling star distributions and average scores from
get_plugin_reviewsacross multiple SKUs. - Create a deals alert tool using
list_specialsto surface all currently discounted Waves products and their MSRP-to-sale-price differences. - Power a search interface with
search_productsreturning thumbnails, descriptions, and URL paths for matching plugins and bundles. - Populate a StudioVerse browser filtered by instrument tag using
list_studioverse_chainswith thetagparameter andlikesCountfor sorting. - Compare Waves subscription plan feature sets programmatically using
get_subscription_plansresponse fields.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Waves have an official public developer API?+
How do I get reviews for a specific plugin, and what does the response include?+
get_plugin_reviews with the sku parameter, which you obtain from the skuNumber field in list_plugins or the sku field in get_plugin_details. The response includes an array of review objects (each with score, content, title, createdAt, and verifiedBuyer), a bottomline object with totalReview, averageScore, and starDistribution, and a pagination object. Use the page parameter to retrieve additional pages.Does the API expose which specific plugins are included inside a bundle?+
get_bundle_details endpoint returns description, features, name, price, sale_price, and image_url for a bundle, but does not return a structured list of included plugin SKUs or slugs. You can fork the API on Parse and revise it to add an endpoint that extracts the included-plugins list from bundle detail pages.Does the API cover Waves hardware products or the WavesLive catalog?+
Can I filter `list_studioverse_chains` by multiple tags at once?+
tag parameter accepts a single string per request, so multi-tag filtering requires separate calls per tag. The response does include total_pages so you can paginate through all chains for a given tag. You can fork the API on Parse and revise it to add multi-tag support if your use case requires it.