## To enable rewards withdrawal

Cardano requires that stakers either:

- delegate their governance voting power to a delegated representative or
- explicitly abstain from governance voting.

The `/delegate` endpoint explicitly sets wallet addresses to abstain, and includes both stake delegation and vote delegation (`AlwaysAbstain`) certificates for every response. For first-time delegation from a wallet, a `StakeRegistration` certificate will also be included.

## Network

- **Type:** string  
- **Enum:** required  
- **Allowed:** `mainnet`, `preprod`

## Delegator Address

- **Type:** string  
- **Required:** Yes

## Validator Address

- **Type:** string  
- **Required:** Yes  
- **Description:** Validator address / Pool ID

## Delegate Transaction

### 201

### Response

- **Type:** object  
- **Data:** object

#### Network

- **Type:** string  
- **Enum:** Network to stake on.  
- **Allowed:** `mainnet`, `preprod`

#### Unsigned Transaction Serialized

- **Type:** string

#### Signing Payload

- **Type:** string

### Error Codes

- `400` Bad Request
- `422` Unsupported Network

## Example Curl Command

```bash
curl --request POST \
     --url https://api.figment.io/cardano/delegate \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --header 'x-api-key: your-api-key-here' \
     --data '{
  "network": "mainnet"
}'
```

### Example Response

```json
{
  "data": {
    "network": "preprod",
    "unsigned_transaction_serialized": "unsigned_transaction_serialized",
    "signing_payload": "signing_payload"
  }
}
```
