woocommerce.com APIwoocommerce.com ↗
Access WooCommerce marketplace extensions, themes, reviews, blog posts, and documentation via 9 structured API endpoints. Filter by category, rating, price, and more.
curl -X GET 'https://api.parse.bot/scraper/7e72e841-2efa-4175-9158-d26434cddbb0/get_marketplace_extensions?page=0&limit=3' \ -H 'X-API-Key: $PARSE_API_KEY'
Fetch a paginated list of extensions from the WooCommerce marketplace. Returns Algolia search results including hit details, total count, and facet data.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number (0-indexed). |
| limit | integer | Max results per page. |
| rating | integer | Minimum star rating filter (1-5). |
| country | string | Filter by country code (e.g. 'US'). |
| category_id | string | Filter by category ID. Obtain valid IDs from the get_extension_categories endpoint. |
| price_range | string | Filter by price range (e.g. 'Free', '$1-$49'). |
{
"type": "object",
"fields": {
"hits": "array of extension objects with title, slug, price, rating, vendor_name, excerpt, and other metadata",
"page": "current page number",
"nbHits": "total number of matching extensions",
"nbPages": "total number of pages",
"hitsPerPage": "results per page"
},
"sample": {
"data": {
"hits": [
{
"slug": "woopayments",
"price": 0,
"title": {
"en_US": "WooPayments"
},
"rating": 3.89,
"objectID": "5278104",
"vendor_name": "Woo",
"is_extension": true
}
],
"page": 0,
"nbHits": 1313,
"nbPages": 438,
"hitsPerPage": 3
},
"status": "success"
}
}About the woocommerce.com API
This API covers 9 endpoints for the WooCommerce.com marketplace, returning structured data on extensions, themes, business services, user reviews, blog posts, and documentation pages. The search_marketplace endpoint lets you query across all product types by keyword, while get_product_reviews returns per-product ratings, review text, categories, and nested reply threads — data that would otherwise require manual browsing across hundreds of product pages.
Marketplace Products and Search
The get_marketplace_extensions, get_marketplace_themes, and get_marketplace_business_services endpoints each return paginated hit arrays with fields including title, slug, price, rating, vendor_name, and excerpt. Extensions support additional filters: rating (minimum star threshold, 1–5), country, category_id, and price_range (e.g. 'Free' or '$1-$49'). Valid category_id values come from get_extension_categories, which returns a flat object mapping each category ID to its extension count. All three listing endpoints use 0-indexed pagination via the page parameter and return nbHits and nbPages for result-set sizing.
The search_marketplace endpoint accepts a required query string and an optional type filter ('extension', 'theme', or 'service'), returning the same hits shape as the listing endpoints plus an echoed query field in the response. This makes it straightforward to build cross-category search without issuing three separate calls.
Product Detail and Reviews
get_product_detail accepts a slug (e.g. 'woopayments') and returns a WordPress post object: an integer id, a canonical link, and title, content, and excerpt objects each with a rendered key containing HTML. The integer id from this response is the product_id input required by get_product_reviews. Reviews include per-review fields: id, date, rating (integer 1–5, or null for vendor replies), content, category (e.g. 'functionality', 'documentation'), author_name, and a children array for threaded replies. Reviews can be sorted by newest, oldest, highest_rating, or lowest_rating.
Blog and Documentation
get_blog_posts returns paginated WordPress post objects with date, link, slug, title.rendered, content.rendered, excerpt.rendered, and author_name. get_documentation_page takes a slug and returns the same post-object shape for WooCommerce documentation pages. Both endpoints expose full rendered HTML content, suitable for indexing or display. Blog pagination is 1-indexed; marketplace listing endpoints use 0-indexed pages.
- Build a WooCommerce extension directory that filters by category, price range, and minimum star rating using
get_marketplace_extensions. - Aggregate and display user review sentiment per product by fetching
rating,content, andcategoryfields fromget_product_reviews. - Power a marketplace search widget that queries extensions, themes, and services in a single call via
search_marketplacewith atypefilter. - Sync WooCommerce blog content to an internal knowledge base by polling
get_blog_postsfor new posts and their full HTML content. - Embed inline documentation previews in a WooCommerce admin tool by retrieving doc pages via
get_documentation_pageusing product slugs. - Monitor vendor landscape changes by periodically fetching
nbHitstotals per category fromget_extension_categoriesand the listing endpoints. - Surface competitor pricing data by pulling
priceandvendor_namefields from extension and theme search results.
| 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 WooCommerce have an official developer API?+
How do I find the correct `category_id` to filter extensions?+
get_extension_categories returns an object where each key is a category ID string and the value is the count of extensions in that category. Pass any of those keys as the category_id parameter to get_marketplace_extensions. There is no separate lookup step for themes; the theme listing endpoint also accepts category_id but valid theme category IDs are not exposed by a dedicated categories endpoint.What review data is returned, and are vendor responses included?+
get_product_reviews returns each review's rating (1–5), content, author_name, date, and a category field such as 'functionality' or 'documentation'. Vendor replies appear in the children array of the parent review object, with rating set to null for reply objects. This distinguishes top-level customer reviews from vendor responses without extra filtering.Does the API return WooCommerce.com user profile data or purchase history?+
Is there a way to search only within blog posts or documentation, rather than marketplace products?+
search_marketplace endpoint searches across marketplace products (extensions, themes, services) only. get_blog_posts supports pagination but not keyword filtering, and get_documentation_page requires a known slug rather than a query string. Full-text search over blog or documentation content is not currently covered. You can fork this API on Parse and revise it to add a blog or documentation search endpoint.