# Apify Store Scout (`rodrgds/apify-store-scout`) Actor

Research Apify Store niches. Search actors by keyword/category, compare demand signals, pricing, ratings, and recent activity, then output a ranked dataset.

- **URL**: https://apify.com/rodrgds/apify-store-scout.md
- **Developed by:** [Rodrigo Dias](https://apify.com/rodrgds) (community)
- **Categories:** Developer tools, AI, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $5.00 / 1,000 analyzed actors

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — 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

## Apify Store Scout

Search the Apify Store from an actor and get a ranked dataset back.

This actor is for builders who want to spot niches before they build. Give it a few keywords like `website markdown`, `lead scraper`, or `dataset cleaner`. It calls Apify's public Store API, deduplicates matching actors, and scores them with simple demand signals: recent users, total users, bookmarks, ratings, reviews, and pricing model.

It does not scrape Apify pages and it does not need proxies. It uses public Store API data.

### What you get

Each output item is one actor, sorted by `opportunityScore` from highest to lowest. The dataset includes:

- the queries that matched the actor
- actor name, owner, title, description, categories, and Store URL
- pricing model when available
- total, monthly, and weekly users
- bookmarks, rating, and review count
- last run / modified timestamps when Apify returns them
- a simple opportunity score you can sort or filter further

The score is intentionally transparent:

```text
monthlyUsers * 3
+ totalUsers * 0.05
+ bookmarks * 2
+ reviewCount * 5
+ rating * 20
```

Use it as a first pass, not as gospel. High scores usually mean crowded markets. Low but relevant results can point to smaller gaps.

### Input

- `searchQueries` — one or more Store searches.
- `category` — optional category filter such as `AI`, `DEVELOPER_TOOLS`, `LEAD_GENERATION`, `SEO_TOOLS`, or `JOBS`.
- `sortBy` — `relevance`, `popularity`, `newest`, or `lastUpdate`.
- `limitPerQuery` — how many Store results to fetch per query.
- `includeUnrunnableActors` — whether to include actors that are not currently runnable.

### Output

A ranked dataset of Apify actors. Open the Output tab for the overview table, or export JSON/CSV for deeper analysis.

# Actor input Schema

## `searchQueries` (type: `array`):

Keywords or niche ideas to search in Apify Store.

## `category` (type: `string`):

Optional Apify category filter such as AI, DEVELOPER\_TOOLS, LEAD\_GENERATION, SEO\_TOOLS, JOBS.

## `sortBy` (type: `string`):

How Apify Store should sort results before scoring them.

## `limitPerQuery` (type: `integer`):

Maximum actors to fetch per search query.

## `includeUnrunnableActors` (type: `boolean`):

Include Store results that are not currently runnable.

## Actor input object example

```json
{
  "searchQueries": [
    "website markdown",
    "lead scraper",
    "dataset cleaner"
  ],
  "category": "AI",
  "sortBy": "popularity",
  "limitPerQuery": 20,
  "includeUnrunnableActors": true
}
```

# 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 = {
    "searchQueries": [
        "website markdown",
        "lead scraper",
        "dataset cleaner"
    ],
    "category": "AI"
};

// Run the Actor and wait for it to finish
const run = await client.actor("rodrgds/apify-store-scout").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 = {
    "searchQueries": [
        "website markdown",
        "lead scraper",
        "dataset cleaner",
    ],
    "category": "AI",
}

# Run the Actor and wait for it to finish
run = client.actor("rodrgds/apify-store-scout").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 '{
  "searchQueries": [
    "website markdown",
    "lead scraper",
    "dataset cleaner"
  ],
  "category": "AI"
}' |
apify call rodrgds/apify-store-scout --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=rodrgds/apify-store-scout",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/0YLM9SZA6sIt6i7Qi/builds/BgHcbWziRaK6MwohQ/openapi.json
