orchestraltools.com APIorchestraltools.com ↗
Access the Orchestral Tools catalog via API. Browse instruments, collections, and bundles by genre, series, and price. Get specs, highlights, and pricing data.
curl -X GET 'https://api.parse.bot/scraper/6769fe36-75e0-47c7-b812-38aaabf0646e/get_all_products?page=1&genre=Strings' \ -H 'X-API-Key: $PARSE_API_KEY'
Retrieve products from the catalog with optional filters. Returns paginated results from the Orchestral Tools product database including instruments, collections, and bundles.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. |
| type | string | Filter by product type. Accepted values: instrument, collection, bundle. |
| genre | string | Filter by genre. Values from get_filter_options genres (e.g. Strings, Brass, Woodwinds, Percussion, Piano, Choir, Epic, Full Orchestra). |
| query | string | Search query for product titles and descriptions. Use * for all products. |
| series | string | Filter by product series. Values from get_filter_options series (e.g. Berlin Strings, Metropolis Ark, Artist Series). |
| price_max | number | Maximum price in EUR to filter by. |
{
"type": "object",
"fields": {
"page": "integer, current page number",
"total": "integer, total number of matching products",
"products": "array of product objects with id, store_id, title, price_eur, type, series, genres, url, slug, and other metadata"
},
"sample": {
"data": {
"page": 1,
"total": 85,
"products": [
{
"id": "3040",
"url": "https://www.orchestraltools.com/metropolis-ark-3?t=instruments",
"slug": "metropolis-ark-3",
"type": "instrument",
"title": "Low Strings",
"genres": [
"Strings"
],
"series": "Metropolis Ark",
"studio": "Teldex Scoring Stage",
"store_id": "3491",
"price_eur": 48,
"sub_title": null,
"product_id": "OT-0003040",
"price_cents": 4800
}
]
},
"status": "success"
}
}About the orchestraltools.com API
The Orchestral Tools API provides 7 endpoints for querying the orchestraltools.com product catalog of virtual instruments, sample libraries, collections, and bundles. Using get_all_products, you can filter by genre, series, product type, and maximum EUR price across paginated results. Each product object exposes fields including title, price_eur, type, series, genres, slug, and url, with deeper metadata available via get_product_details.
Catalog Search and Filtering
get_all_products is the primary catalog endpoint. It accepts filters for type (instrument, collection, or bundle), genre, series, query, and price_max in EUR, and returns paginated results with a total count alongside an array of product objects. Valid genre and series values — such as Strings, Brass, Berlin Strings, or Metropolis Ark — are discoverable via get_filter_options, which returns label/value pairs for genres, series, and studios. Use the value field from those results directly as filter parameters.
Product Details and Pricing
get_product_details accepts a slug (e.g. berlin-strings, metropolis-ark-3) and returns the full product record: specs (file size, system requirements, supported formats), highlights (an array of feature strings from the product page), description, series, and price_eur. Critically, it also returns hub_product_id, which is required by both get_price and add_to_cart. The get_price endpoint takes that ID and returns base and price in cents, has_kontakt (boolean), product_type, and is_user_price — useful for detecting sale pricing or user-account-specific tiers.
Bundles, Free Instruments, and Cart
get_bundles retrieves all current bundles with their metadata including price_eur, series, and description. get_free_instruments returns free offerings from SINEfactory and other free-tier products — each object includes title, sub_title, slug, url, image, and a price_eur of 0. The add_to_cart POST endpoint accepts a product name and store_id (the hub_product_id) and returns the resulting cart state, including any errors and messages arrays.
- Build a price-tracking tool that monitors EUR prices for specific instruments using
get_priceand alerting on changes betweenbaseandprice. - Generate a filterable catalog UI for orchestral libraries by series and genre using
get_all_productsandget_filter_options. - Aggregate all free virtual instruments available on orchestraltools.com via
get_free_instrumentsfor a curated free-tools directory. - Extract system requirements and supported formats for every product in a series using
get_product_detailsspecs field. - Compare bundle contents and pricing against individual instrument prices by combining
get_bundleswithget_product_detailsfor each child instrument. - Automate cart population for a custom storefront or purchasing workflow using
add_to_cartwith hub_product_ids fromget_product_details. - Surface Kontakt compatibility data across the catalog by checking
has_kontaktfromget_priceresponses.
| 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 | 250 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 Orchestral Tools have an official developer API?+
What does get_product_details return beyond what get_all_products provides?+
get_product_details returns the full specs object (file size, system requirements, supported formats), a highlights array, description, and the hub_product_id needed for get_price and add_to_cart. For collection-type products, it also returns an all_instruments array listing child instruments. The catalog endpoint get_all_products returns lighter metadata without specs or highlights.How do I get valid values for the genre and series filters in get_all_products?+
get_filter_options first. It returns arrays of objects with label and value fields for genres, series, and studios. Use the value string from those results as the genre or series parameter in get_all_products. The values are backtick-wrapped strings that must match exactly.