# 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`](/rest-api/account.md)                    | All accounts have a main purse                                                  |
| [`Transfer`](/rest-api/transfer.md)                  | Transfers happen between purses                                                 |
| [`Delegation`](/rest-api/delegation.md)              | Delegations to validators can be made directly from purses                      |
| [`Delegation Reward`](/rest-api/delegator-reward.md) | Delegation rewards for purse delegations are distributed directly to the purses |

## Relation endpoints

The `Purse` entity has the following relation endpoints:

* [Get purse transfers](/rest-api/transfer/get-purse-uref-transfers.md)
* [Get purse delegations](/rest-api/delegation/get-purse-uref-delegations.md)
* [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)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.cspr.cloud/rest-api/purse-uref.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
