# DPoPS Wallet RPC calls

## **vote**

Place your vote for a delegate.

**Alias:** *vote*.

**Inputs:**

* *delegate\_data* - String; Name or public address of the delegate to receive the vote.
* *amount* - string; The amount or all

**Outputs:**

* *vote\_status* - string; Status of the vote call.

**Example:**

```bash
$ curl -X POST http://localhost:18285/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"vote","params":{"delegate_data":"DELEGATES_NAME_OR_PUBLIC_ADDRESS","amount":"all"}}' -H 'Content-Type: application/json'
{
  "id": "0",
  "jsonrpc": "2.0",
  "result": {
    "vote_status": "success"
  }
}
```

## **delegate\_register**

Register a delegate.

**Alias:** *delegateregister*.

**Inputs:**

* *delegate\_name* - string; Name of the delegate to register.
* delegate\_IP\_address - string; IP of the delegate to register.

**Outputs:**

* *delegate\_register\_status* - string; Status of the delegate registration call.

**Example:**

```bash
$ curl -X POST http://localhost:18285/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"delegate_register","params":{"delegate_name":"delegate_name_1","delegate_IP_address":"delegate_IP_address_or_domain_name"}}' -H 'Content-Type: application/json'
{
  "id": "0",
  "jsonrpc": "2.0",
  "result": {
    "delegate_register_status": "success"
  }
}
```

## **delegate\_update**

Update delegate information.

**Alias:** *delegateupdate*.

**Inputs:**

* *items* - Parameters to change
  * *IP\_address* - string; IP address of the delegate.
  * *about* - string; Description of the delegate.
  * *website -* string; website address of the delegate.
  * *team -* string; \_\_
  * *pool\_mode -* string;
  * *fee\_structure -* string;
  * *server\_settings* - string;
* *value* - string; Value of the field to update.

**Outputs:**

* *delegate\_update\_status* - string; Status of the delegate update call.

**Example:**

```bash
$ curl -X POST http://localhost:18285/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"delegate_update","params":{"item":"ITEM","value":"VALUE"}}' -H 'Content-Type: application/json'
{
  "id": "0",
  "jsonrpc": "2.0",
  "result": {
    "delegate_update_status": "success"
  }
}
```

## **revote**

Revote for a delegate.

**Alias:** *revote*.

**Inputs:**

* *amount* - string; The amount or all

**Outputs:**

* *status* - string; Status of the vote call.

**Example:**

```bash
$ curl -X POST http://localhost:18285/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"revote","params":{"amount":"all"}}' -H 'Content-Type: application/json'
{
  "id": "0",
  "jsonrpc": "2.0",
  "result": {
    "status": "success"
  }
}
```

## **vote status**

Get who the user has voted for

**Alias:** *revote*.

**Outputs:**

* *status* - string; who the user has voted for.

**Example:**

```bash
$ curl -X POST http://localhost:18285/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"vote_status"}' -H 'Content-Type: application/json'
{
  "id": "0",
  "jsonrpc": "2.0",
  "result": {
    "status": "success"
  }
}
```


---

# 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.xcash.foundation/applications/rpc-calls/xcash-wallet-rpc/dpops-wallet-rpc-calls.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.
