# Fetch a list of merchant webhooks

`GET /v2/merchant/webhooks`

Fetch a list of merchant webhooks filtered by optional status and paginated using `start_from`. 

Limit 200 records per response.

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `api` | query | string | required | Your [WAXPEER API](https://waxpeer.com/profile/user) |
| `merchant` | query | string | required | Your merchant name |
| `status` | query | enum | optional | Filter webhooks by status. If not provided, all statuses will be returned |
| `start_from` | query | integer | optional | Start from webhook ID (Optional for pagination) |

## Example (curl)

```bash
curl -X GET 'https://api.waxpeer.com/v2/merchant/webhooks?api=%7B%7BAPI_KEY%7D%7D&merchant=my_merchant&status=pending'
```

## Example response

```json
{
  "status": "success",
  "data": [
    {
      "transaction_id": 123456,
      "deposit_id": "123456asd",
      "steam_trade": 789012,
      "status": "completed",
      "status_code": 200,
      "created_at": "2023-10-05T12:34:56Z",
      "updated_at": "2023-10-05T12:40:00Z",
      "attempts": [
        {
          "attempt": 1,
          "status_code": 200,
          "created_at": "2023-10-05T12:34:56Z"
        }
      ]
    }
  ],
  "start_from": 123456
}
```

## Responses

- `200` **Please open the schema to see the response structure, fields, and their descriptions**

## Notes for agents

- Auth is the query parameter `api`, not an Authorization header.
- See [/statuses.md](/statuses.md) for numeric trade status plus `escrow_status` / `release_date`.
- Prefer GET /v2/search-items-by-name over v1.
- Do not use GET /v1/ready-to-transfer-p2p; use the [trade websocket](/websocket.md).
