> ## Documentation Index
> Fetch the complete documentation index at: https://www.helius.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# API token có thể thay thế trên Solana: Truy cập dữ liệu token đầy đủ

> Truy vấn tất cả token Solana bằng DAS API: token SPL, tiện ích mở rộng Token-2022, dữ liệu giá USD và số dư thông qua getAsset, getAssetsByOwner và searchAssets.

## Tổng quan

Ban đầu, DAS API chỉ hỗ trợ truy vấn quyền sở hữu đối với NFT và cNFT của Metaplex. Helius đã mở rộng DAS API để hỗ trợ **tất cả token**, bao gồm token SPL thông thường (không có siêu dữ liệu) và Token-2022 (cùng các tiện ích mở rộng của chúng).

Bạn có thể truy vấn số dư token của **bất kỳ** tài khoản nào trên **tất cả** token (SPL, Token-2022, NFT và NFT nén), kèm theo giá token bằng USD. Một token Solana được xác định bởi tài khoản mint của nó. Ví dụ, tài khoản mint của USDC là [EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v](https://explorer.solana.com/address/EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v). Khi bạn mua lượng USDC trị giá 40 USD, một tài khoản token sẽ được tạo để lưu giữ 40 token USDC. Một ví có thể chứa hàng trăm tài khoản token cho các token khác nhau.

Để tìm hiểu thêm về Token-2022, hãy xem [bài viết trên blog](https://www.helius.dev/blog/what-is-token-2022) của Helius.

## Khi nào nên sử dụng

Sử dụng tiện ích mở rộng token có thể thay thế khi bạn muốn có **chế độ xem hợp nhất** về tài sản của một tài khoản — token có thể thay thế, NFT và NFT nén — trong một lệnh gọi DAS duy nhất, kèm theo siêu dữ liệu và giá USD. Đây là lựa chọn phù hợp cho trình theo dõi danh mục đầu tư, ví và bảng điều khiển token.

Sử dụng các phương thức token RPC tiêu chuẩn (`getTokenAccountBalance`, `getTokenAccountsByOwner`, `getTokenSupply`, `getTokenLargestAccounts`) khi bạn chỉ cần các giá trị thô trên chuỗi — số dư của một tài khoản, tổng cung hoặc những người nắm giữ nhiều nhất — mà không cần siêu dữ liệu hoặc giá. Hãy xem [hướng dẫn Lấy token SPL](/docs/vi/das/get-tokens) để biết thêm thông tin.

## Cách hoạt động

Tiện ích mở rộng của Helius dành cho token có thể thay thế xoay quanh việc lập chỉ mục quyền sở hữu. Các phương thức sau cung cấp chế độ xem hợp nhất về tài sản của một tài khoản: [getAsset](/docs/vi/api-reference/das/getasset), [getAssetsByOwner](/docs/vi/api-reference/das/getassetsbyowner) và [searchAssets](/docs/vi/api-reference/das/searchassets).

Tiện ích mở rộng bổ sung một trường có tên `tokenType`, cho phép bạn truy vấn tất cả tài sản mà tài khoản sở hữu, bao gồm token có thể thay thế và token Token-2022. Các tùy chọn cho `tokenType` gồm:

* `fungible`: Trả về tất cả token có thể thay thế.
* `nonFungible`: Trả về tất cả NFT (NFT nén và NFT thông thường).
* `regularNft`: Chỉ trả về NFT thông thường.
* `compressedNft`: Chỉ trả về NFT nén.
* `all`: Trả về tất cả token.

Yêu cầu mẫu:

```json theme={"system"}
{
    "jsonrpc": "2.0",
    "id": "helius-test",
    "method": "searchAssets",
    "params": {
        "ownerAddress": "5aZZ4duJUKiMsJN9vRsoAn4SDX7agvKu7Q3QdFWRfWze",
        "tokenType": "all"
    }
}
```

Phản hồi giờ đây bao gồm các token có thể thay thế như JitoSOL. Mỗi mục chứa tổng số dư tài khoản, địa chỉ chương trình của token, địa chỉ token liên kết, tổng cung đang lưu hành và thông tin giá. Mục rút gọn bên dưới hiển thị các trường liên quan:

```jsonc theme={"system"}
{
    "id": "J1toso1uCk3RLmjorhTtrVwY9HJ7X8V9yYac6Y7kGCPn",
    "content": {
        "$schema": "",
        "json_uri": "",
        "metadata": {
            "description": "MEV-Powered Liquid Staking Derivative",
            "name": "Jito Staked SOL",
            "symbol": "JitoSOL",
            "token_standard": "Fungible"
        }
        // ...
    },
    "token_info": {
        "symbol": "JitoSOL",
        "balance": 35688813508,
        "supply": 5949594702758293,
        "decimals": 9,
        "token_program": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
        "associated_token_address": "H7iLu4DPFpzEx1AGN8BCN7Qg966YFndt781p6ukhgki9",
        "price_info": {
            "price_per_token": 56.47943,
            "total_price": 2015.6838854339217,
            "currency": "USDC"
        }
    }
    // ...
}
```

## Hỗ trợ Token-2022

Helius hỗ trợ token Token-2022 và phân tích cú pháp các tiện ích mở rộng của chúng. Phản hồi bao gồm trường `mint_extensions` nếu token sử dụng chương trình Token-2022. Mục rút gọn bên dưới hiển thị trường `mint_extensions` cho BERN:

```jsonc theme={"system"}
{
    "mint_extensions": {
        "transfer_fee_config": {
            "withheld_amount": 0,
            "newer_transfer_fee": {
                "epoch": 457,
                "maximum_fee": 3906250000000000000,
                "transfer_fee_basis_points": 690
            },
            "older_transfer_fee": {
                "epoch": 455,
                "maximum_fee": 3906250000000000000,
                "transfer_fee_basis_points": 0
            },
            "withdraw_withheld_authority": "7MyTjmRygJoCuDBUtAuSugiYZFULD2SWaoUTmtjtRDzD",
            "transfer_fee_config_authority": "7MyTjmRygJoCuDBUtAuSugiYZFULD2SWaoUTmtjtRDzD"
        }
    }
    // ...
}
```

## Khả năng tương thích ngược

Để đảm bảo khả năng tương thích ngược, hành vi sẽ giống hệt DAS ban đầu khi `tokenType` bị bỏ qua: chỉ NFT và NFT nén được trả về.

```json theme={"system"}
{
    "jsonrpc": "2.0",
    "id": "helius-test",
    "method": "searchAssets",
    "params": {
        "ownerAddress": "5aZZ4duJUKiMsJN9vRsoAn4SDX7agvKu7Q3QdFWRfWze"
    }
}
```

## Các bước tiếp theo

<CardGroup cols={3}>
  <Card title="Get SPL Tokens" icon="coins" href="/docs/vi/das/get-tokens">
    Số dư, nguồn cung, người nắm giữ và tài khoản token.
  </Card>

  <Card title="Search Assets" icon="magnifying-glass" href="/docs/vi/das/search">
    Lọc theo tokenType, chủ sở hữu và bộ sưu tập.
  </Card>

  <Card title="searchAssets reference" icon="code" href="/docs/vi/api-reference/das/searchassets">
    Lược đồ yêu cầu và phản hồi đầy đủ.
  </Card>
</CardGroup>
