# Woocommerce — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Browse and search thousands of WooCommerce extensions, themes, and business services from the official marketplace while accessing detailed product information, user reviews, and ratings. Integrate marketplace data, blog content, and documentation directly into your applications to help users discover and learn about WooCommerce solutions.

**Category:** Marketplaces | **Website:** [woocommerce.com/](https://woocommerce.com/) | **Docs:** [parse.bot/marketplace/1b43c9be-adf0-454d-8cd9-d883814789ac/woocommerce-com-api](https://parse.bot/marketplace/1b43c9be-adf0-454d-8cd9-d883814789ac/woocommerce-com-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/credits/woocommerce/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Get blog posts

Fetch recent blog posts from the WooCommerce blog. Returns paginated WordPress post objects with full HTML content, metadata, and author information. Page numbering is 1-indexed.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Posts per page. |
| `page` | integer | No | Page number (1-indexed). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/woocommerce/get-blog-posts \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","page":"<integer>"}'
```

### Get documentation page

Retrieve a WooCommerce documentation page by its slug. Returns the full WordPress documentation post including HTML content and metadata. Returns stale_input if the documentation slug does not exist.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `slug` | string | Yes | Documentation page slug (e.g. 'woopayments', 'woocommerce-subscriptions'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/woocommerce/get-documentation-page \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"slug":"<string>"}'
```

### Get extension categories

Extract all available extension category IDs and their extension counts from the WooCommerce marketplace. Returns an object mapping category ID strings to the number of extensions in each category. Useful for discovering valid category_id values for other endpoints.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/woocommerce/get-extension-categories \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Get marketplace business services

Fetch a paginated list of business services from the WooCommerce marketplace. Returns Algolia search results for business service products including title, slug, price, vendor, and excerpt. Page numbering is 0-indexed.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max results per page. |
| `page` | integer | No | Page number (0-indexed). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/woocommerce/get-marketplace-business-services \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","page":"<integer>"}'
```

### Get marketplace extensions

Fetch a paginated list of extensions from the WooCommerce marketplace. Returns Algolia search results including hit details (title, slug, price, rating, vendor), total count, and facet data. Supports filtering by category, price range, star rating, and country. Page numbering is 0-indexed.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category_id` | string | No | Filter by category ID. Obtain valid IDs from the get_extension_categories endpoint. |
| `country` | string | No | Filter by country code (e.g. 'US'). |
| `limit` | integer | No | Max results per page. |
| `page` | integer | No | Page number (0-indexed). |
| `price_range` | string | No | Filter by price range. Accepted values: 'Free', '$1-$49', '$50-$99', '$100-$199', '$200+'. |
| `rating` | integer | No | Minimum star rating filter (1-5). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/woocommerce/get-marketplace-extensions \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"category_id":"<string>","country":"<string>","limit":"<integer>","page":"<integer>","price_range":"<string>","rating":"<integer>"}'
```

### Get marketplace themes

Fetch a paginated list of themes from the WooCommerce marketplace. Returns Algolia search results for theme products including title, slug, price, rating, and vendor. Page numbering is 0-indexed.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category_id` | string | No | Filter by category ID. |
| `limit` | integer | No | Max results per page. |
| `page` | integer | No | Page number (0-indexed). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/woocommerce/get-marketplace-themes \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"category_id":"<string>","limit":"<integer>","page":"<integer>"}'
```

### Get product detail

Get detailed information for a single marketplace product by its slug. Returns full WordPress product post data including HTML content, metadata, and SEO information. Returns stale_input if the product slug does not exist.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `slug` | string | Yes | The product slug (e.g. 'woopayments', 'woocommerce-subscriptions'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/woocommerce/get-product-detail \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"slug":"<string>"}'
```

### Get product reviews

Fetch user reviews for a specific marketplace product. Returns a paginated list of reviews with ratings, content, author information, and nested reply children. Sort by newest, oldest, highest_rating, or lowest_rating.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Reviews per page. |
| `page` | integer | No | Page number (1-indexed). |
| `product_id` | string | Yes | The internal product ID (found in get_product_detail response as 'id' or in marketplace hits as 'objectID'). |
| `sort_order` | string | No | Sort order for reviews. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/woocommerce/get-product-reviews \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","page":"<integer>","product_id":"<string>","sort_order":"<string>"}'
```

### Search marketplace

Search the WooCommerce marketplace for products matching a keyword query. Returns Algolia search results across extensions, themes, and services. Supports filtering by product type. Page numbering is 0-indexed.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max results per page. |
| `page` | integer | No | Page number (0-indexed). |
| `query` | string | Yes | Search keyword. |
| `type` | string | No | Filter by product type. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/woocommerce/search-marketplace \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","page":"<integer>","query":"<string>","type":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://paywithlocus.com/agent/index.md): every Locus agent page.