# WordPress Plugins Scraper - Installs, Ratings & Versions (`thirdwatch/wordpress-plugins-scraper`) Actor

Search the public WordPress.org plugin directory and export active installs, ratings, versions, compatibility, support metrics, authors, tags, and update dates.

- **URL**: https://apify.com/thirdwatch/wordpress-plugins-scraper.md
- **Developed by:** [Thirdwatch](https://apify.com/thirdwatch) (community)
- **Categories:** Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.00 / 1,000 wordpress plugins

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
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/docs.md):

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

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.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/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

## WordPress Plugins Scraper

> Export structured public WordPress.org WordPress plugins for discovery, comparison, monitoring, and governance.

### What you get

Search the public WordPress.org catalog and save one deduplicated row per WordPress plugin. Results include plugin slug, version, active installs, ratings, compatibility, support resolution, author, tags, and update time. Use discovery inputs for market maps and exact-name inputs, when available, for stable monitoring cohorts.

### Output fields

| Field group | Description |
|---|---|
| Identity | Canonical `slug`, display name, and source URL. |
| Release evidence | Current version or tag data and source timestamps when published. |
| Adoption signals | Public download, install, pull, star, or rating metrics available from the source. |
| Ownership and links | Public author, owner, project, repository, documentation, or homepage references. |
| Classification | Public tags, categories, keywords, packaging, or status values. |
| Provenance | Search query and named upstream source for traceable analysis. |

### Example output

```json
{"slug":"wordpress-seo","name":"Yoast SEO","version":"25.0","activeInstalls":10000000,"rating":96,"ratingCount":28000,"testedWordPress":"6.8","lastUpdated":"2026-07-18","url":"https://wordpress.org/plugins/wordpress-seo/"}
````

### Input parameters

| Parameter | Required | Description |
|---|---|---|
| `queries` | No | Up to five WordPress.org plugin search phrases. |
| `pluginSlugs` | No | Up to 25 exact directory slugs. |
| `maxResultsPerQuery` | Yes | Maximum plugins requested per search; defaults to 25. |
| `maxResults` | Yes | Maximum unique plugins across both modes; defaults to 100. |

At least one discovery or exact-name input is required. Result limits apply after cross-input deduplication, and only saved unique rows are charged.

### Use cases

- **Developers:** discover alternatives and compare public release evidence.
- **Platform teams:** monitor versions, tags, compatibility, and activity for a fixed portfolio.
- **Security teams:** build an evidence inventory before joining vulnerability and deployment data.
- **Product researchers:** map a developer ecosystem with repeatable queries and dated snapshots.

### Limitations

The Actor covers public WordPress.org directory metadata, not plugins sold only outside the directory. Active installs are bucketed by the source, and missing optional author or support fields remain null.

### Compared to alternatives

Current Apify Store alternatives include apivault\_labs/wordpress-plugins-scraper and nexgendata/wordpress-plugin-scraper. Thirdwatch combines discovery and bounded monitoring inputs where the source permits them, saves canonical evidence URLs, deduplicates before charging, provides exactly four PPE tiers, and ships ten ready-to-save Task recipes plus a five-article workflow library. Compare current Store listings directly because competitor features and pricing can change.

### FAQ

#### Does this Actor access private packages or accounts?

No. It collects only metadata available from the public source and does not sign in, bypass access controls, or request private registry credentials.

#### How should I monitor a fixed portfolio?

Use exact names where supported, keep result limits explicit, save the input as an Apify Task, and retain dated datasets. Do not let an empty or failed run overwrite the previous successful snapshot.

#### Are popularity metrics quality or security scores?

No. Downloads, installs, pulls, stars, and ratings help prioritize review, but they do not replace vulnerability, provenance, license, maintainership, or internal deployment evidence.

#### Where can I find more workflows?

Visit [Thirdwatch developer-data scrapers](https://thirdwatch.dev/scrapers/wordpress-plugins-scraper) and the related [GitHub](https://apify.com/thirdwatch/github-repositories-scraper?fpr=9m2cd6), [npm](https://apify.com/thirdwatch/npm-package-scraper?fpr=9m2cd6), and [OSV](https://apify.com/thirdwatch/osv-vulnerability-scraper?fpr=9m2cd6) Actors.

Last verified: 2026-07

# Actor input Schema

## `queries` (type: `array`):

Keywords to search in the public WordPress.org plugin directory.

## `pluginSlugs` (type: `array`):

Exact WordPress.org plugin slugs, such as woocommerce or wordpress-seo.

## `maxResultsPerQuery` (type: `integer`):

Maximum plugins requested for each search query.

## `maxResults` (type: `integer`):

Maximum unique plugins saved across search and exact lookup.

## Actor input object example

```json
{
  "queries": [
    "SEO"
  ],
  "pluginSlugs": [],
  "maxResultsPerQuery": 25,
  "maxResults": 100
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# 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 = {};

// Run the Actor and wait for it to finish
const run = await client.actor("thirdwatch/wordpress-plugins-scraper").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 = {}

# Run the Actor and wait for it to finish
run = client.actor("thirdwatch/wordpress-plugins-scraper").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 '{}' |
apify call thirdwatch/wordpress-plugins-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "WordPress Plugins Scraper - Installs, Ratings & Versions",
        "description": "Search the public WordPress.org plugin directory and export active installs, ratings, versions, compatibility, support metrics, authors, tags, and update dates.",
        "version": "1.0",
        "x-build-id": "2aOFnvqrqtdDzNYdo"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/thirdwatch~wordpress-plugins-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-thirdwatch-wordpress-plugins-scraper",
                "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/thirdwatch~wordpress-plugins-scraper/runs": {
            "post": {
                "operationId": "runs-sync-thirdwatch-wordpress-plugins-scraper",
                "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/thirdwatch~wordpress-plugins-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-thirdwatch-wordpress-plugins-scraper",
                "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": [
                    "maxResultsPerQuery",
                    "maxResults"
                ],
                "properties": {
                    "queries": {
                        "title": "Plugin search queries",
                        "maxItems": 5,
                        "type": "array",
                        "description": "Keywords to search in the public WordPress.org plugin directory.",
                        "items": {
                            "type": "string",
                            "maxLength": 200
                        },
                        "default": [
                            "SEO"
                        ]
                    },
                    "pluginSlugs": {
                        "title": "Exact plugin slugs",
                        "maxItems": 25,
                        "type": "array",
                        "description": "Exact WordPress.org plugin slugs, such as woocommerce or wordpress-seo.",
                        "items": {
                            "type": "string",
                            "maxLength": 200
                        },
                        "default": []
                    },
                    "maxResultsPerQuery": {
                        "title": "Results per query",
                        "minimum": 1,
                        "maximum": 100,
                        "type": "integer",
                        "description": "Maximum plugins requested for each search query.",
                        "default": 25
                    },
                    "maxResults": {
                        "title": "Maximum total results",
                        "minimum": 1,
                        "maximum": 500,
                        "type": "integer",
                        "description": "Maximum unique plugins saved across search and exact lookup.",
                        "default": 100
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
