> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cryptomate.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Create virtual wallet

> Create a new virtual wallet for a given blockchain.

Creates a new virtual wallet with the specified alias and blockchain. Solana is not supported. Requires an API key with access level 2 or higher.

## Body

<ParamField body="alias" type="string" required>
  Friendly alias name for the virtual wallet.
</ParamField>

<ParamField body="blockchain" type="string" required>
  Blockchain network. One of `ETHEREUM`, `POLYGON`, `BSC`, `ARBITRUM`, `OPTIMISM`, `BASE`, `AVALANCHE`.
</ParamField>

## Response

<ResponseField name="id" type="string">
  Unique virtual wallet identifier.
</ResponseField>

<ResponseField name="alias" type="string">
  Wallet alias or display name.
</ResponseField>

<ResponseField name="client_id" type="string">
  Associated client identifier, if any.
</ResponseField>

<ResponseField name="wallet_address" type="string">
  On-chain wallet address.
</ResponseField>

<ResponseField name="blockchain" type="string">
  Blockchain network.
</ResponseField>

<ResponseField name="enabled" type="boolean">
  Whether the wallet is enabled.
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST "https://api.cryptomate.me/virtual-wallets/create" \
    -H "x-api-key: $CRYPTOMATE_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "alias": "Trading Wallet",
      "blockchain": "POLYGON"
    }'
  ```
</RequestExample>

<ResponseExample>
  ```json 200 OK theme={null}
  {
    "id": "vw_a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d",
    "alias": "Trading Wallet",
    "client_id": null,
    "wallet_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
    "blockchain": "POLYGON",
    "enabled": true
  }
  ```

  ```json 401 Unauthorized theme={null}
  {
    "code": "DENIED",
    "message": "Solana blockchain is not supported for virtual wallet."
  }
  ```

  ```json 412 Precondition Failed theme={null}
  {
    "code": "VAL",
    "message": "The current limit for this product has been reached. Please increase the limit."
  }
  ```
</ResponseExample>
