# Spotify Search — All Types 🔍 (`apiharvest/spotify-search-all-types`) Actor

🔍 Search Spotify by keyword across all 9 content types — tracks, albums, artists, playlists, genres, audiobooks, episodes, podcasts & users. Returns URIs, names, images, artist credits, release dates, descriptions & type-specific metadata per result. One actor, every search type ✨ Spotify Search 🔍

- **URL**: https://apify.com/apiharvest/spotify-search-all-types.md
- **Developed by:** [APIHarvest](https://apify.com/apiharvest) (community)
- **Categories:** Automation, Developer tools, Social media
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.50 / 1,000 result scrapeds

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Spotify Search — Search All 9 Spotify Content Types | Best Spotify Scraper in One Actor

### What is Spotify Search?

**Spotify Search** is a unified Apify actor that lets you search all 9 Spotify content types from a single interface. This Spotify search actor covers tracks, albums, artists, playlists, genres, users, audiobooks, episodes, and podcasts — no API key, no login credentials, no developer account required.

Instead of running 9 separate Spotify scrapers, use this Spotify search actor to quickly search Spotify for any content type. This is a **search-only** Spotify actor — for detailed data from URIs, use the dedicated type-specific scrapers or the [Spotify Scraper](https://apify.com/apiharvest/spotify-scraper-get-full-details) combo actor.

---

### All 9 Spotify Search Types

This Spotify search actor supports every content type available on Spotify:

| ## | Search Type | Description | Top Results |
|---|------------|-------------|-------------|
| 1 | **Tracks / Songs** | Search Spotify for tracks by keyword | Yes |
| 2 | **Albums** | Search Spotify for albums | Yes |
| 3 | **Artists** | Search Spotify for artists | Yes |
| 4 | **Playlists** | Search Spotify for playlists | Yes |
| 5 | **Genres / Moods** | Search Spotify for genre categories | Yes |
| 6 | **Users / Profiles** | Search Spotify for user profiles | Yes |
| 7 | **Audiobooks** | Search Spotify for audiobooks (US/GB/AU/CA) | Yes |
| 8 | **Full Episodes** | Search Spotify for podcast episodes | No |
| 9 | **Podcasts / Shows** | Search Spotify for podcast shows | No |

**Note:** Episodes and Podcasts search types do not support `numberOfTopResults` — this is a Spotify API limitation.

---

### How Does This Spotify Search Actor Work?

1. **Select a Search Type** — Choose which Spotify content type to search using the dropdown
2. **Enter Keywords** — Provide one or more search keywords
3. **Configure Filters** — Set offset, limit, and top results count
4. **Run** — The Spotify search actor queries Spotify's search API for the selected type
5. **Get Results** — Structured JSON results are pushed to the Apify dataset

The Spotify search actor runs one search type per execution. To search multiple types, run the Spotify search actor multiple times with different type selections.

---

### Input Configuration

| Field | Description | Default |
|-------|-------------|---------|
| **Search Type** | Dropdown with 9 Spotify content types. Select one per run. | Tracks |
| **Search Keywords** | One or more keywords to search Spotify. Each keyword runs as a separate query. | — |
| **Proxy Country** | Residential proxy country (50+ options). US recommended. | US |
| **Search Offset** | Starting position for pagination. | 0 |
| **Search Limit** | Maximum results per keyword. | 30 |
| **Top Results Count** | Top-ranked results count (not available for episodes/podcasts). | 20 |

#### Type-Specific Notes

- **Audiobooks**: Set Proxy Country to US, GB, AU, or CA (audiobooks are market-restricted)
- **Episodes**: No Top Results parameter (Spotify API limitation)
- **Podcasts**: No Top Results parameter (Spotify API limitation)
- **Genres**: Returns genre/mood categories, not individual songs

---

### Output Data Format

Output format varies by search type. Each result includes the search `query` and type-specific fields.

#### Tracks Search Result

```json
{
    "query": "Eminem",
    "uri": "spotify:track:...",
    "name": "Lose Yourself",
    "artists": [{"name": "Eminem"}],
    "album": {"name": "Curtain Call: The Hits"},
    "duration": {"totalMilliseconds": 326000}
}
````

#### Artists Search Result

```json
{
    "query": "jazz",
    "uri": "spotify:artist:...",
    "name": "Miles Davis",
    "profile": {"name": "Miles Davis"},
    "visuals": {"avatarImage": {"sources": [{"url": "https://..."}]}}
}
```

#### Playlists Search Result

```json
{
    "query": "workout",
    "uri": "spotify:playlist:...",
    "name": "Beast Mode",
    "description": "High energy workout music",
    "owner": {"name": "Spotify"}
}
```

***

### Step-by-Step Tutorial

1. Go to the **Spotify Search** actor page on Apify
2. Select a **Search Type** from the dropdown (e.g., Tracks, Albums, Artists)
3. Enter keywords in the **Search Keywords** field
4. Set **Proxy Country** to US (recommended)
5. Adjust **Search Limit** for desired result count
6. Set your **spending limit** and click **Start**
7. Download results from the Dataset tab

***

### When to Use This vs. Dedicated Scrapers

| Need | Recommended Actor |
|------|------------------|
| Quick Spotify search for any type | **Spotify Search** (this actor) |
| Search + full details for tracks | [Spotify Tracks Scraper](https://apify.com/apiharvest/spotify-tracks-search-and-scraper) |
| Search + full details for albums | [Spotify Albums Scraper](https://apify.com/apiharvest/spotify-albums-search-and-scraper) |
| Full details from URIs (any type) | [Spotify Scraper](https://apify.com/apiharvest/spotify-scraper-get-full-details) |
| Specialized features (track lists, episodes, etc.) | Type-specific Spotify scrapers |

This Spotify search actor is ideal for quick exploratory searches. Dedicated Spotify scrapers offer more features like detail enrichment, pagination controls, and type-specific filters.

***

### Common Use Cases for This Spotify Scraper (Search All Types)

#### Quick Data Collection

Rapidly search Spotify for any content type without configuring specialized scrapers. The Spotify search actor is the fastest way to get Spotify search results.

#### Market Exploration

Explore different Spotify content categories — search for tracks, artists, playlists, and podcasts around a topic to understand the content landscape.

#### Lead Generation

Find Spotify playlists, podcasts, or artists in target niches for outreach and marketing campaigns.

#### Multi-Type Research

Compare how a keyword performs across different Spotify content types — e.g., search "meditation" as tracks, playlists, podcasts, and audiobooks.

#### Prototyping & Testing

Use the Spotify search actor to quickly test search queries before setting up dedicated scrapers for production data pipelines.

***

### Why Choose This Spotify Scraper Over Others?

Most Spotify scrapers on Apify return incomplete or reformatted data — missing fields, simplified structures, or outdated endpoints. This spotify scraper is different. It delivers **every single data field** that Spotify provides internally — the exact same data the real Spotify app uses.

| Feature | This Spotify Scraper | Other Actors on Apify |
|---------|---------------------|----------------------|
| **Data completeness** | Every field Spotify returns — all 9 content types in one run — tracks, albums, artists, playlists, genres, audiobooks, episodes, podcasts, and users | Partial data, missing key fields |
| **Authentication** | No API key, no login, no developer account | Often require Spotify API credentials |
| **Rate limits** | No limits — automatic token rotation | Restricted by official API quotas |
| **Data structure** | Raw Spotify format — identical to real Spotify app | Reformatted, simplified, or flattened |
| **Proxy support** | 50+ residential proxy countries | Limited or no proxy options |
| **Pricing** | Pay per result — you only pay for data delivered | Flat fees, subscriptions, or usage caps |
| **Reliability** | Auto-adapts to Spotify API changes — always up to date | Hardcoded endpoints that break on updates |

> **Bottom line:** If Spotify shows it, this spotify scraper extracts it. No other Spotify search actor on Apify gives you this level of complete, production-ready data.

### Frequently Asked Questions

**Q: Does this Spotify search actor return full details?**
A: No. This Spotify search actor returns search results only. For full metadata, use the type-specific Spotify scrapers or the Spotify Scraper combo actor.

**Q: Can I search multiple Spotify types in one run?**
A: One type per run. Run the Spotify search actor multiple times with different type selections.

**Q: Why no Top Results for episodes and podcasts?**
A: Spotify's API does not support `numberOfTopResults` for episode and podcast search. This is a Spotify limitation.

**Q: Is this Spotify search actor faster than the dedicated scrapers?**
A: Same speed for search-only operations. The Spotify search actor simply combines all 9 types in one interface.

**Q: Can I get details for URIs with this Spotify search actor?**
A: No. This is search-only. Use [Spotify Scraper](https://apify.com/apiharvest/spotify-scraper-get-full-details) for URI-based detail fetching.

***

### Related Spotify Scrapers by apiharvest

| Actor | Description |
|-------|-------------|
| [Spotify Scraper — Get Full Details](https://apify.com/apiharvest/spotify-scraper-get-full-details) | Get full details for 8 Spotify content types from URIs |
| [Spotify Tracks Scraper](https://apify.com/apiharvest/spotify-tracks-search-and-scraper) | Search & scrape Spotify tracks with detail enrichment |
| [Spotify Albums Scraper](https://apify.com/apiharvest/spotify-albums-search-and-scraper) | Search & scrape Spotify albums with track listings |
| [Spotify Artists Scraper](https://apify.com/apiharvest/spotify-artists-search-and-scraper) | Search & scrape Spotify artist profiles |
| [Spotify Playlists Scraper](https://apify.com/apiharvest/spotify-playlists-search-and-scraper) | Search & scrape Spotify playlists |
| [Spotify Genres Scraper](https://apify.com/apiharvest/spotify-genres-search-and-scraper) | Browse Spotify genre/mood pages |
| [Spotify Audiobooks Scraper](https://apify.com/apiharvest/spotify-audiobooks-search-and-scraper) | Search & scrape Spotify audiobooks |
| [Spotify Episodes Scraper](https://apify.com/apiharvest/spotify-episodes-search-and-scraper) | Search & scrape Spotify podcast episodes |
| [Spotify Podcasts Scraper](https://apify.com/apiharvest/spotify-podcasts-search-and-scraper) | Search & scrape Spotify podcasts/shows |
| [Spotify Users Scraper](https://apify.com/apiharvest/spotify-users-search-and-profile-scraper) | Search & scrape Spotify user profiles |

***

### 🏷️ Keywords

spotify scraper, spotify search, spotify search api, search spotify data, spotify data extractor, apify spotify, spotify api alternative, best spotify scraper

# Actor input Schema

## `searchType` (type: `string`):

Select which type of Spotify content to search for.

## `keyword` (type: `array`):

One or more search terms.

## `proxyCountry` (type: `string`):

Select a proxy country. ⭐ US recommended.

## `tracks_search_offset` (type: `integer`):

Starting position.

## `tracks_search_limit` (type: `integer`):

Max results.

## `tracks_search_numberOfTopResults` (type: `integer`):

Top-ranked items.

## `albums_search_offset` (type: `integer`):

Starting position.

## `albums_search_limit` (type: `integer`):

Max results.

## `albums_search_numberOfTopResults` (type: `integer`):

Top-ranked items.

## `artists_search_offset` (type: `integer`):

Starting position.

## `artists_search_limit` (type: `integer`):

Max results.

## `artists_search_numberOfTopResults` (type: `integer`):

Top-ranked items.

## `playlists_search_offset` (type: `integer`):

Starting position.

## `playlists_search_limit` (type: `integer`):

Max results.

## `playlists_search_numberOfTopResults` (type: `integer`):

Top-ranked items.

## `genres_search_offset` (type: `integer`):

Starting position.

## `genres_search_limit` (type: `integer`):

Max results.

## `genres_search_numberOfTopResults` (type: `integer`):

Top-ranked items.

## `users_search_offset` (type: `integer`):

Starting position.

## `users_search_limit` (type: `integer`):

Max results.

## `users_search_numberOfTopResults` (type: `integer`):

Top-ranked items.

## `audiobooks_search_offset` (type: `integer`):

Starting position.
⚠️ Audiobooks only available in US, GB, AU, CA.

## `audiobooks_search_limit` (type: `integer`):

Max results.

## `audiobooks_search_numberOfTopResults` (type: `integer`):

Top-ranked items.

## `episodes_search_offset` (type: `integer`):

Starting position.

## `episodes_search_limit` (type: `integer`):

Max results.

## `podcasts_search_offset` (type: `integer`):

Starting position.

## `podcasts_search_limit` (type: `integer`):

Max results.

## Actor input object example

```json
{
  "searchType": "searchTracks",
  "keyword": [
    "Eminem",
    "Taylor Swift"
  ],
  "proxyCountry": "US",
  "tracks_search_offset": 0,
  "tracks_search_limit": 30,
  "tracks_search_numberOfTopResults": 20,
  "albums_search_offset": 0,
  "albums_search_limit": 30,
  "albums_search_numberOfTopResults": 20,
  "artists_search_offset": 0,
  "artists_search_limit": 30,
  "artists_search_numberOfTopResults": 20,
  "playlists_search_offset": 0,
  "playlists_search_limit": 30,
  "playlists_search_numberOfTopResults": 20,
  "genres_search_offset": 0,
  "genres_search_limit": 30,
  "genres_search_numberOfTopResults": 20,
  "users_search_offset": 0,
  "users_search_limit": 30,
  "users_search_numberOfTopResults": 20,
  "audiobooks_search_offset": 0,
  "audiobooks_search_limit": 30,
  "audiobooks_search_numberOfTopResults": 20,
  "episodes_search_offset": 0,
  "episodes_search_limit": 30,
  "podcasts_search_offset": 0,
  "podcasts_search_limit": 30
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "keyword": [
        "Eminem",
        "Taylor Swift"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("apiharvest/spotify-search-all-types").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "keyword": [
        "Eminem",
        "Taylor Swift",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("apiharvest/spotify-search-all-types").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "keyword": [
    "Eminem",
    "Taylor Swift"
  ]
}' |
apify call apiharvest/spotify-search-all-types --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=apiharvest/spotify-search-all-types",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Spotify Search — All Types 🔍",
        "description": "🔍 Search Spotify by keyword across all 9 content types — tracks, albums, artists, playlists, genres, audiobooks, episodes, podcasts & users. Returns URIs, names, images, artist credits, release dates, descriptions & type-specific metadata per result. One actor, every search type ✨ Spotify Search 🔍",
        "version": "0.0",
        "x-build-id": "eEC9KseI9D9tf3gq7"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/apiharvest~spotify-search-all-types/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-apiharvest-spotify-search-all-types",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/apiharvest~spotify-search-all-types/runs": {
            "post": {
                "operationId": "runs-sync-apiharvest-spotify-search-all-types",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/apiharvest~spotify-search-all-types/run-sync": {
            "post": {
                "operationId": "run-sync-apiharvest-spotify-search-all-types",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "searchType",
                    "keyword"
                ],
                "properties": {
                    "searchType": {
                        "title": "🎯 Search Type",
                        "enum": [
                            "searchTracks",
                            "searchAlbums",
                            "searchArtists",
                            "searchPlaylists",
                            "searchGenres",
                            "searchUsers",
                            "searchAudiobooks",
                            "searchFullEpisodes",
                            "searchPodcasts"
                        ],
                        "type": "string",
                        "description": "Select which type of Spotify content to search for.",
                        "default": "searchTracks"
                    },
                    "keyword": {
                        "title": "🔍 Search Keyword(s)",
                        "type": "array",
                        "description": "One or more search terms.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "proxyCountry": {
                        "title": "🌐 Proxy Country",
                        "enum": [
                            "US",
                            "GB",
                            "AU",
                            "CA",
                            "DE",
                            "FR",
                            "NL",
                            "IT",
                            "ES",
                            "SE",
                            "NO",
                            "DK",
                            "FI",
                            "BE",
                            "AT",
                            "CH",
                            "IE",
                            "PL",
                            "PT",
                            "CZ",
                            "HU",
                            "RO",
                            "GR",
                            "BG",
                            "HR",
                            "SK",
                            "RS",
                            "JP",
                            "KR",
                            "SG",
                            "HK",
                            "TW",
                            "TH",
                            "MY",
                            "ID",
                            "PH",
                            "VN",
                            "IN",
                            "BR",
                            "MX",
                            "AR",
                            "CL",
                            "CO",
                            "PE",
                            "ZA",
                            "NG",
                            "KE",
                            "EG",
                            "SA",
                            "AE",
                            "TR",
                            "IL",
                            "UA",
                            "RU",
                            "BY"
                        ],
                        "type": "string",
                        "description": "Select a proxy country. ⭐ US recommended.",
                        "default": "US"
                    },
                    "tracks_search_offset": {
                        "title": "📄 Tracks Search Offset",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Starting position.",
                        "default": 0
                    },
                    "tracks_search_limit": {
                        "title": "📊 Tracks Search Limit",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Max results.",
                        "default": 30
                    },
                    "tracks_search_numberOfTopResults": {
                        "title": "🏆 Tracks Top Results",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Top-ranked items.",
                        "default": 20
                    },
                    "albums_search_offset": {
                        "title": "📄 Albums Search Offset",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Starting position.",
                        "default": 0
                    },
                    "albums_search_limit": {
                        "title": "📊 Albums Search Limit",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Max results.",
                        "default": 30
                    },
                    "albums_search_numberOfTopResults": {
                        "title": "🏆 Albums Top Results",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Top-ranked items.",
                        "default": 20
                    },
                    "artists_search_offset": {
                        "title": "📄 Artists Search Offset",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Starting position.",
                        "default": 0
                    },
                    "artists_search_limit": {
                        "title": "📊 Artists Search Limit",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Max results.",
                        "default": 30
                    },
                    "artists_search_numberOfTopResults": {
                        "title": "🏆 Artists Top Results",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Top-ranked items.",
                        "default": 20
                    },
                    "playlists_search_offset": {
                        "title": "📄 Playlists Search Offset",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Starting position.",
                        "default": 0
                    },
                    "playlists_search_limit": {
                        "title": "📊 Playlists Search Limit",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Max results.",
                        "default": 30
                    },
                    "playlists_search_numberOfTopResults": {
                        "title": "🏆 Playlists Top Results",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Top-ranked items.",
                        "default": 20
                    },
                    "genres_search_offset": {
                        "title": "📄 Genres Search Offset",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Starting position.",
                        "default": 0
                    },
                    "genres_search_limit": {
                        "title": "📊 Genres Search Limit",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Max results.",
                        "default": 30
                    },
                    "genres_search_numberOfTopResults": {
                        "title": "🏆 Genres Top Results",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Top-ranked items.",
                        "default": 20
                    },
                    "users_search_offset": {
                        "title": "📄 Users Search Offset",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Starting position.",
                        "default": 0
                    },
                    "users_search_limit": {
                        "title": "📊 Users Search Limit",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Max results.",
                        "default": 30
                    },
                    "users_search_numberOfTopResults": {
                        "title": "🏆 Users Top Results",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Top-ranked items.",
                        "default": 20
                    },
                    "audiobooks_search_offset": {
                        "title": "📄 Audiobooks Search Offset",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Starting position.\n⚠️ Audiobooks only available in US, GB, AU, CA.",
                        "default": 0
                    },
                    "audiobooks_search_limit": {
                        "title": "📊 Audiobooks Search Limit",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Max results.",
                        "default": 30
                    },
                    "audiobooks_search_numberOfTopResults": {
                        "title": "🏆 Audiobooks Top Results",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Top-ranked items.",
                        "default": 20
                    },
                    "episodes_search_offset": {
                        "title": "📄 Episodes Search Offset",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Starting position.",
                        "default": 0
                    },
                    "episodes_search_limit": {
                        "title": "📊 Episodes Search Limit",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Max results.",
                        "default": 30
                    },
                    "podcasts_search_offset": {
                        "title": "📄 Podcasts Search Offset",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Starting position.",
                        "default": 0
                    },
                    "podcasts_search_limit": {
                        "title": "📊 Podcasts Search Limit",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Max results.",
                        "default": 30
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
