# List category items

Returns item ids for one page of an eBay category browse listing. Category is identified by the (slug, category_id, bn_id) triple published by /ebay/category/tree, not a single opaque id. Returns null for an invalid slug/category_id/bn_id combination.

- Platform: eBay
- Request: `GET https://api.toolzerhub.com/v1/ebay/category/products`
- Auth: `x-api-key` header
- Cost: 1 credit per successful request. Failed requests are not billed.
- Page: https://docs.toolzerhub.com/reference/ebay/category/get-e-bay-category-products

| Parameter | In | Required | Type | Description |
| --- | --- | --- | --- | --- |
| `slug` | query | yes | string | Category URL slug, as published by /ebay/category/tree (the /b/ /... path segment). |
| `category_id` | query | yes | integer | Category ID, as published by /ebay/category/tree. |
| `bn_id` | query | yes | integer | Category bn_id, as published by /ebay/category/tree. |
| `page` | query | no | integer | 1-indexed page number (eBay's own _pgn). ~65-70 items per page. Pages are independent fetches — dedupe by item_id across pages if you walk more than one; ~10% of each page repeats page 1 (promoted listings). Default: 1. |

## Example request

```bash
curl "https://api.toolzerhub.com/v1/ebay/category/products?slug=<slug>&category_id=<category_id>&bn_id=<bn_id>" \
  -H "x-api-key: $TOOLZERHUB_API_KEY"
```

Success responses are wrapped as `{ "data": ... }`. Errors return `{ "error": { "code", "status", "message", "retryable", "details" } }`. See https://docs.toolzerhub.com/docs/responses-and-errors.
