# Transaction API

## 1. Get the current server time

* Path: /account/time
* Method: GET
* Response:

| **Parameter** | **Type** | **Example**   | **Description** |
| ------------- | -------- | ------------- | --------------- |
| data          | number   | 1730975545000 | timestamp       |

* Response example:

```javascript
{
    "code": 0,
    "msg": "ok",
    "data": 1730975545000
}
```

## 2. Gmail login

* Path：/account/socialLogin
* Method: POST
* Request body:&#x20;

| **Parameter** | **isRequired** | **Type** | **Example** | **Description**                 |
| ------------- | -------------- | -------- | ----------- | ------------------------------- |
| social        | true           | string   | google      | social(google,telegram,twitter) |
| code          | true           | string   | 4vy...      | auth code                       |

* Currently only Google auth
* Response：

| **Parameter** | **Type** | **Example**                                  | **Description**         |
| ------------- | -------- | -------------------------------------------- | ----------------------- |
| token         | string   | 0529a86ed1f54d1b551b2d37e52aba64279fe70      | api-key                 |
| email         | string   | <xxx@gmail.com>                              | google email            |
| address       | string   | DVcxFHjnDJKrej8eAouYWLkkiqf9aAwu5Z3PRpJuDyg2 | generate wallet address |

* Response example：

```javascript
{
    "code": 0,
    "msg": "ok",
    "data": {
        "token": "0529a86ed1f54d1b551b2d37e52aba64279fe70",
        "email": "123@gmail.com",
        "address": "DVcxFHjnDJKrej8eAouYWLkkiqf9aAwu5Z3PRpJuDyg2"
    }
}
```

## 3. Wallet login

* Path：/account/walletLogin
* Method: POST
* Request body：

| **Parameter** | **isRequired** | **Type** | **Example**   | **Description** |
| ------------- | -------------- | -------- | ------------- | --------------- |
| address       | true           | string   | DVcxFH...     | wallet address  |
| signature     | true           | string   | 0xbabe03...   | signature       |
| timestamp     | true           | number   | 1730975545000 | timestamp       |

{% hint style="info" %}
Wallet sign message:

```javascript
action:OpenOcean Authentication  
onlySignOn:https://openocean.finance
timestamp:1730975545000
```

{% endhint %}

* Response：

| **Parameter** | **Type** | **Example**                                  | **Description**     |
| ------------- | -------- | -------------------------------------------- | ------------------- |
| token         | string   | 0529a86ed1f54d1b551b2d37e52aba64279fe70      | api-key             |
| wallet        | string   | 7mwQLwDJpxCJ2qRLH288yWUq8f7RLRcXw6jBi1VCjXXV | user wallet address |
| address       | string   | DVcxFHjnDJKrej8eAouYWLkkiqf9aAwu5Z3PRpJuDyg2 | wallet address      |

* Response example：

```
{
    "code": 0,
    "msg": "ok",
    "data": {
        "token": "0529a86ed1f54d1b551b2d37e52aba64279fe70",
        "wallet": "7mwQLwDJpxCJ2qRLH288yWUq8f7RLRcXw6jBi1VCjXXV",
        "address": "DVcxFHjnDJKrej8eAouYWLkkiqf9aAwu5Z3PRpJuDyg2"
    }
}
```

## 4. Withdraw

* Path：/account/withdraw
* Method：POST
* Request headers：

| **Parameter** | **isRequired** | **Type** | **Example**   | **Description** |
| ------------- | -------------- | -------- | ------------- | --------------- |
| api-key       | true           | string   | 0529a86...    | api-key         |
| timestamp     | true           | number   | 1730975545000 | timestamp       |

* Request body：

| parameter | isRequired | type   | example      | description           |
| --------- | ---------- | ------ | ------------ | --------------------- |
| address   | true       | string | 0xECb87...   | destination address   |
| token     | true       | string | 0xbabe03...  | token address         |
| amount    | true       | number | 100000000000 | amount(with decimals) |

* Response：

| parameter | type   | example              | description    |
| --------- | ------ | -------------------- | -------------- |
| data      | string | qyMtnbbSiMbw3e9..... | signature hash |

* Response example:

```javascript
{
    "code": 0,
    "msg": "ok",
    "data": "qyMtnbbSiMbw3e9j2Xe6MWBfiuqhy6BNtMsHoEfoU4GPBwAduZNd7N6WHwkdrxwTLQZchnXKbqxfGF9kjtiRqcq"
}
```

## 5. Quote before launch

* Path: /account/calc
* Method: POST
* Request body:

| **Parameter** | **isRequired** | **Type** | Example | **Description** |
| ------------- | -------------- | -------- | ------- | --------------- |
| source        | true           | string   | pump    | pump/moonshot   |
| type          | true           | string   | buy     | buy/sell        |
| data          | true           | object   | {}      | trade data      |

* Pump coinData:

<table data-header-hidden><thead><tr><th width="218"></th><th width="113"></th><th></th><th width="145"></th><th></th></tr></thead><tbody><tr><td><strong>Parameter</strong></td><td><strong>isRequired</strong></td><td><strong>Type</strong></td><td><strong>Example</strong></td><td><strong>Description</strong></td></tr><tr><td>virtual_sol_reserves</td><td>true</td><td>number</td><td>110364752010</td><td>curve virtual_sol_reserves</td></tr><tr><td>virtual_token_reserves</td><td>true</td><td>number</td><td>291669210039976</td><td>curve virtual_token_reserves</td></tr></tbody></table>

* Moonshot coinData: { moonshot: { curvePosition: 110364752010 }}

| **Parameter** | **isRequired** | **Type** | **Example**  | **Description**        |
| ------------- | -------------- | -------- | ------------ | ---------------------- |
| curvePosition | true           | number   | 110364752010 | moonshot curvePosition |

* Trade data：

<table data-header-hidden><thead><tr><th></th><th width="115"></th><th></th><th width="128"></th><th></th></tr></thead><tbody><tr><td><strong>Parameter</strong></td><td><strong>isRequired</strong></td><td><strong>Type</strong></td><td><strong>Example</strong></td><td><strong>Description</strong></td></tr><tr><td>mintAddress</td><td>true</td><td>string</td><td>AY7TrgZ...</td><td>token address</td></tr><tr><td>tokenAmount</td><td>true</td><td>number</td><td>25124</td><td>meme amount(without decimals)</td></tr><tr><td>baseAmount</td><td>true</td><td>number</td><td>0</td><td>SOL amount(without decimals)</td></tr><tr><td>quoteAsset</td><td>true</td><td>object</td><td>{}</td><td>quote asset</td></tr><tr><td>baseAsset</td><td>true</td><td>object</td><td>{}</td><td>base asset</td></tr><tr><td>slippageDecimal</td><td>true</td><td>number</td><td>0.02</td><td>slippage 2%</td></tr><tr><td>buyType</td><td>true</td><td>string</td><td>base</td><td>buy baseAsset / buy quoteAsset</td></tr><tr><td>coinData</td><td>true</td><td>object</td><td>{}</td><td>pump coinData / moonshot coinData</td></tr></tbody></table>

* Pump coinData:

```javascript
 {
    "virtual_sol_reserves": 30000000011,
    "virtual_token_reserves": 1072999999766229
}
```

* Moonshot coinData:

```javascript
{
    "moonshot": {
        "curvePosition": 737892960959399
    }
}
```

* Request body example：

```javascript
{
    "source": "pump",
    "type": "buy",
    "data": {
        "mintAddress": "AY7TrgZuX3KFut3qYKtrcyx4SgBR7766y25LRrDrpump",
        "tokenAmount": 327647,
        "baseAmount": 0,
        "buyType": "base",
        "slippageDecimal": 0.02,
        "coinData": {
            "virtual_sol_reserves": 30000000011,
            "virtual_token_reserves": 1072999999766229
        },
        "quoteAsset": {
            "symbol": "Crypto",
            "address": "AY7TrgZuX3KFut3qYKtrcyx4SgBR7766y25LRrDrpump",
            "decimals": 6,
            "icon": "https://ipfs.io/ipfs/QmWqQo9rAayaXdmjddiptchchyY1wvsg1dSpVFkkXM49pw"
        },
        "baseAsset": {
            "symbol": "SOL",
            "address": "So11111111111111111111111111111111111111112",
            "decimals": 9,
            "icon": "https://s3.openocean.finance/token_logos/logos/solana/So11111111111111111111111111111111111111112.png"
        }
    }
}
```

* Response：

| **Parameter** | **Type** | **Example** | **Description**              |
| ------------- | -------- | ----------- | ---------------------------- |
| data          | number   | 125.232545  | out amount(without decimals) |

* Response json：

```
{
    "code": 0,
    "msg": "ok",
    "data": 125.232545
}
```

## 6. Buying and selling before launch

* Path：/account/trade
* Method：POST
* Request headers：

| **Parameter** | **isRequired** | **Type** | **Example**   | **Description** |
| ------------- | -------------- | -------- | ------------- | --------------- |
| api-key       | true           | string   | 0529a86...    | api-key         |
| timestamp     | true           | number   | 1730975545000 | timestamp       |

* Request body：

| **Parameter** | **isRequired** | **Type** | **Example** | **Description** |
| ------------- | -------------- | -------- | ----------- | --------------- |
| source        | true           | string   | pump        | pump/moonshot   |
| type          | true           | string   | buy         | buy/sell        |
| data          | true           | object   | {}          | trade data      |

* Pump coinData:

<table data-header-hidden><thead><tr><th></th><th width="107"></th><th width="105"></th><th width="136"></th><th></th></tr></thead><tbody><tr><td><strong>Parameter</strong></td><td><strong>isRequired</strong></td><td><strong>Type</strong></td><td><strong>Example</strong></td><td><strong>Description</strong></td></tr><tr><td>virtual_sol_reserves</td><td>true</td><td>number</td><td>110364752010</td><td>curve virtual_sol_reserves</td></tr><tr><td>virtual_token_reserves</td><td>true</td><td>number</td><td>291669210039976</td><td>curve virtual_token_reserves</td></tr><tr><td>bonding_curve</td><td>true</td><td>string</td><td>Csv3AVwj...</td><td>bonding_curve address</td></tr><tr><td>associated_bonding_curve</td><td>true</td><td>string</td><td>Cnb5Ev7...</td><td>associated_bonding_curve address</td></tr></tbody></table>

* Trade data：

<table data-header-hidden><thead><tr><th></th><th width="115"></th><th></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Parameter</strong></td><td><strong>isRequired</strong></td><td><strong>Type</strong></td><td><strong>Example</strong></td><td><strong>Description</strong></td></tr><tr><td>mintAddress</td><td>true</td><td>string</td><td>AY7TrgZ...</td><td>token address</td></tr><tr><td>tokenAmount</td><td>true</td><td>number</td><td>0.1</td><td>meme amount(without decimals)</td></tr><tr><td>baseAmount</td><td>true</td><td>number</td><td>0.1</td><td>SOL amount(without decimals)</td></tr><tr><td>priorityFeeInSol</td><td>true</td><td>number</td><td>0.0001</td><td>ComputeBudgetProgram.setComputeUnitPrice</td></tr><tr><td>slippageDecimal</td><td>true</td><td>number</td><td>0.02</td><td>slippage 2%</td></tr><tr><td>quoteAsset</td><td>true</td><td>object</td><td>{}</td><td>quote asset</td></tr><tr><td>baseAsset</td><td>true</td><td>object</td><td>{}</td><td>base asset</td></tr><tr><td>coinData</td><td>false</td><td>object</td><td>{}</td><td>pump meme curve data (only pump)</td></tr></tbody></table>

* Request body example：

```javascript
{
    "source": "pump",
    "type": "buy",
    "data": {
        "mintAddress": "Ah97HXgucHpWtmqVBgYKe3Vq52WSdqbDsDwoXm5Wpump",
        "baseAmount": 0.0001,
        "tokenAmount": 34717.097414,
        "priorityFeeInSol": 0.0001,
        "slippageDecimal": 0.02,
        "quoteAsset": {
            "symbol": "HAWK",
            "address": "Ah97HXgucHpWtmqVBgYKe3Vq52WSdqbDsDwoXm5Wpump",
            "decimals": 6,
            "icon": "https://ipfs.io/ipfs/QmPhT6c62hy6Kiu12ZpLf4ViRsMkTBt8Xo8ctfj21jXfJS",
        },
        "baseAsset": {
            "symbol": "SOL",
            "address": "So11111111111111111111111111111111111111112",
            "decimals": 9,
            "icon": "https://s3.openocean.finance/token_logos/logos/solana/So11111111111111111111111111111111111111112.png",
        },
        "coinData": {
            "virtual_sol_reserves": 110364752010,
            "virtual_token_reserves": 291669210039976,
            "bonding_curve": "Csv3AVwjFXqnBEGRaSjQrzwNJb7BJnX11wjXQf1AVqo5",
            "associated_bonding_curve": "Cnb5Ev7cvspBHqHM8JnhLujxC7Ps7Brs7i6LeXHQNRvn"
        }
    }
}
```

* Response：

| **Parameter** | **Type** | **Example**          | **Description** |
| ------------- | -------- | -------------------- | --------------- |
| data          | string   | qyMtnbbSiMbw3e9..... | signature hash  |

* Response example：

```javascript
{
    "code": 0,
    "msg": "ok",
    "data": "qyMtnbbSiMbw3e9j2Xe6MWBfiuqhy6BNtMsHoEfoU4GPBwAduZNd7N6WHwkdrxwTLQZchnXKbqxfGF9kjtiRqcq"
}
```

## 7. Quote after launch (buying and selling)

* Path：/account/quote
* Method：POST
* Request headers：

| **Parameter** | **isRequired** | **Type** | **Example**   | **Description** |
| ------------- | -------------- | -------- | ------------- | --------------- |
| api-key       | true           | string   | 0529a86...    | api-key         |
| timestamp     | true           | number   | 1730975545000 | timestamp       |

* Request body：

<table data-header-hidden><thead><tr><th width="178"></th><th width="119"></th><th></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Parameter</strong></td><td><strong>isRequired</strong></td><td><strong>Type</strong></td><td><strong>Example</strong></td><td><strong>Description</strong></td></tr><tr><td>inTokenSymbol</td><td>true</td><td>string</td><td>SOL</td><td>inTokenSymbol</td></tr><tr><td>inTokenAddress</td><td>true</td><td>string</td><td>So111111111...</td><td>inTokenAddress</td></tr><tr><td>outTokenSymbol</td><td>true</td><td>string</td><td>FUNGY</td><td>outTokenSymbol</td></tr><tr><td>outTokenAddress</td><td>true</td><td>string</td><td>J74ufcR....</td><td>outTokenAddress</td></tr><tr><td>amount</td><td>true</td><td>number</td><td>1000000</td><td>in token amount(with decimals)</td></tr><tr><td>slippage</td><td>true</td><td>number</td><td>100</td><td>slippage 1%</td></tr></tbody></table>

* Response：

| **Parameter** | **Type** | **Example** | **Description**           |
| ------------- | -------- | ----------- | ------------------------- |
| data          | number   | 124522000   | out amount(with decimals) |

* Response example：

```javascript
{
    "code": 0,
    "msg": "ok",
    "data": 124522000
}
```

## 8. Swap after launch (buying and selling)

* Path：/account/swap
* Method：POST
* Request headers：

| **Parameter** | **isRequired** | **Type** | **Example**   | **Description** |
| ------------- | -------------- | -------- | ------------- | --------------- |
| api-key       | true           | string   | 0529a86...    | api-key         |
| timestamp     | true           | number   | 1730975545000 | timestamp       |

* Request body：

<table data-header-hidden><thead><tr><th width="186"></th><th width="129"></th><th></th><th width="136"></th><th></th></tr></thead><tbody><tr><td><strong>Paramete</strong>r</td><td><strong>isRequired</strong></td><td><strong>Type</strong></td><td><strong>Example</strong></td><td><strong>Description</strong></td></tr><tr><td>inTokenSymbol</td><td>true</td><td>string</td><td>SOL</td><td>inTokenSymbol</td></tr><tr><td>inTokenAddress</td><td>true</td><td>string</td><td>So111111111...</td><td>inTokenAddress</td></tr><tr><td>outTokenSymbol</td><td>true</td><td>string</td><td>FUNGY</td><td>outTokenSymbol</td></tr><tr><td>outTokenAddress</td><td>true</td><td>string</td><td>J74ufcR....</td><td>outTokenAddress</td></tr><tr><td>amount</td><td>true</td><td>number</td><td>1000000</td><td>amount(with decimals)</td></tr><tr><td>slippage</td><td>true</td><td>number</td><td>100</td><td>slippage</td></tr></tbody></table>

* Response：

| Parameter | Type   | Example              | Description    |
| --------- | ------ | -------------------- | -------------- |
| data      | string | qyMtnbbSiMbw3e9..... | signature hash |

* Response example：

```javascript
{
    "code": 0,
    "msg": "ok",
    "data": "qyMtnbbSiMbw3e9j2Xe6MWBfiuqhy6BNtMsHoEfoU4GPBwAduZNd7N6WHwkdrxwTLQZchnXKbqxfGF9kjtiRqcq"
}
```

## 9. Get balances

* Path：/account/tokenList
* Method：GET
* Request headers：

<table data-header-hidden><thead><tr><th></th><th width="115"></th><th></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Parameter</strong></td><td><strong>isRequired</strong></td><td><strong>Type</strong></td><td><strong>Example</strong></td><td><strong>Description</strong></td></tr><tr><td>api-key</td><td>true</td><td>string</td><td>0529a86...</td><td>api-key</td></tr><tr><td>timestamp</td><td>true</td><td>number</td><td>1730975545000</td><td>timestamp</td></tr></tbody></table>

* Response：

| **Parameter** | **Type** | **Example**    | **Description** |
| ------------- | -------- | -------------- | --------------- |
| mint          | string   | So111111111... | mint            |
| name          | string   | SOL            | name            |
| symbol        | string   | SOL            | symbol          |
| decimals      | string   | 9              | decimals        |
| image         | string   | https\://...   | image           |
| price         | number   | 234            | price           |
| balance       | number   | 0.01           | balance         |

* Response example：

```javascript
{
    "code": 0,
    "msg": "ok",
    "data": [
        {
            "mint": "So11111111111111111111111111111111111111112",
            "name": "Wrapped SOL",
            "symbol": "SOL",
            "decimals": 9,
            "image": "https://s3.openocean.finance/token_logos/logos/solana/So11111111111111111111111111111111111111112.png"
            "price": 234,
            "balance": 0.01
        }
    ]
}
```

## 10. Get trade list

* Path：/account/tradeList
* Method：GET
* Request headers：

| **Parameter** | **isRequired** | **Type** | **Example**   | **Description** |
| ------------- | -------------- | -------- | ------------- | --------------- |
| api-key       | true           | string   | 0529a86...    | api-key         |
| timestamp     | true           | number   | 1730975545000 | timestamp       |

* Request parameter：

| **Parameter** | **isRequired** | **Type** | **Example** | **Description** |
| ------------- | -------------- | -------- | ----------- | --------------- |
| page          | false          | number   | 1           | page            |
| limit         | false          | number   | 30          | limit           |

* Response：

<table data-header-hidden><thead><tr><th width="171"></th><th></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Parameter</strong></td><td><strong>Type</strong></td><td><strong>Example</strong></td><td><strong>Description</strong></td></tr><tr><td>id</td><td>number</td><td>1</td><td>id</td></tr><tr><td>address</td><td>string</td><td>J74ufcR...</td><td>wallet address</td></tr><tr><td>mint</td><td>string</td><td>So111111111...</td><td>mint</td></tr><tr><td>type</td><td>string</td><td>sell</td><td>buy/sell</td></tr><tr><td>source</td><td>string</td><td>pump</td><td>pump/moonshot</td></tr><tr><td>token</td><td>object</td><td>{}</td><td>token json</td></tr><tr><td>sol</td><td>object</td><td>{}</td><td>sol json</td></tr><tr><td>tokenAmount</td><td>number</td><td>15932.852594000</td><td>tokenAmount(without decimals)</td></tr><tr><td>solAmount</td><td>number</td><td>0.001</td><td>solAmount(without decimals)</td></tr><tr><td>hash</td><td>string</td><td>J74ufcR...</td><td>hash</td></tr><tr><td>create_at</td><td>string</td><td>2024-11-19 11:26:40</td><td>create_at</td></tr></tbody></table>

* Response example：

```javascript
{
    "code": 0,
    "msg": "ok",
    "count": 4, // total count
    "data": [
        {
            "id": 9,
            "address": "So11111111111111111111111111111111111111112",
            "type": "buy",
            "source": "",
            "hash": "2Ahvu9M1WBJXyY2DbfmtsHDUaqC8NbMhiVcy2VDX3tKxpJq7kzNvfHAaY4uLNTzUC48wG43iXG7htGmAQ91GAUZe",
            "create_at": "2024-11-27T12:43:52.000Z",
            "token": {
                "address": "5w5LhXQSTPv3XUfc2Fn3tz5F1KyvQrRNuctz36UCpump",
                "source": "pump",
                "name": "Fractal Bitcoin Mascot",
                "symbol": "Potato",
                "decimals": 6,
                "icon": "https://ipfs.io/ipfs/QmRnJUWVbJYJePB32Zzc7tkSdJ9RXPHwFpgrmeNu1Dswvu",
                "price": 0.000014574446389479
            },
            "sol": {
                "address": "So11111111111111111111111111111111111111112",
                "source": "",
                "name": "Wrapped SOL",
                "symbol": "SOL",
                "decimals": 9,
                "icon": "https://s3.openocean.finance/token_logos/logos/solana/So11111111111111111111111111111111111111112.png",
                "price": "233.27"
            },
            "tokenAmount": "15932.852594000",
            "solAmount": "0.001"
        }
    ]
}
```

## 11. Get referral link

* Path：/account/referral/link
* Method：GET
* Request headers：

| **Parameter** | **isRequired** | Type   | Example       | **Description** |
| ------------- | -------------- | ------ | ------------- | --------------- |
| api-key       | true           | string | 0529a86...    | api-key         |
| timestamp     | true           | number | 1730975545000 | timestamp       |

* Request parameter：

<table data-header-hidden><thead><tr><th></th><th width="118"></th><th></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Parameter</strong></td><td><strong>isRequired</strong></td><td><strong>Type</strong></td><td><strong>Example</strong></td><td><strong>Description</strong></td></tr><tr><td>account</td><td>true</td><td>string</td><td>EBWJd8BW6X7u6VYdybNtry4T8ZdLMQW69h7ryW3DXtNE</td><td>wallet address</td></tr></tbody></table>

* Request example：

```javascript
{
    "code": 0,
    "msg": "ok",
    "data": {
        "url": "https://openocean.finance/invite/ref/mi1TRHD8Xvih"
    }
}
```

## 12. Store invitation relationship

* Path：/account/referral/invest
* method：GET
* Request headers：

<table data-header-hidden><thead><tr><th></th><th width="126"></th><th width="97"></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Parameter</strong></td><td><strong>isRequired</strong></td><td>T<strong>ype</strong></td><td><strong>Example</strong></td><td><strong>Description</strong></td></tr><tr><td>api-key</td><td>true</td><td>string</td><td>0529a86...</td><td>api-key</td></tr><tr><td>timestamp</td><td>true</td><td>number</td><td>1730975545000</td><td>timestamp</td></tr></tbody></table>

* Request parameter：

<table data-header-hidden><thead><tr><th></th><th></th><th width="100"></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Parameter</strong></td><td><strong>isRequired</strong></td><td><strong>Type</strong></td><td><strong>Example</strong></td><td><strong>Description</strong></td></tr><tr><td>code</td><td>true</td><td>string</td><td>mi1TRHD8Xvih</td><td>get from url</td></tr><tr><td>investor</td><td>true</td><td>string</td><td>EBWJd8BW6X7u6VYdybNtry4T8ZdLMQW69h7ryW3DXtNE</td><td>wallet address</td></tr><tr><td>signature</td><td>true</td><td>string</td><td>0fc06ffe083be27c92576fff97de8987ae73e9cd302f01e34709de15c4322e872f93feb7922744ba6598a63f393eedc9</td><td>AES-256 signature</td></tr></tbody></table>

* Request example：

```
{
    "code": 0,
    "msg": "ok"
}
```

## 13. Get reward information

* Path：/account/referral/reward
* Method：GET
* Request headers：

<table data-header-hidden><thead><tr><th></th><th width="120"></th><th></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Parameter</strong></td><td><strong>isRequired</strong></td><td><strong>Type</strong></td><td><strong>Example</strong></td><td><strong>Description</strong></td></tr><tr><td>api-key</td><td>true</td><td>string</td><td>0529a86...</td><td>api-key</td></tr><tr><td>timestamp</td><td>true</td><td>number</td><td>1730975545000</td><td>timestamp</td></tr></tbody></table>

* Request parameter：

<table data-header-hidden><thead><tr><th></th><th width="92"></th><th></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Parameter</strong></td><td><strong>isRequired</strong></td><td><strong>Type</strong></td><td><strong>Example</strong></td><td>Description</td></tr><tr><td>account</td><td>true</td><td>string</td><td>EBWJd8BW6X7u6VYdybNtry4T8ZdLMQW69h7ryW3DXtNE</td><td>wallet address</td></tr></tbody></table>

* Response example：

```javascript
{
    "code": 0,
    "msg": "ok",
    "data": {
        "total_sol": 0,
        "claimed_sol": 0,
        "available_sol": 0
    }
}
```

## 14. Claim

* Path：/account/referral/claim
* Method：GET
* Request headers：

<table data-header-hidden><thead><tr><th></th><th width="113"></th><th width="99"></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Parameter</strong></td><td><strong>isRequired</strong></td><td><strong>Type</strong></td><td><strong>Example</strong></td><td><strong>Description</strong></td></tr><tr><td>api-key</td><td>true</td><td>string</td><td>0529a86...</td><td>api-key</td></tr><tr><td>timestamp</td><td>true</td><td>number</td><td>1730975545000</td><td>timestamp</td></tr></tbody></table>

* Request parameter：

| **Parameter** | **isRequired** | **Type** | **Example**                                  | **Description** |
| ------------- | -------------- | -------- | -------------------------------------------- | --------------- |
| account       | true           | string   | EBWJd8BW6X7u6VYdybNtry4T8ZdLMQW69h7ryW3DXtNE | wallet address  |

* Response example：

```javascript
{
    "code": 0,
    "msg": "ok",
    "data": {
        "signature": '0x00'
    }
```

<br>
