# NonfungibleTokenPositionDescriptor

&#x20;This contract produces a string containing the data URI for a JSON metadata string

## Code

Github Link: (Will be updated after official launch)<br>

## Address

* Cypress :&#x20;

## Events, Read-Only Functions, and State-Changing Functions

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

## Events

#### UpdateTokenRatioPriority[​](https://docs.uniswap.org/contracts/v3/reference/periphery/interfaces/INonfungibleTokenPositionDescriptor#updatetokenratiopriority) <a href="#updatetokenratiopriority" id="updatetokenratiopriority"></a>

```solidity
event UpdateTokenRatioPriority(
    address token,
    int256 priority
)
```

Emitted when a token is given a new priority order in the displayed price ratio

**Parameters:**[**​**](https://docs.uniswap.org/contracts/v3/reference/periphery/interfaces/INonfungibleTokenPositionDescriptor#parameters-1)

<table><thead><tr><th width="142.66666666666666">Name</th><th width="117">Type</th><th>Description</th></tr></thead><tbody><tr><td><code>token</code></td><td>address</td><td>The token being given priority order</td></tr><tr><td><code>priority</code></td><td>int256</td><td>Represents priority in ratio - higher integers get numerator priority</td></tr></tbody></table>
{% endtab %}

{% tab title="Read-Only Functions" %}

## Read-Only Functions

#### tokenURI[​](https://docs.uniswap.org/contracts/v3/reference/periphery/NonfungibleTokenPositionDescriptor#tokenuri) <a href="#tokenuri" id="tokenuri"></a>

```solidity
function tokenURI(
    contract INonfungiblePositionManager positionManager,
    uint256 tokenId
) external returns (string)
```

Produces the URI describing a particular token ID for a position manager

Note this URI may be a data: URI with the JSON contents directly inlined

**Parameters:**[**​**](https://docs.uniswap.org/contracts/v3/reference/periphery/NonfungibleTokenPositionDescriptor#parameters)

<table><thead><tr><th width="132.66666666666666">Name</th><th width="208">Type</th><th>Description</th></tr></thead><tbody><tr><td><code>positionManager</code></td><td><code>contract INonfungiblePositionManager</code></td><td>The position manager for which to describe the token</td></tr><tr><td><code>tokenId</code></td><td>uint256</td><td>The ID of the token for which to produce a description, which may not be valid</td></tr></tbody></table>

**Return Values:**[**​**](https://docs.uniswap.org/contracts/v3/reference/periphery/NonfungibleTokenPositionDescriptor#return-values)

<table><thead><tr><th width="132.66666666666666">Name</th><th width="107">Type</th><th>Description</th></tr></thead><tbody><tr><td><code>String</code></td><td>string</td><td>URI of the ERC721-compliant metadata</td></tr></tbody></table>

#### flipRatio[​](https://docs.uniswap.org/contracts/v3/reference/periphery/NonfungibleTokenPositionDescriptor#flipratio) <a href="#flipratio" id="flipratio"></a>

```solidity
function flipRatio() public returns (bool)
```

#### tokenRatioPriority[​](https://docs.uniswap.org/contracts/v3/reference/periphery/NonfungibleTokenPositionDescriptor#tokenratiopriority) <a href="#tokenratiopriority" id="tokenratiopriority"></a>

```solidity
function tokenRatioPriority() public returns (int256)
```

{% endtab %}
{% endtabs %}
