---
type: "firecrawl-provider"
description: "Product catalogues, prices, stock, variations and categories from any WooCommerce store through the public WooCommerce Store API that storefronts use. Input is the store's domain or any URL on it; responses are verified to be Store API data."
use_when: "Product catalogues, prices, stock, variations and categories from any WooCommerce store through the public WooCommerce Store API that storefronts use. Input is the store's domain or any URL on it; responses are verified to be Store API data."
categories: "Retail"
capabilities: 4
credits_per_call: 5
---
# WooCommerce stores on Firecrawl Alexandria

Product catalogues, prices, stock, variations and categories from any WooCommerce store through the public WooCommerce Store API that storefronts use. Input is the store's domain or any URL on it; responses are verified to be Store API data.

- Categories: Retail
- Category index: [Retail category](https://firecrawl.dev/alexandria/agents/categories/retail)
- Provider key: `woocommerce-com`
- Access: Firecrawl credits
- Cost: 5 credits per call

## More

- [Human guide](https://firecrawl.dev/app/alexandria/woocommerce-com)
- [OpenAPI spec](https://firecrawl.dev/alexandria/agents/providers/woocommerce-com/openapi.json)

## Capabilities

- [Get product](https://firecrawl.dev/alexandria/agents/providers/woocommerce-com/products/get_product): One product from any WooCommerce store by id, slug, SKU or product page URL: everything search_products returns plus the full description as text, tags, attributes with their terms, parent id for a variation, and for variable products every variation (up to 100) with its options, SKU, prices and stock.
- [List attributes](https://firecrawl.dev/alexandria/agents/providers/woocommerce-com/products/list_attributes): Global product attributes of a WooCommerce store (e.g. Color pa_color, Size pa_size, Brand pa_brand) and, when one is named, its terms (id, name, slug, product count), paged up to 100 per page.
- [List categories](https://firecrawl.dev/alexandria/agents/providers/woocommerce-com/products/list_categories): Product categories of a WooCommerce store, one level or all at once: id, name, slug, parent id, product count, description text, image URL and category page URL. Filter by parent id or name search; page through up to 100 per page.
- [Search products](https://firecrawl.dev/alexandria/agents/providers/woocommerce-com/products/search_products): Search or list products in any WooCommerce store via its public Store API: keyword, category, tag, attribute terms, on-sale, featured, stock status and price band, with sorting and paging (up to 100 per page). Each product carries id, name, URL, SKU, prices in major units with currency, stock and purchasability, categories, brands, image URLs, rating and review count, and the short description as text. Verifies the site is a WooCommerce store; otherwise fails with not_woocommerce_store.

## 1. Choose this provider when

Product catalogues, prices, stock, variations and categories from any WooCommerce store through the public WooCommerce Store API that storefronts use. Input is the store's domain or any URL on it; responses are verified to be Store API data.

## 2. Minimal request

Call `POST https://api.firecrawl.dev/v2/scrape` with `{ alexandria: { provider, capability, options } }`. For a batch, send `{ alexandria: [...] }` with up to 10 calls.

```json
{
  "provider": "woocommerce-com",
  "capability": "products/get_product",
  "options": {
    "slug": "woocommerce-subscriptions",
    "store": "woocommerce.com"
  }
}
```

## 3. Add provider options

Use only the options needed for the task:

- `id` (number): Product (or variation) id. Example: `10`
- `sku` (string): Exact SKU (case-insensitive). Example: `<sku>`
- `slug` (string): Product slug, the last path segment of its URL. Example: `<slug>`
- `store` (string): The store: a bare domain (example.com) or any URL on the store. Any WooCommerce site with the public Store API (/wp-json/wc/store/v1) enabled. Example: `<store>`
- `url` (string): A product page URL on the store (https://example.com/product/<slug>/ or ?p=<id>). Implies store. Pattern: ^https?://. Example: `<url>`

## 4. Request through your preferred interface

### JavaScript

```javascript
const result = await firecrawl.scrape({
  alexandria: {
    provider: "woocommerce-com",
    capability: "products/get_product",
    options: {
      slug: "woocommerce-subscriptions",
      store: "woocommerce.com",
    },
  },
});
```

### Python

```python
result = firecrawl.scrape_alexandria({
  "provider": "woocommerce-com",
  "capability": "products/get_product",
  "options": {
    "slug": "woocommerce-subscriptions",
    "store": "woocommerce.com"
  }
})
```

### cURL

```sh
curl https://api.firecrawl.dev/v2/scrape \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "alexandria": {
    "provider": "woocommerce-com",
    "capability": "products/get_product",
    "options": {
      "slug": "woocommerce-subscriptions",
      "store": "woocommerce.com"
    }
  }
}'
```

### CLI

```sh
firecrawl scrape 'woocommerce-com/products/get_product' \
  --options '{"slug":"woocommerce-subscriptions","store":"woocommerce.com"}'
```


### MCP

Call the FCX MCP retrieve tool with this object:

```json
{
  "provider": "woocommerce-com",
  "capability": "products/get_product",
  "options": {
    "slug": "woocommerce-subscriptions",
    "store": "woocommerce.com"
  }
}
```

Ask for only the returned fields needed by the task.

## 5. Full request shape

```json
{
  "provider": "woocommerce-com",
  "capability": "products/get_product",
  "options": {
    "slug": "woocommerce-subscriptions",
    "store": "woocommerce.com"
  }
}
```

## 6. Response data

The response includes `success`, `provider`, `capability`, `creditsCost` and `data`. This example shows the provider payload in `data`:

```json
{
  "attributes": [
    {
      "has_variations": false,
      "id": 10,
      "name": "Compatibility",
      "taxonomy": "pa_compatibility",
      "terms": [
        {
          "id": 33015,
          "name": "Cart & checkout blocks",
          "slug": "cart-checkout-blocks"
        },
        {
          "id": 32524,
          "name": "High performance order storage (HPOS)",
          "slug": "hpos"
        }
      ]
    }
  ],
  "average_rating": 3.89,
  "brands": [],
  "categories": [
    {
      "id": 1021,
      "name": "WooCommerce extensions",
      "slug": "woocommerce-extensions"
    },
    {
      "id": 3936,
      "name": "Developed by Woo",
      "slug": "developed-by-woo"
    },
    {
      "id": 32617,
      "name": "Payment management",
      "slug": "payment-management"
    },
    {
      "id": 28663,
      "name": "Merchandising",
      "slug": "merchandising"
    },
    {
      "id": 28665,
      "name": "Product variations",
      "slug": "product-variations"
    },
    {
      "id": 28671,
      "name": "Subscriptions",
      "slug": "subscriptions-merchandising"
    },
    {
      "id": 1888,
      "name": "Store management",
      "slug": "operations"
    }
  ],
  "description": "WooCommerce Subscriptions is compatible with Cart and Checkout blocks — a customizable, conversion-optimized checkout experience available in WooCommerce core.\n\nMultiple billing schedules available to suit your store’s needs.\nIntegration with over 25 payment gateways for automatic recurring payments.\nSupports manual renewal payments through any WooCommerce payment gateway, along with automatic email invoices and receipts.\nSupports automatic rebilling on failed subscription payments, so you never lose revenue.\nGive subscribers the ability to manage their own plan, including upgrading or downgrading, without needing to wait on you for help.\nBuilt-in renewal notifications and automatic emails let you — and your customers — know when subscription payments have been processed, so there are never any surprises.\nDetailed reports allow you to keep track of recurring revenue, number of active subscribers, and more.\nAllow shoppers to gift subscriptions to each other, helping you reach new shoppers and grow recurring revenue with less effort.\nInclude simple and variable downloadable products with your subscriptions. Link new downloadable products and manage existing ones directly from within WooCommerce Subscriptions.\nNew! Create multiple plans for a single product and turn one-time purchases into recurring revenue.\n\nCapture residual revenue with recurring payments\n\nCan you guarantee how much money your store is going to make this month? If you offered subscription-based products, you could do just that.\n\nWith WooCommerce Subscriptions, you can create and manage products with recurring payments — payments that will give you residual revenue you can track and count on.\n\nWooCommerce Subscriptions allows you to introduce a variety of subscriptions for physical or virtual products and services. Create product-of-the-month clubs, weekly service subscriptions or even yearly software billing packages. Add sign-up fees, offer free trials, or set expiration periods.\n\nA subscription-based model will allow you to capture more residual revenue — and all you have to do is ship the orders.\n\nWooCommerce Subscriptions features\n\nReusable subscription plans\n\nCreate storewide plans — with your own frequency and pricing — and apply them across the subscription products in your store.\n\nFlexible purchase options\n\nChoose how each product is sold: as a one-time purchase, a subscription, or both. Offer every storewide plan, just a select few, or create custom plans unique to that product.\n\nFree trials and sign-up fees\n\nLet customers try before they buy, or recoup your setup costs upfront — add free trials and sign-up fees to any subscription plan.\n\nAligned renewals\n\nSync all subscribers on a plan to the same renewal date with billing date alignment — ideal for shipping on set days. You can also choose how the first payment is charged: in full, on the next billing date, or prorated.\n\nSubscription coupons\n\nOffer customers a discount on their recurring payments, or on the sign-up fee alone — with dedicated recurring discount coupons and sign-up fee coupons.\n\nGifting\n\nAllow shoppers to buy any subscription as a gift for someone else. Recipients get their own account to manage their subscription — helping you reach new customers and grow recurring revenue.\n\nMultiple subscriptions\n\nYour customers can purchase different subscription products in the same transaction, and WooCommerce Subscriptions will group them by billing schedule — so future renewals process as a single order and a single payment, with fewer gateway fees.\n\nSwitching\n\nAllow customers to upgrade, downgrade, or switch between subscription plans, variations, and products. With flexible proration for the recurring amount, sign-up fee and length, you can customize the cost of switching to suit your store.\n\nSubscription management\n\nManage every subscription from your WP Admin dashboard. Suspend or cancel a subscription, change the trial end date, add products, shipping, fees, or taxes, or adjust the recurring total for future payments.\n\nSubscriber account management\n\nYour customers can manage their own subscriptions from their account — suspend, cancel, or reactivate, switch plans, update their shipping address, and manage their payments — so routine changes don’t turn into support requests.\n\nSubscription emails\n\nBoth you and your customers stay in the loop with built-in subscription emails for key events: renewal receipts, invoices awaiting payment, failed payment retries, cancellations, expirations, and switches.\n\nSubscriptions Health Check\n\nStay in control of renewal health. The Subscriptions Health Check routinely scans every subscription in your store and flags the ones that need attention — renewals that didn’t process on schedule, or manual subscriptions that could be renewing automatically — right from your dashboard.\n\nCapture more residual revenue\n\nWhether your goal is to ship a surprise bundle of products to faithful customers every month or bill them for an in-person service provided by your small business, WooCommerce Subscriptions can take the stress out of capturing that all-important residual revenue.\n\nYou’ll be able to track how many subscribers you have, when they’re being billed, and how much revenue you’re generating — meaning you’ll always know how much revenue your store can count on as you continue to grow.\n\nHow to get started\n\nDownload, install, and activate this extension in your WooCommerce store.\nSet up your first subscription-based product or service and take it live.\nCheck out our detailed documentation to help you customize your subscription products, renewal options and more.\nSit back and enjoy earning more revenue!",
  "has_options": false,
  "id": 27147,
  "images": [
    "https://woocommerce.com/wp-content/uploads/2012/09/Woo_Subscriptions_icon-marketplace-160x160-2.png"
  ],
  "name": "WooCommerce Subscriptions",
  "observed_at_ms": 1791509594790,
  "on_sale": false,
  "parent": null,
  "prices": {
    "currency": "USD",
    "currency_symbol": "$",
    "max_price": null,
    "min_price": null,
    "price": 279,
    "regular_price": 279,
    "sale_price": 279
  },
  "review_count": 142,
  "short_description": "WooCommerce Subscriptions is a WooCommerce extension that lets customers subscribe to your products or services and pay on a weekly, monthly, or annual basis. It integrates with over 25 payment gateways for automatic recurring payments and supports automatic rebilling on failed subscription payments. Subscribers can manage their own plan — upgrading, downgrading, suspending, or canceling — and update their shipping address or payment method. It’s a paid annual extension with a 30-day money-back guarantee.",
  "sku": "WOO508",
  "slug": "woocommerce-subscriptions",
  "stock": {
    "availability": null,
    "is_in_stock": true,
    "is_on_backorder": false,
    "is_purchasable": true,
    "low_stock_remaining": null,
    "status": "in-stock"
  },
  "store": {
    "host": "woocommerce.com",
    "url": "https://woocommerce.com/"
  },
  "tags": [
    {
      "id": 3488,
      "name": "doubletake",
      "slug": "doubletake"
    },
    {
      "id": 2078,
      "name": "Featured",
      "slug": "featured"
    },
    {
      "id": 2658,
      "name": "nax_payment_method_subscription",
      "slug": "nax_payment_method_subscription"
    },
    {
      "id": 2663,
      "name": "nax_product_type_memberships",
      "slug": "nax_product_type_memberships"
    },
    {
      "id": 2548,
      "name": "SomethingFresh1",
      "slug": "somethingfresh1"
    },
    {
      "id": 2557,
      "name": "SomethingFresh10",
      "slug": "somethingfresh10"
    },
    {
      "id": 2549,
      "name": "SomethingFresh2",
      "slug": "somethingfresh2"
    },
    {
      "id": 2550,
      "name": "SomethingFresh3",
      "slug": "somethingfresh3"
    },
    {
      "id": 2551,
      "name": "SomethingFresh4",
      "slug": "somethingfresh4"
    },
    {
      "id": 2552,
      "name": "SomethingFresh5",
      "slug": "somethingfresh5"
    },
    {
      "id": 2553,
      "name": "SomethingFresh6",
      "slug": "somethingfresh6"
    },
    {
      "id": 2554,
      "name": "SomethingFresh7",
      "slug": "somethingfresh7"
    },
    {
      "id": 2555,
      "name": "SomethingFresh8",
      "slug": "somethingfresh8"
    },
    {
      "id": 2556,
      "name": "SomethingFresh9",
      "slug": "somethingfresh9"
    },
    {
      "id": 32537,
      "name": "woosubs",
      "slug": "woosubs"
    }
  ],
  "type": "simple",
  "url": "https://woocommerce.com/products/woocommerce-subscriptions/",
  "variation_count": 0,
  "variations": []
}
```

## API reference-derived contract

The following capability contract is generated from the same normalized Alexandria API reference exposed in the API spec.

### Get product

- Capability: `products/get_product`
- Description: One product from any WooCommerce store by id, slug, SKU or product page URL: everything search_products returns plus the full description as text, tags, attributes with their terms, parent id for a variation, and for variable products every variation (up to 100) with its options, SKU, prices and stock.
- Instructions: Details, variants (sizes/colours) and per-variant price or stock of one product in a WooCommerce store, e.g. from a pasted product URL.
- Cost: 5 credits per call
- Capability file: [Get product](https://firecrawl.dev/alexandria/agents/providers/woocommerce-com/products/get_product)

Accepted options:
- `id` (number): Product (or variation) id. Example: `10`
- `sku` (string): Exact SKU (case-insensitive). Example: `<sku>`
- `slug` (string): Product slug, the last path segment of its URL. Example: `<slug>`
- `store` (string): The store: a bare domain (example.com) or any URL on the store. Any WooCommerce site with the public Store API (/wp-json/wc/store/v1) enabled. Example: `<store>`
- `url` (string): A product page URL on the store (https://example.com/product/<slug>/ or ?p=<id>). Implies store. Pattern: ^https?://. Example: `<url>`

Response schema example:
```json
{
  "attributes": [
    {
      "has_variations": false,
      "id": 10,
      "name": "Compatibility",
      "taxonomy": "pa_compatibility",
      "terms": [
        {
          "id": 33015,
          "name": "Cart & checkout blocks",
          "slug": "cart-checkout-blocks"
        },
        {
          "id": 32524,
          "name": "High performance order storage (HPOS)",
          "slug": "hpos"
        }
      ]
    }
  ],
  "average_rating": 3.89,
  "brands": [],
  "categories": [
    {
      "id": 1021,
      "name": "WooCommerce extensions",
      "slug": "woocommerce-extensions"
    },
    {
      "id": 3936,
      "name": "Developed by Woo",
      "slug": "developed-by-woo"
    },
    {
      "id": 32617,
      "name": "Payment management",
      "slug": "payment-management"
    },
    {
      "id": 28663,
      "name": "Merchandising",
      "slug": "merchandising"
    },
    {
      "id": 28665,
      "name": "Product variations",
      "slug": "product-variations"
    },
    {
      "id": 28671,
      "name": "Subscriptions",
      "slug": "subscriptions-merchandising"
    },
    {
      "id": 1888,
      "name": "Store management",
      "slug": "operations"
    }
  ],
  "description": "WooCommerce Subscriptions is compatible with Cart and Checkout blocks — a customizable, conversion-optimized checkout experience available in WooCommerce core.\n\nMultiple billing schedules available to suit your store’s needs.\nIntegration with over 25 payment gateways for automatic recurring payments.\nSupports manual renewal payments through any WooCommerce payment gateway, along with automatic email invoices and receipts.\nSupports automatic rebilling on failed subscription payments, so you never lose revenue.\nGive subscribers the ability to manage their own plan, including upgrading or downgrading, without needing to wait on you for help.\nBuilt-in renewal notifications and automatic emails let you — and your customers — know when subscription payments have been processed, so there are never any surprises.\nDetailed reports allow you to keep track of recurring revenue, number of active subscribers, and more.\nAllow shoppers to gift subscriptions to each other, helping you reach new shoppers and grow recurring revenue with less effort.\nInclude simple and variable downloadable products with your subscriptions. Link new downloadable products and manage existing ones directly from within WooCommerce Subscriptions.\nNew! Create multiple plans for a single product and turn one-time purchases into recurring revenue.\n\nCapture residual revenue with recurring payments\n\nCan you guarantee how much money your store is going to make this month? If you offered subscription-based products, you could do just that.\n\nWith WooCommerce Subscriptions, you can create and manage products with recurring payments — payments that will give you residual revenue you can track and count on.\n\nWooCommerce Subscriptions allows you to introduce a variety of subscriptions for physical or virtual products and services. Create product-of-the-month clubs, weekly service subscriptions or even yearly software billing packages. Add sign-up fees, offer free trials, or set expiration periods.\n\nA subscription-based model will allow you to capture more residual revenue — and all you have to do is ship the orders.\n\nWooCommerce Subscriptions features\n\nReusable subscription plans\n\nCreate storewide plans — with your own frequency and pricing — and apply them across the subscription products in your store.\n\nFlexible purchase options\n\nChoose how each product is sold: as a one-time purchase, a subscription, or both. Offer every storewide plan, just a select few, or create custom plans unique to that product.\n\nFree trials and sign-up fees\n\nLet customers try before they buy, or recoup your setup costs upfront — add free trials and sign-up fees to any subscription plan.\n\nAligned renewals\n\nSync all subscribers on a plan to the same renewal date with billing date alignment — ideal for shipping on set days. You can also choose how the first payment is charged: in full, on the next billing date, or prorated.\n\nSubscription coupons\n\nOffer customers a discount on their recurring payments, or on the sign-up fee alone — with dedicated recurring discount coupons and sign-up fee coupons.\n\nGifting\n\nAllow shoppers to buy any subscription as a gift for someone else. Recipients get their own account to manage their subscription — helping you reach new customers and grow recurring revenue.\n\nMultiple subscriptions\n\nYour customers can purchase different subscription products in the same transaction, and WooCommerce Subscriptions will group them by billing schedule — so future renewals process as a single order and a single payment, with fewer gateway fees.\n\nSwitching\n\nAllow customers to upgrade, downgrade, or switch between subscription plans, variations, and products. With flexible proration for the recurring amount, sign-up fee and length, you can customize the cost of switching to suit your store.\n\nSubscription management\n\nManage every subscription from your WP Admin dashboard. Suspend or cancel a subscription, change the trial end date, add products, shipping, fees, or taxes, or adjust the recurring total for future payments.\n\nSubscriber account management\n\nYour customers can manage their own subscriptions from their account — suspend, cancel, or reactivate, switch plans, update their shipping address, and manage their payments — so routine changes don’t turn into support requests.\n\nSubscription emails\n\nBoth you and your customers stay in the loop with built-in subscription emails for key events: renewal receipts, invoices awaiting payment, failed payment retries, cancellations, expirations, and switches.\n\nSubscriptions Health Check\n\nStay in control of renewal health. The Subscriptions Health Check routinely scans every subscription in your store and flags the ones that need attention — renewals that didn’t process on schedule, or manual subscriptions that could be renewing automatically — right from your dashboard.\n\nCapture more residual revenue\n\nWhether your goal is to ship a surprise bundle of products to faithful customers every month or bill them for an in-person service provided by your small business, WooCommerce Subscriptions can take the stress out of capturing that all-important residual revenue.\n\nYou’ll be able to track how many subscribers you have, when they’re being billed, and how much revenue you’re generating — meaning you’ll always know how much revenue your store can count on as you continue to grow.\n\nHow to get started\n\nDownload, install, and activate this extension in your WooCommerce store.\nSet up your first subscription-based product or service and take it live.\nCheck out our detailed documentation to help you customize your subscription products, renewal options and more.\nSit back and enjoy earning more revenue!",
  "has_options": false,
  "id": 27147,
  "images": [
    "https://woocommerce.com/wp-content/uploads/2012/09/Woo_Subscriptions_icon-marketplace-160x160-2.png"
  ],
  "name": "WooCommerce Subscriptions",
  "observed_at_ms": 1791509594790,
  "on_sale": false,
  "parent": null,
  "prices": {
    "currency": "USD",
    "currency_symbol": "$",
    "max_price": null,
    "min_price": null,
    "price": 279,
    "regular_price": 279,
    "sale_price": 279
  },
  "review_count": 142,
  "short_description": "WooCommerce Subscriptions is a WooCommerce extension that lets customers subscribe to your products or services and pay on a weekly, monthly, or annual basis. It integrates with over 25 payment gateways for automatic recurring payments and supports automatic rebilling on failed subscription payments. Subscribers can manage their own plan — upgrading, downgrading, suspending, or canceling — and update their shipping address or payment method. It’s a paid annual extension with a 30-day money-back guarantee.",
  "sku": "WOO508",
  "slug": "woocommerce-subscriptions",
  "stock": {
    "availability": null,
    "is_in_stock": true,
    "is_on_backorder": false,
    "is_purchasable": true,
    "low_stock_remaining": null,
    "status": "in-stock"
  },
  "store": {
    "host": "woocommerce.com",
    "url": "https://woocommerce.com/"
  },
  "tags": [
    {
      "id": 3488,
      "name": "doubletake",
      "slug": "doubletake"
    },
    {
      "id": 2078,
      "name": "Featured",
      "slug": "featured"
    },
    {
      "id": 2658,
      "name": "nax_payment_method_subscription",
      "slug": "nax_payment_method_subscription"
    },
    {
      "id": 2663,
      "name": "nax_product_type_memberships",
      "slug": "nax_product_type_memberships"
    },
    {
      "id": 2548,
      "name": "SomethingFresh1",
      "slug": "somethingfresh1"
    },
    {
      "id": 2557,
      "name": "SomethingFresh10",
      "slug": "somethingfresh10"
    },
    {
      "id": 2549,
      "name": "SomethingFresh2",
      "slug": "somethingfresh2"
    },
    {
      "id": 2550,
      "name": "SomethingFresh3",
      "slug": "somethingfresh3"
    },
    {
      "id": 2551,
      "name": "SomethingFresh4",
      "slug": "somethingfresh4"
    },
    {
      "id": 2552,
      "name": "SomethingFresh5",
      "slug": "somethingfresh5"
    },
    {
      "id": 2553,
      "name": "SomethingFresh6",
      "slug": "somethingfresh6"
    },
    {
      "id": 2554,
      "name": "SomethingFresh7",
      "slug": "somethingfresh7"
    },
    {
      "id": 2555,
      "name": "SomethingFresh8",
      "slug": "somethingfresh8"
    },
    {
      "id": 2556,
      "name": "SomethingFresh9",
      "slug": "somethingfresh9"
    },
    {
      "id": 32537,
      "name": "woosubs",
      "slug": "woosubs"
    }
  ],
  "type": "simple",
  "url": "https://woocommerce.com/products/woocommerce-subscriptions/",
  "variation_count": 0,
  "variations": []
}
```

### List attributes

- Capability: `products/list_attributes`
- Description: Global product attributes of a WooCommerce store (e.g. Color pa_color, Size pa_size, Brand pa_brand) and, when one is named, its terms (id, name, slug, product count), paged up to 100 per page.
- Instructions: Find attribute taxonomies and term slugs for search_products attribute filters, or list a store's brands/sizes/colours.
- Cost: 5 credits per call
- Capability file: [List attributes](https://firecrawl.dev/alexandria/agents/providers/woocommerce-com/products/list_attributes)

Accepted options:
- `attribute` (string): Taxonomy (pa_color) or attribute id whose terms to list. Pattern: ^(pa_\S+|[0-9]+)$. Example: `<attribute>`
- `page` (number): 1-based page; use next_page from the previous result. Example: `1`
- `per_page` (number): per_page Example: `100`
- `store` (string, required): The store: a bare domain (example.com) or any URL on the store. Any WooCommerce site with the public Store API (/wp-json/wc/store/v1) enabled. Example: `<store>`

Response schema example:
```json
{
  "attribute": {
    "id": 10,
    "name": "Compatibility",
    "taxonomy": "pa_compatibility"
  },
  "attributes": [
    {
      "count": 5,
      "has_archives": true,
      "id": 10,
      "name": "Compatibility",
      "taxonomy": "pa_compatibility",
      "type": "select"
    },
    {
      "count": 249,
      "has_archives": true,
      "id": 2,
      "name": "Countries",
      "taxonomy": "pa_countries",
      "type": "select"
    },
    {
      "count": 4,
      "has_archives": true,
      "id": 3,
      "name": "Gateway Types",
      "taxonomy": "pa_gateway-types",
      "type": "select"
    },
    {
      "count": 193,
      "has_archives": false,
      "id": 9,
      "name": "Languages",
      "taxonomy": "pa_languages",
      "type": "select"
    },
    {
      "count": 2,
      "has_archives": false,
      "id": 6,
      "name": "Revenue Share",
      "taxonomy": "pa_revenue-share",
      "type": "select"
    },
    {
      "count": 2,
      "has_archives": true,
      "id": 1,
      "name": "Theme Package",
      "taxonomy": "pa_theme-type",
      "type": "select"
    },
    {
      "count": 68,
      "has_archives": false,
      "id": 7,
      "name": "WooCommerce version required",
      "taxonomy": "pa_wc_version_required",
      "type": "select"
    },
    {
      "count": 2429,
      "has_archives": true,
      "id": 5,
      "name": "Works With",
      "taxonomy": "pa_works_with",
      "type": "select"
    },
    {
      "count": 21,
      "has_archives": false,
      "id": 8,
      "name": "WordPress version required",
      "taxonomy": "pa_wp_version_required",
      "type": "select"
    }
  ],
  "count": 5,
  "next_page": null,
  "observed_at_ms": 1791509616189,
  "page": 1,
  "per_page": 100,
  "store": {
    "host": "woocommerce.com",
    "url": "https://woocommerce.com/"
  },
  "terms": [
    {
      "count": 66,
      "id": 33417,
      "name": "Block editor",
      "slug": "block-editor"
    },
    {
      "count": 310,
      "id": 33015,
      "name": "Cart & checkout blocks",
      "slug": "cart-checkout-blocks"
    },
    {
      "count": 382,
      "id": 32524,
      "name": "High performance order storage (HPOS)",
      "slug": "hpos"
    },
    {
      "count": 11,
      "id": 33456,
      "name": "Product editor",
      "slug": "product-editor"
    },
    {
      "count": 36,
      "id": 33418,
      "name": "Site editor",
      "slug": "site-editor"
    }
  ],
  "total": 5,
  "total_pages": 1
}
```

### List categories

- Capability: `products/list_categories`
- Description: Product categories of a WooCommerce store, one level or all at once: id, name, slug, parent id, product count, description text, image URL and category page URL. Filter by parent id or name search; page through up to 100 per page.
- Instructions: Navigate a WooCommerce store's catalogue and find the category id or slug to pass to search_products.
- Cost: 5 credits per call
- Capability file: [List categories](https://firecrawl.dev/alexandria/agents/providers/woocommerce-com/products/list_categories)

Accepted options:
- `page` (number): 1-based page; use next_page from the previous result. Example: `1`
- `parent` (number): Only children of this category id; 0 for top-level categories. Example: `10`
- `per_page` (number): per_page Example: `100`
- `search` (string): Match category names or slugs. Example: `<search>`
- `store` (string, required): The store: a bare domain (example.com) or any URL on the store. Any WooCommerce site with the public Store API (/wp-json/wc/store/v1) enabled. Example: `<store>`

Response schema example:
```json
{
  "categories": [
    {
      "count": 18,
      "description": null,
      "id": 33694,
      "image": null,
      "name": "Business Services",
      "parent": 0,
      "slug": "business-services",
      "url": "https://woocommerce.com/product-category/business-services/"
    },
    {
      "count": 8,
      "description": null,
      "id": 2144,
      "image": null,
      "name": "Uncategorized",
      "parent": 0,
      "slug": "uncategorized",
      "url": "https://woocommerce.com/product-category/uncategorized/"
    },
    {
      "count": 1549,
      "description": "Customize your ecommerce store with official extensions for WooCommerce.",
      "id": 1021,
      "image": null,
      "name": "WooCommerce extensions",
      "parent": 0,
      "slug": "woocommerce-extensions",
      "url": "https://woocommerce.com/product-category/woocommerce-extensions/"
    },
    {
      "count": 176,
      "description": "Ecommerce-specific WordPress themes for WooCommerce.",
      "id": 1033,
      "image": null,
      "name": "WooCommerce themes",
      "parent": 0,
      "slug": "themes",
      "url": "https://woocommerce.com/product-category/themes/"
    }
  ],
  "count": 4,
  "next_page": null,
  "observed_at_ms": 1791509614403,
  "page": 1,
  "parent": 0,
  "per_page": 100,
  "search": null,
  "store": {
    "host": "woocommerce.com",
    "url": "https://woocommerce.com/"
  },
  "total": 4,
  "total_pages": 1
}
```

### Search products

- Capability: `products/search_products`
- Description: Search or list products in any WooCommerce store via its public Store API: keyword, category, tag, attribute terms, on-sale, featured, stock status and price band, with sorting and paging (up to 100 per page). Each product carries id, name, URL, SKU, prices in major units with currency, stock and purchasability, categories, brands, image URLs, rating and review count, and the short description as text. Verifies the site is a WooCommerce store; otherwise fails with not_woocommerce_store.
- Instructions: Product catalogue, prices or stock from a store running WooCommerce (WordPress shops on their own domain). Start here; get ids or slugs for get_product, category slugs from list_categories, attribute taxonomies and term slugs from list_attributes.
- Cost: 5 credits per call
- Capability file: [Search products](https://firecrawl.dev/alexandria/agents/providers/woocommerce-com/products/search_products)

Accepted options:
- `attributes` (object[]): Attribute term filters (all must match). Example: `[]`
- `category` (string): One category id or slug (from list_categories); includes subcategories as the store does. Pattern: ^[^,\s]+$. Example: `<category>`
- `featured` (boolean): Only featured products. Example: `false`
- `max_price` (number): Maximum price in major units of the store currency. Example: `10`
- `min_price` (number): Minimum price in major units of the store currency (e.g. 19.99). Example: `10`
- `on_sale` (boolean): Only products on sale. Example: `false`
- `order` (string): order Example: `asc`
- `orderby` (string): Sort key; the store's default (relevance for a query, else date) otherwise. Example: `date`
- `page` (number): 1-based page; use next_page from the previous result. Example: `1`
- `per_page` (number): per_page Example: `20`
- `query` (string): Keywords matched against product title and content. Example: `<query>`
- `stock_status` (string[]): stock_status Example: `[]`
- `store` (string, required): The store: a bare domain (example.com) or any URL on the store. Any WooCommerce site with the public Store API (/wp-json/wc/store/v1) enabled. Example: `<store>`
- `tag` (string): One product tag id or slug. Pattern: ^[^,\s]+$. Example: `<tag>`

Response schema example:
```json
{
  "category": null,
  "count": 5,
  "items": [
    {
      "average_rating": 3.89,
      "brands": [],
      "categories": [
        {
          "id": 1021,
          "name": "WooCommerce extensions",
          "slug": "woocommerce-extensions"
        },
        {
          "id": 3936,
          "name": "Developed by Woo",
          "slug": "developed-by-woo"
        },
        {
          "id": 32617,
          "name": "Payment management",
          "slug": "payment-management"
        },
        {
          "id": 28663,
          "name": "Merchandising",
          "slug": "merchandising"
        },
        {
          "id": 28665,
          "name": "Product variations",
          "slug": "product-variations"
        },
        {
          "id": 28671,
          "name": "Subscriptions",
          "slug": "subscriptions-merchandising"
        },
        {
          "id": 1888,
          "name": "Store management",
          "slug": "operations"
        }
      ],
      "has_options": false,
      "id": 27147,
      "images": [
        "https://woocommerce.com/wp-content/uploads/2012/09/Woo_Subscriptions_icon-marketplace-160x160-2.png"
      ],
      "name": "WooCommerce Subscriptions",
      "on_sale": false,
      "prices": {
        "currency": "USD",
        "currency_symbol": "$",
        "max_price": null,
        "min_price": null,
        "price": 279,
        "regular_price": 279,
        "sale_price": 279
      },
      "review_count": 142,
      "short_description": "WooCommerce Subscriptions is a WooCommerce extension that lets customers subscribe to your products or services and pay on a weekly, monthly, or annual basis. It integrates with over 25 payment gateways for automatic recurring payments and supports automatic rebilling on failed subscription payments. Subscribers can manage their own plan — upgrading, downgrading, suspending, or canceling — and update their shipping address or payment method. It’s a paid annual extension with a 30-day money-back guarantee.",
      "sku": "WOO508",
      "slug": "woocommerce-subscriptions",
      "stock": {
        "availability": null,
        "is_in_stock": true,
        "is_on_backorder": false,
        "is_purchasable": true,
        "low_stock_remaining": null,
        "status": "in-stock"
      },
      "type": "simple",
      "url": "https://woocommerce.com/products/woocommerce-subscriptions/"
    },
    {
      "average_rating": 3.83,
      "brands": [],
      "categories": [
        {
          "id": 28663,
          "name": "Merchandising",
          "slug": "merchandising"
        },
        {
          "id": 28671,
          "name": "Subscriptions",
          "slug": "subscriptions-merchandising"
        },
        {
          "id": 1021,
          "name": "WooCommerce extensions",
          "slug": "woocommerce-extensions"
        }
      ],
      "has_options": false,
      "id": 5834751,
      "images": [
        "https://woocommerce.com/wp-content/uploads/2020/05/enhancer-icon-new-160.png"
      ],
      "name": "Enhancer for WooCommerce Subscriptions",
      "on_sale": false,
      "prices": {
        "currency": "USD",
        "currency_symbol": "$",
        "max_price": null,
        "min_price": null,
        "price": 99,
        "regular_price": 99,
        "sale_price": 99
      },
      "review_count": 6,
      "short_description": "Additional features for WooCommerce Subscriptions such as Updating Price for Existing Users, Cancel Delay, Auto-Renewal Reminder, etc.",
      "sku": null,
      "slug": "enhancer-for-woocommerce-subscriptions",
      "stock": {
        "availability": null,
        "is_in_stock": true,
        "is_on_backorder": false,
        "is_purchasable": true,
        "low_stock_remaining": null,
        "status": "in-stock"
      },
      "type": "simple",
      "url": "https://woocommerce.com/products/enhancer-for-woocommerce-subscriptions/"
    },
    {
      "average_rating": 4.64,
      "brands": [],
      "categories": [
        {
          "id": 28663,
          "name": "Merchandising",
          "slug": "merchandising"
        },
        {
          "id": 28671,
          "name": "Subscriptions",
          "slug": "subscriptions-merchandising"
        },
        {
          "id": 1021,
          "name": "WooCommerce extensions",
          "slug": "woocommerce-extensions"
        }
      ],
      "has_options": false,
      "id": 18734000055043,
      "images": [
        "https://woocommerce.com/wp-content/uploads/2022/02/bos-product-icon.png",
        "https://woocommerce.com/wp-content/uploads/2022/02/Buy-once-or-subscribe-selection.png",
        "https://woocommerce.com/wp-content/uploads/2022/02/Discount-settings.png",
        "https://woocommerce.com/wp-content/uploads/2022/02/Global-subscription-settings-1.png",
        "https://woocommerce.com/wp-content/uploads/2022/02/Variation-settings.png",
        "https://woocommerce.com/wp-content/uploads/2022/02/Change-subscription-plan-in-cart.png"
      ],
      "name": "Buy Once or Subscribe for WooCommerce Subscriptions",
      "on_sale": false,
      "prices": {
        "currency": "USD",
        "currency_symbol": "$",
        "max_price": null,
        "min_price": null,
        "price": 79,
        "regular_price": 79,
        "sale_price": 79
      },
      "review_count": 11,
      "short_description": "Offer one-time purchases and recurring subscription plans side by side on the same product page — no duplicate listings, no complex setup. Increase recurring revenue, reduce churn, and give every type of customer exactly the flexibility they’re looking for.",
      "sku": null,
      "slug": "buy-once-or-subscribe-for-woocommerce-subscriptions",
      "stock": {
        "availability": null,
        "is_in_stock": true,
        "is_on_backorder": false,
        "is_purchasable": true,
        "low_stock_remaining": null,
        "status": "in-stock"
      },
      "type": "simple",
      "url": "https://woocommerce.com/products/buy-once-or-subscribe-for-woocommerce-subscriptions/"
    },
    {
      "average_rating": 5,
      "brands": [],
      "categories": [
        {
          "id": 28663,
          "name": "Merchandising",
          "slug": "merchandising"
        },
        {
          "id": 28666,
          "name": "Product options",
          "slug": "product-options"
        },
        {
          "id": 28671,
          "name": "Subscriptions",
          "slug": "subscriptions-merchandising"
        },
        {
          "id": 1021,
          "name": "WooCommerce extensions",
          "slug": "woocommerce-extensions"
        }
      ],
      "has_options": false,
      "id": 6267526,
      "images": [
        "https://woocommerce.com/wp-content/uploads/2020/08/mpws-wpextend-marketplace-icon-orange-small.jpg"
      ],
      "name": "Minimum Periods for WooCommerce Subscriptions",
      "on_sale": false,
      "prices": {
        "currency": "USD",
        "currency_symbol": "$",
        "max_price": null,
        "min_price": null,
        "price": 39,
        "regular_price": 39,
        "sale_price": 39
      },
      "review_count": 1,
      "short_description": "Set a minimum subscription term before customers can cancel.",
      "sku": null,
      "slug": "minimum-periods-for-woocommerce-subscriptions",
      "stock": {
        "availability": null,
        "is_in_stock": true,
        "is_on_backorder": false,
        "is_purchasable": true,
        "low_stock_remaining": null,
        "status": "in-stock"
      },
      "type": "simple",
      "url": "https://woocommerce.com/products/minimum-periods-for-woocommerce-subscriptions/"
    },
    {
      "average_rating": 2.63,
      "brands": [],
      "categories": [
        {
          "id": 28671,
          "name": "Subscriptions",
          "slug": "subscriptions-merchandising"
        },
        {
          "id": 1021,
          "name": "WooCommerce extensions",
          "slug": "woocommerce-extensions"
        }
      ],
      "has_options": false,
      "id": 7747886,
      "images": [
        "https://woocommerce.com/wp-content/uploads/2021/03/woo-custom-start-dateicon-1.png"
      ],
      "name": "Custom Start Date for WooCommerce Subscriptions",
      "on_sale": false,
      "prices": {
        "currency": "USD",
        "currency_symbol": "$",
        "max_price": null,
        "min_price": null,
        "price": 89,
        "regular_price": 89,
        "sale_price": 89
      },
      "review_count": 8,
      "short_description": "The only extension that gives you and your customers full control over subscription start dates.",
      "sku": null,
      "slug": "custom-start-date-for-woocommerce-subscriptions",
      "stock": {
        "availability": null,
        "is_in_stock": true,
        "is_on_backorder": false,
        "is_purchasable": true,
        "low_stock_remaining": null,
        "status": "in-stock"
      },
      "type": "simple",
      "url": "https://woocommerce.com/products/custom-start-date-for-woocommerce-subscriptions/"
    }
  ],
  "next_page": 2,
  "observed_at_ms": 1791509594455,
  "page": 1,
  "per_page": 5,
  "query": "subscriptions",
  "store": {
    "host": "woocommerce.com",
    "url": "https://woocommerce.com/"
  },
  "tag": null,
  "total": 19,
  "total_pages": 4
}
```
