# Polygon Network Withdrawal Intents

## Request Object

Request object to create a new withdrawal intent for Polygon.

### Fields

- **network** (string, enum, required)
  - Allowed: `mainnet`, `goerli`, `prater`

- **unbond_nonces** (array of objects)
  - Add integer

- **wallet_address** (string, required)
  - Format: `^0x[a-fA-F0-9]{40}$`

- **validator_share_address** (string)
  - Format: `^0x[a-fA-F0-9]{40}$`
  - Hex-encoded Ethereum [account or smart contract address](https://ethereum.org/en/developers/docs/accounts/).

- **plan_id** (string)
  - Enables staking to validators from specified plan(s). 
  - If not specified, validators across all plans that match the API route will be available for staking.

- **token_type** (string, enum)
  - Defaults to POL
  - Allowed: `MATIC`, `POL`

## Responses

- **200**: Created
- **400**: Invalid request.
- **401**: Header 'X-API-Key' missing.
- **500**: Internal server error.

## Example Request

```bash
curl --request POST \
     --url https://svc.blockdaemon.com/boss/v1/polygon/mainnet/withdrawal-intents \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '{"token_type":"POL"}'
```

## Response Codes

- `200`
- `400`
- `401`
- `500`
