#### URL Expired

The URL for this request expired after 30 days.

### Blockchain-specific options for transaction intents
At most one of `EVM`, `Bitcoin`, `Substrate`, `Solana`, `Canton`, `Stellar`, or `TVM` may be set; the server rejects multiple families in one request.

#### OperationID
- **Type**: string  
  Unique operation identifier.

#### InitiatorID
- **Type**: string  
  Initiator identifier.

#### ChainName
- **Type**: string

#### CAIP19
- **Type**: string

#### Asset
- **Type**: string  
  **Required**

#### TestNetwork
- **Type**: boolean  
  true/false

#### Source
- **Type**: string  
  **Required**

#### MasterKeyName
- **Type**: string  
  **Required**

#### DestinationType
- **Type**: string  
  **Enum**  
  **Required**  
  Allowed: `internal`, `external`

#### DestinationAmounts
- **Type**: array of objects  
  **Required**  
  length ≥ 1

##### DestinationAmounts  
- **Type**: object  
  A single transfer destination with amount. Use Destination for vault name (internal) or address (external). MasterKeyName is required for internal transfers.

###### Destination
- **Type**: string  
  **Required**  
  Recipient vault name (internal) or blockchain address (external).

###### MasterKeyName
- **Type**: string  
  Master key name for internal destination. Ignored for external transfers.

###### Amount
- **Type**: string  
  **Required**  
  Amount to transfer.

#### ADD object
##### ExecutorID
- **Type**: object  
  **Required**  
  Identifies an on-chain address in transaction intents and related APIs. Either set both `MasterKeyName` and `AccountName` (with optional `AddressIndex` where the API allows it; index `0` is the main address when deriving), or set `Address` to a literal address string. Setting only one of `MasterKeyName` or `AccountName` is invalid.

**For** [`POST /solana/accountInfo`](https://vault.docs.blockdaemon.com/reference/cwpstartcreateallocation#/paths/~1solana~1accountInfo/post), when not sending `Address`, `AddressIndex` is required alongside master key and account.

###### ExecutorID object
- **AllocationDeadline**: date-time

- **SettlementDeadline**: date-time  
  **Required**

#### EVM
- **Type**: object  
  Optional EVM-specific parameters.

#### Bitcoin
- **Type**: object  
  Optional Bitcoin-specific parameters.

#### Substrate
- **Type**: object  
  Optional Substrate-specific parameters.

#### Solana
- **Type**: object  
  Optional Solana-specific parameters.

#### Canton
- **Type**: object  
  Optional Canton-specific parameters.

#### Stellar
- **Type**: object  
  Optional Stellar-specific parameters.

#### TVM
- **Type**: object  
  Optional TVM-specific parameters.

### Responses
- `` 200`` Operation started
- `` 400`` Invalid input, validation error, or malformed request
- `` 500`` Internal server error. May include an `errorCode` (M-prefixed) and `data` from the MPA error code system. See `cwpapi/errors.go` for codes.

---

### Shell Commands
#### CURL Command
```
curl --request POST \
     --url https://api.your-wallet.blockdaemon-wallet.com/api/cwp/operations/start/createAllocation \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '\
{\
  "DestinationType": "internal",\
  "DestinationAmounts": []\
}\
```

### Try It!
Click `Try It!` to start a request and see the response here! Or choose an example:

### Example Response
- `application/json`
- ``200``
- ``400``
- ``500`

---
