Chuyển đến nội dung chính
API Vòng riêng tư Solana truy vấn bộ lập chỉ mục quyền riêng tư. API này trả về trạng thái được mã hóa và siêu dữ liệu giao dịch công khai. Ví của bạn giải mã các tải trọng để đọc số dư riêng tư và lịch sử. Xem tổng quan về quyền riêng tư để tìm hiểu các khái niệm và SDK để biết các quy trình nạp, chuyển và rút tiền.

Số dư công khai và riêng tư

Số dư riêng tư được lưu trữ trong các UTXO (đầu ra giao dịch chưa chi tiêu). UTXO không phải là tài khoản Solana. Xem Trạng thái riêng tư và UTXO để tìm hiểu cách lưu trữ và chi tiêu số dư riêng tư.

Điểm cuối và xác thực

Gửi yêu cầu JSON-RPC 2.0 đến đường dẫn của phương thức bằng khóa API Helius của bạn:
method phải khớp với phân đoạn đường dẫn cuối cùng của URL. Đường dẫn phương thức chấp nhận một yêu cầu duy nhất; các yêu cầu theo lô, trường method trùng lặp và trường hợp đường dẫn/nội dung không khớp sẽ trả về HTTP 400 trước khi thực thi. Để phát triển cục bộ, hãy sử dụng http://127.0.0.1:8784/{method} sau khi khởi động ngăn xếp cục bộ.

Phương thức

getEncryptedUtxosByTags

Tìm các đầu ra được mã hóa theo thẻ xem hoặc vòng.

getShieldedTransactionsByTags

Truy vấn lịch sử giao dịch được bảo vệ theo thẻ xem hoặc vòng.

getShieldedTransactionsBySignature

Truy xuất các sự kiện được bảo vệ cho một giao dịch Solana.

getShieldedTransactionsByNullifiers

Tìm các giao dịch đã chi tiêu những giá trị vô hiệu hóa được cung cấp.

getMerkleProofs

Tìm nạp bằng chứng bao hàm cho các cam kết cây trạng thái.

getNonInclusionProofs

Tìm nạp bằng chứng không bao hàm cho các giá trị vô hiệu hóa.

getNullifierQueueElements

Đọc các giá trị vô hiệu hóa trong hàng đợi theo thứ tự tuần tự.

getUserRecords

Tra cứu các đăng ký địa chỉ được bảo vệ công khai.

Phân trang

getEncryptedUtxosByTags, getShieldedTransactionsByTags và getShieldedTransactionsByNullifiers trả về một trang trong result:
  • data nhóm kết quả theo giao dịch Solana, được sắp xếp theo slot và chữ ký tăng dần. Phương thức UTXO được mã hóa sử dụng một mảng outputs trong mỗi nhóm; các phương thức lịch sử giao dịch sử dụng một mảng events.
  • limit đếm số giao dịch Solana, từ 1 đến 1.000 và mặc định là 1.000. Các đầu ra hoặc sự kiện khớp của một giao dịch được giữ cùng nhau trên một trang.
  • Truyền lại nguyên trạng một paginationToken khác null với cùng thẻ hoặc giá trị vô hiệu hóa, vòng và bộ lọc slot. Tiếp tục cho đến khi token phản hồi là null.
  • filters.slot chấp nhận các giới hạn gt, gte, lt và lte. Các giới hạn được cung cấp được kết hợp bằng AND. Sau khi một lần đọc không giới hạn đạt đến token null, hãy lưu context.slot của trang đó và tiếp tục sau bằng cách đặt filters.slot.gt thành giá trị này. Một lần đọc bị giới hạn bởi lt hoặc lte chỉ bao phủ các slot đến giới hạn đó; hãy tiếp tục từ giới hạn, không phải từ context.slot.
  • Đặt minContextSlot để yêu cầu slot tối thiểu đã được lưu bền vững của bộ lập chỉ mục. Bộ lập chỉ mục cũng yêu cầu slot của paginationToken và của mọi bộ lọc gt hoặc gte. Nếu chưa bắt kịp bất kỳ slot nào trong số này, bộ lập chỉ mục trả về lỗi -32016 cùng với error.data.contextSlot; hãy thử lại sau khi bộ lập chỉ mục bắt kịp.
Phản hồi lịch sử cũng có thể bao gồm outputTreeId, ID cây trạng thái mới nhất không bị tạm dừng. Trường này bị bỏ qua khi không khả dụng. Mỗi đầu ra xác định cây riêng của mình bằng outputContext.treeId. getNullifierQueueElements sử dụng phân trang dựa trên trình tự; xem trang phương thức tương ứng.

Mã hóa dữ liệu

Lỗi

Kiểm tra trường error của JSON-RPC trước khi đọc result, kể cả khi trạng thái HTTP là 200. HTTP 429 cho biết yêu cầu đang bị giới hạn tốc độ; xem giới hạn tốc độ. Xem xác thực để biết cách thiết lập khóa API.