### API Request for Delegating Transactions

#### Parameters
- **network**: string (required)  
  Cosmos network to build transaction for.  
  Allowed values: `testnet`, `mainnet`

- **delegator_address**: string (required)  
  The address of the delegator.

- **validator_address**: string (required)  
  The address of the validator.

- **amount**: string (required)  
  Amount to delegate.

- **pubkey**: string  
  Pubkey value will be retrieved from the chain, but if you're using a fresh account (no outgoing activity), this information is not available and requires the user to pass it.

- **pubkey_type**: string (enum)  
  Type of public key of the delegator.  
  Allowed values: `secp256k1`, `multisig`

- **gas_limit**: string  
  Gas limit for the transaction. Required if `pubkey_type` is `multisig`.

- **gas_price**: string  
  Gas price for the transaction. Required if `pubkey_type` is `multisig`.

#### Responses
- **201**: Delegate transaction created
- **400**: Bad request
- **422**: Unprocessable entity

#### Example cURL Request
```
curl --request POST \
     --url https://api.figment.io/cosmos/delegate \
     --header 'content-type: application/json' \
     --header 'x-api-key: your-api-key-here' \
     --data '{
  "network": "testnet"
}'
```
