# Purse

A `Purse` is an entity that holds native tokens on the Casper network. It is represented by a special type of ([URef](https://docs.casper.network/developers/dapps/uref-security). Every account is assigned a main purse by default. Smart contracts can also create additional purses to manage tokens as needed.

Starting with Casper 2.0, contracts are able to delegate the tokens they hold to validators and earn delegation rewards.

## Properties

The `Purse` is not represented as a distinct object in the CSPR.cloud API. It is identified solely by its URef address.

| Property     | Type         | Description                                                  |
| ------------ | ------------ | ------------------------------------------------------------ |
| `purse_uref` | `string(73)` | Account main purse URef in the `uref-dead...beef-007` format |

**Example**

```json
{
  "purse_uref": "uref-bb9f47c30ddbe192438fad10b7db8200247529d6592af7159d92c5f3aa7716a1-007"
}
```

## Optional properties

None

## Relations

The `Purse` entity has the following relations with other entities:

| Entity                                                                   | Description                                                                     |
| ------------------------------------------------------------------------ | ------------------------------------------------------------------------------- |
| [`Account`](https://docs.cspr.cloud/rest-api/account)                    | All accounts have a main purse                                                  |
| [`Transfer`](https://docs.cspr.cloud/rest-api/transfer)                  | Transfers happen between purses                                                 |
| [`Delegation`](https://docs.cspr.cloud/rest-api/delegation)              | Delegations to validators can be made directly from purses                      |
| [`Delegation Reward`](https://docs.cspr.cloud/rest-api/delegator-reward) | Delegation rewards for purse delegations are distributed directly to the purses |

## Relation endpoints

The `Purse` entity has the following relation endpoints:

* [Get purse transfers](https://docs.cspr.cloud/rest-api/transfer/get-purse-uref-transfers)
* [Get purse delegations](https://docs.cspr.cloud/rest-api/delegation/get-purse-uref-delegations)
* [Get purse delegation rewards](https://github.com/make-software/casper-middleware/blob/documentation/docs/public/rest-api/delegator-reward/get-purse-uref-delegation-rewards.md)
* [Get total purse delegation rewards](https://github.com/make-software/casper-middleware/blob/documentation/docs/public/rest-api/delegator-reward/get-purse-uref-total-delegation-rewards.md)
