# Open API


# Welcome

Built for DeFi Developers.

## Welcome to DeBank OpenAPI

Welcome to DeBank OpenAPI! Here you'll find all the documentation you need to get up and running with the DeBank OpenAPI.

## API keys

Register an account on our [website](https://cloud.debank.com/), you will get the access key.

if you need units, you can purchase them through our dashborad.

## Rate limit

For API requests using our Pro Plan, you can make up to 100 requests per second.

If you want a higher rate limit, please contact us at <hello.cloud@debank.com> .

## Updates to Our Policy

{% hint style="info" %}
**Good to know:** We prefer keep our policy as steady as possible. In terms of any potential changes regarding pricing policy & terms of use, etc, we will announce at least 3 months in advance.
{% endhint %}

Follow us on [Twitter](https://twitter.com/debankcloud), where we will be posting about our APIs breaking changes. To avoid disruption to your users, ensure that you perform the recommended actions by DeBank before the release date of the breaking change.

## Dive deeper?

Dive a little deeper and start exploring our API reference to get an idea of everything that's possible with the API:


# API Reference

Dive into the specifics of each API endpoint by checking out our full documentation.

## Chain

Get chain info

{% content-ref url="/pages/7FyUKvUhzWJ9mQNC7NMI" %}
[Chain](/en/readme/api-pro-reference/chain)
{% endcontent-ref %}

## Protocol

Get protocol info

{% content-ref url="/pages/XO7hEWsxLOrogebqyxQk" %}
[Protocol](/en/readme/api-pro-reference/protocol)
{% endcontent-ref %}

## Token

Get token info

{% content-ref url="/pages/pdA0WoNH3cqB4uAURMOq" %}
[Token](/en/readme/api-pro-reference/token)
{% endcontent-ref %}

## User

Get user info such as total balance, token list, and portfolio in each protocol

{% content-ref url="/pages/BUttAGbPEi3I9DH1rABX" %}
[User](/en/readme/api-pro-reference/user)
{% endcontent-ref %}

## Wallet

Get some wallet abilities, such as explain tx, check tx.

{% content-ref url="/pages/J7tUP8vLfCqIRoYVIZdN" %}
[Wallet](/en/readme/api-pro-reference/wallet)
{% endcontent-ref %}


# Chain

The Chain API allows you to easily get chain information.

## Get chain information

#### Method

get

#### Path

/v1/chain

#### Parameters

* `id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](#returns-1).

#### Returns

`Object` - An object with following fields:

* `id` : `string` - The chain's id.
* `community_id` : `integer` - The community-identified id.
* `name` : `string` - The chain's name.
* `logo_url` : `string` URL of the chain's logo image. `null` if not available.
* `native_token_id` : `string` - The native token's id.
* `wrapped_token_id`: `string` - Wrapped version (ERC-20) of the native token.
* `is_support_pre_exec`: `boolean` - Whether or not the chain support pre exec tx api, [for more info](/en/readme/api-pro-reference/wallet#pre-execute-tx).

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/chain?id=eth' \
  -H 'accept: application/json' -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
{
  "id": "eth",
  "community_id": 1,
  "name": "Ethereum",
  "native_token_id": "eth",
  "logo_url": "https://static.debank.com/image/chain/logo_url/eth/42ba589cd077e7bdd97db6480b0ff61d.png",
  "wrapped_token_id": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
  "is_support_pre_exec": true
}
```

## Get supported chain list

#### Method

get

#### Path

/v1/chain/list

#### Parameters

none

#### Returns

`Array` of `Object` - An object with following fields:

* `id` : `string` - The chain's id.
* `community_id` : `integer` - The community-identified id.
* `name` : `string` - The chain's name.
* `logo_url` : `string` URL of the chain's logo image. `null` if not available.
* `native_token_id` : `string` - The native token's id.
* `wrapped_token_id`: `string` - The address of the native token.
* `is_support_pre_exec`: `boolean` - Whether or not the chain support pre exec tx api, [for more info](/en/readme/api-pro-reference/wallet#pre-execute-tx).

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/chain/list' \
  -H 'accept: application/json' -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```
[
    {
        "id": "eth",
        "community_id": 1,
        "name": "Ethereum",
        "native_token_id": "eth",
        "logo_url": "https://static.debank.com/image/chain/logo_url/eth/42ba589cd077e7bdd97db6480b0ff61d.png",
        "wrapped_token_id": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
        "is_support_pre_exec": true
    },
    {
        "id": "bsc",
        "community_id": 56,
        "name": "BNB Chain",
        "native_token_id": "bsc",
        "logo_url": "https://static.debank.com/image/chain/logo_url/bsc/bc73fa84b7fc5337905e527dadcbc854.png",
        "wrapped_token_id": "0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c",
        "is_support_pre_exec": true
    },
    {
        "id": "base",
        "community_id": 8453,
        "name": "Base",
        "native_token_id": "base",
        "logo_url": "https://static.debank.com/image/chain/logo_url/base/ccc1513e4f390542c4fb2f4b88ce9579.png",
        "wrapped_token_id": "0x4200000000000000000000000000000000000006",
        "is_support_pre_exec": true
    },
    {
        "id": "arb",
        "community_id": 42161,
        "name": "Arbitrum",
        "native_token_id": "arb",
        "logo_url": "https://static.debank.com/image/chain/logo_url/arb/854f629937ce94bebeb2cd38fb336de7.png",
        "wrapped_token_id": "0x82af49447d8a07e3bd95bd0d56f35241523fbab1",
        "is_support_pre_exec": true
    },
    {
        "id": "matic",
        "community_id": 137,
        "name": "Polygon",
        "native_token_id": "matic",
        "logo_url": "https://static.debank.com/image/chain/logo_url/matic/52ca152c08831e4765506c9bd75767e8.png",
        "wrapped_token_id": "0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270",
        "is_support_pre_exec": true
    },
    {
        "id": "avax",
        "community_id": 43114,
        "name": "Avalanche",
        "native_token_id": "avax",
        "logo_url": "https://static.debank.com/image/chain/logo_url/avax/4d1649e8a0c7dec9de3491b81807d402.png",
        "wrapped_token_id": "0xb31f66aa3c1e785363f0875a1b74e27b85fd66c7",
        "is_support_pre_exec": true
    },
    {
        "id": "op",
        "community_id": 10,
        "name": "OP",
        "native_token_id": "op",
        "logo_url": "https://static.debank.com/image/chain/logo_url/op/01ae734fe781c9c2ae6a4cc7e9244056.png",
        "wrapped_token_id": "0x4200000000000000000000000000000000000006",
        "is_support_pre_exec": true
    },
    {
        "id": "b2",
        "community_id": 223,
        "name": "B²",
        "native_token_id": "b2",
        "logo_url": "https://static.debank.com/image/chain/logo_url/b2/6ca6c8bc33af59c5b9273a2b7efbd236.png",
        "wrapped_token_id": "0x4200000000000000000000000000000000000006",
        "is_support_pre_exec": true
    },
    {
        "id": "mnt",
        "community_id": 5000,
        "name": "Mantle",
        "native_token_id": "mnt",
        "logo_url": "https://static.debank.com/image/chain/logo_url/mnt/0af11a52431d60ded59655c7ca7e1475.png",
        "wrapped_token_id": "0x78c1b0c915c4faa5fffa6cabf0219da63d7f4cb8",
        "is_support_pre_exec": true
    },
    {
        "id": "ftm",
        "community_id": 250,
        "name": "Fantom",
        "native_token_id": "ftm",
        "logo_url": "https://static.debank.com/image/chain/logo_url/ftm/14133435f89637157a4405e954e1b1b2.png",
        "wrapped_token_id": "0x21be370d5312f44cb42ce377bc9b8a0cef1a4c83",
        "is_support_pre_exec": true
    },
    {
        "id": "sonic",
        "community_id": 146,
        "name": "Sonic",
        "native_token_id": "sonic",
        "logo_url": "https://static.debank.com/image/chain/logo_url/sonic/f4e61549f8f73ca5ec3bab454575410c.png",
        "wrapped_token_id": "0x039e2fb66102314ce7b64ce5ce3e5183bc94ad38",
        "is_support_pre_exec": true
    },
    {
        "id": "cro",
        "community_id": 25,
        "name": "Cronos",
        "native_token_id": "cro",
        "logo_url": "https://static.debank.com/image/chain/logo_url/cro/f947000cc879ee8ffa032793808c741c.png",
        "wrapped_token_id": "0x5c7f8a570d578ed84e63fdfa7b1ee72deae1ae23",
        "is_support_pre_exec": true
    },
    {
        "id": "core",
        "community_id": 1116,
        "name": "CORE",
        "native_token_id": "core",
        "logo_url": "https://static.debank.com/image/chain/logo_url/core/ccc02f660e5dd410b23ca3250ae7c060.png",
        "wrapped_token_id": "0x40375c92d9faf44d2f9db9bd9ba41a3317a2404f",
        "is_support_pre_exec": true
    },
    {
        "id": "xdai",
        "community_id": 100,
        "name": "Gnosis Chain",
        "native_token_id": "xdai",
        "logo_url": "https://static.debank.com/image/chain/logo_url/xdai/43c1e09e93e68c9f0f3b132976394529.png",
        "wrapped_token_id": "0xe91d153e0b41518a2ce8dd3d7944fa863463a97d",
        "is_support_pre_exec": true
    },
    {
        "id": "blast",
        "community_id": 81457,
        "name": "Blast",
        "native_token_id": "blast",
        "logo_url": "https://static.debank.com/image/chain/logo_url/blast/15132294afd38ce980639a381ee30149.png",
        "wrapped_token_id": "0x4300000000000000000000000000000000000004",
        "is_support_pre_exec": true
    },
    {
        "id": "merlin",
        "community_id": 4200,
        "name": "Merlin",
        "native_token_id": "merlin",
        "logo_url": "https://static.debank.com/image/chain/logo_url/merlin/458e4686dfb909ba871bd96fe45417a8.png",
        "wrapped_token_id": "0xf6d226f9dc15d9bb51182815b320d3fbe324e1ba",
        "is_support_pre_exec": false
    },
    {
        "id": "mode",
        "community_id": 34443,
        "name": "Mode",
        "native_token_id": "mode",
        "logo_url": "https://static.debank.com/image/chain/logo_url/mode/466e6e12f4fd827f8f497cceb0601a5e.png",
        "wrapped_token_id": "0x4200000000000000000000000000000000000006",
        "is_support_pre_exec": true
    },
    {
        "id": "taiko",
        "community_id": 167000,
        "name": "Taiko",
        "native_token_id": "taiko",
        "logo_url": "https://static.debank.com/image/chain/logo_url/taiko/7723fbdb38ef181cd07a8b8691671e6b.png",
        "wrapped_token_id": "0xa51894664a773981c6c112c43ce576f315d5b1b6",
        "is_support_pre_exec": true
    },
    {
        "id": "linea",
        "community_id": 59144,
        "name": "Linea",
        "native_token_id": "linea",
        "logo_url": "https://static.debank.com/image/chain/logo_url/linea/32d4ff2cf92c766ace975559c232179c.png",
        "wrapped_token_id": "0xe5d7c2a44ffddf6b295a15c148167daaaf5cf34f",
        "is_support_pre_exec": true
    },
    {
        "id": "klay",
        "community_id": 8217,
        "name": "Kaia",
        "native_token_id": "klay",
        "logo_url": "https://static.debank.com/image/chain/logo_url/klay/4182ee077031d843a57e42746c30c072.png",
        "wrapped_token_id": "0xe4f05a66ec68b54a58b17c22107b02e0232cc817",
        "is_support_pre_exec": true
    },
    {
        "id": "era",
        "community_id": 324,
        "name": "zkSync Era",
        "native_token_id": "era",
        "logo_url": "https://static.debank.com/image/chain/logo_url/era/2cfcd0c8436b05d811b03935f6c1d7da.png",
        "wrapped_token_id": "0x5aea5775959fbc2557cc8789bc1bf90a239d9a91",
        "is_support_pre_exec": true
    },
    {
        "id": "scrl",
        "community_id": 534352,
        "name": "Scroll",
        "native_token_id": "scrl",
        "logo_url": "https://static.debank.com/image/chain/logo_url/scrl/1fa5c7e0bfd353ed0a97c1476c9c42d2.png",
        "wrapped_token_id": "0x5300000000000000000000000000000000000004",
        "is_support_pre_exec": true
    },
    {
        "id": "manta",
        "community_id": 169,
        "name": "Manta Pacific",
        "native_token_id": "manta",
        "logo_url": "https://static.debank.com/image/chain/logo_url/manta/0e25a60b96a29d6a5b9e524be7565845.png",
        "wrapped_token_id": "0x0dc808adce2099a9f62aa87d9670745aba741746",
        "is_support_pre_exec": true
    },
    {
        "id": "celo",
        "community_id": 42220,
        "name": "Celo",
        "native_token_id": "celo",
        "logo_url": "https://static.debank.com/image/chain/logo_url/celo/faae2c36714d55db1d7a36aba5868f6a.png",
        "wrapped_token_id": "0x471ece3750da237f93b8e339c536989b8978a438",
        "is_support_pre_exec": true
    },
    {
        "id": "metis",
        "community_id": 1088,
        "name": "Metis",
        "native_token_id": "metis",
        "logo_url": "https://static.debank.com/image/chain/logo_url/metis/7485c0a61c1e05fdf707113b6b6ac917.png",
        "wrapped_token_id": "0x75cb093e4d61d2a2e65d8e0bbb01de8d89b53481",
        "is_support_pre_exec": true
    }
]
```


# Protocol

The Protocol API allows you to easily get protocol information.

## Get protocol information

#### Method

get

#### Path

/v1/protocol

#### Parameters

* `id` : required, eg: `bsc_pancakeswap`, `curve`, `uniswap`, [for more info](#returns-1).

#### Returns

`Object` - An object with following fields:

* `id` : `string` - The protocol's id.
* `chain` : `string` - The chain's id.
* `name` : `string` - The protocol's name. `null` if not defined in the contract and not available from other sources.
* `logo_url` : `string` - URL of the protocol's logo image. `null` if not available.
* `site_url` : `string` - prioritize websites that can be interacted with, not official websites.
* `has_supported_portfolio` : `boolean` - Is the portfolio already supported.
* `tvl`: `integer` - User deposit value in this protocol.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/protocol?id=compound' \
  -H 'accept: application/json' -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
{
  "id": "compound",
  "chain": "eth",
  "name": "Compound",
  "site_url": "https://app.compound.finance",
  "logo_url": "https://static.debank.com/image/project/logo_url/compound/0b792243f1f68e9ed082f5a49ee6f21d.png",
  "has_supported_portfolio": true,
  "tvl": 12763095483.420198
}
```

## Get the list of the protocol information

#### Method

get

#### Path

/v1/protocol/list

#### Parameters

* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).

#### Returns

`Array` of `Object` - An object with following fields:

* `id` : `string` - The protocol's id.
* `chain` : `string` - The chain's id.
* `name` : `string` - The protocol's name. `null` if not defined in the contract and not available from other sources.
* `logo_url` : `string` - URL of the protocol's logo image. `null` if not available.
* `site_url` : `string` - prioritize websites that can be interacted with, not official websites.
* `has_supported_portfolio` : `boolean` - Is the portfolio already supported.
* `tvl`: `integer` - User deposit value in this protocol.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X GET "https://pro-openapi.debank.com/v1/protocol/list?chain_id=eth" \
    -H "accept: application/json" -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
[
  {
    "id": "0x",
    "chain": "eth",
    "name": "0x",
    "site_url": "https://0x.org",
    "logo_url": "https://static.debank.com/image/project/logo_url/0x/140b607264f4741133c35eb32c6bc314.png",
    "has_supported_portfolio": true,
    "tvl": 76569161.44038972
  },
  {
    "id": "1inch",
    "chain": "eth",
    "name": "1inch V1",
    "site_url": "https://1inch.exchange",
    "logo_url": "https://static.debank.com/image/project/logo_url/1inch/ac1216f33116fd76db915cb0b0f5c666.png",
    "has_supported_portfolio": false,
    "tvl": 0
  }
  // more...
]
```

## Get all protocols of supported chains

#### Method

get

#### Path

/v1/protocol/all\_list

#### Parameters

* `chain_ids` : optional, list of chain id, eg: eth, bsc, xdai, [for more info](/en/readme/api-pro-reference/chain#returns-1).

#### Returns

`Array` of `Object` - An object with following fields:

* `id` : `string` - The protocol's id.
* `chain` : `string` - The chain's id.
* `name` : `string` - The protocol's name. `null` if not defined in the contract and not available from other sources.
* `logo_url` : `string` - URL of the protocol's logo image. `null` if not available.
* `site_url` : `string` - prioritize websites that can be interacted with, not official websites.
* `has_supported_portfolio` : `boolean` - Is the portfolio already supported.
* `tvl`: `integer` - User deposit value in this protocol.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X GET "https://pro-openapi.debank.com/v1/protocol/all_list?chain_ids=eth,bsc" \
    -H "accept: application/json" -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
[
  {
    "id": "0x",
    "chain": "eth",
    "name": "0x",
    "site_url": "https://0x.org",
    "logo_url": "https://static.debank.com/image/project/logo_url/0x/140b607264f4741133c35eb32c6bc314.png",
    "has_supported_portfolio": true,
    "tvl": 76569161.44038972
  },
  {
    "id": "1inch",
    "chain": "eth",
    "name": "1inch V1",
    "site_url": "https://1inch.exchange",
    "logo_url": "https://static.debank.com/image/project/logo_url/1inch/ac1216f33116fd76db915cb0b0f5c666.png",
    "has_supported_portfolio": false,
    "tvl": 0
  }
  // more...
]

```

## Get the list of the app-protocol information

#### Method

get

#### Path

/v1/app\_protocol/list

#### Parameters

none

#### Returns

`Array` of `Object` - An object with following fields:

* `id` : `string` - The app-protocol's id.
* `name` : `string` - The app-protocol's name.
* `logo_url` : `string` - URL of the app-protocol's logo image. `null` if not available.
* `site_url` : `string` - prioritize websites that can be interacted with, not official websites.
* `has_supported_portfolio` : `boolean` - Is the portfolio already supported.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X GET "https://pro-openapi.debank.com/v1/app_protocol/list" \
    -H "accept: application/json" -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
[
    {
        "id": "hyperliquid",
        "name": "Hyperliquid",
        "site_url": "https://app.hyperliquid.xyz",
        "logo_url": "https://static.debank.com/image/project/logo_url/arb_hyperliquid/98dcfcb24e1ec2ab0da74679e0bfa0bb.png",
        "has_supported_portfolio": true
    },
    {
        "id": "lighter",
        "name": "Lighter",
        "site_url": "https://app.lighter.xyz",
        "logo_url": "https://static.debank.com/image/project/logo_url/arb_lighter/bdafdb3b7eaf487c5914d448fc559671.png",
        "has_supported_portfolio": true
    },
    {
        "id": "opinion",
        "name": "Opinion",
        "site_url": "https://app.opinion.trade/",
        "logo_url": "https://static.debank.com/image/project/logo_url/app_opinion/03c1258a684791f0cc6042124f8ab1d4.png",
        "has_supported_portfolio": true
    },
    {
        "id": "polymarket",
        "name": "Polymarket",
        "site_url": "https://polymarket.com/",
        "logo_url": "https://static.debank.com/image/project/logo_url/app_polymarket/265aca8cef9212e094ef24c71a01c175.png",
        "has_supported_portfolio": true
    }
    // more...
]
```


# Pool

The Pool API allows you to easily get pool information.

## Get pool information

#### Method

get

#### Path

/v1/pool

#### Parameters

* `id` : required, pool\_id, eg: 0x00000000219ab540356cbb839cbe05303d7705fa
* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).

#### Returns

`Object` - An object with following fields:

* `pool_id` : `string` - The pool's id.
* `chain` : `string` - The chain's id.
* `protocol_id` : protocol\_id associated with pool.
* `contract_ids`: `list` contract\_ids associated with pool.
* `name` : `string` - The pool's name, it is the same as [PortfolioItemObject's name](/en/readme/api-models/portfolioitemobject)
* stats: Object
  * `deposit_usd_value`: Assets stored in this pool.
  * `deposit_user_count`: The total number of users stored in this pool.
  * `deposit_valuable_user_count`: The number of users (with usd\_value greater than $100) stored in this pool.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/pool?id=0x00000000219ab540356cbb839cbe05303d7705fa&chain_id=eth \
  -H 'accept: application/json' -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
{
    "chain": "eth",
    "contract_ids": [
        "0x00000000219ab540356cbb839cbe05303d7705fa"
    ],
    "stats": {
        "deposit_usd_value": 44750590901.06054,
        "deposit_user_count": 48791,
        "deposit_valuable_user_count": 48510
    },
    "name": "Staked",
    "pool_id": "0x00000000219ab540356cbb839cbe05303d7705fa",
    "protocol_id": "eth2"
}

```


# Token

The Token API allows you to easily get token information.

## Get token information

#### Method

get

#### Path

/v1/token

#### Parameters

* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).
* `id` : required, - The address of the token contract or a native token id (eth, matic, bsc).

#### Returns

`Object` - An object with the following fields:

* `id` : `string` - The address of the token contract.
* `chain` : `string` - The chain's name.
* `name` : `string` - The token's name. `null` if not defined in the contract and not available from other sources.
* `symbol` : `string` - The token's symbol. `null` if not defined in the contract and not available from other sources.
* `display_symbol` : `string` - The token's displayed symbol. If two tokens have the same symbol, they are distinguished by `display_symbol` .
* `optimized_symbol` : `string` - For front-end display. `optimized_symbol || display_symbol || symbol`
* `decimals` : `integer` - The number of decimals of the token. `null` if not defined in the contract and not available from other sources.
* `protocol_id` : `string` - token associated protocol's id. Empty string if not available.
* `logo_url` : `string` - URL of the token's logo image. `null` if not available.
* `is_core`:`boolean` - Whether or not to show as a common token in the wallet.
* `price`: `double` - USD price. Price of 0 means no data.
* `time_at` : `integer` - The timestamp when the current token was deployed on the blockchain.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/token?chain_id=eth&id=0xdac17f958d2ee523a2206206994597c13d831ec7' \
  -H 'accept: application/json' -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
{
  "id": "0xdac17f958d2ee523a2206206994597c13d831ec7",
  "chain": "eth",
  "name": "Tether USD",
  "symbol": "USDT",
  "display_symbol": null,
  "optimized_symbol": "USDT",
  "decimals": 6,
  "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xdac17f958d2ee523a2206206994597c13d831ec7/66eadee7b7bb16b75e02b570ab8d5c01.png",
  "protocol_id": "",
  "price": 1,
  "is_verified": true,
  "is_core": true,
  "is_wallet": true,
  "time_at": 1511829681
}
```

## Get the list of the token information

#### Method

get

#### Path

/v1/token/list\_by\_ids

#### Parameters

* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).
* `ids` : required, List of token addresses, up to 100.

#### Returns

`Array` of `Object` - An object with following fields:

* `id` : `string` - The address of the token contract.
* `chain` : `string` - The chain's name.
* `name` : `string` - The token's name. `null` if not defined in the contract and not available from other sources.
* `symbol` : `string` - The token's symbol. `null` if not defined in the contract and not available from other sources.
* `display_symbol` : `string` - The token's displayed symbol. If two tokens have the same symbol, they are distinguished by `display_symbol` .
* `optimized_symbol` : `string` - For front-end display. `optimized_symbol || display_symbol || symbol`
* `decimals` : `integer` - The number of decimals of the token. `null` if not defined in the contract and not available from other sources.
* `logo_url` : `string` - URL of the token's logo image. `null` if not available.
* `protocol_id` : `string` - token associated protocol's id. Empty string if not available.
* `is_core`:`boolean` - Whether or not to show as a common token in the wallet.
* `price`: `double` - USD price. Price of 0 means no data.
* `time_at` : `integer` - The timestamp when the current token was deployed on the blockchain.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/token/list_by_ids?chain_id=eth&ids=0xdac17f958d2ee523a2206206994597c13d831ec7,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48' \
  -H 'accept: application/json' -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
[
  {
    "id": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
    "chain": "eth",
    "name": "USD Coin",
    "symbol": "USDC",
    "display_symbol": null,
    "optimized_symbol": "USDC",
    "decimals": 6,
    "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48/adee072b10b0db7c5bd7a28dd4fbe96f.png",
    "protocol_id": "",
    "price": 1,
    "is_verified": true,
    "is_core": true,
    "is_wallet": true,
    "time_at": 1533324504
  },
  {
    "id": "0xdac17f958d2ee523a2206206994597c13d831ec7",
    "chain": "eth",
    "name": "Tether USD",
    "symbol": "USDT",
    "display_symbol": null,
    "optimized_symbol": "USDT",
    "decimals": 6,
    "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xdac17f958d2ee523a2206206994597c13d831ec7/66eadee7b7bb16b75e02b570ab8d5c01.png",
    "protocol_id": "",
    "price": 1,
    "is_verified": true,
    "is_core": true,
    "is_wallet": true,
    "time_at": 1511829681
  }
]
```

## Get top holders of token

#### Method

get

#### Path

/v1/token/top\_holders

#### Parameters

* `id` : `string` required, token address, also support native token id, eg. eth, bsc
* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).
* `start`: `integer` offset, default is 0, max is 10000.
* `limit`: `integer` limit size, default is 100, max is 100.

#### Returns

`Array` of address with token amount, in reverse order of holding token amount.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X GET "https://pro-openapi.debank.com/v1/token/top_holders?chain_id=celo&id=celo&start=2&limit=1
    -H "accept: application/json" -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```
[
    [
        "0x00000000219ab540356cbb839cbe05303d7705fa",  // user_address
        13702020.000069 // amount 
    ],
    [
        "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
        3624588.4884625035
    ],
    [
        "0xda9dfa130df4de4673b89022ee50ff26f6ea73cf",
        2113030.0863672243
    ],
    [
        "0x0716a17fbaee714f1e6ab0f9d59edbc5f09815c0",
        2014609.5884898424
    ],
    [
        "0xbe0eb53f46cd790cd13851d5eff43d12404d33e8",
        1996008.354181282
    ]
]
```

## Get token history price

#### Method

get

#### Path

/v1/token/history\_price

#### Parameters

* `id` : `string` required, token address, also support native token id, eg. eth, bsc
* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).
* `date_at`: `string` required, UTC time zone. eg. 2023-05-18

#### Returns

* `price`: `float`, history price at a specified time.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X GET "https://pro-openapi.debank.com/v1/token/history_price?id=eth&chain_id=eth&date_at=2023-05-18
    -H "accept: application/json" -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```
{
    "price": 1820.89
}
```


# User

The User API allows you to easily get user's assets information.

## Get user used chain

#### Method

get

#### Path

/v1/user/used\_chain\_list

#### Parameters

* `id` : required, The user's address.

#### Returns

`Array` of `Object` - An object with following fields:

* `id` : `string` - The chain's id.
* `community_id` : `integer` - The community-identified id.
* `name` : `string` - The chain's name.
* `logo_url` : `string` URL of the chain's logo image. `null` if not available.
* `native_token_id` : `string` - The native token's id.
* `wrapped_token_id`: `string` - The address of the native token.
* `born_at`: `integer` - Birth time of address in current chain.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/user/used_chain_list?id=0xcfeaead4947f0705a14ec42ac3d44129e1ef3ed5' \
  -H 'accept: application/json' -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
[
  {
    "id": "boba",
    "community_id": 288,
    "name": "Boba",
    "native_token_id": "boba",
    "born_at": 1704711812,
    "logo_url": "https://static.debank.com/image/chain/logo_url/boba/e43d79cd8088ceb3ea3e4a240a75728f.png",
    "wrapped_token_id": "0xdeaddeaddeaddeaddeaddeaddeaddeaddead0000"
  }
]
```

## Get user chain balance

Return the balance of a given address.

#### Method

get

#### Path

/v1/user/chain\_balance

#### Parameters

* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).
* `id` : required, The user's address.

#### Returns

* `usd_value` : `double` - The balance of the account.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/user/chain_balance?id=0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85&chain_id=eth' \
  -H 'accept: application/json' -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
{
  "usd_value": 11878.042297007945
}
```

## Get user protocol

Get one user's positions in the protocol

#### Method

get

#### Path

/v1/user/protocol

#### Parameters

* `protocol_id` : required, eg: `bsc_pancakeswap`, `curve`, `uniswap`, [for more info](/en/readme/api-pro-reference/protocol#returns-1).
* `id` : required, user address

#### Returns

Return one user's positions from the protocol

* `id` : `string` - The protocol's id.
* `chain` : `string` - The chain's id.
* `name` : `string` - The protocol's name. `null` if not defined in the contract and not available from other sources.
* `logo_url` : `string` - URL of the protocol's logo image. `null` if not available.
* `site_url` : `string` - prioritize websites that can be interacted with, not official websites.
* `has_supported_portfolio` : `boolean` - Is the portfolio already supported.
* `portfolio_item_list` : `Array` of [`PortfolioItemObject`](/en/readme/api-models/portfolioitemobject)

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/user/protocol?id=0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85&protocol_id=bsc_bdollar' \
  -H 'accept: application/json' -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
{
  "id": "bsc_bdollar",
  "chain": "bsc",
  "name": "bDollar",
  "site_url": "https://bdollar.fi",
  "logo_url": "https://static.debank.com/image/project/logo_url/bsc_bdollar/1935d77ab964b7e65acfadb63080af24.png",
  "has_supported_portfolio": true,
  "tvl": 223306.13569669172,
  "portfolio_item_list": [
    {
      "stats": {
        "asset_usd_value": 0,
        "debt_usd_value": 0,
        "net_usd_value": 0
      },
      "update_at": 1639382999.514337,
      "name": "Farming",
      "detail_types": ["common"],
      "detail": {
        "supply_token_list": [
          {
            "id": "0x0d9319565be7f53cefe84ad201be3f40feae2740",
            "chain": "bsc",
            "name": "bDollar Share",
            "symbol": "sBDO",
            "display_symbol": null,
            "optimized_symbol": "sBDO",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/bsc_token/logo_url/0x0d9319565be7f53cefe84ad201be3f40feae2740/2e79004660a090bcad21432037b16e89.png",
            "protocol_id": "bsc_bdollar",
            "price": 0,
            "is_verified": true,
            "is_core": null,
            "is_wallet": false,
            "time_at": 1609152424,
            "amount": 0.01
          }
        ],
        "reward_token_list": [
          {
            "id": "0x190b589cf9fb8ddeabbfeae36a813ffb2a702454",
            "chain": "bsc",
            "name": "bDollar",
            "symbol": "BDO",
            "display_symbol": null,
            "optimized_symbol": "BDO",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/bsc_token/logo_url/0x190b589cf9fb8ddeabbfeae36a813ffb2a702454/316bf18e540d27f269b2260931a5fcdc.png",
            "protocol_id": "bsc_bdollar",
            "price": 0,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1608808146,
            "amount": 4.023217983610902
          }
        ]
      },
      "proxy_detail": {}
    },
    {
      "stats": {
        "asset_usd_value": 6.914216886417625,
        "debt_usd_value": 0,
        "net_usd_value": 6.914216886417625
      },
      "update_at": 1639382999.565123,
      "name": "Farming",
      "detail_types": ["common"],
      "detail": {
        "supply_token_list": [
          {
            "id": "0x190b589cf9fb8ddeabbfeae36a813ffb2a702454",
            "chain": "bsc",
            "name": "bDollar",
            "symbol": "BDO",
            "display_symbol": null,
            "optimized_symbol": "BDO",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/bsc_token/logo_url/0x190b589cf9fb8ddeabbfeae36a813ffb2a702454/316bf18e540d27f269b2260931a5fcdc.png",
            "protocol_id": "bsc_bdollar",
            "price": 0,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1608808146,
            "amount": 438.1464937799965
          },
          {
            "id": "0xe9e7cea3dedca5984780bafc599bd69add087d56",
            "chain": "bsc",
            "name": "BUSD Token",
            "symbol": "BUSD",
            "display_symbol": null,
            "optimized_symbol": "BUSD",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/bsc_token/logo_url/0xe9e7cea3dedca5984780bafc599bd69add087d56/f0825e572298822e7689fe81150a195d.png",
            "protocol_id": "",
            "price": 1,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1599044503,
            "amount": 6.914216886417625
          }
        ],
        "reward_token_list": [
          {
            "id": "0x0d9319565be7f53cefe84ad201be3f40feae2740",
            "chain": "bsc",
            "name": "bDollar Share",
            "symbol": "sBDO",
            "display_symbol": null,
            "optimized_symbol": "sBDO",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/bsc_token/logo_url/0x0d9319565be7f53cefe84ad201be3f40feae2740/2e79004660a090bcad21432037b16e89.png",
            "protocol_id": "bsc_bdollar",
            "price": 0,
            "is_verified": true,
            "is_core": null,
            "is_wallet": false,
            "time_at": 1609152424,
            "amount": 0.025524980670816256
          }
        ]
      },
      "proxy_detail": {}
    }
  ]
}
```

## Get user complex protocol list

Get user's detail portfolios on a chain in the protocol. It's frequently refreshed data, and in most cases can be treated as near real-time data within 1 minute. In the worst case, a 12-hour update is still guaranteed. if you want to use more real-time data, refer to [Get user protocol](#get-user-protocol).

#### Method

get

#### Path

/v1/user/complex\_protocol\_list

#### Parameters

* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).
* `id` : required, user address

#### Returns

Return user's positions list from all the protocols

Array of object:

* `id` : `string` - The protocol's id.
* `chain` : `string` - The chain's id.
* `name` : `string` - The protocol's name. `null` if not defined in the contract and not available from other sources.
* `logo_url` : `string` - URL of the protocol's logo image. `null` if not available.
* `site_url` : `string` - prioritize websites that can be interacted with, not official websites.
* `has_supported_portfolio` : `boolean` - Is the portfolio already supported.
* `portfolio_item_list` : `Array` of [`PortfolioItemObject`](/en/readme/api-models/portfolioitemobject)

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/user/complex_protocol_list?id=0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85&chain_id=eth' \
  -H 'accept: application/json' -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
[
  {
    "id": "0x",
    "chain": "eth",
    "name": "0x",
    "site_url": "https://0x.org",
    "logo_url": "https://static.debank.com/image/project/logo_url/0x/140b607264f4741133c35eb32c6bc314.png",
    "has_supported_portfolio": true,
    "tvl": 76569161.44038972,
    "portfolio_item_list": [
      {
        "stats": {
          "asset_usd_value": 1.2903149999999999,
          "debt_usd_value": 0,
          "net_usd_value": 1.2903149999999999
        },
        "update_at": 1639548824.1576676,
        "name": "Staked",
        "detail_types": ["common"],
        "detail": {
          "supply_token_list": [
            {
              "id": "0xe41d2489571d322189246dafa5ebde1f4699f498",
              "chain": "eth",
              "name": "0x Protocol Token",
              "symbol": "ZRX",
              "display_symbol": null,
              "optimized_symbol": "ZRX",
              "decimals": 18,
              "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xe41d2489571d322189246dafa5ebde1f4699f498/6399b265ac056e5168a1144d39e5ab16.png",
              "protocol_id": "0x",
              "price": 0.7635,
              "is_verified": true,
              "is_core": true,
              "is_wallet": true,
              "time_at": 1502476756,
              "amount": 1.69
            }
          ]
        },
        "proxy_detail": {}
      }
    ]
  }
  // more...
]
```

## Get user complex protocol list on all supported chains

Get user detail portfolios on all supported chains in the protocol. It's frequently refreshed data, and in most cases can be treated as near real-time data within 1 minute. In the worst case, a 12-hour update is still guaranteed. if you want to use more real-time data, refer to [Get user protocol](#get-user-protocol).

#### Method

get

#### Path

/v1/user/all\_complex\_protocol\_list

#### Parameters

* `id` : required, user address
* `chain_ids` : optional, list of chain id, eg: eth, bsc, xdai, [for more info](/en/readme/api-pro-reference/chain#returns-1).

#### Returns

Same format as the result returned by `/v1/user/complex_protocol_list`. [for more info](#get-user-complex-protocol-list).

#### Request Example

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X GET "https://pro-openapi.debank.com/v1/user/all_complex_protocol_list?id=YOUR_ADDRESS&chain_ids=bsc,eth \
    -H "accept: application/json" -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

## Get user simple protocol list

Get user's balance on a chain in the protocol. It's frequently refreshed data, and in most cases can be treated as near real-time data within 1 minute. In the worst case, a 12-hour update is still guaranteed. if you want to use more real-time data, refer to [Get user protocol](#get-user-protocol).

#### Method

get

#### Path

/v1/user/simple\_protocol\_list

#### Parameters

* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).
* `id` : required, user address

#### Returns

return list of protocols with user assets.

`Array` of `Object` - An object with following fields:

* `id` : `string` - The protocol's id.
* `chain` : `string` - The chain's id.
* `name` : `string` - The protocol's name. `null` if not defined in the contract and not available from other sources.
* `logo_url` : `string` - URL of the protocol's logo image. `null` if not available.
* `site_url` : `string` - prioritize websites that can be interacted with, not official websites.
* `has_supported_portfolio` : `boolean` - Is the portfolio already supported.
* `net_usd_value` : `double` - The amount of the user's net assets in the protocol.
* `asset_usd_value` : `double` - The amount of the user's total assets in the protocol.
* `debt_usd_value` : `double` - The Debt USD value.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/user/simple_protocol_list?id=0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85&chain_id=eth' \
  -H 'accept: application/json' -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
[
  {
    "id": "uniswap3",
    "chain": "eth",
    "name": "Uniswap V3",
    "site_url": "https://app.uniswap.org",
    "logo_url": "https://static.debank.com/image/project/logo_url/uniswap3/87a541b3b83b041c8d12119e5a0d19f0.png",
    "has_supported_portfolio": true,
    "tvl": 3743030990.973852,
    "net_usd_value": 241.1066115236279,
    "asset_usd_value": 241.1066115236279,
    "debt_usd_value": 0
  },
  {
    "id": "compound",
    "chain": "eth",
    "name": "Compound",
    "site_url": "https://app.compound.finance",
    "logo_url": "https://static.debank.com/image/project/logo_url/compound/0b792243f1f68e9ed082f5a49ee6f21d.png",
    "has_supported_portfolio": true,
    "tvl": 12763095483.420198,
    "net_usd_value": 9.42968660318954,
    "asset_usd_value": 10.610932251963174,
    "debt_usd_value": 1.1812456487736345
  },
  {
    "id": "curve",
    "chain": "eth",
    "name": "Curve",
    "site_url": "https://curve.fi",
    "logo_url": "https://static.debank.com/image/project/logo_url/curve/aa991be165e771cff87ae61e2a61ef68.png",
    "has_supported_portfolio": true,
    "tvl": 17053767979.356224,
    "net_usd_value": 224.52344262613227,
    "asset_usd_value": 224.52344262613227,
    "debt_usd_value": 0
  }
  // more...
]
```

## Get user simple protocol list on all supported chains

Get user's balance on all supported chains in the protocol. It's frequently refreshed data, and in most cases can be treated as near real-time data within 1 minute. In the worst case, a 12-hour update is still guaranteed. if you want to use more real-time data, refer to [Get user protocol](#get-user-protocol).

#### Method

get

#### Path

/v1/user/all\_simple\_protocol\_list

#### Parameters

* `id` : required, user address
* `chain_ids` : optional, list of chain id, eg: eth, bsc, xdai, [for more info](/en/readme/api-pro-reference/chain#returns-1).

#### Returns

Same format as the result returned by `/v1/user/simple_protocol_list`. [for more info](#get-user-simple-protocol-list).

#### Request Example

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X GET "https://pro-openapi.debank.com/v1/user/all_simple_protocol_list?id=YOUR_ADDRESS&chain_ids=bsc,eth \
    -H "accept: application/json" -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

## Get user complex app list

Get user's detail portfolios on all supported app-protocol.

#### Method

get

#### Path

/v1/user/complex\_app\_list

#### Parameters

* `id` : required, user address

#### Returns

Return user's positions list from all app-protocols

Array of object:

* `id` : `string` - The protocol's id.
* `name` : `string` - The protocol's name. `null` if not defined in the contract and not available from other sources.
* `logo_url` : `string` - URL of the protocol's logo image. `null` if not available.
* `site_url` : `string` - prioritize websites that can be interacted with, not official websites.
* `has_supported_portfolio` : `boolean` - Is the portfolio already supported.
* `portfolio_item_list` : `Array` of [`PortfolioItemObject`](/en/readme/api-models/portfolioitemobject),without pool field.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/user/complex_app_list?id=0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85' \
  -H 'accept: application/json' -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
[
    {
        "id": "hyperliquid",
        "name": "Hyperliquid",
        "site_url": "https://app.hyperliquid.xyz",
        "logo_url": "https://static.debank.com/image/project/logo_url/arb_hyperliquid/98dcfcb24e1ec2ab0da74679e0bfa0bb.png",
        "has_supported_portfolio": true,
        "portfolio_item_list": [
            {
                "stats": {
                    "asset_usd_value": 50,
                    "debt_usd_value": 0,
                    "net_usd_value": 50
                },
                "asset_dict": {
                    "cbc85c2463806ead7328a5da06425a2b": 50
                },
                "asset_token_list": [
                    {
                        "id": "cbc85c2463806ead7328a5da06425a2b",
                        "name": "USDC",
                        "symbol": "USDC",
                        "decimals": 8,
                        "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48/fffcd27b9efff5a86ab942084c05924d.png",
                        "app_id": "hyperliquid",
                        "price": 1,
                        "amount": 50
                    }
                ],
                "update_at": 1764057260.4281418,
                "name": "Deposit",
                "detail_types": [
                    "common"
                ],
                "detail": {
                    "supply_token_list": [
                        {
                            "id": "cbc85c2463806ead7328a5da06425a2b",
                            "name": "USDC",
                            "symbol": "USDC",
                            "decimals": 8,
                            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48/fffcd27b9efff5a86ab942084c05924d.png",
                            "app_id": "hyperliquid",
                            "price": 1,
                            "amount": 50
                        }
                    ],
                    "description": "Main-Account Spot"
                },
                "proxy_detail": {

                },
                "position_index": "spot_usdc_0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85"
            }
        ]
    },
  // more...
]
```

## Get user token balance

#### Method

get

#### Path

/v1/user/token

#### Parameters

* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).
* `id` : required, user address
* `token_id` : required, Ethereum Address or native token id

#### Returns

`Object` - An object with the following fields:

* `id` : `string` - The address of the token contract.
* `chain` : `string` - The chain's name.
* `name` : `string` - The token's name. `null` if not defined in the contract and not available from other sources.
* `symbol` : `string` - The token's symbol. `null` if not defined in the contract and not available from other sources.
* `display_symbol` : `string` - The token's displayed symbol. If two tokens have the same symbol, they are distinguished by `display_symbol` .
* `optimized_symbol` : `string` - For front-end display. `optimized_symbol || display_symbol || symbol`
* `decimals` : `integer` - The number of decimals of the token. `null` if not defined in the contract and not available from other sources.
* `logo_url` : `string` - URL of the token's logo image. `null` if not available.
* `is_verified`: `boolean` - Whether it has been verified.
* `is_core`:`boolean` - Whether or not to show as a common token in the wallet.
* `price`: `double` - USD price. Price of 0 means no data.
* `time_at` : `integer` - The timestamp when the current token was deployed on the blockchain.
* `amount` : `double` - The amount of user's token.
* `raw_amount` : `integer` - The raw amount of user's token.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/user/token?id=0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85&chain_id=eth&token_id=0xdac17f958d2ee523a2206206994597c13d831ec7' \
  -H 'accept: application/json' -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
{
  "id": "0xdac17f958d2ee523a2206206994597c13d831ec7",
  "chain": "eth",
  "name": "Tether USD",
  "symbol": "USDT",
  "display_symbol": null,
  "optimized_symbol": "USDT",
  "decimals": 6,
  "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xdac17f958d2ee523a2206206994597c13d831ec7/66eadee7b7bb16b75e02b570ab8d5c01.png",
  "protocol_id": "",
  "price": 1,
  "is_verified": true,
  "is_core": true,
  "is_wallet": true,
  "time_at": 1511829681,
  "amount": 5.512815,
  "raw_amount": 5512815
}
```

## Get user token list

Get user token balance

#### Method

get

#### Path

/v1/user/token\_list

#### Parameters

* `id` : required, user address
* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).
* `is_all` : `boolean` - If true, all tokens are returned, including protocol-derived tokens, not-is-core tokens. default is true.

#### Returns

`Array` of `Object` - An object with following fields:

* `id` : `string` - The address of the token contract.
* `chain` : `string` - The chain's name.
* `name` : `string` - The token's name. `null` if not defined in the contract and not available from other sources.
* `symbol` : `string` - The token's symbol. `null` if not defined in the contract and not available from other sources.
* `display_symbol` : `string` - The token's displayed symbol. If two tokens have the same symbol, they are distinguished by `display_symbol` .
* `optimized_symbol` : `string` - For front-end display. `optimized_symbol || display_symbol || symbol`
* `decimals` : `integer` - The number of decimals of the token. `null` if not defined in the contract and not available from other sources.
* `logo_url` : `string` - URL of the token's logo image. `null` if not available.
* `is_core`:`boolean` - Whether or not to show as a common token in the wallet.
* `price`: `double` - USD price. Price of 0 means no data.
* `time_at` : `integer` - The timestamp when the current token was deployed on the blockchain.
* `amount` : `double` - The amount of user's token.
* `raw_amount` : `integer` - The raw amount of user's token.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/user/token_list?id=0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85&chain_id=eth&is_all=false' \
  -H 'accept: application/json' -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
[
  {
    "id": "0x0000000000004946c0e9f43f4dee607b0ef1fa1c",
    "chain": "eth",
    "name": "Chi Gastoken by 1inch",
    "symbol": "CHI",
    "display_symbol": null,
    "optimized_symbol": "CHI",
    "decimals": 0,
    "logo_url": "https://static.debank.com/image/eth_token/logo_url/0x0000000000004946c0e9f43f4dee607b0ef1fa1c/5d763d01aae3f0ac9a373564026cb620.png",
    "protocol_id": "1inch",
    "price": 0,
    "is_core": true,
    "is_wallet": true,
    "time_at": 1590352004,
    "amount": 3,
    "raw_amount": 3
  },
  {
    "id": "0x0000000000085d4780b73119b644ae5ecd22b376",
    "chain": "eth",
    "name": "TrueUSD",
    "symbol": "TUSD",
    "display_symbol": null,
    "optimized_symbol": "TUSD",
    "decimals": 18,
    "logo_url": "https://static.debank.com/image/eth_token/logo_url/0x0000000000085d4780b73119b644ae5ecd22b376/9fedba67e80a738c281bd0ba8e9f1c5e.png",
    "protocol_id": "",
    "price": 1,
    "is_core": true,
    "is_wallet": true,
    "time_at": 1546294558,
    "amount": 21.709487132565773,
    "raw_amount": 21709487132565774000
  }
  // more...
]
```

## Get a list of token balances on all supported chains

#### Method

get

#### Path

/v1/user/all\_token\_list

#### Parameters

* `id` : required, user address
* `is_all` : `boolean` - If true, all tokens are returned, including protocol-derived tokens, not-is-core tokens. . default is true.
* `chain_ids` : optional, list of chain id, eg: eth, bsc, xdai, [for more info](/en/readme/api-pro-reference/chain#returns-1).

#### Returns

[for more info](#get-user-token-list).

## Get user nft list

Get user nft list

#### Method

get

#### Path

/v1/user/nft\_list

#### Parameters

* `id` : required, user address
* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).
* `is_all` : `boolean` - If False, only tokens in verified collections are returned.

#### Returns

`Array` of `Object` - An object with following fields:

* `id` : `string` - Unique Id.
* `contract_id`: `string` - The address of the token contract.
* `inner_id` : `string` - The index id.
* `chain` : `string` - The chain's name.
* `name` : `string` - The nft's name.
* `description` : `string` - The nft's description.
* `content_type`: `string` - The nft's content type. eg: image\_url, video\_url, audio\_url
* `content` : `string` - The nft's content. `null` if not available.
* `detail_url`: `string` - refer to the nft's detail page
* `contract_name`: `string` - Contract name.
* `is_erc1155`:`boolean` - Whether it is erc1155.
* `amount` : `double` - The amount of nft, only valid in erc1155 contract.
* `protocol`: [for more info](/en/readme/api-pro-reference/protocol#returns-1).
* `pay_token`: [for more info](/en/readme/api-pro-reference/token#returns-1).
* `usd_price`: `double` - Latest Trading Price.
* `collection_id`: `string` - Collection id, the format is `{chain}:{contract_id}`.
* `attributes`: `Array` of the following Object
  * `trait_type` : `string` - attribute type
  * `value`: attribute value

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/user/nft_list?id=0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85&chain_id=eth' \
  -H 'accept: application/json'\
  -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
[
  {
    "id": "defc948fbe6d3b138b49bf981e276f0b",
    "contract_id": "0x495f947276749ce646f68ac8c248420045cb7b5e",
    "inner_id": "55575360221028374465659771733000318579577403829328624053715758637886677712897",
    "chain": "eth",
    "name": "A New Era has begun",
    "description": "3 of 9\n\nOn February 8, 2021, one of the most influential men in the world decided to invest in Bitcoin. Elon Musk, owner of Tesl",
    "content_type": "image_url",
    "content": "https://lh3.googleusercontent.com/WQnK8JxSSPj5YIxegh9iaprMaMmv-JswrcnTp9Mi5PXKDWmigkOzTBBIAkhdXtLPe7EwIe6Q1gi2gdtLzV08d2y67rMVTHx0Ei0S",
    "detail_url": "https://opensea.io/assets/0x495f947276749ce646f68ac8c248420045cb7b5e/55575360221028374465659771733000318579577403829328624053715758637886677712897",
    "contract_name": "OpenSea Shared Storefront",
    "is_erc1155": true,
    "amount": 1,
    "protocol": {
      "id": "opensea",
      "chain": "eth",
      "name": "OpenSea",
      "site_url": "https://opensea.io",
      "logo_url": "https://static.debank.com/image/project/logo_url/opensea/4b23246fac2d4ce53bd8e8079844821c.png",
      "has_supported_portfolio": false,
      "tvl": 114295.77061458935
    },
    "pay_token": {
      "id": "eth",
      "chain": "eth",
      "name": "ETH",
      "symbol": "ETH",
      "display_symbol": null,
      "optimized_symbol": "ETH",
      "decimals": 18,
      "logo_url": "https://static.debank.com/image/token/logo_url/eth/935ae4e4d1d12d59a99717a24f2540b5.png",
      "protocol_id": "",
      "price": 2510.46,
      "is_verified": true,
      "is_core": true,
      "is_wallet": true,
      "time_at": 1628248886,
      "amount": 0.0178,
      "date_at": "2021-08-06"
    },
    "attributes": [
      {
        "trait_type": "Artist",
        "value": "SpaceTurtleShip"
      },
      {
        "trait_type": "Edition",
        "value": "1"
      }
    ],
    "usd_price": 51.492552,
    "collection_id": null
  }
]
```

## Get user nft list on all supported chain

#### Method

get

#### Path

/v1/user/all\_nft\_list

#### Parameters

* `id` : required, user address
* `is_all` : `boolean` - If true, all tokens are returned.
* `chain_ids` : optional, list of chain id, eg: eth, bsc, xdai, [for more info](/en/readme/api-pro-reference/chain#returns-1).

#### Returns

[for more info](#get-user-history-list).

#### Request Example

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X GET "https://pro-openapi.debank.com/v1/user/all_nft_list?id=YOUR_ADDRESS&chain_ids=bsc,eth \
    -H "accept: application/json" -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

## Get user history list

Get user history list

#### Method

get

#### Path

/v1/user/history\_list

#### Parameters

* `id` : required, user address
* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).
* `token_id`: token id, return the history list related to this token.
* `start_time`: timestamp, the returned history list are earlier than this time, if it's not provided, we will return the most recent n (default is 20) entries.
* `page_count`: Number of entries returned, the maximum count is 20.

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl 'https://pro-openapi.debank.com/v1/user/history_list?id=0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85&chain_id=eth' \
  -H 'accept: application/json'\
  -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

An object with following fields:

* `cate_dict`: `dict` - Call type category (eg. `approve`, `receive`, `send`).
* `history_list`: Address's history transaction list.
  * `cate_id`: `string` - call type.
  * `chain`: `string` - chain id.
  * `id`: `string` - transaction hash.
  * `project_id`: `string` - project id which was interacted.
  * `sends`: `dict` - valid when cate\_id is `send`.
  * `receives`: `dict` - valid when cate\_id is `receive`.
  * `token_approve`: `dict` - valid when cate\_id is `approve`.
  * `time_at`: `integer` - timestamp.
  * `tx`: `dict` - The transaction's base info
  * `cex_id`: string - If the interaction address is the address of cex, otherwise it is null.
* `project_dict`: `dict` - Projects which this address interacted.
* `token_dict`: `dict` - Tokens which this address interacted.
* `cex_dict`: `dict` - Cexs which this address interacted.

```json
{
  "cate_dict": {
    "approve": {
      "id": "approve",
      "name": "Authorize"
    },
    "receive": {
      "id": "receive",
      "name": "Receive"
    },
    "send": {
      "id": "send",
      "name": "Send"
    }
  },
  "history_list": [
    {
      "cate_id": "send",
      "chain": "eth",
      "id": "0x403d4d104637442ed98132157319b6a5771a402551c7a1f9a0cbebea201c9930",
      "project_id": null,
      "receives": [],
      "cex_id": "0x4c2e86c04e3829bc6808b9fc87f21350fde5e41c",
      "sends": [
        {
          "amount": 0.01,
          "to_addr": "0x4c2e86c04e3829bc6808b9fc87f21350fde5e41c",
          "token_id": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
        }
      ],
      "time_at": 1646634891,
      "token_approve": null,
      "tx": {
        "eth_gas_fee": 0.002296035,
        "from_addr": "0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85",
        "name": "transfer",
        "params": [],
        "status": 1,
        "to_addr": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
        "usd_gas_fee": 5.82290548245,
        "value": 0
      }
    },
    {
      "cate_id": "approve",
      "chain": "eth",
      "id": "0x8e4245cc567905898b3148d43b9e73e543acdadd180ab7334a97377f9524ce03",
      "other_addr": "0xd07e86f68c7b9f9b215a3ca3e79e74bf94d6a847",
      "project_id": "daomaker",
      "receives": [],
      "sends": [],
      "time_at": 1641536066,
      "cex_id": null,
      "token_approve": {
        "spender": "0xd07e86f68c7b9f9b215a3ca3e79e74bf94d6a847",
        "token_id": "0x0f51bb10119727a7e5ea3538074fb341f56b09ad",
        "value": 1000000000000000
      },
      "tx": {
        "eth_gas_fee": 0.00603421,
        "from_addr": "0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85",
        "name": "approve",
        "params": [],
        "status": 1,
        "to_addr": "0x0f51bb10119727a7e5ea3538074fb341f56b09ad",
        "usd_gas_fee": 19.2814732656,
        "value": 0
      }
    }
  ],
  "cex_dict": {
      "0x4c2e86c04e3829bc6808b9fc87f21350fde5e41c": {
          "id": "binance",
          "is_vault": true,
          "logo_url": "https://static.debank.com/image/cex/logo_url/binance/cfa71c75835c750c186010fb19707859.png",
          "name": "Binance"
      }
  },
  "project_dict": {
    "zkswap": {
      "chain": "eth",
      "id": "zkswap",
      "logo_url": "https://static.debank.com/image/project/logo_url/zkswap/7686efb3683487e4f96b4c639854c06a.png",
      "name": "ZKSwap",
      "site_url": "https://zks.app"
    }
  },
  "token_dict": {
    "eth": {
      "chain": "eth",
      "decimals": 18,
      "display_symbol": null,
      "id": "eth",
      "is_core": true,
      "is_verified": true,
      "is_wallet": true,
      "logo_url": "https://static.debank.com/image/token/logo_url/eth/935ae4e4d1d12d59a99717a24f2540b5.png",
      "name": "ETH",
      "optimized_symbol": "ETH",
      "price": 2536.07,
      "protocol_id": "",
      "symbol": "ETH",
      "time_at": 1483200000
    }
  }
}
```

## Get user transaction history on all supported chains

#### Method

get

#### Path

/v1/user/all\_history\_list

#### Parameters

* `id` : required, user address
* `start_time`: timestamp, the returned history list are eariler than this time, if it's not provided, we will return the number of recent entries.
* `page_count`: Number of entries returned, the maximum count is 20.
* `chain_ids` : optional, list of chain id, eg: eth, bsc, xdai, [for more info](/en/readme/api-pro-reference/chain#returns-1).

#### Returns

Same format as the result returned by `/v1/user/history_hist`. [for more info](#get-user-histroy-list).

## Get user token authorized list

Get user token authorized list

#### Method

get

#### Path

/v1/user/token\_authorized\_list

#### Parameters

* `id` : required, user address
* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl 'https://pro-openapi.debank.com/v1/user/token_authorized_list?id=0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85&chain_id=eth' \
  -H 'accept: application/json'\
  -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

`Array` of `Object` - An object with following fields:

* `id`: `string` - approved contract's id.
* `name`: `string` - approved contract's name.
* `symbol`: `string` - approved contract's symbol.
* `logo_url`: `string` - approved contract's logo url.
* `chain`: `string` - chain id.
* `price`: `double` - native token price of the chain.
* `balance`: `double` - address's balance of the chain.
* `spenders`: list of object with following fields.
  * `id`: `string` - spender's address.
  * `value`: `integer` - approved amount.
  * `exposure_usd`: `double` - exposure value with usd.
  * `protocol`: `dict` - spender's protocol info.
  * `is_contract`: `boolean` - whether spender is contract.
* `sum_exposure_usd`: `double` - total number of exposure value denominated in USD.
* `exposure_balance`: `double` - total number of exposure amount.

```json
[
  {
    "id": "0xc1330acbbce97cb9695b7ee161c0f95b875a8b0f",
    "name": "One Eth",
    "symbol": "ONE",
    "logo_url": "",
    "chain": "eth",
    "price": 2579.51594392348,
    "balance": 0.09901859967795691,
    "spenders": [
      {
        "id": "0x3bdf1977d87edad8e0617efcea958f6d43a4c30e",
        "value": 1.157920892373162e59,
        "exposure_usd": 255.4200566142662,
        "protocol": {
          "id": "onx",
          "name": "OnX",
          "logo_url": "https://static.debank.com/image/project/logo_url/onx/5880dc343af9d03cf46a52a2d0bb1929.png",
          "chain": "eth"
        },
        "is_contract": true,
        "is_open_source": true,
        "is_hacked": false,
        "is_abandoned": false
      },
      {
        "id": "0xc36442b4a4522e871399cd717abdd847ab11fe88",
        "value": 1.157920892373162e59,
        "exposure_usd": 255.4200566142662,
        "protocol": {
          "id": "uniswap3",
          "name": "Uniswap V3",
          "logo_url": "https://static.debank.com/image/project/logo_url/uniswap3/87a541b3b83b041c8d12119e5a0d19f0.png",
          "chain": "eth"
        },
        "is_contract": true,
        "is_open_source": true,
        "is_hacked": false,
        "is_abandoned": false
      }
    ],
    "sum_exposure_usd": 255.4200566142662,
    "exposure_balance": 0.09901859967795691
  }
]
```

## Get user nft authorized list

Get user nft authorized list

#### Method

get

#### Path

/v1/user/nft\_authorized\_list

#### Parameters

* `id` : required, user address
* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl 'https://pro-openapi.debank.com/v1/user/nft_authorized_list?id=0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85&chain_id=eth' \
  -H 'accept: application/json'\
  -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

* `tokens`: `list` - approved erc721 token list （approve single nft token）
  * `id`: `string` - approved nft's id.
  * `contract_id`: `string` - contract id
  * `inner_id`: `string` - nft's index id
  * `chain`: `string` - chain id.
  * `name`: `string` - nft's name.
  * `symbol`: `string` - contract's symbol.
  * `total_supply`: `integer` - total supply.
  * `description`: `string` - description
  * `content_type`: `string` - content type, eg. image\_url
  * `content`: `string` - content
  * `detail_url`: `string` - detail url
  * `contract_name`: `string` - contract's name
  * `is_erc1155`: `boolean` - is erc1155, default is empty
  * `is_erc721`: `boolean` - is erc721, default is empty
  * `amount`: `string` - approved amount
  * `spenders`: list of object with following fields.
    * `id`: `string` - spender's address.
    * `protocol`: `dict` - spender's protocol info.
* `contracts`: `list` - approved contract list (approve all)
  * `chain`: `string` - chain id.
  * `contract_name`: `string` - contract's name
  * `contract_id`: `string` - contract id
  * `is_erc1155`: `boolean` - is erc1155, default is empty
  * `is_erc721`: `boolean` - is erc721, default is empty
  * `amount`: `string` - approved amount
  * `spenders`: list of object with following fields.
    * `id`: `string` - spender's address.
    * `protocol`: `dict` - spender's protocol info.
* `total`: `string` - the amount of user nft tokens.

```json
{
  "tokens": [
    {
      "id": "cd99efdea729e09ef472755e8ed64353",
      "contract_id": "0xc36442b4a4522e871399cd717abdd847ab11fe88",
      "inner_id": "42307",
      "chain": "eth",
      "name": null,
      "symbol": "UNI-V3-POS",
      "description": null,
      "content_type": null,
      "content": null,
      "total_supply": 1,
      "detail_url": "https://opensea.io/assets/0xc36442b4a4522e871399cd717abdd847ab11fe88/42307",
      "contract_name": "Uniswap V3 Positions NFT-V1",
      "is_erc721": true,
      "amount": "1",
      "spender": {
        "id": "0x68924dbd6eb82bfe666b2e0403f4cd1cd6790c3f",
        "protocol": {
          "id": "fixedforex",
          "name": "Fixedforex",
          "logo_url": "https://static.debank.com/image/project/logo_url/fixedforex/5a8f4591da5aee468ab871f44924025e.png",
          "chain": "eth"
        }
      }
    }
  ],
  "contracts": [
    {
      "chain": "eth",
      "contract_name": "Uniswap V3 Positions NFT-V1",
      "contract_id": "0xc36442b4a4522e871399cd717abdd847ab11fe88",
      "is_erc721": true,
      "amount": "18",
      "spender": {
        "id": "0x461b154b688d5171934d70f991c17d719082710c",
        "protocol": {
          "id": "izumi",
          "name": "iZUMi Finance",
          "logo_url": "https://static.debank.com/image/project/logo_url/izumi/e1df9915834abea10d21f273949180b1.png",
          "chain": "eth"
        }
      }
    },
    {
      "chain": "eth",
      "contract_name": "Bushidos",
      "contract_id": "0xd2aad45015090f8d45ad78e456b58dd61fb7cd79",
      "is_erc721": true,
      "amount": "16",
      "spender": {
        "id": "0xf42aa99f011a1fa7cda90e5e98b277e306bca83e",
        "protocol": {
          "id": "looksrare",
          "name": "LooksRare",
          "logo_url": "https://static.debank.com/image/project/logo_url/looksrare/45d6664429880a23ba34359c45bab95e.png",
          "chain": "eth"
        }
      }
    },
    {
      "chain": "eth",
      "amount": "12",
      "is_erc1155": true,
      "contract_name": "",
      "spender": {
        "id": "0x5bd25d2f4f26bc82a34de016d34612a28a0cd492",
        "protocol": null
      },
      "contract_id": "0x9b1bfa5d13375e8e21fdcb0a5f965974f9dcfdd1"
    },
    {
      "chain": "eth",
      "contract_name": "Prime Ape Planet",
      "contract_id": "0x6632a9d63e142f17a668064d41a21193b49b41a0",
      "is_erc721": true,
      "amount": "6",
      "spender": {
        "id": "0x4e81d41af8a4f2ee72a07f422adc32e6a1e27bf8",
        "protocol": {
          "id": "opensea",
          "name": "OpenSea",
          "logo_url": "https://static.debank.com/image/project/logo_url/opensea/4b23246fac2d4ce53bd8e8079844821c.png",
          "chain": "eth"
        }
      }
    },
    {
      "chain": "eth",
      "contract_name": "Hashmasks",
      "contract_id": "0xc2c747e0f7004f9e8817db2ca4997657a7746928",
      "is_erc721": true,
      "amount": "2",
      "spender": {
        "id": "0x28e9162fc10bb3a7f98f44e90fa7273698fce360",
        "protocol": null
      }
    },
    {
      "chain": "eth",
      "contract_name": "sLoot",
      "contract_id": "0xb12f78434ae7d12ae548c51a5cb734ecc4536594",
      "is_erc721": true,
      "amount": "1",
      "spender": {
        "id": "0x4e81d41af8a4f2ee72a07f422adc32e6a1e27bf8",
        "protocol": {
          "id": "opensea",
          "name": "OpenSea",
          "logo_url": "https://static.debank.com/image/project/logo_url/opensea/4b23246fac2d4ce53bd8e8079844821c.png",
          "chain": "eth"
        }
      }
    },
    {
      "chain": "eth",
      "contract_name": "JPEG Cards",
      "contract_id": "0x83979584ec8c6d94d93f838a524049173deba6f4",
      "is_erc721": true,
      "amount": "0",
      "spender": {
        "id": "0x45c2d9f2553f4e1794e1b99b8e319ead8a066f81",
        "protocol": null
      }
    }
  ],
  "total": "56"
}
```

## Get user total balance on all supported chains

Get net assets on multiple chains, including tokens and protocols

#### Method

get

#### Path

/v1/user/total\_balance

#### Parameters

* `id` : required, user address

#### Returns

return the total net assets and the net assets of each chain.

`Object` - An object with following fields:

* `total_usd_value` : `double` - The price of all assets in a user's account.
* `chain_list` : `Array` of `Object` - An object with following fields:
  * `id` : `string` - The chain's id.
  * `community_id` : `integer` - The community-identified id.
  * `name` : `string` - The chain's name.
  * `logo_url` : `string` URL of the chain's logo image. `null` if not available.
  * `native_token_id` : `string` - The native token's id.
  * `wrapped_token_id`: `string` - The address of the native token.
  * `usd_value` : `double`- The price of user assets on this chain.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/user/total_balance?id=0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85' \
  -H 'accept: application/json'\
  -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
{
  "total_usd_value": 27654.142997146177,
  "chain_list": [
    {
      "id": "eth",
      "community_id": 1,
      "name": "Ethereum",
      "native_token_id": "eth",
      "logo_url": "https://static.debank.com/image/chain/logo_url/eth/42ba589cd077e7bdd97db6480b0ff61d.png",
      "wrapped_token_id": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
      "usd_value": 11937.702345945296
    },
    {
      "id": "bsc",
      "community_id": 56,
      "name": "BSC",
      "native_token_id": "bsc",
      "logo_url": "https://static.debank.com/image/chain/logo_url/bsc/7c87af7b52853145f6aa790d893763f1.png",
      "wrapped_token_id": "0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c",
      "usd_value": 2279.5321187397594
    },
    {
      "id": "xdai",
      "community_id": 100,
      "name": "xDai",
      "native_token_id": "xdai",
      "logo_url": "https://static.debank.com/image/chain/logo_url/xdai/8b5320523b30bd57a388d1bcc775acd5.png",
      "wrapped_token_id": "0xe91d153e0b41518a2ce8dd3d7944fa863463a97d",
      "usd_value": 305.39078328786195
    },
    {
      "id": "matic",
      "community_id": 137,
      "name": "Polygon",
      "native_token_id": "matic",
      "logo_url": "https://static.debank.com/image/chain/logo_url/matic/d3d807aff1a13e9ba51a14ff153d6807.png",
      "wrapped_token_id": "0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270",
      "usd_value": 1241.1293776554253
    },
    {
      "id": "ftm",
      "community_id": 250,
      "name": "Fantom",
      "native_token_id": "ftm",
      "logo_url": "https://static.debank.com/image/chain/logo_url/ftm/700fca32e0ee6811686d72b99cc67713.png",
      "wrapped_token_id": "0x21be370d5312f44cb42ce377bc9b8a0cef1a4c83",
      "usd_value": 388.4508412244692
    },
    {
      "id": "okt",
      "community_id": 66,
      "name": "OEC",
      "native_token_id": "okt",
      "logo_url": "https://static.debank.com/image/chain/logo_url/okt/1228cd92320b3d33769bd08eecfb5391.png",
      "wrapped_token_id": "0x8f8526dbfd6e38e3d8307702ca8469bae6c56c15",
      "usd_value": 1051.8493580839101
    },
    {
      "id": "heco",
      "community_id": 128,
      "name": "HECO",
      "native_token_id": "heco",
      "logo_url": "https://static.debank.com/image/chain/logo_url/heco/db5152613c669e0cc8624d466d6c94ea.png",
      "wrapped_token_id": "0x5545153ccfca01fbd7dd11c0b23ba694d9509a6f",
      "usd_value": 85.54070337826396
    },
    {
      "id": "avax",
      "community_id": 43114,
      "name": "Avalanche",
      "native_token_id": "avax",
      "logo_url": "https://static.debank.com/image/chain/logo_url/avax/4d1649e8a0c7dec9de3491b81807d402.png",
      "wrapped_token_id": "0xb31f66aa3c1e785363f0875a1b74e27b85fd66c7",
      "usd_value": 3251.9556287016276
    },
    {
      "id": "op",
      "community_id": 10,
      "name": "Optimism",
      "native_token_id": "op",
      "logo_url": "https://static.debank.com/image/chain/logo_url/op/01ae734fe781c9c2ae6a4cc7e9244056.png",
      "wrapped_token_id": "0x4200000000000000000000000000000000000006",
      "usd_value": 481.6603092427565
    },
    {
      "id": "arb",
      "community_id": 42161,
      "name": "Arbitrum",
      "native_token_id": "arb",
      "logo_url": "https://static.debank.com/image/chain/logo_url/arb/f6d1b236259654d531a1459b2bccaf64.png",
      "wrapped_token_id": "0x82af49447d8a07e3bd95bd0d56f35241523fbab1",
      "usd_value": 3394.648029286528
    },
    {
      "id": "celo",
      "community_id": 42220,
      "name": "Celo",
      "native_token_id": "0x471ece3750da237f93b8e339c536989b8978a438",
      "logo_url": "https://static.debank.com/image/chain/logo_url/celo/41da5c1d3c0945ae822a1f85f02c76cf.png",
      "wrapped_token_id": "",
      "usd_value": 162.94112590980387
    },
    {
      "id": "movr",
      "community_id": 1285,
      "name": "Moonriver",
      "native_token_id": "movr",
      "logo_url": "https://static.debank.com/image/chain/logo_url/movr/4b0de5a711b437f187c0d0f15cc0398b.png",
      "wrapped_token_id": "0xe3c7487eb01c74b73b7184d198c7fbf46b34e5af",
      "usd_value": 996.3205434639602
    },
    {
      "id": "cro",
      "community_id": 25,
      "name": "Cronos",
      "native_token_id": "cro",
      "logo_url": "https://static.debank.com/image/chain/logo_url/cro/44f784a1f4c0ea7d26d00acabfdf0028.png",
      "wrapped_token_id": "0x5c7f8a570d578ed84e63fdfa7b1ee72deae1ae23",
      "usd_value": 67.64405055936568
    },
    {
      "id": "boba",
      "community_id": 288,
      "name": "Boba",
      "native_token_id": "boba",
      "logo_url": "https://static.debank.com/image/chain/logo_url/boba/e43d79cd8088ceb3ea3e4a240a75728f.png",
      "wrapped_token_id": "0xdeaddeaddeaddeaddeaddeaddeaddeaddead0000",
      "usd_value": 2009.3777816671507
    }
  ]
}
```

## Get user 24-hour net curve on a single chain

Get net curve of user on a single chain

#### Method

get

#### Path

/v1/user/chain\_net\_curve

#### Parameters

* `id` : required, user address
* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).

#### Returns

return timestamp and the value of user at the timestamp.

`Array` of `Object` - An object with following fields:

* `timestamp` : `double` - The timestamp on the curve.
* `usd_value` : `double` - The price of all assets in a user's account at the timestamp.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/user/chain_net_curve?id=0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85&chain_id=eth' \
  -H 'accept: application/json'\
  -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
[
    {
        "timestamp": 1671012000,
        "usd_value": 333318.12768559786
    },
    {
        "timestamp": 1671012300,
        "usd_value": 333319.4193142207
    },
    {
        "timestamp": 1671012600,
        "usd_value": 332964.5462521421
    },
    {
        "timestamp": 1671012900,
        "usd_value": 332964.5462521421
    }
]
```

## Get user 24-hour net curve on all chains

Get net curve of user on chains

#### Method

get

#### Path

/v1/user/total\_net\_curve

#### Parameters

* `id` : required, user address
* `chain_ids` : optional, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1). All chains by default.

#### Returns

return timestamp and the value of user at the timestamp.

`Array` of `Object` - An object with following fields:

* `timestamp` : `double` - The timestamp on the curve.
* `usd_value` : `double` - The price of all assets in a user's account at the timestamp.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/user/total_net_curve?id=0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85&chain_ids=eth,bsc' \
  -H 'accept: application/json'\
  -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
[
    {
        "timestamp": 1671012000,
        "usd_value": 333318.12768559786
    },
    {
        "timestamp": 1671012300,
        "usd_value": 333319.4193142207
    },
    {
        "timestamp": 1671012600,
        "usd_value": 332964.5462521421
    },
    {
        "timestamp": 1671012900,
        "usd_value": 332964.5462521421
    }
]
```


# Wallet

The Wallet API allows you to easily get some wallet abilities.

## Get gas prices

#### Method

get

#### Path

/v1/wallet/gas\_market

#### Parameters

* `chain_id` : required, chain id, eg: `eth`, `bsc`, `xdai`, [for more info](/en/readme/api-pro-reference/chain#returns-1).

#### Returns

`Array` of `Object` - An object with following fields:

* `level`: `string` - The gas price level. (eg. slow, normal, fast)
* `price`: `integer` - Gas price.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/wallet/gas_market?chain_id=eth' \
  -H 'accept: application/json' \
  -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
[
  {
    "level": "slow",
    "price": 30000000000
  },
  {
    "level": "normal",
    "price": 37000000000
  },
  {
    "level": "fast",
    "price": 43000000000
  }
]
```

## Enhanced transaction pre-execution

The chain list that currently supports this feature：eth, bsc, matic, avax, boba, op, hmy, ftm, cro, xdai, mobm, movr, metis, astar, sdn, nova

#### Method

post

#### Path

/v1/wallet/pre\_*exec\_tx*

#### Parameters

* `tx`: required, [for more info](https://docs.open.debank.com/en/reference/api-models/transactionobject).
* `pending_tx_list`: pending tx list. Transaction Pre-Execute API supports simulating the execution of multiple transactions at the same time. A common use case happens when swapping on dex, where the ERC20 token needs to be approved before the swap.Simulation of the swap transaction will fail unless multiple transactions can be pre-executed simultaneously.\\

  So you just need to put the transaction you want to execute in advance into the pending\_tx\_list,

  and we will execute the transactions in the pending\_tx\_list before the main transaction.

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl 'https://pro-openapi.debank.com/v1/wallet/pre_exec_tx' \
  -H 'content-type: application/json' \
  -H 'AccessKey: YOUR_ACCESSKEY' \
  --data-raw '{"tx":{"chainId":1,"from":"0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85","to":"0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb81","value":"0x16345785d8a0000","data":"0x","gas":"","maxFeePerGas":"0x4e3b29200","maxPriorityFeePerGas":"0x4e3b29200","nonce":"0x1"}}' \
  --compressed
```

{% endtab %}
{% endtabs %}

Result

An object with following fields:

* `balance_change` - balance change info
  * success: whether the balance change detection is success or not.
  * error: return [error msg](/en/readme/error-code/pre-exec-error-code), if the balance change detection is fail, otherwise is null.
  * send\_toke&#x6E;*\_*&#x6C;ist: list of send token info.
  * receive\_token\_list: list of receive token info.
  * send\_nft\_list: list of send nft info.
  * receiver\_nf&#x74;*\_*&#x6C;is&#x74;*:* list of receive nft info.
  * usd\_*value\_*&#x63;hange: change in the value of the dollar.
* `gas` - gas estimate info.
  * success: whether the gas estimate is success or not.
  * error: return [error msg](/en/readme/error-code/pre-exec-error-code), if the gas estimate is fail, otherwise is null.
  * gas\_used: gas used.
* `pre_exec` - pre exec info
  * success: whether pre exec is success or not.
  * error: return [error msg](/en/readme/error-code/pre-exec-error-code), if the pre exec is fail, otherwise is null.
* `is_multisig` - whether it is a multisig tx
* `multisig` - if it is a multisig tx, it will return info which include the same format as the above info.

```json
{
    "balance_change": {
        "success": true,
        "error": null,
        "send_token_list": [
            {
                "id": "op",
                "chain": "op",
                "name": "ETH",
                "symbol": "ETH",
                "display_symbol": null,
                "optimized_symbol": "ETH",
                "decimals": 18,
                "logo_url": "https://static.debank.com/image/op_token/logo_url/op/d61441782d4a08a7479d54aea211679e.png",
                "protocol_id": "",
                "price": 1568.24,
                "is_verified": true,
                "is_core": true,
                "is_wallet": true,
                "time_at": null,
                "amount": 0.001,
                "usd_value": 1.56824
            }
        ],
        "receive_token_list": [
            {
                "id": "0x94b008aa00579c1307b0ef2c499ad98a8ce58e58",
                "chain": "op",
                "name": "Tether USD",
                "symbol": "USDT",
                "display_symbol": null,
                "optimized_symbol": "USDT",
                "decimals": 6,
                "logo_url": "https://static.debank.com/image/op_token/logo_url/0x94b008aa00579c1307b0ef2c499ad98a8ce58e58/37c9c2ddceb0c83f0f4c07ea4fa53e9d.png",
                "protocol_id": "",
                "price": 1.0,
                "is_verified": true,
                "is_core": true,
                "is_wallet": true,
                "time_at": null,
                "amount": 1.552832,
                "usd_value": 1.552832
            }
        ],
        "send_nft_list": [],
        "receive_nft_list": [],
        "usd_value_change": -0.015408000000000088
    },
    "gas": {
        "success": true,
        "error": null,
        "gas_used": 354856
    },
    "is_multisig": false,
    "multisig": null,
    "pre_exec": {
        "success": true,
        "error": null
    }   
}

```

## Explain Tx

#### Method

post

#### Path

/v1/wallet/explain\_tx

#### Parameters

* `tx`: required, [for more info](https://docs.open.debank.com/en/reference/api-models/transactionobject).

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl 'https://pro-openapi.debank.com/v1/wallet/explain_tx' \
  -H 'content-type: application/json' \
  -H 'AccessKey: YOUR_ACCESSKEY' \
  --data-raw '{"tx":{"chainId":1,"from":"0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85","to":"0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb81","value":"0x16345785d8a0000","data":"0x","gas":"","maxFeePerGas":"0x4e3b29200","maxPriorityFeePerGas":"0x4e3b29200","nonce":"0x1"}}' \
  --compressed
```

{% endtab %}
{% endtabs %}

Result

An object with following fields:

* abi - abi info
  * func : string - Method of call function name
  * params: list - call params
* actions: list - action list， [for more info](/en/readme/api-models/actionobject)

```json
{
    "abi": {
        "func": "setApprovalForAll",
        "params": [
            "0x1E0049783F008A0085193E00003D00cd54003c71",
            false
        ]
    },
    "actions": [
        {
            "type": "revoke_nft_collection_approval",
            "owner": "0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85",
            "spender": {
                "id": "0x1E0049783F008A0085193E00003D00cd54003c71",
                "protocol": {
                    "id": "opensea",
                    "name": "OpenSea",
                    "logo_url": "https://static.debank.com/image/project/logo_url/opensea/4b23246fac2d4ce53bd8e8079844821c.png"
                }
            },
            "collection": {
                "id": "0x253954d29386e174ed4bc69902391a8ed3fd51ca",
                "chain": "eth",
                "name": "NFTflow Membership Pass",
                "symbol": "NFTflow",
                "is_core": false,
                "time_at": 1646883614,
                "collection": null
            }
        }
    ]
}
```


# API Models


# PortfolioItemObject

* `stats` : `Object` - An object with following fields:
  * `asset_usd_value` : `double` - Asset USD value
  * `debt_usd_value` : `double` - Debt USD value
  * `net_usd_value` : `double` - Net asset USD value
* `update_at` : `double` - Update time, the timestamp of the latest data refresh.
* `name` : `string` - The front end is displayed to the user to indicate the corresponding function. The value is one of :
  * `Yield` ,
  * `Deposit`,
    * Similar to Yield but without the daily income
    * Used in more complicated scenarios such as spot positions from DDEX and pools from Pooltogether
  * `Staked`,
    * Deposits and reward tokens are the same. E.g., You can deposit “CAKE” to get the "CAKE" rewards in PancakeSwap.
    * No unlock time
  * `Locked`,
    * Similar to "Staked" but with the unlock time
  * `Farming`,
    * Deposits and reward tokens are differnet
  * `Leveraged Farming` ,
  * `Lending`,
  * `Vesting`,
  * `Rewards`,
  * `Airdrop`
  * `Liquidity Pool`,
    * eg: Curve、Uniswap、1inch、DODO
  * `Options Seller`,
  * `Options Buyer`,
  * `Insurance Seller`,
  * `Insurance Buyer`,
  * `Investment`,
    * TokenSets
  * `Governance`,
  * `Perpetuals` .
  * `NFT Staked`
    * eg. Ape Stake
  * `NFT Liquidity Pool`
    * eg. sudoswap
  * `NFT Lending`
    * eg. BendDao
  * `NFT Fraction`
    * eg. NFTX
  * `NFT P2P Borrower`
  * `NFT P2P Lender`
* `detail_types` : `Array` of `string` - See below.
* `detail` : `Object` - An object with following fields:
  * `supply_token_list` : `Array` of `TokenObject`
  * `reward_token_list` : `Array` of `TokenObject`
  * `borrow_token_list` : `Array` of `TokenObject`
* `proxy_detail` : `Object` - If the field is not empty, the portfolio\_item is a position for the user's agency contract account. An object with following fields:
  * `project`: `Object` - An object with following fields:
    * `id` : `string` - Protocol's id.
    * `name` : `string` - Protocol's name.
    * `site_url` : `string` - Protocol's site url.
    * `logo_url` : `string` - Logo url.
  * `proxy_contract_id` : `string` - The proxy contract address
* `pool`: `Object` - An object with following fields:
  * `controller`: `string` - controller address of pool which the user interactive to.
  * `id`: `string` - Pool's unique id. For most case, it's the same as controller id, but if one controller address has several pools, the id will be used as a field to distinguish the pool. For example, one pool id in `sushiswap farming` can be expressed as `0xc2edad668740f1aa35e4d8f227fb8e17dca888cd:5`, the `5` is the index. You can call contract abi function `poolLength` to retrive the length of pools.
  * `chain`: `string` - Chain's id, eg. `arb`, `eth`, `bsc`
  * `project_id`: `string` - Protocol's id which the pool related to.
* `position_index`: `string` - Unique position id of the user in this pool. If the pool allow user have more than one position, "position\_index" will be available. othewise, there will be no this field.

## **About `detail_types`**

* May return multiple or zero
* Priority increases from left to right, i.e. the most detailed & best user experience types are on the rightmost end
* Typically the client uses the type that has been adapted & has the highest priority
* For multiple reasons, there are no types available on the client side, so only the lowest level of presentation is available to the user based on statistical fields (e.g. net worth)
  * Back-end implementation does not populate detail\_types (rare)
  * The backend fails the automated detection of the type field and removes the type from the detail\_types (rare)
  * A new type appears that has not yet been adapted by the client (more common)

## About the different types of Token

Token can be used in different scenarios (i.e. different detail\_types) with special fields in addition to the generic fields to meet specific needs, such as in the lending example above. A supply\_token in the supply\_token\_list will have an additional field

* amount - the amount of money deposited in the token The borrow\_token in the borrow\_token\_list will have an additional field
* amount - the amount of money borrowed by the token
* is\_collateral - whether the supply\_token can be collateralized.

## About detail\_type

A detail\_type definition consists of two parts

* The fields in detail
* the extended fields of the token in each token\_list

`detail_type` This value is one of `common` , `locked` , `lending` , `leveraged_farming` , `vesting` , `reward` , `options_seller` , `options_buyer`, `insurance_seller` , `insurance_buyer` , `perpetuals` , `nft_common` , `nft_lending`, `nft_fraction` .

A \* identifies the field as required, otherwise it is optional. If the optional field has no value, then the field will not exist.

### **common - generic type**

e.g. uniswap2(Liquidity Pool), yearn2(Farm), pooltogether(Deposit) The corresponding names are in brackets, same as below

* \*`supply_token_list` - the value of the token
  * \*`amount`
* `reward_token_list` - reward token
  * \*`amount`
* `borrow_token_list` - debt token
  * \*`amount`
* `description` - description, e.g. Curve's liquidity pool will generally have the community-accepted name 3Pool

### **locked - locked position**

Example bsc\_ellipsis(Locked)

* \*`supply_token_list` - charge token
  * \*`amount`
* \*`unlock_at` - unlock time
* `reward_token_list` - reward token
  * \*`amount`
* `description` - description, e.g. Curve's liquidity pool will generally have the community accepted name 3Pool

```json
{
  "id": "fei",
  "chain": "eth",
  "name": "Fei Protocol",
  "site_url": "https://app.fei.money",
  "logo_url": "https://static.debank.com/image/project/logo_url/fei/422fd342a44237b70ae4107b93c2dd01.png",
  "has_supported_portfolio": true,
  "tvl": 428173039.709026,
  "portfolio_item_list": [
    {
      "stats": {
        "asset_usd_value": 40.2528,
        "debt_usd_value": 0,
        "net_usd_value": 40.2528
      },
      "update_at": 1639642969.2155075,
      "name": "Locked",
      "detail_types": ["locked"],
      "detail": {
        "supply_token_list": [
          {
            "id": "0xbffb152b9392e38cddc275d818a3db7fe364596b",
            "chain": "eth",
            "name": "Fei Genesis Group",
            "symbol": "FGEN",
            "display_symbol": null,
            "optimized_symbol": "FGEN",
            "decimals": 18,
            "logo_url": null,
            "protocol_id": "fei",
            "price": 4025.28,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1616909486,
            "amount": 0.01
          }
        ],
        "unlock_at": 1617476353
      },
      "proxy_detail": {},
      "pool": {
        "controller": "0x7d2768de32b0b80b7a3454c06bdac94a69ddc7a9",
        "id": "0x7d2768de32b0b80b7a3454c06bdac94a69ddc7a9",
        "chain": "eth",
        "project_id": "aave2"
      }
    }
  ]
}
```

### **lending - the type of lending**

e.g. aave2(Lending), compound(Lending)

* \*`supply_token_list` - deposit token
  * \*`amount` - the amount of deposits
* \*`borrow_token_list` - borrowing token
  * \*`amount` - number of loans
* `reward_token_list` - reward token
  * `amount` - the amount of rewards
* \*`health_rate` - health factor

```json
{
  "id": "compound",
  "chain": "eth",
  "name": "Compound",
  "site_url": "https://app.compound.finance",
  "logo_url": "https://static.debank.com/image/project/logo_url/compound/0b792243f1f68e9ed082f5a49ee6f21d.png",
  "has_supported_portfolio": true,
  "tvl": 12763095483.420198,
  "portfolio_item_list": [
    {
      "stats": {
        "asset_usd_value": 3.1936420758652284,
        "debt_usd_value": 0.0000030267553188504803,
        "net_usd_value": 3.1936390491099096
      },
      "update_at": 1639643327.1661053,
      "name": "Lending",
      "detail_types": ["lending"],
      "detail": {
        "supply_token_list": [
          {
            "id": "0x6b175474e89094c44da98b954eedeac495271d0f",
            "chain": "eth",
            "name": "Dai Stablecoin",
            "symbol": "DAI",
            "display_symbol": null,
            "optimized_symbol": "DAI",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0x6b175474e89094c44da98b954eedeac495271d0f/549c4205dbb199f1b8b03af783f35e71.png",
            "protocol_id": "makerdao",
            "price": 1,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1573672677,
            "amount": 2.1778000124879227,
            "is_collateral": true
          },
          {
            "id": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
            "chain": "eth",
            "name": "USD Coin",
            "symbol": "USDC",
            "display_symbol": null,
            "optimized_symbol": "USDC",
            "decimals": 6,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48/adee072b10b0db7c5bd7a28dd4fbe96f.png",
            "protocol_id": "",
            "price": 1,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1533324504,
            "amount": 1.0158420633773058,
            "is_collateral": true
          }
        ],
        "borrow_token_list": [
          {
            "id": "eth",
            "chain": "eth",
            "name": "ETH",
            "symbol": "ETH",
            "display_symbol": null,
            "optimized_symbol": "ETH",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/token/logo_url/eth/935ae4e4d1d12d59a99717a24f2540b5.png",
            "protocol_id": "",
            "price": 4021.66,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1483200000,
            "amount": 7.52613428e-10
          }
        ],
        "health_rate": 844109.745105694
      },
      "proxy_detail": {}
    },
    {
      "stats": {
        "asset_usd_value": 0.20412694047971483,
        "debt_usd_value": 0,
        "net_usd_value": 0.20412694047971483
      },
      "update_at": 1639643327.1773217,
      "name": "Rewards",
      "detail_types": ["reward"],
      "detail": {
        "token_list": [
          {
            "id": "0xc00e94cb662c3520282e6f5717214004a7f26888",
            "chain": "eth",
            "name": "Compound",
            "symbol": "COMP",
            "display_symbol": null,
            "optimized_symbol": "COMP",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xc00e94cb662c3520282e6f5717214004a7f26888/dd174d3d7083fa027a433dc50edaf0bc.png",
            "protocol_id": "compound",
            "price": 194.64263022881642,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1583280535,
            "amount": 0.001048726788369788
          }
        ]
      },
      "proxy_detail": {}
    },
    {
      "stats": {
        "asset_usd_value": 4.0234347279462925,
        "debt_usd_value": 0,
        "net_usd_value": 4.0234347279462925
      },
      "update_at": 1639643326.9171333,
      "name": "Lending",
      "detail_types": ["lending"],
      "detail": {
        "supply_token_list": [
          {
            "id": "eth",
            "chain": "eth",
            "name": "ETH",
            "symbol": "ETH",
            "display_symbol": null,
            "optimized_symbol": "ETH",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/token/logo_url/eth/935ae4e4d1d12d59a99717a24f2540b5.png",
            "protocol_id": "",
            "price": 4021.66,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1483200000,
            "amount": 0.0010004412923882906,
            "is_collateral": true
          }
        ],
        "borrow_token_list": [],
        "health_rate": null
      },
      "proxy_detail": {
        "project": {
          "id": "instadapp",
          "name": "Instadapp",
          "site_url": "https://instadapp.io",
          "logo_url": "https://static.debank.com/image/project/logo_url/instadapp/0f6a25368dce3552364b43a29cbc1586.png"
        },
        "proxy_contract_id": "0x45593df3bfa53ee18baec198b9954f0b918cfc40"
      }
    },
    {
      "stats": {
        "asset_usd_value": 0.0011735055758092564,
        "debt_usd_value": 0,
        "net_usd_value": 0.0011735055758092564
      },
      "update_at": 1639643326.9288304,
      "name": "Rewards",
      "detail_types": ["reward"],
      "detail": {
        "token_list": [
          {
            "id": "0xc00e94cb662c3520282e6f5717214004a7f26888",
            "chain": "eth",
            "name": "Compound",
            "symbol": "COMP",
            "display_symbol": null,
            "optimized_symbol": "COMP",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xc00e94cb662c3520282e6f5717214004a7f26888/dd174d3d7083fa027a433dc50edaf0bc.png",
            "protocol_id": "compound",
            "price": 194.64263022881642,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1583280535,
            "amount": 0.000006029026500668
          }
        ]
      },
      "proxy_detail": {
        "project": {
          "id": "instadapp",
          "name": "Instadapp",
          "site_url": "https://instadapp.io",
          "logo_url": "https://static.debank.com/image/project/logo_url/instadapp/0f6a25368dce3552364b43a29cbc1586.png"
        },
        "proxy_contract_id": "0x45593df3bfa53ee18baec198b9954f0b918cfc40"
      }
    },
    {
      "stats": {
        "asset_usd_value": 2.1289871979769353,
        "debt_usd_value": 1.3024714991314075,
        "net_usd_value": 0.8265156988455278
      },
      "update_at": 1639643327.0022216,
      "name": "Lending",
      "detail_types": ["lending"],
      "detail": {
        "supply_token_list": [
          {
            "id": "0x6b175474e89094c44da98b954eedeac495271d0f",
            "chain": "eth",
            "name": "Dai Stablecoin",
            "symbol": "DAI",
            "display_symbol": null,
            "optimized_symbol": "DAI",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0x6b175474e89094c44da98b954eedeac495271d0f/549c4205dbb199f1b8b03af783f35e71.png",
            "protocol_id": "makerdao",
            "price": 1,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1573672677,
            "amount": 2.1289871979769353,
            "is_collateral": true
          }
        ],
        "borrow_token_list": [
          {
            "id": "0x0d8775f648430679a709e98d2b0cb6250d2887ef",
            "chain": "eth",
            "name": "Basic Attention Token",
            "symbol": "BAT",
            "display_symbol": null,
            "optimized_symbol": "BAT",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0x0d8775f648430679a709e98d2b0cb6250d2887ef/c5913bbde8a620ce2a47d8c4694e7dbb.png",
            "protocol_id": "",
            "price": 1.1651,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1496083510,
            "amount": 1.117905329269082
          }
        ],
        "health_rate": 1.3076599061993848
      },
      "proxy_detail": {
        "project": {
          "id": "instadapp",
          "name": "Instadapp",
          "site_url": "https://instadapp.io",
          "logo_url": "https://static.debank.com/image/project/logo_url/instadapp/0f6a25368dce3552364b43a29cbc1586.png"
        },
        "proxy_contract_id": "0xecfcdfc4cf022e6e2cf390ae06bd1eee9ccb965d"
      }
    },
    {
      "stats": {
        "asset_usd_value": 0.09909788513640833,
        "debt_usd_value": 0,
        "net_usd_value": 0.09909788513640833
      },
      "update_at": 1639643327.0104644,
      "name": "Rewards",
      "detail_types": ["reward"],
      "detail": {
        "token_list": [
          {
            "id": "0xc00e94cb662c3520282e6f5717214004a7f26888",
            "chain": "eth",
            "name": "Compound",
            "symbol": "COMP",
            "display_symbol": null,
            "optimized_symbol": "COMP",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xc00e94cb662c3520282e6f5717214004a7f26888/dd174d3d7083fa027a433dc50edaf0bc.png",
            "protocol_id": "compound",
            "price": 194.64263022881642,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1583280535,
            "amount": 0.000509127342863748
          }
        ]
      },
      "proxy_detail": {
        "project": {
          "id": "instadapp",
          "name": "Instadapp",
          "site_url": "https://instadapp.io",
          "logo_url": "https://static.debank.com/image/project/logo_url/instadapp/0f6a25368dce3552364b43a29cbc1586.png"
        },
        "proxy_contract_id": "0xecfcdfc4cf022e6e2cf390ae06bd1eee9ccb965d"
      }
    },
    {
      "stats": {
        "asset_usd_value": 1.0768181423571452,
        "debt_usd_value": 0,
        "net_usd_value": 1.0768181423571452
      },
      "update_at": 1639643327.0933123,
      "name": "Lending",
      "detail_types": ["lending"],
      "detail": {
        "supply_token_list": [
          {
            "id": "0x6b175474e89094c44da98b954eedeac495271d0f",
            "chain": "eth",
            "name": "Dai Stablecoin",
            "symbol": "DAI",
            "display_symbol": null,
            "optimized_symbol": "DAI",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0x6b175474e89094c44da98b954eedeac495271d0f/549c4205dbb199f1b8b03af783f35e71.png",
            "protocol_id": "makerdao",
            "price": 1,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1573672677,
            "amount": 1.0768181423571452,
            "is_collateral": false
          }
        ],
        "borrow_token_list": [],
        "health_rate": null
      },
      "proxy_detail": {
        "project": {
          "id": "makerdao",
          "name": "Maker",
          "site_url": "https://oasis.app",
          "logo_url": "https://static.debank.com/image/project/logo_url/makerdao/3821328c7c6d5ac4fc87e2c2e4d1c684.png"
        },
        "proxy_contract_id": "0x47b9a12e33ea26d583f56e7b53cabe89cc2a1212"
      }
    },
    {
      "stats": {
        "asset_usd_value": 0.04932694529757137,
        "debt_usd_value": 0,
        "net_usd_value": 0.04932694529757137
      },
      "update_at": 1639643327.1036785,
      "name": "Rewards",
      "detail_types": ["reward"],
      "detail": {
        "token_list": [
          {
            "id": "0xc00e94cb662c3520282e6f5717214004a7f26888",
            "chain": "eth",
            "name": "Compound",
            "symbol": "COMP",
            "display_symbol": null,
            "optimized_symbol": "COMP",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xc00e94cb662c3520282e6f5717214004a7f26888/dd174d3d7083fa027a433dc50edaf0bc.png",
            "protocol_id": "compound",
            "price": 194.64263022881642,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1583280535,
            "amount": 0.00025342313366596
          }
        ]
      },
      "proxy_detail": {
        "project": {
          "id": "makerdao",
          "name": "Maker",
          "site_url": "https://oasis.app",
          "logo_url": "https://static.debank.com/image/project/logo_url/makerdao/3821328c7c6d5ac4fc87e2c2e4d1c684.png"
        },
        "proxy_contract_id": "0x47b9a12e33ea26d583f56e7b53cabe89cc2a1212"
      }
    }
  ]
}
```

### leveraged\_farming **- leveraged mining**

For example alpha (Farming)

* \*`supply_token_list` - deposit token
  * \*`amount` - amount of deposits
* \*`borrow_token_list` - borrow token
  * \*`amount` - amount of money borrowed
* \*`debt_ratio` - debt ratio

```json
{
  "id": "alpha2",
  "chain": "eth",
  "name": "Alpha Homora V2",
  "site_url": "https://homora-v2.alphafinance.io",
  "logo_url": "https://static.debank.com/image/project/logo_url/alpha2/07b6b9df8fdc9d29801cf461e14f8790.png",
  "has_supported_portfolio": true,
  "tvl": 0,
  "portfolio_item_list": [
    {
      "stats": {
        "asset_usd_value": 19.334538984053285,
        "debt_usd_value": 0,
        "net_usd_value": 19.334538984053285
      },
      "update_at": 1639643523.347684,
      "name": "Yield",
      "detail_types": ["common"],
      "detail": {
        "supply_token_list": [
          {
            "id": "0x514910771af9ca656af840dff83e8264ecf986ca",
            "chain": "eth",
            "name": "ChainLink Token",
            "symbol": "LINK",
            "display_symbol": null,
            "optimized_symbol": "LINK",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0x514910771af9ca656af840dff83e8264ecf986ca/69425617db0ef93a7c21c4f9b81c7ca5.png",
            "protocol_id": "chainlink",
            "price": 19.7113,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1505597189,
            "amount": 0.9808860391782015
          }
        ]
      },
      "proxy_detail": {}
    },
    {
      "stats": {
        "asset_usd_value": 10.138813052520218,
        "debt_usd_value": 0,
        "net_usd_value": 10.138813052520218
      },
      "update_at": 1639643523.368311,
      "name": "Yield",
      "detail_types": ["common"],
      "detail": {
        "supply_token_list": [
          {
            "id": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
            "chain": "eth",
            "name": "USD Coin",
            "symbol": "USDC",
            "display_symbol": null,
            "optimized_symbol": "USDC",
            "decimals": 6,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48/adee072b10b0db7c5bd7a28dd4fbe96f.png",
            "protocol_id": "",
            "price": 1,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1533324504,
            "amount": 10.138813052520218
          }
        ]
      },
      "proxy_detail": {}
    },
    {
      "stats": {
        "asset_usd_value": 55.41834444961402,
        "debt_usd_value": 23.895761,
        "net_usd_value": 31.522583449614018
      },
      "update_at": 1639643523.4191692,
      "name": "Leveraged Farming",
      "detail_types": ["leveraged_farming"],
      "detail": {
        "debt_ratio": 0.4311886476819217,
        "supply_token_list": [
          {
            "id": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
            "chain": "eth",
            "name": "USD Coin",
            "symbol": "USDC",
            "display_symbol": null,
            "optimized_symbol": "USDC",
            "decimals": 6,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48/adee072b10b0db7c5bd7a28dd4fbe96f.png",
            "protocol_id": "",
            "price": 1,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1533324504,
            "amount": 27.692826417425458
          },
          {
            "id": "0xdac17f958d2ee523a2206206994597c13d831ec7",
            "chain": "eth",
            "name": "Tether USD",
            "symbol": "USDT",
            "display_symbol": null,
            "optimized_symbol": "USDT",
            "decimals": 6,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xdac17f958d2ee523a2206206994597c13d831ec7/66eadee7b7bb16b75e02b570ab8d5c01.png",
            "protocol_id": "",
            "price": 1,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1511829681,
            "amount": 27.72551803218856
          }
        ],
        "borrow_token_list": [
          {
            "id": "0xdac17f958d2ee523a2206206994597c13d831ec7",
            "chain": "eth",
            "name": "Tether USD",
            "symbol": "USDT",
            "display_symbol": null,
            "optimized_symbol": "USDT",
            "decimals": 6,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xdac17f958d2ee523a2206206994597c13d831ec7/66eadee7b7bb16b75e02b570ab8d5c01.png",
            "protocol_id": "",
            "price": 1,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1511829681,
            "amount": 8.548689
          },
          {
            "id": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
            "chain": "eth",
            "name": "USD Coin",
            "symbol": "USDC",
            "display_symbol": null,
            "optimized_symbol": "USDC",
            "decimals": 6,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48/adee072b10b0db7c5bd7a28dd4fbe96f.png",
            "protocol_id": "",
            "price": 1,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1533324504,
            "amount": 15.347072
          }
        ]
      },
      "proxy_detail": {}
    }
  ]
}
```

### **vesting - instalment release**

For example bzx2(Vesting)

* \*`token` - release token
  * \*`amount` - current total amount to be released
  * `claimable_amount` - the current number of claims available
* `daily_unlock_amount` - the number of releases per day
* `end_at` - release completion time

```json
{
  "id": "olympusdao",
  "chain": "eth",
  "name": "Olympus",
  "site_url": "https://app.olympusdao.finance",
  "logo_url": "https://static.debank.com/image/project/logo_url/olympusdao/7de5c458c4bcae136daa046eb4ef5b49.png",
  "has_supported_portfolio": true,
  "tvl": 3452083624.9747066,
  "portfolio_item_list": [
    {
      "stats": {
        "asset_usd_value": 462.72964044444984,
        "debt_usd_value": 0,
        "net_usd_value": 462.72964044444984
      },
      "update_at": 1639643755.5289097,
      "name": "Staked",
      "detail_types": ["common"],
      "detail": {
        "supply_token_list": [
          {
            "id": "0x383518188c0c6d7730d91b2c03a03c837814a899",
            "chain": "eth",
            "name": "Olympus",
            "symbol": "OHM",
            "display_symbol": null,
            "optimized_symbol": "OHM",
            "decimals": 9,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0x383518188c0c6d7730d91b2c03a03c837814a899/0ad387f86fba0c16654cfb0f720df5d6.png",
            "protocol_id": "olympusdao",
            "price": 404.9456457553985,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1616366920,
            "amount": 1.142695681
          }
        ]
      },
      "proxy_detail": {}
    },
    {
      "stats": {
        "asset_usd_value": 4.247140798170627,
        "debt_usd_value": 0,
        "net_usd_value": 4.247140798170627
      },
      "update_at": 1639643755.552204,
      "name": "Vesting",
      "detail_types": ["vesting"],
      "detail": {
        "token": {
          "id": "0x383518188c0c6d7730d91b2c03a03c837814a899",
          "chain": "eth",
          "name": "Olympus",
          "symbol": "OHM",
          "display_symbol": null,
          "optimized_symbol": "OHM",
          "decimals": 9,
          "logo_url": "https://static.debank.com/image/eth_token/logo_url/0x383518188c0c6d7730d91b2c03a03c837814a899/0ad387f86fba0c16654cfb0f720df5d6.png",
          "protocol_id": "olympusdao",
          "price": 404.9456457553985,
          "is_verified": true,
          "is_core": true,
          "is_wallet": true,
          "time_at": 1616366920,
          "amount": 0.010488175,
          "claimable_amount": 0.010488175
        }
      },
      "proxy_detail": {}
    }
  ]
}
```

### **reward - combined reward**

Example bxz2(Rewards)

* \*`token_list` - reward token
  * \*`amount`

```json
{
  "id": "bzx2",
  "chain": "eth",
  "name": "bZx",
  "site_url": "https://bzx.network",
  "logo_url": "https://static.debank.com/image/project/logo_url/bzx2/d6d212d2a62576e69030caa618271cb9.png",
  "has_supported_portfolio": true,
  "tvl": 18899312.906230893,
  "portfolio_item_list": [
    {
      "stats": {
        "asset_usd_value": 11.13610744580042,
        "debt_usd_value": 0,
        "net_usd_value": 11.13610744580042
      },
      "update_at": 1639643579.3529913,
      "name": "Lending",
      "detail_types": [
        "common"
      ],
      "detail": {
        "supply_token_list": [
          {
            "id": "0x6b175474e89094c44da98b954eedeac495271d0f",
            "chain": "eth",
            "name": "Dai Stablecoin",
            "symbol": "DAI",
            "display_symbol": null,
            "optimized_symbol": "DAI",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0x6b175474e89094c44da98b954eedeac495271d0f/549c4205dbb199f1b8b03af783f35e71.png",
            "protocol_id": "makerdao",
            "price": 1,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1573672677,
            "amount": 11.13610744580042
          }
        ]
      },
      "proxy_detail": {}
    },
    {
      "stats": {
        "asset_usd_value": 3.6990247350893855,
        "debt_usd_value": 0,
        "net_usd_value": 3.6990247350893855
      },
      "update_at": 1639643579.3705492,
      "name": "Rewards",
      "detail_types": [
        "reward"
      ],
      "detail": {
        "token_list": [
          {
            "id": "0xb72b31907c1c95f3650b64b2469e08edacee5e8f",
            "chain": "eth",
            "name": "bZx Vesting Token",
            "symbol": "vBZRX",
            "display_symbol": null,
            "optimized_symbol": "vBZRX",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/token/logo_url/0xb72b31907c1c95f3650b64b2469e08edacee5e8f/03ffd36c7ec2ffa954fa9ed3ac93790b.png",
            "protocol_id": "",
            "price": 0.2715782119251945,
            "is_verified": true,
            "is_core": false,
            "is_wallet": false,
            "time_at": 1594509894,
            "amount": 13.620476800650975
          }
        ]
      },
      "proxy_detail": {}
    }
  ]
}k
```

### **options\_seller - option seller**

* \*`type` - option type, Call or Put
* \*`collateral_token` - collateral
* \*`underlying_token` - the underlying asset
  * \*`amount` - the number of underlying
* \*`strike_token` - the token paid for the exercise of the option
  * \*`amount` - the number of tokens paid on exercise, divided by the number of underlying tokens, which gives the price
* \*`style` - American or European style option
* `exercise_start_at` - the time at which an exercise begins
* \*`exercise_end_at` - the time at which the exercise ends
* \*`is_auto_exercise` - whether the option is automatically exercised at expiry
* \*`exercise_profit` - the profit on the exercise of the option
* `usd_value` - the market price of the option

```json
{
  "id": "bsc_helmet",
  "chain": "bsc",
  "name": "Helmet",
  "site_url": "https://app.helmet.insure",
  "logo_url": "https://static.debank.com/image/project/logo_url/bsc_helmet/49d11226e17a2003e87b300677023f2d.png",
  "has_supported_portfolio": true,
  "tvl": 0,
  "portfolio_item_list": [
    {
      "stats": {
        "asset_usd_value": 96.12000003844801,
        "debt_usd_value": 0,
        "net_usd_value": 96.12000003844801
      },
      "update_at": 1639643880.1258543,
      "name": "Options Seller",
      "detail_types": ["options_seller"],
      "detail": {
        "type": "Put",
        "strike_token": {
          "id": "0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c",
          "chain": "bsc",
          "name": "Wrapped BNB",
          "symbol": "WBNB",
          "display_symbol": null,
          "optimized_symbol": "WBNB",
          "decimals": 18,
          "logo_url": "https://static.debank.com/image/bsc_token/logo_url/0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c/142b5c2f8f2d184afd067e43f583d3e6.png",
          "protocol_id": "",
          "price": 534,
          "is_verified": true,
          "is_core": true,
          "is_wallet": true,
          "time_at": 1599119584,
          "amount": 0.180000000072
        },
        "underlying_token": {
          "id": "0x7130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c",
          "chain": "bsc",
          "name": "BTCB Token",
          "symbol": "BTCB",
          "display_symbol": null,
          "optimized_symbol": "BTCB",
          "decimals": 18,
          "logo_url": "https://static.debank.com/image/bsc_token/logo_url/0x7130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c/6f9302fa889419e4ce8745931d2e19bf.png",
          "protocol_id": "",
          "price": 48812.55,
          "is_verified": true,
          "is_core": true,
          "is_wallet": true,
          "time_at": 1599043687,
          "amount": 0.003
        },
        "collateral_token_list": [
          {
            "id": "0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c",
            "chain": "bsc",
            "name": "Wrapped BNB",
            "symbol": "WBNB",
            "display_symbol": null,
            "optimized_symbol": "WBNB",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/bsc_token/logo_url/0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c/142b5c2f8f2d184afd067e43f583d3e6.png",
            "protocol_id": "",
            "price": 534,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1599119584,
            "amount": 0.180000000072
          }
        ],
        "style": "American",
        "is_auto_exercise": false,
        "exercise_end_at": 1621612800,
        "exercise_profit": 0
      },
      "proxy_detail": {}
    },
    {
      "stats": {
        "asset_usd_value": 0.0037380000000000004,
        "debt_usd_value": 0.0033627494017792595,
        "net_usd_value": 0.0003752505982207409
      },
      "update_at": 1639643880.14022,
      "name": "Options Seller",
      "detail_types": ["options_seller"],
      "detail": {
        "type": "Put",
        "strike_token": {
          "id": "0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c",
          "chain": "bsc",
          "name": "Wrapped BNB",
          "symbol": "WBNB",
          "display_symbol": null,
          "optimized_symbol": "WBNB",
          "decimals": 18,
          "logo_url": "https://static.debank.com/image/bsc_token/logo_url/0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c/142b5c2f8f2d184afd067e43f583d3e6.png",
          "protocol_id": "",
          "price": 534,
          "is_verified": true,
          "is_core": true,
          "is_wallet": true,
          "time_at": 1599119584,
          "amount": 0.000007
        },
        "underlying_token": {
          "id": "0x948d2a81086a075b3130bac19e4c6dee1d2e3fe8",
          "chain": "bsc",
          "name": "Helmet.insure Governance Token",
          "symbol": "Helmet",
          "display_symbol": null,
          "optimized_symbol": "Helmet",
          "decimals": 18,
          "logo_url": "https://static.debank.com/image/bsc_token/logo_url/0x948d2a81086a075b3130bac19e4c6dee1d2e3fe8/6767d678292dc57fc23acf11dd92ab21.png",
          "protocol_id": "bsc_helmet",
          "price": 0.10721445663449736,
          "is_verified": true,
          "is_core": true,
          "is_wallet": true,
          "time_at": 1608787453,
          "amount": 0.0035
        },
        "collateral_token_list": [
          {
            "id": "0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c",
            "chain": "bsc",
            "name": "Wrapped BNB",
            "symbol": "WBNB",
            "display_symbol": null,
            "optimized_symbol": "WBNB",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/bsc_token/logo_url/0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c/142b5c2f8f2d184afd067e43f583d3e6.png",
            "protocol_id": "",
            "price": 534,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1599119584,
            "amount": 0.000007
          }
        ],
        "style": "American",
        "is_auto_exercise": false,
        "exercise_end_at": 1621612800,
        "exercise_profit": 0.0033627494017792595
      },
      "proxy_detail": {}
    },
    {
      "stats": {
        "asset_usd_value": 0.005360722831724868,
        "debt_usd_value": 0,
        "net_usd_value": 0.005360722831724868
      },
      "update_at": 1639643880.1508927,
      "name": "Options Seller",
      "detail_types": ["options_seller"],
      "detail": {
        "type": "Call",
        "strike_token": {
          "id": "0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c",
          "chain": "bsc",
          "name": "Wrapped BNB",
          "symbol": "WBNB",
          "display_symbol": null,
          "optimized_symbol": "WBNB",
          "decimals": 18,
          "logo_url": "https://static.debank.com/image/bsc_token/logo_url/0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c/142b5c2f8f2d184afd067e43f583d3e6.png",
          "protocol_id": "",
          "price": 534,
          "is_verified": true,
          "is_core": true,
          "is_wallet": true,
          "time_at": 1599119584,
          "amount": 0.0004
        },
        "underlying_token": {
          "id": "0x948d2a81086a075b3130bac19e4c6dee1d2e3fe8",
          "chain": "bsc",
          "name": "Helmet.insure Governance Token",
          "symbol": "Helmet",
          "display_symbol": null,
          "optimized_symbol": "Helmet",
          "decimals": 18,
          "logo_url": "https://static.debank.com/image/bsc_token/logo_url/0x948d2a81086a075b3130bac19e4c6dee1d2e3fe8/6767d678292dc57fc23acf11dd92ab21.png",
          "protocol_id": "bsc_helmet",
          "price": 0.10721445663449736,
          "is_verified": true,
          "is_core": true,
          "is_wallet": true,
          "time_at": 1608787453,
          "amount": 0.05
        },
        "collateral_token_list": [
          {
            "id": "0x948d2a81086a075b3130bac19e4c6dee1d2e3fe8",
            "chain": "bsc",
            "name": "Helmet.insure Governance Token",
            "symbol": "Helmet",
            "display_symbol": null,
            "optimized_symbol": "Helmet",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/bsc_token/logo_url/0x948d2a81086a075b3130bac19e4c6dee1d2e3fe8/6767d678292dc57fc23acf11dd92ab21.png",
            "protocol_id": "bsc_helmet",
            "price": 0.10721445663449736,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1608787453,
            "amount": 0.05
          }
        ],
        "style": "American",
        "is_auto_exercise": false,
        "exercise_end_at": 1621612800,
        "exercise_profit": 0
      },
      "proxy_detail": {}
    }
  ]
}
```

### **options\_buyer - the buyer of the option**

Most of the fields are the same, but the collateral\_token field is missing compared to options\_buyer, and the algorithm for calculating net assets is also different

* \*`type` - the type of option, Call or Put
* \*`underlying_token` - the underlying asset
  * \*`amount` - the number of underlying
* \*`strike_token` - the token paid for the exercise
  * \*`amount` - the number of tokens paid for the strike, divided by the number of underlying tokens, which gives the price
* \*`style` - American or European style option
* `exercise_start_at` - the time at which an exercise begins
* \*`exercise_end_at` - the time at which the exercise ends
* \*`is_auto_exercise` - whether the option is automatically exercised at expiry
* \*`exercise_profit` - the profit on the exercise of the option
* `usd_value` - the market price of the right

### **insurance\_seller - the seller of the insurance**

* \*`description` - a text describing what the insurance is about
* \*`collateral_token` - the collateral
  * \*`amount`
* \*`usd_value` - the dollar value of an insurance position
* \*`expired_at` - the time of expiry

### **insurance\_buyer - the buyer of the insurance**

* \*`description` - a text describing what the insurance is about
* \*`usd_value` - the dollar value of the insurance position
* \*`expired_at` - the time of expiry

```json
{
  "id": "cover",
  "chain": "eth",
  "name": "COVER",
  "site_url": "https://app.coverprotocol.com",
  "logo_url": "https://static.debank.com/image/project/logo_url/cover/5cadde1971ba5bf25bc6c6227b4e62e6.png",
  "has_supported_portfolio": true,
  "tvl": 0,
  "portfolio_item_list": [
    {
      "stats": {
        "asset_usd_value": 0,
        "debt_usd_value": 0,
        "net_usd_value": 0
      },
      "update_at": 1639643983.9241874,
      "name": "Insurance Buyer",
      "detail_types": ["insurance_buyer"],
      "detail": {
        "usd_value": 0,
        "expired_at": 1622419200,
        "description": "Insurance for 9.86 DAI on BALANCER"
      },
      "proxy_detail": {}
    },
    {
      "stats": {
        "asset_usd_value": 0,
        "debt_usd_value": 0,
        "net_usd_value": 0
      },
      "update_at": 1639643983.9409096,
      "name": "Insurance Buyer",
      "detail_types": ["insurance_buyer"],
      "detail": {
        "usd_value": 0,
        "expired_at": 1622419200,
        "description": "Insurance for 0.0 DAI on AAVE"
      },
      "proxy_detail": {}
    },
    {
      "stats": {
        "asset_usd_value": 1.236012070630698,
        "debt_usd_value": 0,
        "net_usd_value": 1.236012070630698
      },
      "update_at": 1639643983.9796753,
      "name": "Insurance Seller",
      "detail_types": ["insurance_seller"],
      "detail": {
        "usd_value": 1.236012070630698,
        "expired_at": 1622419200,
        "collateral_token_list": [
          {
            "id": "0x6b175474e89094c44da98b954eedeac495271d0f",
            "chain": "eth",
            "name": "Dai Stablecoin",
            "symbol": "DAI",
            "display_symbol": null,
            "optimized_symbol": "DAI",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0x6b175474e89094c44da98b954eedeac495271d0f/549c4205dbb199f1b8b03af783f35e71.png",
            "protocol_id": "makerdao",
            "price": 1,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1573672677,
            "amount": 1.236012070630698
          }
        ],
        "description": "Insurance for 1.24 DAI on BALANCER"
      },
      "proxy_detail": {}
    },
    {
      "stats": {
        "asset_usd_value": 3.333947e-12,
        "debt_usd_value": 0,
        "net_usd_value": 3.333947e-12
      },
      "update_at": 1639643983.9978895,
      "name": "Insurance Seller",
      "detail_types": ["insurance_seller"],
      "detail": {
        "usd_value": 3.333947e-12,
        "expired_at": 1622419200,
        "collateral_token_list": [
          {
            "id": "0x6b175474e89094c44da98b954eedeac495271d0f",
            "chain": "eth",
            "name": "Dai Stablecoin",
            "symbol": "DAI",
            "display_symbol": null,
            "optimized_symbol": "DAI",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0x6b175474e89094c44da98b954eedeac495271d0f/549c4205dbb199f1b8b03af783f35e71.png",
            "protocol_id": "makerdao",
            "price": 1,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1573672677,
            "amount": 3.333947e-12
          }
        ],
        "description": "Insurance for 0.0 DAI on AAVE"
      },
      "proxy_detail": {}
    },
    {
      "stats": {
        "asset_usd_value": 3.211807343223864,
        "debt_usd_value": 0,
        "net_usd_value": 3.211807343223864
      },
      "update_at": 1639643984.0199816,
      "name": "Insurance Seller",
      "detail_types": ["insurance_seller"],
      "detail": {
        "usd_value": 3.211807343223864,
        "expired_at": 1622419200,
        "collateral_token_list": [
          {
            "id": "0x6b175474e89094c44da98b954eedeac495271d0f",
            "chain": "eth",
            "name": "Dai Stablecoin",
            "symbol": "DAI",
            "display_symbol": null,
            "optimized_symbol": "DAI",
            "decimals": 18,
            "logo_url": "https://static.debank.com/image/eth_token/logo_url/0x6b175474e89094c44da98b954eedeac495271d0f/549c4205dbb199f1b8b03af783f35e71.png",
            "protocol_id": "makerdao",
            "price": 1,
            "is_verified": true,
            "is_core": true,
            "is_wallet": true,
            "time_at": 1573672677,
            "amount": 3.211807343223864
          }
        ],
        "description": "Insurance for 3.21 DAI on PICKLE"
      },
      "proxy_detail": {}
    }
  ]
}
```

### **perpetuals - perpetual contracts**

Examples: yfx, perp

* \*`side` - enumerated values: Long/Short
* \*`base_token`
* \*`quote_token`
* \*`position_token` - position
  * \*`amount`
* \*`margin_token` - remaining margin
  * \*`amount`
* \*`margin_rate`
* \*`leverage` - leverage multiplier
* \*`daily_funding_rate` - 24h funding rate (positive or negative, negative means reduced assets)
* \*`entry_price` - the price at which a position is opened how many Quote per Base
* \*`mark_price` - marker price (market price) how many Quote per Base
* `liquidation_price` - liquidation price (strong parity price) how many Quote per Base

```json
{
        "id": "avax_mux",
        "chain": "avax",
        "name": "MUX",
        "site_url": "https://app.mux.network",
        "logo_url": "https://static.debank.com/image/project/logo_url/avax_mux/26f036f91f0c518b6cb168ff7e2041a6.png",
        "has_supported_portfolio": true,
        "tvl": 11753.774877741806,
        "portfolio_item_list": [
            {
                "stats": {
                    "asset_usd_value": 17426.887106807328,
                    "debt_usd_value": 15923.339920996936,
                    "net_usd_value": 1503.547185810392
                },
                "asset_dict": {
                    "0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e": 3980.501046807327,
                    "0xac80096d53c5965d9432592d28687c521472b9eb": 808.562,
                    "0xea4b1b0aa3c110c55f650d28159ce4ad43a4a58b": -15923.817635526
                },
                "asset_token_list": [
                    {
                        "id": "0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e",
                        "chain": "avax",
                        "name": "USD Coin",
                        "symbol": "USDC",
                        "display_symbol": null,
                        "optimized_symbol": "USDC",
                        "decimals": 6,
                        "logo_url": "https://static.debank.com/image/coin/logo_url/usdc/e87790bfe0b3f2ea855dc29069b38818.png",
                        "protocol_id": "",
                        "price": 1,
                        "is_verified": true,
                        "is_core": true,
                        "is_wallet": true,
                        "time_at": 1637802339,
                        "amount": 3980.501046807327
                    },
                    {
                        "id": "0xac80096d53c5965d9432592d28687c521472b9eb",
                        "chain": "avax",
                        "name": "AVAX mToken",
                        "symbol": "muxAVAX",
                        "display_symbol": null,
                        "optimized_symbol": "muxAVAX",
                        "decimals": 18,
                        "logo_url": null,
                        "protocol_id": "",
                        "price": 16.63,
                        "is_verified": true,
                        "is_core": false,
                        "is_wallet": false,
                        "time_at": 1650892126,
                        "amount": 808.562
                    },
                    {
                        "id": "0xea4b1b0aa3c110c55f650d28159ce4ad43a4a58b",
                        "chain": "avax",
                        "name": "USD mToken",
                        "symbol": "muxUSD",
                        "display_symbol": null,
                        "optimized_symbol": "muxUSD",
                        "decimals": 18,
                        "logo_url": null,
                        "protocol_id": "",
                        "price": 0.99997,
                        "is_verified": true,
                        "is_core": false,
                        "is_wallet": false,
                        "time_at": 1650884361,
                        "amount": -15923.817635526
                    }
                ],
                "update_at": 1682326888,
                "name": "Perpetuals",
                "detail_types": [
                    "perpetuals"
                ],
                "detail": {
                    "description": null,
                    "side": "Long",
                    "margin_token": {
                        "id": "0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e",
                        "chain": "avax",
                        "name": "USD Coin",
                        "symbol": "USDC",
                        "display_symbol": null,
                        "optimized_symbol": "USDC",
                        "decimals": 6,
                        "logo_url": "https://static.debank.com/image/coin/logo_url/usdc/e87790bfe0b3f2ea855dc29069b38818.png",
                        "protocol_id": "",
                        "price": 1,
                        "is_verified": true,
                        "is_core": true,
                        "is_wallet": true,
                        "time_at": 1637802339,
                        "amount": 3980.501046807327
                    },
                    "position_token": {
                        "id": "0xac80096d53c5965d9432592d28687c521472b9eb",
                        "chain": "avax",
                        "name": "AVAX mToken",
                        "symbol": "muxAVAX",
                        "display_symbol": null,
                        "optimized_symbol": "muxAVAX",
                        "decimals": 18,
                        "logo_url": null,
                        "protocol_id": "",
                        "price": 16.6295011,
                        "is_verified": true,
                        "is_core": false,
                        "is_wallet": false,
                        "time_at": 1650892126,
                        "amount": 808.5862575877276
                    },
                    "base_token": {
                        "id": "0xac80096d53c5965d9432592d28687c521472b9eb",
                        "chain": "avax",
                        "name": "AVAX mToken",
                        "symbol": "muxAVAX",
                        "display_symbol": null,
                        "optimized_symbol": "muxAVAX",
                        "decimals": 18,
                        "logo_url": null,
                        "protocol_id": "",
                        "price": 16.6295011,
                        "is_verified": true,
                        "is_core": false,
                        "is_wallet": false,
                        "time_at": 1650892126
                    },
                    "quote_token": {
                        "id": "0xea4b1b0aa3c110c55f650d28159ce4ad43a4a58b",
                        "chain": "avax",
                        "name": "USD mToken",
                        "symbol": "muxUSD",
                        "display_symbol": null,
                        "optimized_symbol": "muxUSD",
                        "decimals": 18,
                        "logo_url": null,
                        "protocol_id": "",
                        "price": 0.99997,
                        "is_verified": true,
                        "is_core": false,
                        "is_wallet": false,
                        "time_at": 1650884361
                    },
                    "daily_funding_rate": 0,
                    "entry_price": 19.69399704107539,
                    "mark_price": 16.63,
                    "liquidation_price": 14.919224164287257,
                    "margin_rate": 0.29599797142092815,
                    "pnl_usd_value": -2477.357252578736,
                    "leverage": 3.3784015316035245
                },
                "proxy_detail": {},
                "position_index": "0xac80096d_0xea4b1b0a_true_0xb97ef9ef",
                "pool": {
                    "id": "0x0ba2e492e8427fad51692ee8958ebf936bee1d84",
                    "chain": "avax",
                    "project_id": "avax_mux",
                    "adapter_id": "mux_perpetual",
                    "controller": "0x0ba2e492e8427fad51692ee8958ebf936bee1d84",
                    "index": null,
                    "time_at": 1651755728
                }
            }
        ]
    }
```

### **nft\_common - common type for nft**

eg. apestake

* `supply_token_list`
* `supply_nft_list`
* `reward_token_list`

```json
{
  "id": "apestake",
  "chain": "eth",
  "name": "apestake",
  "site_url": "https://perp.exchange",
  "logo_url": "https://static.debank.com/image/project/logo_url/perpetual/1fe40504248de93c36595e075b075894.png",
  "has_supported_portfolio": true,
  "tvl": 0,
  "portfolio_item_list" : [
    {
        "stats":{
            "asset_usd_value":18853.659120700366,
            "debt_usd_value":0,
            "net_usd_value":18853.659120700366
        },
        "asset_dict":{
            "0x4d224452801aced8b2f0aebe155379bb5d594381":4101.796188585759
        },
        "asset_token_list":[
            {
                "id":"0x4d224452801aced8b2f0aebe155379bb5d594381",
                "chain":"eth",
                "name":"ApeCoin",
                "symbol":"APE",
                "display_symbol":null,
                "optimized_symbol":"APE",
                "decimals":18,
                "logo_url":"https://static.debank.com/image/eth_token/logo_url/0x4d224452801aced8b2f0aebe155379bb5d594381/97b912e4874df863f530cedb07bfbf1c.png",
                "protocol_id":"apestake",
                "price":4.596439767818117,
                "is_verified":true,
                "is_core":true,
                "is_wallet":true,
                "time_at":1644845135,
                "amount":4101.796188585759
            }
        ],
        "update_at":1678263172.3292446,
        "name":"NFT Staked",
        "detail_types":[
            "nft_common"
        ],
        "detail":{
            "supply_token_list":[
                {
                    "id":"0x4d224452801aced8b2f0aebe155379bb5d594381",
                    "chain":"eth",
                    "name":"ApeCoin",
                    "symbol":"APE",
                    "display_symbol":null,
                    "optimized_symbol":"APE",
                    "decimals":18,
                    "logo_url":"https://static.debank.com/image/eth_token/logo_url/0x4d224452801aced8b2f0aebe155379bb5d594381/97b912e4874df863f530cedb07bfbf1c.png",
                    "protocol_id":"apestake",
                    "price":4.596439767818117,
                    "is_verified":true,
                    "is_core":true,
                    "is_wallet":true,
                    "time_at":1644845135,
                    "amount":4084
                }
            ],
            "reward_token_list":[
                {
                    "id":"0x4d224452801aced8b2f0aebe155379bb5d594381",
                    "chain":"eth",
                    "name":"ApeCoin",
                    "symbol":"APE",
                    "display_symbol":null,
                    "optimized_symbol":"APE",
                    "decimals":18,
                    "logo_url":"https://static.debank.com/image/eth_token/logo_url/0x4d224452801aced8b2f0aebe155379bb5d594381/97b912e4874df863f530cedb07bfbf1c.png",
                    "protocol_id":"apestake",
                    "price":4.596439767818117,
                    "is_verified":true,
                    "is_core":true,
                    "is_wallet":true,
                    "time_at":1644845135,
                    "amount":17.796188585759477
                }
            ],
            "description":"Mayc"
        },
        "proxy_detail":{

        },
        "pool":{
            "id":"0x5954ab967bc958940b7eb73ee84797dc8a2afbb9:nft_2",
            "chain":"eth",
            "project_id":"apestake",
            "adapter_id":"ape_nft_staked",
            "controller":"0x5954ab967bc958940b7eb73ee84797dc8a2afbb9",
            "index":"nft_2",
            "time_at":1670249963
        },
        "base":{
            "user_addr":"0x5a6f5477bdeb7801ba137a9f0dc39c0599bac994",
            "chain":"eth",
            "project_id":"apestake"
        }
    }
  ]    
```

### **nft\_lending - the type of nft lending**

eg. sudoswap

* `supply_token_list`
* `borrow_token_list`
* `supply_nft_list`
* `health_rate`

```json
{
  "id": "sudoswap",
  "chain": "eth",
  "name": "sudoswap",
  "site_url": "https://perp.exchange",
  "logo_url": "https://static.debank.com/image/project/logo_url/perpetual/1fe40504248de93c36595e075b075894.png",
  "has_supported_portfolio": true,
  "tvl": 0,
  "portfolio_item_list" : [
    {
        "stats":{
            "asset_usd_value":24260.72834792133,
            "debt_usd_value":7025.229063420179,
            "net_usd_value":17235.49928450115
        },
        "asset_dict":{
            "eth":11.052789752658846
        },
        "asset_token_list":[
            {
                "id":"eth",
                "chain":"eth",
                "name":"ETH",
                "symbol":"ETH",
                "display_symbol":null,
                "optimized_symbol":"ETH",
                "decimals":18,
                "logo_url":"https://static.debank.com/image/token/logo_url/eth/935ae4e4d1d12d59a99717a24f2540b5.png",
                "protocol_id":"",
                "price":1559.38,
                "is_verified":true,
                "is_core":true,
                "is_wallet":true,
                "time_at":1483200000,
                "amount":11.052789752658846
            }
        ],
        "update_at":1678252610.664709,
        "name":"NFT Lending",
        "detail_types":[
            "nft_lending"
        ],
        "detail":{
            "supply_token_list":[
    
            ],
            "borrow_token_list":[
                {
                    "id":"eth",
                    "chain":"eth",
                    "name":"ETH",
                    "symbol":"ETH",
                    "display_symbol":null,
                    "optimized_symbol":"ETH",
                    "decimals":18,
                    "logo_url":"https://static.debank.com/image/token/logo_url/eth/935ae4e4d1d12d59a99717a24f2540b5.png",
                    "protocol_id":"",
                    "price":1559.38,
                    "is_verified":true,
                    "is_core":true,
                    "is_wallet":true,
                    "time_at":1483200000,
                    "amount":4.5051424690711555
                }
            ],
            "supply_nft_list":[
                {
                    "id":"382ca8e54f8b95a8ff9041d8a13ddbea",
                    "contract_id":"0x60e4d786628fea6478f785a6d7e704777c86a7c6",
                    "inner_id":"18505",
                    "name":"",
                    "content_url":"https://static.debank.com/image/eth_nft/local_url/382ca8e54f8b95a8ff9041d8a13ddbea/76949037c918928800d882d5942cfc35.png",
                    "thumbnail_url":"https://static.debank.com/image/eth_nft/thumbnail_url/382ca8e54f8b95a8ff9041d8a13ddbea/3a427a7743872aa0c91656c73806bd62.png",
                    "collection":{
                        "chain_id":"eth",
                        "id":"0x60e4d786628fea6478f785a6d7e704777c86a7c6",
                        "name":"MutantApeYachtClub",
                        "logo_url":"https://static.debank.com/image/eth_nft_collection/logo_url/0x60e4d786628fea6478f785a6d7e704777c86a7c6/bd9291345343899f2684b0e3697ed5ac.png",
                        "is_core":true,
                        "floor_price_token":{
                            "id":"eth",
                            "chain":"eth",
                            "name":"ETH",
                            "symbol":"ETH",
                            "display_symbol":null,
                            "optimized_symbol":"ETH",
                            "decimals":18,
                            "logo_url":"https://static.debank.com/image/token/logo_url/eth/935ae4e4d1d12d59a99717a24f2540b5.png",
                            "protocol_id":"",
                            "price":1559.38,
                            "is_verified":true,
                            "is_core":true,
                            "is_wallet":true,
                            "time_at":1483200000,
                            "amount":15.55793222173
                        }
                    },
                    "amount":1
                }
            ],
            "health_rate":2.762697486889935
        },
        "proxy_detail":{
    
        },
        "position_index":"0x60e4d786628fea6478f785a6d7e704777c86a7c6_18505",
        "pool":{
            "id":"0x70b97a0da65c15dfb0ffa02aee6fa36e507c2762:nft_lending",
            "chain":"eth",
            "project_id":"benddao",
            "adapter_id":"benddao_nft_lending",
            "controller":"0x70b97a0da65c15dfb0ffa02aee6fa36e507c2762",
            "index":"nft_lending",
            "time_at":1647694784
        },
        "base":{
            "user_addr":"0x7b33e1e381c9999d7e0109657e73132d4782e866",
            "chain":"eth",
            "project_id":"benddao"
        }
    }
  ]    
```

### **nft\_fraction - the type of nft fraction**

eg. NFTX

* `share_token` - fraction share token
* `collection` - collection info

```json
{
  "id": "nftx",
  "chain": "eth",
  "name": "nftx",
  "site_url": "https://perp.exchange",
  "logo_url": "https://static.debank.com/image/project/logo_url/perpetual/1fe40504248de93c36595e075b075894.png",
  "has_supported_portfolio": true,
  "tvl": 0,
  "portfolio_item_list" : [
    {
        "stats":{
            "asset_usd_value":4675.72884370185,
            "debt_usd_value":0,
            "net_usd_value":4675.72884370185
        },
        "asset_dict":{
            "0xabea7663c472648d674bd3403d94c858dfeef728":0.48875403755158325
        },
        "asset_token_list":[
            {
                "id":"0xabea7663c472648d674bd3403d94c858dfeef728",
                "chain":"eth",
                "name":"Pudgy Penguins",
                "symbol":"PUDGY",
                "display_symbol":null,
                "optimized_symbol":"PUDGY",
                "decimals":18,
                "logo_url":"https://static.debank.com/image/eth_token/logo_url/0xabea7663c472648d674bd3403d94c858dfeef728/6cbd01992d12266b0786215fedef36f1.png",
                "protocol_id":"nftx",
                "price":9566.629601926044,
                "is_verified":true,
                "is_core":true,
                "is_wallet":true,
                "time_at":1627958962,
                "amount":0.48875403755158325
            }
        ],
        "update_at":1678251602.952341,
        "name":"NFT Fraction",
        "detail_types":[
            "nft_fraction"
        ],
        "detail":{
            "share_token":{
                "id":"0xabea7663c472648d674bd3403d94c858dfeef728",
                "chain":"eth",
                "name":"Pudgy Penguins",
                "symbol":"PUDGY",
                "display_symbol":null,
                "optimized_symbol":"PUDGY",
                "decimals":18,
                "logo_url":"https://static.debank.com/image/eth_token/logo_url/0xabea7663c472648d674bd3403d94c858dfeef728/6cbd01992d12266b0786215fedef36f1.png",
                "protocol_id":"nftx",
                "price":9566.629601926044,
                "is_verified":true,
                "is_core":true,
                "is_wallet":true,
                "time_at":1627958962,
                "amount":0.48875403755158325
            },
            "collection":{
                "chain_id":"eth",
                "id":"0xbd3531da5cf5857e7cfaa92426877b022e612cf8",
                "name":"Pudgy Penguins",
                "logo_url":"https://static.debank.com/image/collection/logo_url/pudgypenguins/a4f2d05d2f0bde58c1a1a4ba51c2f523.png",
                "is_core":true,
                "amount":0.48875403755158325
            }
        },
        "proxy_detail":{
    
        },
        "pool":{
            "id":"0xabea7663c472648d674bd3403d94c858dfeef728",
            "chain":"eth",
            "project_id":"nftx",
            "adapter_id":"nftx_fraction",
            "controller":"0xabea7663c472648d674bd3403d94c858dfeef728",
            "index":null,
            "time_at":1627958962
        },
        "base":{
            "user_addr":"0xc6c2d5ee69745a1e9f2d1a06e0ef0788bd924302",
            "chain":"eth",
            "project_id":"nftx"
        }
    }
  ]    
```

### nft\_p2p\_borrower **- the type of nft p2p borrow**

* supply\_nft\_list
* borrow\_token\_list
* reward\_token\_list (optional)

```
{
  "id": "nftx",
  "chain": "eth",
  "name": "nftx",
  "site_url": "https://blur.io",
  "logo_url": "https://static.debank.com/image/project/logo_url/blur/36f14ae1fe633d1c58da060566bf695f.png",
  "has_supported_portfolio": true,
  "tvl": 0,
  "portfolio_item_list" : [
     {
        "stats": {
            "asset_usd_value": 0,
            "debt_usd_value": 23745.018699999997,
            "net_usd_value": 0
        },
        "asset_dict": {
            "eth": -12.79
        },
        "asset_token_list": [
            {
                "id": "eth",
                "chain": "eth",
                "name": "ETH",
                "symbol": "ETH",
                "display_symbol": null,
                "optimized_symbol": "ETH",
                "decimals": 18,
                "logo_url": "https://static.debank.com/image/token/logo_url/eth/935ae4e4d1d12d59a99717a24f2540b5.png",
                "protocol_id": "",
                "price": 1856.53,
                "is_verified": true,
                "is_scam": false,
                "is_core": true,
                "is_wallet": true,
                "time_at": 1483200000.0,
                "amount": -12.79
            }
        ],
        "update_at": 1683542341.865855,
        "name": "NFT P2P Borrower",
        "detail_types": [
            "nft_p2p_borrower"
        ],
        "detail": {
            "supply_token_list": [],
            "supply_nft_list": [
                {
                    "id": "b32e0e5c6d74b95767796a8817547076",
                    "contract_id": "0xed5af388653567af2f388e6224dc7c4b3241c544",
                    "inner_id": "7944",
                    "name": "Azuki #7944",
                    "content_url": "https://static.debank.com/image/eth_nft/local_url/b32e0e5c6d74b95767796a8817547076/39b48a71bd97e1e0c6801c73f4ca9266.png",
                    "thumbnail_url": "https://static.debank.com/image/eth_nft/thumbnail_url/b32e0e5c6d74b95767796a8817547076/33583cfb22824dcdeb80e1be8284be2d.png",
                    "collection": {
                        "chain_id": "eth",
                        "id": "0xed5af388653567af2f388e6224dc7c4b3241c544",
                        "name": "Azuki",
                        "symbol": "AZUKI",
                        "logo_url": "https://static.debank.com/image/nft_collection/logo_url/azuki/f5ef01d96aeb4371ded0815e07ab08af.png",
                        "is_core": true
                    },
                    "amount": 1
                }
            ],
            "borrow_token_list": [
                {
                    "id": "eth",
                    "chain": "eth",
                    "name": "ETH",
                    "symbol": "ETH",
                    "display_symbol": null,
                    "optimized_symbol": "ETH",
                    "decimals": 18,
                    "logo_url": "https://static.debank.com/image/token/logo_url/eth/935ae4e4d1d12d59a99717a24f2540b5.png",
                    "protocol_id": "",
                    "price": 1856.53,
                    "is_verified": true,
                    "is_scam": false,
                    "is_core": true,
                    "is_wallet": true,
                    "time_at": 1483200000.0,
                    "amount": 12.79
                }
            ]
        },
        "proxy_detail": {},
        "position_index": "1798",
        "pool": {
            "id": "0x29469395eaf6f95920e59f858042f0e28d98a20b:borrower",
            "chain": "eth",
            "project_id": "blur",
            "adapter_id": "blur_nft_p2p_borrower",
            "controller": "0x29469395eaf6f95920e59f858042f0e28d98a20b",
            "index": "borrower",
            "time_at": 1682909963
        },
        "base": {
            "user_addr": "0x5f1ee29361206f1a129e808736f11598356c6031",
            "chain": "eth",
            "project_id": "blur"
        }
    }
  ]    
```

### nft\_p2p\_lender **- the type of nft p2p lend**

* supply\_token\_list
* nft\_list
* reward\_token\_list (optional)

```
{
  "id": "blur",
  "chain": "eth",
  "name": "nftx",
  "site_url": "https://blur.io",
  "logo_url": "https://static.debank.com/image/project/logo_url/blur/36f14ae1fe633d1c58da060566bf695f.png",
  "has_supported_portfolio": true,
  "tvl": 0,
  "portfolio_item_list" : [
     {
        "stats": {
            "asset_usd_value": 23750.518399999997,
            "debt_usd_value": 0,
            "net_usd_value": 23750.518399999997
        },
        "asset_dict": {
            "eth": 12.79
        },
        "asset_token_list": [
            {
                "id": "eth",
                "chain": "eth",
                "name": "ETH",
                "symbol": "ETH",
                "display_symbol": null,
                "optimized_symbol": "ETH",
                "decimals": 18,
                "logo_url": "https://static.debank.com/image/token/logo_url/eth/935ae4e4d1d12d59a99717a24f2540b5.png",
                "protocol_id": "",
                "price": 1856.96,
                "is_verified": true,
                "is_scam": false,
                "is_core": true,
                "is_wallet": true,
                "time_at": 1483200000.0,
                "amount": 12.79
            }
        ],
        "update_at": 1683542411.9610286,
        "name": "NFT P2P Lender",
        "detail_types": [
            "nft_p2p_lender"
        ],
        "detail": {
            "supply_token_list": [
                {
                    "id": "eth",
                    "chain": "eth",
                    "name": "ETH",
                    "symbol": "ETH",
                    "display_symbol": null,
                    "optimized_symbol": "ETH",
                    "decimals": 18,
                    "logo_url": "https://static.debank.com/image/token/logo_url/eth/935ae4e4d1d12d59a99717a24f2540b5.png",
                    "protocol_id": "",
                    "price": 1856.96,
                    "is_verified": true,
                    "is_scam": false,
                    "is_core": true,
                    "is_wallet": true,
                    "time_at": 1483200000.0,
                    "amount": 12.79
                }
            ],
            "nft_list": [
                {
                    "id": "b32e0e5c6d74b95767796a8817547076",
                    "contract_id": "0xed5af388653567af2f388e6224dc7c4b3241c544",
                    "inner_id": "7944",
                    "name": "Azuki #7944",
                    "content_url": "https://static.debank.com/image/eth_nft/local_url/b32e0e5c6d74b95767796a8817547076/39b48a71bd97e1e0c6801c73f4ca9266.png",
                    "thumbnail_url": "https://static.debank.com/image/eth_nft/thumbnail_url/b32e0e5c6d74b95767796a8817547076/33583cfb22824dcdeb80e1be8284be2d.png",
                    "collection": {
                        "chain_id": "eth",
                        "id": "0xed5af388653567af2f388e6224dc7c4b3241c544",
                        "name": "Azuki",
                        "symbol": "AZUKI",
                        "logo_url": "https://static.debank.com/image/nft_collection/logo_url/azuki/f5ef01d96aeb4371ded0815e07ab08af.png",
                        "is_core": true
                    },
                    "amount": 1
                }
            ]
        },
        "proxy_detail": {},
        "position_index": "1798",
        "pool": {
            "id": "0x29469395eaf6f95920e59f858042f0e28d98a20b:lender",
            "chain": "eth",
            "project_id": "blur",
            "adapter_id": "blur_nft_p2p_lender",
            "controller": "0x29469395eaf6f95920e59f858042f0e28d98a20b",
            "index": "lender",
            "time_at": 1682909963
        },
        "base": {
            "user_addr": "0xbccf9025a0e2f6aad7e18972d754aaca38a4f847",
            "chain": "eth",
            "project_id": "blur"
        }
    }
  ]    
```


# ActionObject

For the Explain Tx API, we currently support the following actions.

* Send Token
* Send NFT
* Approve Token
* Approve NFT
* Approve NFT Collection
* Revoke Token Approval
* Revoke NFT Collection Approval
* Revoke NFT Approval
* Cancel Tx
* Deploy Contract
* Call (If do not match the above types, will fallback to the call)

### Send Token

* type: string - *`send_token`*
* from\_addr: string - from address
* to\_addr: string - to address
* token: Object - token info [for more info](/en/readme/api-pro-reference/token#returns)

### Send NFT

* type: string - *`send_nft`*
* from\_addr: string - from address
* to\_addr: string - to address
* nft: Object - nft info

### Approve Token

* type: string - *`approve_token`*
* owner: string - owner address
* spender: Object - spender info
  * id: string - spender address
  * protocol: Object
    * id: string - protocol id
    * name: string - protocol name
    * logo\_url: string - protocol logo url
* token: Object - token info [for more info](/en/readme/api-pro-reference/token#returns)

### Approve NFT

* type: string - *`approve_nft`*
* owner: string - owner address
* spender: Object - spender info
  * id: string - spender address
  * protocol: Object
    * id: string - protocol id
    * name: string - protocol name
    * logo\_url: string - protocol logo url
* nft: Object - nft info

### Approve NFT Collection

* type: string - *`approve_nft_collection`*
* owner: string - owner address
* spender: Object - spender info
  * id: string - spender address
  * protocol: Object
    * id: string - protocol id
    * name: string - protocol name
    * logo\_url: string - protocol logo url
* collection: Object - collection info

### Revoke Token Approval

* type: string - *`revoke_token_approval`*
* owner: string - owner address
* spender: Object - spender info
  * id: string - spender address
  * protocol: Object
    * id: string - protocol id
    * name: string - protocol name
    * logo\_url: string - protocol logo url
* token: Object - token info [for more info](/en/readme/api-pro-reference/token#returns)

### Revoke NFT Approval

* type: string - *`revoke_nft_approval`*
* owner: string - owner address
* spender: Object - spender info
  * id: string - spender address
  * protocol: Object
    * id: string - protocol id
    * name: string - protocol name
    * logo\_url: string - protocol logo url
* nft: Object - nft info

### Revoke NFT Collection Approval

* type: string - *`revoke_nft_collection_approval`*
* owner: string - owner address
* spender: Object - spender info
  * id: string - spender address
  * protocol: Object
    * id: string - protocol id
    * name: string - protocol name
    * logo\_url: string - protocol logo url
* collection: Object - collection info

### Cancel Tx

* type: string - *`cancel_tx`*
* from\_addr: string - from address

### Deploy Contract

* type: string - *`deploy_contract`*
* from\_addr: string - from address

### Call

* type: string - *`call`*
* from\_addr: string - from address
* to\_addr: string - to address
* contract: Object - contract info
  * id: string - contract info
  * protocol: Object
    * logo\_url: string - protocol logo url
    * name: string - protocol name
    * id: string - protocol id


# TransactionObject

* `chainId`: ChainId
* `from`: The address the transaction is sent from.
* `to`: The address the transaction is directed to.
* `value`: Integer of the value send with this transaction
* `data`: The compiled code of a contract OR the hash of the invoked method signature and encoded parameters.
* `gas`: Integer of the gas provided for the transaction execution.
* `maxFeePerGas`: maximum amount you’re willing to pay.
* `maxPriorityFeePerGas`: The part of the fee that goes to the miner
* `nonce`: Integer of a nonce.


# Error Code

## HTTP Status Codes

| Code | Meaning                                                                 |
| ---- | ----------------------------------------------------------------------- |
| 400  | Bad Request - invalid params.                                           |
| 401  | Unauthorized - You must authenticate your request with an access key.   |
| 403  | Forbidden - You've hit your capacity limit.                             |
| 429  | Too Many Requests - You've exceeded our ratelimit for api.              |
| 500  | Internal Server Error - We're unable to process your request right now. |


# Pre exec error code

```
{
    "code": Code,
    "message": Reason
}
```

| Code | Reason                                |
| ---- | ------------------------------------- |
| 1000 | Unknown node error                    |
| 1002 | Contract Execution Error              |
| 2000 | Unknown api error                     |
| 2001 | balance is insufficient               |
| 2002 | Node service is currently unavailable |


# ChangeLog

## 2026-01-23

* Add [app\_protocol\_list](/en/readme/api-pro-reference/protocol#get-the-list-of-the-app-protocol-information) endpoint

## 2025-11-26

* Add [user\_complex\_app\_list](/en/readme/api-pro-reference/user#get-user-complex-app-list) endpoint

## 2025-01-13

* Adjust the range of supported chains. refer to [supported\_chain\_list](https://docs.cloud.debank.com/en/readme/api-pro-reference/chain#returns-1).

## 2023-08-01

* Add [pool](/en/readme/api-pro-reference/pool) endpoint

## 2023-06-21

* Add `cex_dict` and `cex_id` in [user\_history\_list](/en/readme/api-pro-reference/user#get-user-history-list) endpoint.

## 2023-05-11

* Add `nft_p2p_borrower` `nft_p2p_lender` detail\_types detail in [`PortfolioItemObject`](/en/readme/api-models/portfolioitemobject)

## 2023-03-30

* Add `Airdrop` name in [`PortfolioItemObject`](/en/readme/api-models/portfolioitemobject)

## 2023-03-09

* Add `nft_common` `nft_lending` `nft_fraction` detail\_types detail in [`PortfolioItemObject`](/en/readme/api-models/portfolioitemobject)

## 2022-10-11

* Deprecate "Get contract address list of a protocol" endpoint.

## 2022-08-01

* Add `position_index` field into PortfolioItemObject, detail in [`PortfolioItemObject`](/en/readme/api-models/portfolioitemobject)

## 2022-06-28

* [`user_all_history_list`](/en/readme/api-pro-reference/user#get-user-transaction-history-on-all-supported-chains) return same format as the result returned by `/v1/user/history_hist`.

## 2022-06-15

* Add pool object field into PortfolioItemObject, detail in [`PortfolioItemObject`](/en/readme/api-models/portfolioitemobject)


# Auxiliary Feature

Dive into the specifics of each Auxiliary Feature by checking out our full documentation.


# Units Usage

The Units API allows you to easily get your units balance and daily usage.

## Get units balance and daily usage

#### Method

get

#### Path

/v1/account/units

#### Parameters

none

#### Returns

* `balance`: `integer`, remaining units.
* `stats`: `list`, daily usage stats, we return 30 days stats currently.
  * `usage`: `integer`, usage of the day.
  * `remains`: `integer`, remains of the day.
  * `date`: `string`, date.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' \
  'https://pro-openapi.debank.com/v1/account/units' \
  -H 'accept: application/json' -H 'AccessKey: YOUR_ACCESSKEY'
```

{% endtab %}
{% endtabs %}

Result

```json
{
    "balance": 9804,
    "stats": [
        {
            "usage": 0,
            "remains": 9804,
            "date": "2022-04-07"
        },
        {
            "usage": 0,
            "remains": 9804,
            "date": "2022-04-06"
        },
        .....
    ]
}
```


# Official Account


# Business Introduction

What solution does DeBank official account provide for Web3 organizations?

## Product Orientation

DeBank Cloud's "Official Account" service aims to build precise connections between rising Web3 startups and real users behind any 0x addresses, to accumulate Web3 followers and boost industry influence.

<figure><img src="/files/wNo4nMVdN4Zh1G6Bi12Q" alt=""><figcaption></figcaption></figure>

## Service Scenarios

Our official account is a two-way communication bridge between Web3 projects and 0x addresses. Web3 projects can use it as a more efficient solution for the following business scenarios:

**1) Marketing growth -- Precise and efficient channels for promotion**

Web3 projects can use official accounts to broadcast business marketing cards to any 0x addresses: analyzing the potential target 0x users based on their on-chain behaviors, then reaching them directly and precisely via official accounts. In this way, Web3 projects can avoid reaching target users in a blindly inefficient way.

**2)Follower management -- A user platform to gain more Web3 followers**

DeBank brings together an extensive network of active Web3 users and we can promote your official accounts to them to help you gain new followers quickly and enhance your projects' influence in the industry. On DeBank Cloud, Web3 projects can use your official accounts to push your latest project updates, rewarding activities, important notices, etc. to your followers and receive user proposals and votes to help you make decisions more wisely.

**3）User interaction -- A more professional Web3 customer support system**

Web3 projects can initiate conversations with any user via our "user chat" feature and receive inquiries and feedback from numerous 0x users. Compared to traditional communication methods such as Discord, you can clearly see your user's 0x address, detailed holding positions, whether they are platform token/NFT collection holders, or fans of certain projects, etc. This helps you set case priorities and facilitates subsequent troubleshooting.

## **Targeting Roles**

For the majority of your organization roles, official accounts are utilized in everyday workflows. Here are some examples of roles and their work scenarios:

**1)Marketing role:**

The 'Broadcast messages' feature can be used to push corporate business cards to all potential users and attract new users' attention to let them try your products.

**2)Operation role:**

The 'Stream' feature can be used to regularly send the latest project updates to your project followers and attract more followers.

**3)Customer service role:**

Customer service staff can login to 'Userchat' to view and reply to all inquiries, feature requests, bug reports, etc., from all 0x addresses.

**4)Product manager role:**

Product managers can initiate votes to collect feature request proposals using the 'proposal' feature, and conduct in-depth interviews and surveys with important customers who hold your platform token, collections, etc.) through 'Userchat'. This helps you make more scientific plans for future project iterations.

## Solution

Let's delve into the challenges faced by Web3 projects in marketing, operations, and customer service, along with the solutions provided by our official account services:

### Marketing aimed at new users

#### Pain Points for Current Web3 Projects in Advertising

**1)Low-efficient advertising platforms**

Most Web3 projects are still using traditional Web2-style advertising platforms (e.g., Emails, browser advertisments, Twitter, etc.) to look for Web3 users. Although the advertisement coverage looks substantial, the real Web3 users you reach are very few.

**2)Reach your users blindly**

Even though some traditional AD platforms do reach a small number of Web3 users by luck, these Web3 users' profiles are like a "blind box" for you. You can't see their 0x addresses. You have no idea if their on-chain activities match your project's features or not: What‘s their net worth? What's their investment preferences? Are they DeFi degens?

**3)Can't receive effective feedback from your users**

Most AD platforms are a one-way channel that can only send messages. Your conversation is over once your message is delivered. You can not receive feedback from your audience nor know their doubts, dissatisfaction, or suggestions about your product. Therefore, it's a little bit challenging for you to find the right direction to improve your product and explore the potential explosive growth ways.These problems cost you a lot but return poor advertising results.

If you are struggling with these issues, welcome to give us a shot. Our service can help you as follows:

* **Precisely reach any on-chain user**

You can send a message to any 0x address accurately as you wish and receive their feedbac&#x6B;**.**

* **Data-powered decisions**

We will recommend high-value Web3 addresses and screen out low-value addresses based on your needs. You can see detailed data reports, including conversion rates, during different marketing phases.

* **Performance-based payment**

You only pay for real users who have checked your messages. You can reach a 0x address accurately at the cost of less than $1.

#### Our Solution

**1)Advertising platform**

**Find a gathering place for Web3 users**

Our Web3 marketing service is utilizing DeBank's asset management platform ([https://debank.com](https://debank.com/)) for advertising. Being the best Web3 portfolio tracker product in this area, DeBank has the most real on-chain users.

You can screen your target 0x addresses you want to touch and edit your advertising message content. We utilize "DeBank Hi" (<https://debank.com/hi>) to send instant messages to these specified addresses.

When the owners of these recipient addresses log into DeBank, they will receive your message.In this way, your advertising content will be delivered to a large number of Web3 users.

<figure><img src="/files/EDM9cbnJMCarWHAdwcVf" alt=""><figcaption></figcaption></figure>

**2)Target audience**

**You can screen the users accurately before advertising.**

Compared to the traditional random advertising campaigns, DeBank fully utilizes and benefits from Web3 eco's advantages: all on-chain activity data of 0x addresses are public and transparent: total net worth, participated chains & DeFi protocols, tokens & NFTs, address age, etc.The combination of these screening conditions can provide a lot of flexibility for you to grow your market wisely.

We also provide many sets of pre-selected high-value address lists to you for free. For example：

* **Active Web3 users,Top 50k users in the Web3 Social Ranking, Web3 ID holders:** active DeBank users with high net worth.
* **DeFi lovers - users deposit over $100,000 in protocols:** DeFi degens with over $100K deposits in various DeFi protocols.
* A list of users with over $100 deposits in specific protocols, such as **users with over $100 deposits in Uniswap**. You can also find users who have used similar Dapps as you do. For example, to promote "Curve", you can screen out all addresses that have used Uniswap before.
* Specific Top1000 NFT collection holders, such as **Azuki collection holders**

Apart from our pre-selected address lists, you can also use data analysis platforms like "Dune" or your own database to select your target audience through your customized screening conditions.\\

<figure><img src="/files/0G8FctB5fc2YuUXXUxMU" alt=""><figcaption></figcaption></figure>

**3)Cost control**

**Pay for the real intention of the advertising receiver, and help you refine the advertising costs while obtaining high-quality exposure**

In "DeBank Hi", every user can set a price ($1 by default) for him to receive a direct message from a stranger. This is his own attention offer price.

We will send your advertising message to all your selected recipients for free. Users will receive your message as below screenshot shows.

Your recipient can choose to open this envelope if he is willing to read this message, then the corresponding attention fee will be deducted from your official account and used to pay for the recipient's attention. This is the only fee you need to pay while using this marketing service, and you only need to pay for this attention fee when the user actively reads your message content.Here's what it looks like:

<div><figure><img src="/files/EbIcrakdaqZ1Lg7OtZv3" alt=""><figcaption></figcaption></figure> <figure><img src="/files/UkFrJblo7J6P87m9i2yU" alt=""><figcaption></figcaption></figure></div>

\
Also, you don't have to worry too much about your advertising cost for a great advertising campaign like this.Our product designers have already calculated it for you carefully:

* Support for screening of user's attention offer price You can screen out recipients who have set a very high attention offer price before sending your advertising message. For example, you can set your affordable price to $1.
* Control your total advertising cost

You can also configure your advertising ratio for your target audience to control your final cost when you deposit your pre-payment. If the cumulative attention cost spent exceeds your pre-payment amount, all your remaining unread offers will be recalled automatically.

### Efficient information delivery to followers

#### The challenge

Web3 projects usually synchronize project related information to followers on platforms like Twitter, Discord, etc, but spreading influence through traditional user platforms also brings the following troubles to project owners:

1\)Ineffective operational efficiency and follower growth

On traditional platforms, project teams must compete with massive Web2 organizations and users for target audience's attention, leading to slow content exposure and follower growth.

2\)The value of information delivery is unclear

Organizations have no insight about their audience & their asset conditions, and can't judge the actual value each post achieves.

##

#### Solution

**1)Blue ocean opportunity: intense competition on traditional platforms VS vibrant emerging Web3 communties**

DeBank is a hub for Web3 users, whose unique characteristics make them more inclined to pay attention to news about new Web3 projects. Compared to the sporadic interactions for each post on traditional user platforms, the enthusiasm and attention here are extremely high.

Let's take a typical post from Rabby Wallet as an example: 6.5% of its total followers have read it within less than 2 days after it gets posted, and nearly 5% of the Web3 users who saw the message will comment or share.

Furthermore, all statistics are real and transparent. Project teams can see which 0x addresses have viewed, reposted, and commented on your post, and they can also check the detailed on-chain positions of these addresses.

![](/files/rQR7VUoNivweTSzO9gnm) ![](/files/XumqsZtH9Qu4pKKBJ3zM)

**2)The platform provides many free promotional slots for official accounts to help them gain a large number of fans in a short period.**

This includes, but is not limited to, the following methods:

* **Recommendations on the trending cards in the "Follow" module.**

The recently popular official accounts will appear here.

![](/files/9PdD3HbMqgRtm0upslM6)

* **Recommendations for newly added official accounts**

For newly created official accounts, the platform will have a dedicated recommendation section to give preferential traffic to them.

![](/files/fS38AjWivP7L0RP4JczI)

* **Ranking of official accounts**

Rankings for all official accounts can be found here and followed on this page.

![](/files/FIwtgvvQDgibs6vq4FPb)

* **Recommending your target users to your project**

DeBank has a strong background in on-chain analysis. If an 0x address currently holds your project's platform tokens, NFT collections, or has interacted with your project's contract, we'll recommend a "follow card" for the corresponding project's official account when they login to the platform. This greatly aids the project side in converting all users into follower.

We're proud to say: DeBank's official account will be a powerful ally for Web3 projects looking to amplify their influence! We have supported some early-stage projects accumulating over 2000 followers within a month in general. So join us to seize the opportunities for early-stage benefits!

### **Effective communication towards project users**

It is crucial for Web3 projects to maintain frequent communication with users to gather more scientific iteration suggestions during its rapid development. Therefore, replying to user inquiries, collecting user suggestions and proposals is of great importance.

Users can click "say Hi" to communicate with the project team on the platform. We also allow the project team to place corresponding feedback links on their official websites or share them on Twitter, Discord, etc. to collect user feedback.

DeBank's account system is built based on the 0x addresses. So official accounts can clearly check your user's 0x address, detailed holding positions, whether they are platform token/NFT collection holders, or fans of certain projects, etc. This helps you set case priorities and facilitates subsequent troubleshooting.

![](/files/xlvYvm28L3xiuf0sHMub) ![](/files/rslc4sMPkgttqWwwJVIU)

Official account owners can receive all user replies in the backend and have unrestricted communication with your users. Therefore, in addition to users initiating communication, official accounts can also start the conversation proactively with other 0x users for:

1. Promotion for new product releases: reach potential target users quickly and accurately.
2. Internal testing for new project features: communicate product improvement suggestions with current existing users.
3. Market research before product design: directly communicate with potential users about their needs, reducing the cost of trial and error.
4. Efficiently manage your Web3.0 followers: most users will start to follow their official accounts once touched.

## Best practice

Let's take the marketing campaign from "Rabby Wallet" as an example. The final advertisement effects are presented as follows:

### Marketing case for attracting new users

#### **Advertising goal**

Rabby Wallet has newly released the PC version.

We are recommending both our existing extension wallet users and those who use other similar wallets to try out our new PC version.

#### **Advertising audience**

* **Target audience:**

-Active Web3 users (By Public address lists)

-Addresses who have used Rabby Wallet's extension wallet for signing transactions before.

-Addresses who have used other similar wallets before and are holding over $5000 in net worth.

* **Filters:**

-Attention offer price: <= $1

#### **Advertising result**

<figure><img src="/files/A8perOJq5FG2Y00fTMvo" alt=""><figcaption></figcaption></figure>

#### Final advertising effects:

* Total eligible recipient addresses: 7502
* Recipients who actively open the message within 7 days: 2117 (**28.22%**)
* Actual cost: $1873.19 (average cost: **<$0.88 per active reader**)
* **New followers** gained for Rabby Wallet's official account among all readers: **50%**

### Case for enhancing community influence

Rabby Wallet has officially started utilizing the broadcast messaging service for potential user acquisition since 12-Feb-2023 and began posting on the Stream service in May-2023. By 9-Jun-2023, the overall operational statistics are as follows:

* Total user addresses reached: **27603**
* Total user addresses that checked messages: **19575**
* Total marketing promotion expenditure: **$13959.34**
* Average cost per precisely reached user: **$0.71**
* Total acquired followers: **10132**; TVF: $373.6M
* Number of 0x addresses that replied: **1128**

## Contact

Official site:[ https://official.debank.com/marketing](https://cloud.debank.com/marketing)

Telegram: <https://t.me/chuck_2140>

Email: [hello.cloud@debank.com](http://hello.cloud@debank.com)


# Service Operation Instructions

Then You can follow the instructions step by step to complete your operations.

## Preparations for using the Official Account

### Step 1:Sign up for a DeBank Cloud account

Visit: <https://official.debank.com/> ,then click the "sign up" button on the top right corner.

![](/files/Kxrxdw9buFcN2AGQRsX8)

Both the registration and login processes are done via Email verification code. We recommend using your **organization's group Email ending with your domain address** to register for the following reasons:

1\)You will be more likely to pass the verification process if your Email address is using your domain address.

2\)Using a group Email address to register will help your team share your account with different roles.

For example, let's say I'm a DeBank employee and wish to establish a connection between an official account and any 0x address, I need to register via an Email group <marketing@debank.com>. This email group includes the email accounts of colleagues from Debank Cloud's marketing, customer service, product management, engineering, and operations. Hence, all these roles can login to this project console for easier management.

### Step 2:Create and verify your organization's account

Official account appears as the formal account of an official Web3 project from the user's perspective, and thus only organzations that have Projects/APPs/protocols etc can apply for verification. (As for individuals who wish to have their own unique identifiers, we suggest minting a Web3 ID to define their account names here: <https://debank.com/settings>)

**Step2-1: Start from the homepage and click on "console" to initiate the application process for creating a new official account.**

![](/files/T65whEfHaig1GAZzfLA8)

**Step2-2: Click "Create" to enter the page to create an official account.**

![](/files/tzsjxNtA1g0AbGuMST1J)

**Step2-3: Fill in the required information on the creation page and submit it.**

![](/files/9qClhBB1IP5NxpEQxk60)

This verification process primarily focuses on confirming the name of your official account, which should be consistent with the actual project or company name and can not be modified once approved. We employ two methods to verify that the applicant is indeed the owner of the current organization:

1. The current email domain matches the domain of the corporate website (recommended verification method).
2. In extreme cases where the company uses a third-party email service (such as Gmail), we also offer verification via an official Twitter account. You need to retweet specific content using your corporate Twitter, and we will retrieve and match the data.

After completing the initial verification, click on "submit". We will review your application within 7 business days.

**Step2-4: Edit your official account's information**

Once your account has passed the verification process, it's officially created.

Users can now search for and interact with it on DeBank. You can also check it yourself by following this link: <mark style="color:blue;"><https://debank.com/official-account/\\><Your Official Account ID></mark> (six-digit numeric code).

![](/files/SIxQsi4jTE9nq8sE8hqq)

While the official account only includes a name at this point, it's essential to better introduce it to Web3 users. Please click on "edit profile" to update details like logo, description, and official link(s) (Provide all links you want to display to your users: Twitter, Discord, Telegram, Site, LinkedIn, etc).

![](/files/Ahuz2Vi5TeWgzbqDssWj) ![](/files/Et8wYOvA426fPaLCz6KG)

### Step3: Top-up

The purpose of topping up the account is to cater to the following scenarios:

1. Utilizing broadcast messages for web3 marketing promotions Organizations can send promotional content to potential 0x address users here, attracting new users to use your products and follow you. This requires the payment of an attention fee to reach these users.
2. Initiating a private chat with a user in the "User Chat" section If the user is not a follower of your official account, your official account will need to pay the user's attention fee to initiate contact.
3. Promoting specific posts on Stream with a top-up, incentivizing users to share posts for greater exposure.

You can perform via clicking the 'Deposit' button on the homepage.

Note: Account top-ups for official accounts are <mark style="color:blue;">**only supported in USDC on Ethereum**</mark>.

![](/files/2ajHw7G2VOcwZsMrOBi0)

For refund or receipt related questions, please contact us via <hello.cloud@debank.com>

## Function operation of the official account

### 1.Broadcast messages-web3 marketing service

#### Step1:Select your target user lists

**1-1:Public address lists**

You need to confirm your target users' 0x address lists before sending broadcast messages to them.

Our system provides public address lists, including address list for active Web3 users, address list for users with at least $100 deposits in well-known DeFi projects,renowned collection holders, etc.

You can simply search the project name under the 'Public address lists' tab to find them.

A list of 20 random addresses for verification can be viewed upon opening the list, which gets updated regularly.

![](/files/d4DKDJkcFmfPHBnZLo4G) ![](/files/M9XpvEkjLFBwK0x2wFGI)

**1-2:Customized address lists**

If the platform-provided address set does not meet your organization's needs, you can create a new one by clicking on "Create Custom Address List".

We recommend keeping at most 20,000 addresses on your list. If you need more addresses, please contact us via Email to help you import more addresses manually.

Simply paste your wanted 0x address lists. You don't need to worry about the data format, even if there are spam fields or duplicate addresses in the pasted content, our system will automatically filter them out and identify the available addresses.

As shown in the following picture, the left picture is mixed with duplicate addresses, amounts, spam fields, etc, and the right picture is the cleaned data.

![](/files/8dumbgto2svs1I0aMqMi) ![](/files/QlRrb44P8DPtlXmPxqcQ)

For complex address list filtering, we suggest using third-party data analysis platforms such as Dune.

#### Step 2:Create a broadcast task

![](/files/r3JySl95iqiTOqbohA6L)

On the newly opened page, follow the instructions on screen to continue.

**2-1:Input your message content**

1. Text content, e.g., project introduction, product survey, or potential cooperation (required).
2. Images (optional)
3. URLs (optional)

Then you can click 'preview' to see how it will be displayed on the user's end.

![](/files/2pFYWV9YQK963HLJEcSy) ![](/files/QD38sonZKPQ4kq8IRpqt)

**2-2:Select your target user lists**

The set of addresses selected here is the "public address list and customized address list".

**2-3:Select filter conditions**

Set your filters based on your requirements

**2-4:Get quotation and make the payment**

![](/files/R9d4nc5gfiMYddzaTHAw)

<mark style="color:blue;">**Each parameter in the Broadcast plan module is described in detail as follows:**</mark>

**1.Eligible Addresses:**

These are the total number of addresses that meet the filter criteria, and all duplicates are automatically removed by the system.

**2.Number of addresses planned for broadcasting:**

Normally, this figure will equal the number of eligible addresses.However, considering the limited budget of some organizational campaigns, you may select a certain number of addresses from the eligible list for broadcast. We'll explain more about this parameter later.

**3.Broadcast cost for all planned addresses:**

Again, under normal circumstances, this is the sum of the attention costs for all addresses that meet the filter conditions. But if your planned broadcast number differs from the number of eligible addresses, we'll use an algorithm to select the optimal address list that meets your planned number, and calculate the sum of their attention costs.

**4.Advance Payment Ratio (10%-100%) & Payment Amount:**

This ratio is designed to reduce prepayment costs for advertisers without affecting ad effectiveness.

Payment amount = Advance Payment Ratio \* Broadcast cost for all planned addresses. Advertisers only need to pay attention costs for users who have read the message. If users do not login DeBank to check the message within 7 days, we will refund the corresponding costs to the official account after the 7-day settlement day.

This means that the actual amount advertisers need to pay will be less than the broadcast cost for all planned addresses. We allow advertisers to pay only a certain percentage of the cost (10%-100%) in advance. Even if you choose 10%, we will still send messages to all the addresses planned for broadcast. However, as users log in to DeBank and read the messages, the prepaid amount will be gradually deducted. When the sum of attention costs for users who have read the message exceeds the 10% prepayment amount, the messages for the remaining unread addresses will be automatically withdrawn, and the group sending task will automatically enter the settlement stage. Therefore, if your budget allows, we recommend setting a slightly higher ratio.

Example use case for configuring the **"Number of addresses planned for broadcasting"** parameter:

> Suppose the project party has 50,000 qualified addresses and a corresponding advertising cost of $40,000, but only has a budget of $1,000. Even with a 10% prepayment ratio, the amount would not be enough.
>
> In this scenario, the number of planned addresses for the broadcast could be set to 10,000, with a corresponding prepayment ratio of 10%, requiring only $1,000 for the broadcast.
>
> After the broadcast, the system will automatically select the best 10,000 addresses from the 50,000 qualified addresses and withdraw the messages for the remaining unread addresses once the number of users read reaches the $1,000 prepayment.

<mark style="color:blue;">**Here's the FAQ for the "broadcast messages" process:**</mark>

**1.What is a reasonable prepayment percentage?**

There is no one-size-fits-all answer.

It mainly depends on whether the target address belongs to DeBank's active audience.

Historical data shows an average read rate of 14.29% for all platform activities, with individual official accounts ranging from 1.36% to 42%.

For example, a campaign targeting "Active Web3 users" may see a read rate exceeding 30%, while those targeting "Aave V3 users with over $100 deposit" and "LIDO users with over $100 deposit" may see a rate around 9.88% and 1.81% respectively.

For official accounts that need to reach tens of thousands of addresses but unsure of the prepayment rate, we suggest testing with a smaller set of addresses before setting the full-scale dispatch percentage based on the data results.

**2.What if I set the "prepayment ratio" too low and my remaining unread addresses are being recalled ?**

Don't worry, when the prepayment is insufficient and triggers a message recall, we will send an email to the registered email of the organization account, as shown below:

On the detailed statistics page of each settled broadcast task, you can click on "Resend to unreceived addresses", and we will automatically create a broadcast task for you and match the collection of addresses that did not receive the notification this time, allowing for a quick resend."

![](/files/72PQRw2cbdwDxycn7jqn) ![](/files/pyy2MkIjZL3TSOg9mnLw)

**3.How to handle the situation when the same addresses may receive multiple marketing messages from different tasks, possibly disturbing users?**

For completed tasks, the task detail page will feature an "Export the list of received addresses" button under "Data Details". Clicking on this will automatically export a list of users who have viewed the notification in this task. You can check this in the "Customized address lists", and exclude these users when creating a new task, as shown in the case.

<figure><img src="/files/rpdfBzkyblfrrkO6XNUt" alt=""><figcaption></figcaption></figure>

#### Step 3: Viewing Campaign Data

To examine the conversion results of your broadcast messages, navigate to \[Broadcast Messages - Specific Message - Details - Data Details].

This allows you to see how many addresses received the notification, how many have read the message, and how many replied to the organization. Clicking the "user replies" link enables real-time chatting with users.

![](/files/xBsdr5zP6gyOzIq7H926)![](/files/hHaoJ8teImO9gHJtAIud)\\

In addition to the basic exposure, read, and reply stats for each message, many followers actively follow the organization. **Historically, a well-crafted product introduction message can achieve a follower rate of over 50% among its readers.** Thus, broadcasting messages is a vital way for organizations to gain web3 followers.

To view current followers data of your official account, you can check the Information page or search for your organization on (<https://debank.com/hi>) where you'll find the number of followers and their asset details.

![](/files/Q48TcBBOftCXU7LLhPGj) ![](/files/6ijGX20wSoLa6ulcWWzL)

### 2.User communication - User chat

The User Reply feature serves as an official customer service ticket system for official accounts. 0x users can proactively reach out to you for product inquiries, feedback, or suggestions. Moreover, you, as the project party, can use this feature to proactively reach out to any user you wish to connect with. The current payment logic for official accounts to send messages is as follows:

* All messages sent to official accounts by users are free of charge.
* Messages sent by official accounts to their own followers are unlimited and free.
* For official accounts to send messages to non-followers, they need to pay the attention fee set by the user, usually $1. If the user checks the message within 7 days, they receive the attention fee. If not, the fee will be fully refunded to the official account.

![](/files/YGDaqMSxCgkjBq2S74aK)

### 3.Follower management -Stream

Once an official account has garnered a significant followers base, interaction with followers via stream becomes possible.

Organizations can synchronize product updates, activities, notices and more with their followers. When followers view the stream on DeBank (<https://debank.com/stream>), they can see these notifications.

Compared to traditional social/information platforms, here you can see real 0x address interactions such as reads, comments, shares, and even asset status related to your posts.

You also have the ability to retract a post, engage with active commenters, and more. If the organization wants to comment or share other users' posts, simply copy the DeBank post detail link to the input box, click on "go to comment/share", and proceed on the detail page.

![](/files/MgHiY302FlrpeWTUgb0I)


# API Reference


# Broadcast messages

Effortlessly send any message to a group of users through DeBank Hi and directly reach out to any on-chain user. Users will be able to reply to your messages.

## Send group message

#### Method

post

#### Path

/v1/official/group\_send

#### Parameters

* content - json with the following fields:
  * `type` : `string` message type, only support "text" currently.
  * `value` : `json` with the following fields
    * `url`: `string` - url link
    * `data`: `string` - content
    * `version`: `string` - current version: v1
* `address_list` : `array` - The address list you want to send hi messages, max length: 10,000.
* `max_offer_price` : `integer` - max offer price, If the offer price for the address is higher than this value, no message will be sent to the address. The decimal of max\_offer\_price is 4, eg. you want to set max offer price to $1, the max\_offer\_price = 10,000.
* `prepayment_amount` : `integer` - You are willing to prepay the funds for this grou send message. If the user does not open your offer in the end, the remaining money will be refunded to your account after settlement. The decimal of prepaymen\_amount is 4, eg. you want to set pre-payment amount to $100, the prepaymen\_amount = 1000,000.

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl 'https://pro-openapi.debank.com/v1/official/group_send' \
  -H 'AccessKey: YOUR_ACCESSKEY' \
  -H 'Content-Type: application/json' \
  --data-raw '{
    "address_list": ["0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85"],
    "content": {
        "type": "text", 
        "value": {"url": "https://example.com", 
                "data": "test group send message", 
                "version": "v1"}
                },
    "max_offer_price": 10000, // default $1
    "prepayment_amount": 10000}' \
  --compressed
```

{% endtab %}
{% endtabs %}

Result

* group send id


# User messages

## Send messages to a single user

#### Method

post

#### Path

/v1/official/message/send

#### Parameters

* content - json with the following fields:
  * `type` : `string` message type, only support "text" currently.
  * `value` : `json` with the following fields
    * `url`: `string` - url link
    * `data`: `string` - content
    * `version`: `string` - current version: v1
* `addr` : `string` - The address to which you need to send the message
* `max_offer_price` : `integer` - max offer price, If the offer price for the address is higher than this value, no message will be sent to the address. The decimal of max\_offer\_price is 4, eg. you want to set max offer price to $1, the max\_offer\_price = 10,000.

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl 'https://pro-openapi.debank.com/v1/official/message/send' \
  -H 'AccessKey: YOUR_ACCESSKEY' \
  -H 'Content-Type: application/json' \
  --data-raw '{
    "addr": "0x5853ed4f26a3fcea565b3fbc698bb19cdf6deb85",
    "content": {
        "type": "text", 
        "value": {"url": "https://example.com", 
                "data": "test group send message", 
                "version": "v1"}
                },
    "max_offer_price": 10000
    }' \
  --compressed
```

{% endtab %}
{% endtabs %}


# Quest


# REST API Action Integration Spec

This specification defines how to integrate via REST endpoints to validate the eligibility for specific actions.

### Request

When an action needs to be validated, the system will send a GET request to the specified endpoint.

#### Request Configuration

* **Endpoint URL (required)**
  * e.g., <https://api.example.com/validate-quest-action>
* Request Header Values (optional), for authentication purposes. [Use hyphens to separate words, not underscores](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers)
  * e.g., header-key: value
  * e.g., header-key2: value2
* **Query Parameters in the Request (required)**
  * address (mandatory): The address to validate

CURL Example:

```python
curl -X GET \
  'https://api.example.com/validate-quest-action?address=0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85' \
  -H 'header-key: value' \
  -H 'header-key2: value2'
 
```

### Response

The endpoint should return a **JSON-formatted** response.

#### Successful Case

If the action is validated successfully, return a 200 status code and the following JSON response:

```python
{
  "status": "success"
}
```

#### Failed Case

If the action validation fails, return a 200 status code and the following JSON response:

```python
{
  "status": "failed"
}
```

#### Error Case

* If the request input is invalid or required parameters are missing, return a 4xx status code.
* If an internal error occurs on the endpoint, return a 5xx status code.

\
The error response may include a `message` key to provide additional error information, but it is not required.

```python
{
  "status": "error",
  "message": "Invalid request parameters"
}
```

By implementing this specification, you can develop a REST endpoint to validate specific actions. The system will send requests to your endpoint, and your endpoint should return the corresponding JSON response and status code based on the validation result for the action.


# DeBank Connect


# Integration

## Summary

Debank Connect is based on the [OAuth2.0](https://datatracker.ietf.org/doc/html/rfc6749) authorization standard protocol. With DeBank Connect, enable Web3 users to effortlessly sign in your Dapp via DeBank. Once they grant authorization, access their account name/avatar, on-chain portfolio data, and social following data.

## Create App

#### Create and Verify App

Log in to [Official dashboard](https://official.debank.com/), click the Apps tab on the navbar, and click Create New App.

<figure><img src="https://debankglobal.larksuite.com/space/api/box/stream/download/asynccode/?code=OTNhZmQ4YWYzMmRlNzBmZWQxM2MzMWY2NzAwYjAzZTBfVUpoMGRiZG9wNWJkcVdZNUtJbzdzUnRxa05WYWN4aENfVG9rZW46STE2MGJOQXozb3JJTXB4V2dUQnVKYUNDc2RlXzE2OTU5Nzc1NzM6MTY5NTk4MTE3M19WNA" alt=""><figcaption></figcaption></figure>

Once you have finished creating the App, follow the instructions to complete the validation of the App.

<figure><img src="/files/Kwguze3qiMkLWaZ9isr2" alt=""><figcaption></figcaption></figure>

#### Create Client

Click "Create Client"

<figure><img src="/files/ZmPmQImsm2fhW8DfDXka" alt=""><figcaption></figcaption></figure>

After the creation, save the Client ID and Client Secret for subsequent Integration.

<figure><img src="/files/9A1yqplPseDdglvUfzoT" alt=""><figcaption></figcaption></figure>

## Integration

{% hint style="info" %}
*DeBank Connect currently only supports OAuth 2.0* [***Authorization Code Grant***](https://datatracker.ietf.org/doc/html/rfc6749#section-4.1)*.*
{% endhint %}

**OAuth 2.0** [**Authorization Code Grant**](https://datatracker.ietf.org/doc/html/rfc6749#section-4.1)**：**

1. The DAPP guides the user to the DeBank Connect authorization page

<figure><img src="https://debankglobal.larksuite.com/space/api/box/stream/download/asynccode/?code=NDhjZjlkMDg0NTQ0MWI1M2M4MDcxOWE2MmEwZDljMmJfY2Zxd1l3d3BWZ24xamVReGU1RVlnV2ZjMXVUSzVsemJfVG9rZW46VjRTaWJqUXlrb2x0WVV4SXBmdXVHQmpZc3BlXzE2OTU5NzgxNzA6MTY5NTk4MTc3MF9WNA" alt=""><figcaption></figcaption></figure>

Example of Authorization Redirect URL:

```
https://debank.com/connect?client_id=7iySAAu5k9zJdpu3NbSyvb6p&response_type=code&scope=user:base:read%20user:chain:read%20user:social:read&redirect_uri=https://example-dapp.com/callback&state=44438279
```

<figure><img src="https://debankglobal.larksuite.com/space/api/box/stream/download/asynccode/?code=Mzc0ZjQ0MDhjY2MwMjhkMWRhMGE2ZjYzYTRhNTZlMTVfMFF4cjhNdnUyNUxlS2lQNEhrZHdCZnc3d3FJWnRFaUhfVG9rZW46VW5SWmJkT0Nzb3NMNGF4Vk1QTnVhZ2d4c1NjXzE2OTU5NzgxOTE6MTY5NTk4MTc5MV9WNA" alt="" width="375"><figcaption></figcaption></figure>

* Description of DeBank Connect Authorization Page URL Parameters

| Paramater      | Requierd     | Description                                                                                                                                                         |
| -------------- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| client\_id     | Yes          | Third party identification credentials                                                                                                                              |
| redirect\_uri  | Yes          | After the authorization process is complete, it redirects to the dapp with the code.                                                                                |
| scope          | No           | The required scope of access for dApp application.                                                                                                                  |
| response\_type | No           | Authorization code grant mode, default is "code".                                                                                                                   |
| state          | No, Recommed | If this parameter is included in the request, the authentication server will return it exactly as it is during the redirection, in order to prevent replay attacks. |

<table><thead><tr><th>Scope</th><th></th><th data-hidden>Description</th><th data-hidden></th></tr></thead><tbody><tr><td>user:base:read</td><td>User base info</td><td>User Base info</td><td></td></tr><tr><td>user:chain:read</td><td>User on-chain portfolio data</td><td>User on-chain portfolio data</td><td></td></tr><tr><td>user:social:read</td><td>User social info</td><td>User social data</td><td></td></tr></tbody></table>

2. The user can decide whether to authorize the Web service application. If authorization is not agreed, the process terminates. If authorization is agreed, the authorization endpoint is triggered. Then redirect to the "redirect\_uri"

Example of redirect uri:

```
https://example-dapp.com?code=Ro6MIQFigLDcK1hceX9B9B8dgl2ZgcStHXsDQ2XugM0v1gh3&state=132141234
```

| Paramater | Required     | Description                                                                                                                                                         |
| --------- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| code      | Yes          | Authorization code. After the user grants authorization, DeBank connect will redirect to the dApp with the code.                                                    |
| state     | No, Recommed | If this parameter is included in the request, the authentication server will return it exactly as it is during the redirection, in order to prevent replay attacks. |

3. The dApp server side obtains access token and refresh token through authorization code.

DeBankConnect API for access token and refresh\_token.

```
URL: https://api.connect.debank.com/oauth/token
Method：POST
Head：auth = HTTPBasicAuth(client_id, client_secret)
Content-Type：form-data
```

{% hint style="info" %}

```
HTTPBasicAuth: https://en.wikipedia.org/wiki/Basic_access_authentication
```

{% endhint %}

| Paramater     | Required | Description                                                                   |
| ------------- | -------- | ----------------------------------------------------------------------------- |
| code          | Yes      | Authorization code                                                            |
| redirect\_uri | Yes      | The link for the redirection when the user is authorized, must be consistent. |
| grant\_type   | Yes      | Authorization code mode, default is "authorization\_code".                    |

Response:

| Paramater      | Required | Description                                       |
| -------------- | -------- | ------------------------------------------------- |
| access\_token  | Yes      | Access Token                                      |
| expires\_in    | Yes      | Expire time                                       |
| refresh\_token | Yes      | Refresh Token                                     |
| scope          | Yes      | The required scope of access for dApp application |
| token\_type    | Yes      | The authentication method for the access token.   |

Example:

```
curl --location -g --request POST 'http://api.connect.debank.com/oauth/token' \
--header 'Authorization: Basic TVM4YUxDemZQTlZDTURiemFHZlZpcUlaOm9iWDJJbFRjdW1XS0U0T1lEYm51RzBGU003Z09wb1I3UFlFUFdlazhJeHJBazlBaQ==' \
--form 'grant_type="authorization_code"' \
--form 'code="<code>"' \
--form 'redirect_uri="<redirect_uri>"'

{
    "access_token": "xmpF421TrBTyBTwYNLAQXE3wTKgqt5h29HaKfGZPJh",
    "expires_in": 864001,
    "refresh_token": "agCd2oYdCrLiqKCJNrOFQmkPg6b7N0OQcPXXw7Pf6vQHNDR2",
    "scope": [
        "user:base:read",
        "user:chain:read",
        "user:social:read"
    ],
    "token_type": "Bearer"
}
```

4. The DAPP service refreshes the access\_token by refresh\_token.

```
URL: api.connect.debank.com/oauth/token
Method：POST
Headers：auth = HTTPBasicAuth(client_id, cleint_secret)
Content-Type：form-data
```

| Paramater      | Required | Description                                           |
| -------------- | -------- | ----------------------------------------------------- |
| refresh\_token | Yes      | Refresh Token                                         |
| grant\_type    | Yes      | Authorization code mode, default is "refresh\_token". |

Response:

| Paramater      | Required | Description                                       |
| -------------- | -------- | ------------------------------------------------- |
| access\_token  | Yes      | Access Token                                      |
| expires\_in    | Yes      | Expire time                                       |
| refresh\_token | Yes      | Refresh Token                                     |
| scope          | Yes      | The required scope of access for dApp application |
| token\_type    | Yes      | The authentication method for the access token.   |

Example:

```
curl --location -g --request POST 'http://api.connect.debank.com/oauth/token' \
--header 'Authorization: Basic UzNNQVdWa1NKZ2FpNHFLVGZPZnR4bEdtOlMwSlI0QThCRUw4T2FENWNjU2xMcVh3TmQzUzJzNFVZVWRSM0VxNkEzczJJZnZTMA==' \
--form 'grant_type="refresh_token"' \
--form 'refresh_token="<refresh_token>"'

{
    "access_token": "xmpF421TrBTyBTwYNLAQXE3wTKgqt5h29HaKfGZPJh",
    "expires_in": 864001,
    "refresh_token": "agCd2oYdCrLiqKCJNrOFQmkPg6b7N0OQcPXXw7Pf6vQHNDR2",
    "scope": [
        "user:base:read",
        "user:chain:read",
        "user:social:read"
    ],
    "token_type": "Bearer"
}
```

## Accessible API list

<table><thead><tr><th>scope</th><th>Link</th><th data-hidden>link</th><th data-hidden></th></tr></thead><tbody><tr><td>user:base:read</td><td><a href="https://docs.cloud.debank.com/en/debank-connect/api/user-base-data">https://docs.cloud.debank.com/en/debank-connect/api/user-base-data</a></td><td></td><td></td></tr><tr><td>user:chain:read</td><td><a href="https://docs.cloud.debank.com/en/debank-connect/api/user-chain-data">https://docs.cloud.debank.com/en/debank-connect/api/user-chain-data</a></td><td></td><td></td></tr><tr><td>user:social:read</td><td><a href="https://docs.cloud.debank.com/en/debank-connect/api/user-social-data">https://docs.cloud.debank.com/en/debank-connect/api/user-social-data</a></td><td></td><td></td></tr></tbody></table>


# ChangeLog

## 2023-11-17

* Standardize the return format for getting access token and refresh\_token. remove the `data` field

<figure><img src="/files/yO3tuhDwCZK5FEegoloy" alt=""><figcaption></figcaption></figure>


# API


# User Base Data

The User Base Data API can obtain authorized user base information.

## Get user base info

#### Method

get

#### Path

/v1/user

#### Returns

* id: string - User address
* web3\_id: string - The user's unique id in DeBank
* name: string - Same to web3\_id
* logo\_url: string - User logo url
* born\_at: double - User on-chain born time
* tvf: double - Value of user's followers

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Response

```
{    
    "id": "0xb406359921ed307042019d8dd5ddc22949b64703",
    "logo_thumbnail_url": "https://static.debank.com/image/user/logo/0xb406359921ed307042019d8dd5ddc22949b64703/4db43b0a0818618793ccc1ec5c727f30_thumbnail.png",
    "logo_url": "https://static.debank.com/image/user/logo/0xb406359921ed307042019d8dd5ddc22949b64703/4db43b0a0818618793ccc1ec5c727f30.png",
    "web3_id": "michwill"
    "name": "michwill",
    "rank_at": 12
}
```


# User Chain Data

## Get user total balance on all supported chains

Get net assets on multiple chains, including tokens and protocols

#### Method

get

#### Path

/v1/user/total\_balance

#### Returns

return the total net assets and the net assets of each chain.

`Object` - An object with following fields:

* `total_usd_value` : `double` - The price of all assets in a user's account.

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/total_balance' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

```json
{
  "total_usd_value": 27654.142997146177
}
```

## Get user used chain

#### Method

get

#### Path

/v1/user/used\_chain\_list

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/used_chain_list' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-used-chain)

## Get user chain balance

Return the balance of a given address.

#### Method

get

#### Path

/v1/user/chain\_balance

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/chain_balance' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-chain-balance)

## Get user protocol

Get one user's positions in the protocol

#### Method

get

#### Path

/v1/user/protocol

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/protocol' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-protocol)

## Get user complex protocol list

Get user's detail portfolios on a chain in the protocol.

#### Method

get

#### Path

/v1/user/complex\_protocol\_list

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/complex_protocol_list' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-complex-protocol-list)

## Get user complex protocol list on all supported chains

Get user detail portfolios on all supported chains in the protocol.

#### Method

get

#### Path

/v1/user/all\_complex\_protocol\_list

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/all_complex_protocol_list' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-complex-protocol-list-on-all-supported-chains)

## Get user simple protocol list

Get user's balance on a chain in the protocol.

#### Method

get

#### Path

/v1/user/simple\_protocol\_list

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/simple_protocol_list' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-simple-protocol-list)

## Get user simple protocol list on all supported chains

Get user's balance on all supported chains in the protocol.

#### Method

get

#### Path

/v1/user/all\_simple\_protocol\_list

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/all_simple_protocol_list' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-simple-protocol-list-on-all-supported-chains)

## Get user token balance

#### Method

get

#### Path

/v1/user/token

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/token' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-token-balance)

## Get user token list

Get user token balance

#### Method

get

#### Path

/v1/user/token\_list

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/token_list' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-token-list)

## Get a list of token balances on all supported chains

#### Method

get

#### Path

/v1/user/all\_token\_list

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/all_token_list' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-token-list)

## Get user nft list

Get user nft list

#### Method

get

#### Path

/v1/user/nft\_list

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/nft_list' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-nft-list)

## Get user nft list on all supported chain

#### Method

get

#### Path

/v1/user/all\_nft\_list

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/all_nft_list' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-nft-list-on-all-supported-chain)

## Get user history list

Get user history list

#### Method

get

#### Path

/v1/user/history\_list

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/history_list' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-history-list)

## Get user transaction history on all supported chains

#### Method

get

#### Path

/v1/user/all\_history\_list

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/all_history_list' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-transaction-history-on-all-supported-chains)

## Get user token authorized list

Get user token authorized list

#### Method

get

#### Path

/v1/user/token\_authorized\_list

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/token_authorized_list' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-token-authorized-list)

## Get user nft authorized list

Get user nft authorized list

#### Method

get

#### Path

/v1/user/nft\_authorized\_list

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/nft_authorized_list' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-nft-authorized-list)

## Get user 24-hour net curve on a single chain

Get net curve of user on a single chain

#### Method

get

#### Path

/v1/user/chain\_net\_curve

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/chain_net_curve' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-24-hour-net-curve-on-all-chains)

## Get user 24-hour net curve on all chains

Get net curve of user on chains

#### Method

get

#### Path

/v1/user/total\_net\_curve

#### Returns

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/total_net_curve' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Result

[for more info](/en/readme/api-pro-reference/user#get-user-24-hour-net-curve-on-a-single-chain)


# User Social Data

## Get user follower list

#### Method

get

#### Path

/v1/user/follower\_list

#### paramater

* `start`: `integer` offset, default is 0.
* `limit`: `integer` limit size, default is 20, max is 100.

#### Returns

* follower\_list: List of User objects
  * id: string - User address
  * web3\_id: string - The user's unique id in DeBank
  * name: string - Same to web3\_id
  * logo\_url: string - user logo url
  * born\_at: double - user on-chain born time
  * tvf: double - Value of user's followers
* total\_count: int - total follower count

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/follower_list' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Response

```
{
    "follower_list": [
      {
        "id": "0x7a16ff8270133f063aab6c9977183d9e72835428",
        "logo_thumbnail_url": null,
        "logo_url": null,
        "web3_id": "michwill"
        "name": "michwill"
      }
    ],
    "total_count": 838
}
```

## Get user following list

#### Method

get

#### Path

/v1/user/following\_list

#### paramater

* `start`: `integer` offset, default is 0.
* `limit`: `integer` limit size, default is 20, max is 100.

#### Returns

* following\_list: List of User objects
  * id: string - User address
  * web3\_id: string - The user's unique id in DeBank
  * name: string - Same to web3\_id
  * logo\_url: string - user logo url
  * born\_at: double - user on-chain born time
  * tvf: double - Value of user's followers
* total\_count: int - total following count

Request

{% tabs %}
{% tab title="Curl" %}

```bash
curl -X 'GET' 'https://api.connect.debank.com/v1/user/following_list' -H 'accept: application/json' -H 'Authorization: Bearer {Your access_token}'
```

{% endtab %}
{% endtabs %}

Response

```
{
    "following_list": [
      {
        "id": "0x7a16ff8270133f063aab6c9977183d9e72835428",
        "logo_thumbnail_url": null,
        "logo_url": null,
        "web3_id": "michwill"
        "name": "michwill"
      }
    ],
    "total_count": 838
}
```


# Terms Of Service

**These terms of service (these "terms") govern subscription to and use of DeBank Cloud 's services. if you receive a free trial of DeBank Cloud's services, the applicable provisions of these terms will also govern that free trial. by accessing or using DeBank Cloud's websites and services, you accept or agree to these terms. if you are entering into or accepting these terms on behalf of a legal entity, you represent and warrant that you have the right, authority and capacity to bind such entity and its affiliates to these terms, in which case, the term "subscriber" shall refer to such entity and its affiliates. if you do not have such authority, or if you do not agree to be bound by all of the provisions of these terms, do not access or use DeBank Cloud's services.**

LAST UPDATED: **25-OCT-2022** EFFECTIVE DATE: **25-OCT-2022**

## 1.Agreement

These Terms of Service (these "Terms") are made by and between the party on whose behalf they are accepted ("Subscriber") and DeBank Cloud and are effective as of the date they are accepted by Subscriber. "DeBank Cloud" or "DeBank" means DeBank Global Pte. Ltd., a company organized under the laws of Singapore. The complete subscription agreement including these Terms (the "Agreement") is made for the purpose of granting Subscriber a limited subscription to use DeBank Cloud's services, the “Services” refer to any services that we may make available to you.We hereby emphasize that our services include but not only limited to any application programming interface (“API”), daily snapshot for all DeFi users' portfolios from all protocols, \*\*\*\* tools to enhance dapp security for you and your users, help you precisely reach all Web3 users you want and boost your marketing efficiency.

## 2.Free Trial

**2.1** If Subscriber receives DeBank Cloud's free trial ("Trial Account") for one or more Services, DeBank Cloud will make such Services available to Subscriber on a trial basis for free until the earlier of (a) fourteen (14) days (the "Evaluation Period"), (b) the start of any paid subscription for such Services, or (c) termination by DeBank Cloud at its sole discretion. If, at the end of the Evaluation Period, Subscriber does not sign up for a paid subscription of the Services, the Agreement will automatically terminate unless DeBank Cloud agrees, in its sole discretion, to extend the Evaluation Period. Additional terms and conditions may appear on the registration website for a Trial Account and any such additional terms and conditions are incorporated into this Agreement by reference and are legally binding.

**2.2** All trial accounts are provided "as is" and "as available" without any warranty of any kind. Trial accounts may be suspended, terminated, or discontinued at any time and for any reason (or no reason). DeBank Cloud disclaims all obligation and liability under the agreement (including liability otherwise provided for any harm or damage arising out of or in connection with a trial account, including any obligation or liability with respect to subscriber data). Any configurations or subscriber data entered into a trial account, and any customizations made to a trial account by or for subscriber, may be permanently lost if the trial account is suspended, terminated, or discontinued.

## 3. DeBank Cloud's Obligations

**3.1 Services.**

DeBank Cloud will make the Services available to Subscriber according to Service Order. The Agreement includes each Service Order incorporating the Agreement.

**3.2 Compliance with Laws.**

DeBank Cloud will comply with all laws and governmental regulations applicable to the Services.

**3.3 Security Measures.**

DeBank Cloud will maintain administrative, physical, and technical safeguards for the security and integrity of the Services (the "Security Measures") consistent with industry standard practices. DeBank Cloud will store, process, transmit and disclose electronic data and configurations submitted to the Services.

## 4. Subscriber's Obligations

The obligations of subscribers include:

(a) Subscriber shall use the Services in accordance with the applicable Documentation;

(b) Subscriber shall be responsible for using commercially reasonable efforts to prevent unauthorized access to or use of the Services;

(c) Subscriber shall promptly notify DeBank Cloud of any unauthorized access or use of the Services;

(d) Subscriber shall not use the Services to store, transmit for fraudulent purposes or in violation of applicable laws and governmental regulations;

(e) Subscriber shall not use the Services to store, transmit or display Malicious Code;

(f) Subscriber shall not interfere with or disrupt the integrity or performance of the Services or any third-party technology contained therein;

(g) Subscriber shall not attempt to gain unauthorized access to any of DeBank Cloud's data centers, systems or networks;

(h) Subscriber shall not permit direct or indirect access to or use the Services in a way that circumvents a usage or capacity limit of the Services or use the Services to access or use any of DeBank Cloud's intellectual property except as permitted under the Agreement;

(i) Subscriber shall not alter, remove or obscure any copyright, trademark or other proprietary notices or confidentiality legend on the Services;

(j) Subscriber shall obtain and maintain appropriate equipment and ancillary services needed to connect to, access or otherwise use the Services, including modems, hardware, servers, software, operating systems and internet access;

(k) Subscriber obtain and maintain any required consents necessary to permit the processing of Subscriber Data by DeBank Cloud under the Agreement;

(l) \*\*\*\* Subscriber obtain and maintain any consents necessary to permit the processing by DeBank Cloud of the personal information of Subscriber's personnel that serve as Subscriber's designated contact for purposes of the Services and the Agreement.

(m) Subscriber shall not resell or share your account and data with other entities.

## 5. Term and Termination

**5.1 Term**

These Terms are effective during the term of any Service Order that incorporates the Agreement.

**5.2 Termination for Convenience**

DeBank Cloud reserves the right to terminate this Agreement at its sole discretion without liability and an Email notice will be sent to the Subscriber at least two weeks in advance before the termination.Moreover, DeBank Cloud reserves the right to take off some or all of the services according to its own business development without liability, and an Email notice will be sent to the "affected Subscribers" at least two weeks in advance. The "affected Subscribers"' scope will be evaluated by DeBank Cloud based on Subscribes' usage of the services and other factors. DeBank Cloud reserves the right for final interpretation.

## 6. Beta Services

From time to time, DeBank Cloud may offer services identified as beta, pilot, developer preview, no/n-production, evaluation or by a description of similar import ("Beta Services"). Subscriber may accept or decline Beta Services. If accepted by Subscriber, Beta Services: (a) are provided only for evaluation purposes; (b) may not be relied on by Subscriber for production use; (c) may not be supported; and (d) may be subject to additional terms. Unless otherwise stated, any Beta Services trial period will expire on the date that a version of the Beta Services becomes generally available or is discontinued. DeBank Cloud may discontinue Beta Services at any time in its sole discretion and may never make Beta Services generally available.All beta services are provided "as is" and "as available" without any warranty of any kind. beta services may be terminated at any time. DeBank Cloud disclaims all obligation and liability under the agreement for any harm or damage arising out of or in connection with a beta service, including any obligation or liability with respect to subscriber data. any configurations or subscriber data entered into beta services, and any customizations made to beta services by or for subscriber, may be permanently lost if the beta services are suspended, terminated, or discontinued.

## 7. Fees and Payment

The fees paid by subscribers are (a) based on Services purchased instead of the actual usage; (b) can't be cancelled; and (c) cannot be decreased during the specified term. Fees paid are not refundable

## 8. Exclusion of Consequential and Related Damages

In no event will a party have any liability to any other party for any lost profits, lost opportunities, or indirect, special, incidental, consequential, cover, or punitive damages, whether an action is in contract or tort and regardless of the theory of liability, even if a party has been advised of the possibility of these types of damages or a party's remedy otherwise fails of its essential purpose. The foregoing disclaimer will not apply to the extent prohibited by law.

## 9. Disclamer of Warranties

The developed software and developer data are provided "as is" and developer makes no representations or warranties of any kind whatsoever, express or implied, in connection with this agreement, the developed software or the developer data. without limiting the foregoing, developer disclaims any warranty that use of the developed software will be error free or uninterrupted; that the developed software or developer data will be free from bugs, viruses, other malicious code, errors or program limitations; or that all errors will be corrected. developer further disclaims any and all warranties with respect to the developed software as to merchantability, accuracy of any information provided, fitness for a particular purpose, or non-infringement. developer further disclaims any and all warranties arising from course of dealing or usage of trade. no advice or information, whether oral or written, obtained from developer or elsewhere shall create any warranty not expressly stated in this agreement.

## 10. Indemnification

In no event shall either party’s aggregate liability arising out of or related to this agreement, whether arising out of or related to breach of contract, tort (including negligence), or otherwise, exceed the aggregate amounts paid or payable to the service provider pursuant to this agreement for the preceding three months.

## 11. Governing Law

This Agreement will be governed by, interpreted, and enforced in accordance with the laws of Singapore. Any dispute arising out of or in connection with this Agreement, including any question regarding its existence, validity or termination, shall be referred to and finally resolved by arbitration administered by the Singapore International Arbitration Centre in accordance with the Arbitration Rules of the Singapore International Arbitration Centre for the time being in force, which rules are deemed to be incorporated by reference in this clause. The seat of the arbitration shall be Singapore. The tribunal shall consist of one arbitrator. The language of the arbitration shall be English.

## 12. Publicity

Subscriber consents to DeBank Cloud's use of Subscriber's name and logo and general description of Subscriber's relationship with DeBank Cloud in press releases and other marketing materials and appearances. Subscriber further permits DeBank Cloud to use it as a reference account for marketing purposes and agrees, from time to time, to support DeBank Cloud by participating in reference phone call(s) and other marketing events including with press, analysts, and DeBank Cloud's existing or potential investors or customers upon reasonable request by DeBank Cloud.

## 13. Force Majeure

Except for payment obligations under the Agreement, neither party will be liable for failure to perform or inadequate performance to the extent caused by a condition that was beyond the party's reasonable control, including, for example, an act of God, natural disaster, act of war or terrorism, riot or civil arrest, labor conditions, governmental action, disruption of telecommunications, failure or delay of internet services providers or internet disturbance, disruption of power or other essential services.

## 14. Entire Agreement

The Agreement supersedes all prior and contemporaneous agreements, proposals, or representations, written or oral, concerning its subject matter. In the event of any conflict or inconsistency among the following, the order of precedence shall be: (i) the applicable Service Order, (ii) the Agreement (iii) the Documentation. DeBank Cloud and Subscriber each represent that it has validly entered into or accepted the Agreement and has the legal power to do so. DeBank Cloud may modify these Terms from time to time. Any and all changes to these Terms will be posted at<https://docs.open.debank.com/en/reference/term-of-service> and the Terms will indicate the date they were last updated and their effective date. The changes will become effective seven days after posting and Subscriber may terminate the Agreement without penalty upon notice to DeBank Cloud within seven days of the effective date of the revised Terms. Subscriber is deemed to accept and agree to be bound by any changes to the Agreement when Subscriber uses the Service after the effective date of those changes. Notwithstanding the foregoing, in the event that the parties enter into, or have entered into a separate formal written subscript agreement, the terms of that agreement shall control over the terms of the Agreement unless the parties expressly agree to supersede such agreement with this Agreement. Any term or condition stated in a Subscriber purchase order or other Subscriber order documents (excluding Service Orders) is void. No failure or delay by either party in exercising any right under the Agreement will constitute a waiver of that right. If any provision of the Agreement is held by a court of competent jurisdiction to be contrary to law, the provision will be deemed null and void, and the remaining provisions of the Agreement will remain in effect. In this Agreement, all reference to "including" means "including but not limited to".


