> For the complete documentation index, see [llms.txt](https://docs.notional.finance/v3-technical-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.notional.finance/v3-technical-docs/contract-interaction-guides/ntokens.md).

# nTokens

## Get nToken Address

```
nTokenAddress = notional.nTokenAddress(currencyId)
```

## Get nToken Total Supply

```
nTokenSupply = notional.nTokenTotalSupply(nTokenAddress)
```

## Get nToken PV

```
nTokenPV = notional.nTokenPresentValueUnderlyingDenominated(currencyId)
```

## Get the underlying value of one nToken

```
nTokenValue = nTokenPV / nTokenSupply
```

## Get nToken Portfolio

An nToken portfolio can hold multiple positions (Prime Cash, fCash, Liquitity tokens):

<pre><code>nTokenPrimeCashBalance = notional.getNTokenAccount(nTokenAddress)["cashBalance"]
nTokenFCashPortfolio  = notional.getNTokenPortfolio(nTokenAddress)["netfCashAssets"]
nToken3MFCashMaturity = notional.getNTokenPortfolio(nTokenAddress)["netfCashAssets"][0][1]
<strong>nToken3MFCashBalance = notional.getNTokenPortfolio(nTokenAddress)["netfCashAssets"][0][3]
</strong><strong>
</strong><strong>nTokenLiquidityTokenPortfolio = notional.getNTokenPortfolio(nTokenAddress)["liquidityTokens"]
</strong>nToken3MLiquidityTokenMaturity = notional.getNTokenPortfolio(nTokenAddress)["liquidityTokens"][0][1]
nToken3MLiquidityTokenBalance = notional.getNTokenPortfolio(nTokenAddress)["liquidityTokens"][0][3]
</code></pre>

## nToken Annual Incentive Rate

The nToken annual incentive rate defines the number of NOTE tokens that are given as incentives annually to nToken holders:

```
incentiveAnnualRate = notional.getNTokenAccount(nTokenAddress)["incentiveAnnualEmissionRate"]
```
