API đại lý

API HTTP tương thích PerfectPanel v2. Một endpoint, các thao tác có cấu trúc và mã lỗi ổn định — bán lại danh mục của chúng tôi dưới thương hiệu của bạn.

PerfectPanel v2Error codes v16 thao tác
Trên trang này

Base URL

POST/api/v2

Content-Type: application/x-www-form-urlencodedJSON cũng được chấp nhận. Mọi thao tác dùng chung endpoint này; chọn bằng trường action. Base URL là host panel của bạn.

Xác thực

Tạo và quản lý khóa API trong mục Account → API keys. Gửi khóa kèm mọi yêu cầu:

  • key=YOUR_KEYdưới dạng trường trong thân yêu cầu
  • Authorization: Bearer YOUR_KEYhoặc dưới dạng HTTP header

Thao tác

6 thao tác
action=services

Liệt kê các dịch vụ khả dụng cho tài khoản của bạn.

Trả về service, name, type, category, platform, rate (giá trên 1000), min, max, refill, cancel, currency.

action=addđặt một đơn
TrườngBắt buộcGhi chú
servicebắt buộcid dịch vụ
linkbắt buộcliên kết đích
quantitydịch vụ chuẩnsố lượng đơn vị
commentscomment tùy chỉnhmỗi dòng một comment
idempotency_keykhuyến nghịthử lại an toàn — cùng khóa trả về cùng một đơn

Trả về order, status, charge, currency.

action=status

Một đơn: order=ID · nhiều đơn: orders=ID1,ID2 — trả về một object khóa theo id đơn.

Trả về status, charge, start_count, remains, refunded, currency.

action=balanceaction=refillaction=cancel

balance{ balance, currency }. refill/cancel tác động lên một đơn đã có{ refill|cancel: ACTION_ID }. Không phải dịch vụ nào cũng hỗ trợ refill hoặc cancel; yêu cầu không hỗ trợ sẽ trả về mã lỗi.

Mã lỗi

code theo mã, không theo thông điệp · phiên bản 1
HTTPÝ nghĩa
UNAUTHORIZED401khóa API sai hoặc thiếu
SELLER_DISABLED403tài khoản bị vô hiệu hóa
RATE_LIMITED429quá nhiều yêu cầu
SERVICE_NOT_FOUND404id dịch vụ không tồn tại
SERVICE_DISABLED409dịch vụ đang tắt
INVALID_INPUT400liên kết, số lượng hoặc dịch vụ không hợp lệ
INVALID_QUANTITY400số lượng ngoài khoảng [min, max]
INSUFFICIENT_FUNDS402số dư không đủ
IDEMPOTENCY_CONFLICT409khóa được dùng lại cho một đơn khác
ORDER_REJECTED422đơn bị từ chối khi thực hiện — đã hoàn tiền đầy đủ
ORDER_TOO_LARGE422khoản phí vượt trần mỗi đơn
ORDER_NOT_FOUND404không tìm thấy đơn hoặc đơn không thuộc bạn
UNSUPPORTED_ACTION422refill hoặc cancel không khả dụng
ACTION_FAILED502refill/cancel không hoàn tất được — thử lại sau
INTERNAL500lỗi không mong đợi

Giới hạn tần suất

Yêu cầu bị giới hạn theo IP — mặc định 600 yêu cầu mỗi phút. Hãy poll trạng thái theo lô với orders= thay vì mỗi đơn một lần gọi.

Ví dụ

Đặt một đơn bằng một yêu cầu:

curl -X POST https://your-panel/api/v2 \
  -d key=YOUR_KEY \
  -d action=add \
  -d service=123 \
  -d link=https://example.com/target \
  -d quantity=1000 \
  -d idempotency_key=my-unique-ref-001