Yêu cầu cấp quyền
✧ Mở bằng AI
GET https://api.pay2s.vn/api/v1/oauth/authorize
Xác thực
Đăng nhập Pay2S.
Tham số
Định dạng: query URL.
| Trường | Kiểu nhập | Yêu cầu |
|---|---|---|
client_id |
string | Bắt buộc |
redirect_uri |
string | Bắt buộc |
response_type |
string | Bắt buộc |
scope |
string | Bắt buộc |
state |
string | Bắt buộc |
code_challenge |
string | Bắt buộc |
code_challenge_method |
string | Bắt buộc |
Mở bằng trình duyệt, không gọi fetch. Callback nhận code, state, iss; từ chối nhận error=access_denied. redirect_uri phải trùng URL HTTPS đã đăng ký. state dài 16–512 ký tự. PKCE bắt buộc S256.
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. Code mẫu cURL, Node.js và PHP nằm dưới form Playground.
Lỗi cần xử lý
invalid_request, invalid_scope, invalid_redirect_uri, app_not_approved, personal_app_owner_only. Xem bảng lỗi.
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 · Yêu cầu cấp quyền
Đối chiếu mã nguồn backend; giá trị minh họa. Mở bằng trình duyệt, không gọi fetch. Callback nhận code, state, iss; từ chối nhận error=access_denied. redirect_uri phải trùng URL HTTPS đã đăng ký. state dài 16–512 ký tự. PKCE bắt buộc S256.
GET /api/v1/oauth/authorize
Tham số path/query (không gửi JSON body):
{
"client_id": "",
"redirect_uri": "",
"response_type": "code",
"scope": "accounts:read transactions:read",
"state": "",
"code_challenge": "",
"code_challenge_method": "S256"
}
HTTP 302. Response chuyển hướng HTTP (object dưới đây chỉ mô tả Location, không phải JSON API trả về):
{
"redirect": "https://pay2s.vn/client/oauth-consent?id=EXAMPLE"
}