# Danh sách webhook

`GET https://api.pay2s.vn/api/v1/oauth/webhooks`

## Xác thực

Bearer. Scope cần có: `webhooks:read`. Gửi header `Authorization: Bearer ACCESS_TOKEN`.

## Tham số

Định dạng: **query URL**.

Không có tham số request.

Chỉ liệt kê webhook của kết nối hiện tại và ứng dụng hiện tại. Không trả signing_secret. direction là hướng IN, OUT hoặc ALL; active có thể là số/chuỗi 0 hoặc 1. Webhook đã xóa không được liệt kê.

Cần gói Pay2S còn hoạt động. Dữ liệu chỉ thuộc tài khoản/ngân hàng được cấp quyền; tài khoản demo chỉ đọc ngân hàng và giao dịch demo.

## Cách thử

Mở Playground bằng nút đầu trang, nhập thông tin của ứng dụng hoặc Access Token đã được cấp. [Hướng dẫn toàn bộ luồng](/docs/oauth/quickstart/). Code mẫu cURL, Node.js và PHP nằm dưới form Playground.

## Lỗi cần xử lý

`invalid_token` (401), `insufficient_scope` hoặc `active_plan_required` (403), dữ liệu không hợp lệ (422). Xem [bảng lỗi](/docs/oauth/errors/).


## Request và response tham khảo

Các mẫu dưới đây giữ cấu trúc trường và kiểu dữ liệu. Khóa, chữ ký, URL phiên đã được thay bằng placeholder; danh sách chỉ giữ tối đa hai phần tử và dữ liệu ảnh/PDF/XML dài được rút gọn. Không sao chép placeholder để gọi API thật.

### OAuth · Danh sách webhook

<div class="doc-api-actions" data-doc-api-actions><a class="try-button" data-doc-playground href="/playground/?api=oauth-webhooks-list">Thử API trong Playground ↗</a><a class="try-button experience-button" data-doc-experience hidden>Trải nghiệm ↗</a></div>

**Đối chiếu mã nguồn backend; giá trị minh họa.** Chỉ liệt kê webhook của kết nối hiện tại và ứng dụng hiện tại. Không trả signing_secret. direction là hướng IN, OUT hoặc ALL; active có thể là số/chuỗi 0 hoặc 1. Webhook đã xóa không được liệt kê.

`GET /api/v1/oauth/webhooks`

Tham số path/query (không gửi JSON body):

```json
{}
```

HTTP 200. Response:

```json
{
  "data": [
    {
      "id": "WEBHOOK_ID_64_HEX",
      "bank_id": 123,
      "destination": "https://shop.example/webhooks/pay2s",
      "active": 1,
      "direction": "IN"
    }
  ]
}
```
