Commit 48203942fb for woocommerce
commit 48203942fb99503ded7056b54104631d4ac501c3
Author: Abdalsalaam Halawa <abdalsalaamnafez@gmail.com>
Date: Fri Dec 26 14:07:02 2025 +0100
Add Missing Request Parameters for Taxonomy Endpoints (#62548)
* Add Missing Request Parameters for Taxonomy Endpoints
* Fix attributes types
* revert
* Add allowed values to `rating` in products endpoint.
* Add allowed values to `per_page` in the product categories endpoint
* Add allowed values to `per_page` in the product tags endpoint
* Add allowed values to `per_page` in the product brands endpoint
* Fix table formatting
* Fix table formatting
* Fix table formatting
* Fix table formatting in products
* Fix table formatting in product brands docs
* Fixing docs in product-brands
---------
Co-authored-by: Marin Atanasov <8436925+tyxla@users.noreply.github.com>
diff --git a/docs/apis/store-api/resources-endpoints/product-brands.md b/docs/apis/store-api/resources-endpoints/product-brands.md
index 855ec47db7..e5558db36f 100644
--- a/docs/apis/store-api/resources-endpoints/product-brands.md
+++ b/docs/apis/store-api/resources-endpoints/product-brands.md
@@ -6,7 +6,18 @@
GET /products/brands
```
-There are no parameters required for this endpoint.
+| Attribute | Type | Required | Description |
+| :----------- | :------ | :------: | :-------------------------------------------------------------------------------------------------------------------- |
+| `context` | string | No | Scope under which the request is made; determines fields present in response. |
+| `page` | integer | No | Current page of the collection. Defaults to `1`. |
+| `per_page` | integer | No | Maximum number of items to be returned in result set. Defaults to no limit. Values between `0` and `100` are allowed. |
+| `search` | string | No | Limit results to those matching a string. |
+| `exclude` | array | No | Ensure result set excludes specific IDs. |
+| `include` | array | No | Limit result set to specific IDs. |
+| `order` | string | No | Sort ascending or descending. Allowed values: `asc`, `desc`. Defaults to `asc`. |
+| `orderby` | string | No | Sort by term property. Allowed values: `name`, `slug`, `count`. Defaults to `name`. |
+| `hide_empty` | boolean | No | If true, empty terms will not be returned. Defaults to `true`. |
+| `parent` | integer | No | Limit results to those with a specific parent ID. |
```sh
curl "https://example-store.com/wp-json/wc/store/v1/products/brands"
@@ -63,9 +74,9 @@ or
GET /products/brands/:slug
```
-| Parameter | Type | Required | Description |
-| :-------- | :------ | :------: |:---------------------------------------------------------------------|
-| `identifier` | string | Yes | The identifier of the brand to retrieve. Can be an brand ID or slug. |
+| Parameter | Type | Required | Description |
+| :-------- | :------ | :------: |:---------------------------------------------------------------------|
+| `identifier` | string | Yes | The identifier of the brand to retrieve. Can be a brand ID or slug. |
```sh
curl "https://example-store.com/wp-json/wc/store/v1/products/brands/1"
diff --git a/docs/apis/store-api/resources-endpoints/product-categories.md b/docs/apis/store-api/resources-endpoints/product-categories.md
index 3580a6a8c9..f56d389b8e 100644
--- a/docs/apis/store-api/resources-endpoints/product-categories.md
+++ b/docs/apis/store-api/resources-endpoints/product-categories.md
@@ -6,7 +6,18 @@
GET /products/categories
```
-There are no parameters required for this endpoint.
+| Attribute | Type | Required | Description |
+| :----------- | :------ | :------: | :-------------------------------------------------------------------------------------------------------------------- |
+| `context` | string | No | Scope under which the request is made; determines fields present in response. |
+| `page` | integer | No | Current page of the collection. Defaults to `1`. |
+| `per_page` | integer | No | Maximum number of items to be returned in result set. Defaults to no limit. Values between `0` and `100` are allowed. |
+| `search` | string | No | Limit results to those matching a string. |
+| `exclude` | array | No | Ensure result set excludes specific IDs. |
+| `include` | array | No | Limit result set to specific IDs. |
+| `order` | string | No | Sort ascending or descending. Allowed values: `asc`, `desc`. Defaults to `asc`. |
+| `orderby` | string | No | Sort by term property. Allowed values: `name`, `slug`, `count`. Defaults to `name`. |
+| `hide_empty` | boolean | No | If true, empty terms will not be returned. Defaults to `true`. |
+| `parent` | integer | No | Limit results to those with a specific parent ID. |
```sh
curl "https://example-store.com/wp-json/wc/store/v1/products/categories"
diff --git a/docs/apis/store-api/resources-endpoints/product-tags.md b/docs/apis/store-api/resources-endpoints/product-tags.md
index d5f1e6032d..8daf95b110 100644
--- a/docs/apis/store-api/resources-endpoints/product-tags.md
+++ b/docs/apis/store-api/resources-endpoints/product-tags.md
@@ -6,7 +6,17 @@
GET /products/tags
```
-There are no parameters required for this endpoint.
+| Attribute | Type | Required | Description |
+| :----------- | :------ | :------: | :-------------------------------------------------------------------------------------------------------------------- |
+| `context` | string | No | Scope under which the request is made; determines fields present in response. |
+| `page` | integer | No | Current page of the collection. Defaults to `1`. |
+| `per_page` | integer | No | Maximum number of items to be returned in result set. Defaults to no limit. Values between `0` and `100` are allowed. |
+| `search` | string | No | Limit results to those matching a string. |
+| `exclude` | array | No | Ensure result set excludes specific IDs. |
+| `include` | array | No | Limit result set to specific IDs. |
+| `order` | string | No | Sort ascending or descending. Allowed values: `asc`, `desc`. Defaults to `asc`. |
+| `orderby` | string | No | Sort by term property. Allowed values: `name`, `slug`, `count`. Defaults to `name`. |
+| `hide_empty` | boolean | No | If true, empty terms will not be returned. Defaults to `true`. |
```sh
curl "https://example-store.com/wp-json/wc/store/v1/products/tags"
diff --git a/docs/apis/store-api/resources-endpoints/products.md b/docs/apis/store-api/resources-endpoints/products.md
index babeed907c..7e13789504 100644
--- a/docs/apis/store-api/resources-endpoints/products.md
+++ b/docs/apis/store-api/resources-endpoints/products.md
@@ -37,7 +37,7 @@ GET /products?return_rating_counts=true
| Attribute | Type | Required | Description |
| :------------------------------------------ | :------ | :------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| `search` | integer | no | Limit results to those matching a string. |
+| `search` | string | no | Limit results to those matching a string. |
| `slug` | string | no | Limit result set to products with specific slug(s). Use commas to separate. |
| `after` | string | no | Limit response to resources created after a given ISO8601 compliant date. |
| `before` | string | no | Limit response to resources created before a given ISO8601 compliant date. |
@@ -52,10 +52,10 @@ GET /products?return_rating_counts=true
| `type` | string | no | Limit result set to products assigned a specific type. |
| `sku` | string | no | Limit result set to products with specific SKU(s). Use commas to separate. |
| `featured` | boolean | no | Limit result set to featured products. |
-| `category` | string | no | Limit result set to products assigned to categories IDs or slugs, separated by commas. |
+| `category` | string | no | Limit result set to products assigned to categories IDs or slugs, separated by commas. |
| `category_operator` | string | no | Operator to compare product category terms. Allowed values: `in`, `not_in`, `and` |
-| `brand` | string | no | Limit result set to products assigned to brands IDs or slugs, separated by commas. |
-| `brand_operator` | string | no | Operator to compare product brand terms. Allowed values: `in`, `not_in`, `and` |
+| `brand` | string | no | Limit result set to products assigned to brands IDs or slugs, separated by commas. |
+| `brand_operator` | string | no | Operator to compare product brand terms. Allowed values: `in`, `not_in`, `and` |
| `_unstable_tax_[product-taxonomy]` | string | no | Limit result set to products assigned to the term ID of that custom product taxonomy. `[product-taxonomy]` should be the key of the custom product taxonomy registered. |
| `_unstable_tax_[product-taxonomy]_operator` | string | no | Operator to compare custom product taxonomy terms. Allowed values: `in`, `not_in`, `and` |
| `tag` | string | no | Limit result set to products assigned a specific tag ID. |
@@ -67,7 +67,7 @@ GET /products?return_rating_counts=true
| `attributes` | array | no | Limit result set to specific attribute terms. Expects an array of objects containing `attribute` (taxonomy), `term_id` or `slug`, and optional `operator` for comparison. |
| `attribute_relation` | string | no | The logical relationship between attributes when filtering across multiple at once. |
| `catalog_visibility` | string | no | Determines if hidden or visible catalog products are shown. Allowed values: `any`, `visible`, `catalog`, `search`, `hidden` |
-| `rating` | boolean | no | Limit result set to products with a certain average rating. |
+| `rating` | array | no | Limit result set to products with a certain average rating. Allowed values: `1`, `2`, `3`, `4`, `5`. |
```sh
curl "https://example-store.com/wp-json/wc/store/v1/products"