> For the complete documentation index, see [llms.txt](https://undoxxed.gitbook.io/wiki/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://undoxxed.gitbook.io/wiki/developments/integrations/gmx-vault.md).

# GMX Vault

You will find interface to interact with our token vault

GMX vault is created with custom interface as to fit the vault operation. You are welcome to integration your contracts to our vault with below interface:

### Contract Address

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

#### Token vault

[`0x719a881f6ebb767b7c331700ee96b538254bfe3a`](https://snowtrace.io/address/0x719a881f6ebb767b7c331700ee96b538254bfe3a)
{% endtab %}

{% tab title="Arbitrum" %}

#### Coming Soon

{% endtab %}
{% endtabs %}

### Operations

#### Deposit / Deposit All

```
// Deposit any amount of USDC
function deposit(uint256 _amount) external;

// Deposit 100% of your USDC balance
function depositAll() external
```

#### Withdraw / Withdraw All

```
// Withdraw any amount of shares
function withdraw(uint256 _shares)

// Withdraw 100% of your shares
function withdrawAll() external;
```

### Preview Functions

#### Check vault AUM

```
function balance() public view returns (uint256)
```

#### Query price per share

```
function getPricePerFullShare() public view returns (uint256)
```

#### Withdraw state

Due to withdraw constrain set by GMX side, withdraw/deposit will be enabled base on time. You may query the current state by calling below function

```
function getWithdrawSide() public view returns (bool)
```
