KVR Audio APIkvraudio.com ↗
Search and browse KVR Audio's plugin database via API. Get plugin names, developers, formats, OS compatibility, pricing, and full descriptions across 3 endpoints.
What is the KVR Audio API?
The KVR Audio API provides access to thousands of VST plugins, virtual instruments, and audio effects across 3 endpoints. Use search_plugins to run keyword queries against the full KVR product database and get back structured records including developer name, price, supported formats, and OS compatibility. Use get_product_details to retrieve full descriptions and specs for any individual product by its URL slug.
curl -X GET 'https://api.parse.bot/scraper/86bc4092-8ea5-48e6-8c49-f02950f1b5de/search_plugins?query=reverb&sort_by=best-match' \ -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 kvraudio-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.
from parse_apis.kvr_audio_plugin_database_api import KVRAudio, Sort, PluginNotFound
kvr = KVRAudio()
# Search for reverb plugins sorted by popularity
for plugin in kvr.pluginsummaries.search(query="reverb", sort=Sort.MOST_POPULAR):
print(plugin.name, plugin.developer, plugin.price)
# Navigate from summary to full detail
detail = plugin.details()
print(detail.description, detail.image)
# Browse newest plugins by category
for newest in kvr.pluginsummaries.list_by_category(category="the-newest-plugins"):
print(newest.name, newest.kvr_id, newest.formats)
# Fetch a specific plugin directly by slug
serum = kvr.plugins.get(slug="serum-by-xfer-records")
print(serum.name, serum.developer, serum.category, serum.formats)
Full-text search over the KVR Audio product database. Matches plugin names, developers, and descriptions. Returns up to 20 products per page with developer, category, price, formats, and OS compatibility. Only page 1 is returned per call.
| Param | Type | Description |
|---|---|---|
| queryrequired | string | Search keyword (e.g. 'reverb', 'synthesizer', 'compressor') |
| sort_by | string | Sort order for results. |
{
"type": "object",
"fields": {
"query": "search keyword used",
"sort_by": "sort order applied",
"products": "array of plugin summaries with name, url_slug, kvr_id, category, developer, price, formats, and os",
"page_info": "pagination indicator such as 'Page 1 of 52'",
"total_results": "number of products returned on this page"
},
"sample": {
"data": {
"query": "reverb",
"sort_by": "best-match",
"products": [
{
"os": [
"macOS",
"Windows"
],
"name": "Vienna MIR PRO 3D",
"price": null,
"kvr_id": "25686",
"formats": [
"VST",
"VST3",
"Audio Unit",
"AAX"
],
"category": "Reverb",
"url_slug": "vienna-mir-pro-3d-by-vienna-symphonic-library-vsl",
"developer": "Vienna Symphonic Library (VSL)"
}
],
"page_info": "Page 1 of 52",
"total_results": 20
},
"status": "success"
}
}About the KVR Audio API
Endpoints and What They Return
The search_plugins endpoint accepts a required query string (e.g. 'reverb', 'synthesizer') and an optional sort_by parameter. It returns up to 20 products per call, each containing name, url_slug, kvr_id, category, developer, price, formats, and os. The page_info field (e.g. 'Page 1 of 52') and total_results count indicate how many results exist across the full database for that query. Only the first page is returned per call.
The list_plugins endpoint accepts a category slug matching KVR URL path segments — examples include 'the-newest-plugins', 'most-popular-audio-software', or effect-specific slugs like 'reverb'. It returns the same product summary shape as search results along with the extracted page title and pagination info. This is useful for browsing curated or category-filtered lists without a free-text query.
Product Detail Records
The get_product_details endpoint takes a slug obtained from the url_slug field in either search or list results and returns a richer record for a single product: full description text, developer, developer_slug, category, price, formats array, os array, and a direct image URL. This is the correct endpoint to use when you need the long-form product description or want to display a complete product profile.
The KVR Audio API is a managed, monitored endpoint for kvraudio.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when kvraudio.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 kvraudio.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 plugin discovery tool that lets producers filter by format (VST3, AU, AAX) and operating system using the
formatsandosfields. - Aggregate pricing data across plugin categories by combining
list_pluginsresults withget_product_detailsprice fields. - Create a new-release tracker by querying
list_pluginswith the'the-newest-plugins'category slug on a schedule. - Index plugin descriptions from
get_product_detailsinto a search engine or embeddings database for semantic music software discovery. - Populate a curated gear database with developer names, categories, and format support pulled from
search_pluginsresults. - Cross-reference a user's DAW and OS with the
osandformatsfields to recommend compatible plugins from a category.
| 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 KVR Audio have an official developer API?+
What does the `get_product_details` endpoint return that `search_plugins` does not?+
name, developer, category, price, formats, and os. The get_product_details endpoint additionally returns the full description text, a developer_slug for linking to the developer's KVR page, and a direct image URL for the product. Use it when you need more than the summary fields.Does the API return more than the first page of results?+
page_info field (e.g. 'Page 1 of 757') shows how many pages exist for a given query or category, but subsequent pages are not currently retrievable. The API covers search results, category listings, and individual product details. You can fork it on Parse and revise to add paginated result fetching.Are user reviews or ratings included in the product data?+
What category slugs work with `list_plugins`?+
category parameter accepts slugs that correspond to URL path segments on the KVR Audio site. Known working examples include 'the-newest-plugins', 'most-popular-audio-software', and effect type slugs like 'reverb' or 'delay'. If you leave the parameter empty, the endpoint falls back to a default listing. Slugs that do not match a valid KVR path may return empty results.