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

# Create a new vault account

> Creates a new vault account with the requested name.
**Note: ** Vault account names should consist of ASCII characters only.
Learn more about Fireblocks Vault Accounts in the following [guide](https://developers.fireblocks.com/reference/create-vault-account).
Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.



## OpenAPI

````yaml https://docs.fireblocks.com/api/v1/swagger.yaml post /vault/accounts
openapi: 3.0.0
info:
  title: Fireblocks API
  description: >
    Fireblocks provides a suite of applications to manage digital asset
    operations and a complete development platform to build your business on the
    blockchain.


    - Visit our website for more information: [Fireblocks
    Website](https://fireblocks.com)

    - Visit our developer docs: [Fireblocks
    DevPortal](https://developers.fireblocks.com)
  version: 1.6.2
  contact:
    email: developers@fireblocks.com
servers:
  - url: https://api.fireblocks.io/v1
    description: Fireblocks Production Environment Base URL
  - url: https://sandbox-api.fireblocks.io/v1
    description: Fireblocks Sandbox Environment Base URL
security: []
paths:
  /vault/accounts:
    post:
      tags:
        - Vaults
      summary: Create a new vault account
      description: >-
        Creates a new vault account with the requested name.

        **Note: ** Vault account names should consist of ASCII characters only.

        Learn more about Fireblocks Vault Accounts in the following
        [guide](https://developers.fireblocks.com/reference/create-vault-account).

        Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
      operationId: createVaultAccount
      parameters:
        - $ref: '#/components/parameters/X-Idempotency-Key'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateVaultAccountRequest'
      responses:
        '200':
          description: A Vault Account object
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VaultAccount'
        default:
          $ref: '#/components/responses/Error'
      x-codeSamples:
        - lang: TypeScript
          source: >-
            const response: Promise<FireblocksResponse<VaultAccount>> =
            fireblocks.vaults.createVaultAccount(vaultsApiCreateVaultAccountRequest);
        - lang: Java
          source: >-
            CompletableFuture<ApiResponse<VaultAccount>> response =
            fireblocks.vaults().createVaultAccount(createVaultAccountRequest,
            idempotencyKey);
        - lang: Python
          source: >-
            response =
            fireblocks.vaults.create_vault_account(create_vault_account_request,
            idempotency_key);
components:
  parameters:
    X-Idempotency-Key:
      name: Idempotency-Key
      in: header
      description: >-
        A unique identifier for the request. If the request is sent multiple
        times with the same idempotency key, the server will return the same
        response as the first request. The idempotency key is valid for 24
        hours.
      required: false
      schema:
        type: string
  schemas:
    CreateVaultAccountRequest:
      type: object
      properties:
        name:
          description: Account Name
          type: string
        hiddenOnUI:
          description: >-
            Optional - if true, the created account and all related transactions
            will not be shown on Fireblocks console
          type: boolean
        customerRefId:
          description: Optional - Sets a customer reference ID
          type: string
        autoFuel:
          description: Optional - Sets the autoFuel property of the vault account
          type: boolean
        vaultType:
          default: MPC
          description: >
            Type of vault account. The default type will be set to MPC.

            If the workspace does not support the selected type, it will return
            an error.
          type: string
          enum:
            - MPC
            - KEY_LINK
        autoAssign:
          default: false
          description: >
            Applicable only when the vault account type is KEY_LINK. For MPC,
            this parameter will be ignored.

            If set to true and there are available keys, random keys will be
            assigned to the newly created vault account.

            If set to true and there are no available keys to be assigned, it
            will return an error.

            If set to false, the vault account will be created without any keys.
          type: boolean
    VaultAccount:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        assets:
          type: array
          items:
            $ref: '#/components/schemas/VaultAsset'
        hiddenOnUI:
          type: boolean
        customerRefId:
          type: string
        autoFuel:
          type: boolean
        tags:
          type: array
          description: List of tags attached to the vault account
          items:
            $ref: '#/components/schemas/Tag'
    VaultAsset:
      type: object
      properties:
        id:
          type: string
        total:
          description: >-
            The total wallet balance. In EOS this value includes the network
            balance, self staking and pending refund. For all other coins it is
            the balance as it appears on the blockchain.
          type: string
        balance:
          deprecated: true
          description: Deprecated - replaced by "total"
          type: string
        available:
          description: >-
            Funds available for transfer. Equals the blockchain balance minus
            any locked amounts
          type: string
        pending:
          description: The cumulative balance of all transactions pending to be cleared
          type: string
        frozen:
          description: The cumulative frozen balance
          type: string
        lockedAmount:
          description: >-
            Funds in outgoing transactions that are not yet published to the
            network
          type: string
        staked:
          description: Staked balance
          type: string
        totalStakedCPU:
          type: string
          description: Deprecated
        totalStakedNetwork:
          type: string
          description: Deprecated
        selfStakedCPU:
          type: string
          description: Deprecated
        selfStakedNetwork:
          type: string
          description: Deprecated
        pendingRefundCPU:
          type: string
          description: Deprecated
        pendingRefundNetwork:
          type: string
          description: Deprecated
        blockHeight:
          type: string
        blockHash:
          type: string
        rewardsInfo:
          $ref: '#/components/schemas/RewardsInfo'
    Tag:
      type: object
      properties:
        id:
          description: The unique identifier of the tag
          type: string
          format: uuid
          example: df4c0987-30da-4976-8dcf-bc2dd41ae331
        label:
          type: string
          description: The tag label
          example: VIP
        description:
          type: string
          description: Description for the tag
          example: Tag for VIP customers
        color:
          type: string
          description: The tag color in hex format
          example: '#FF5733'
        isProtected:
          type: boolean
          description: Indication if the tag is a protected tag
          default: false
        updatedAt:
          type: number
          description: The date and time the tag was last updated
          example: 1717084800000
        pendingApprovalRequest:
          $ref: '#/components/schemas/ApprovalRequest'
      required:
        - id
        - label
        - isProtected
        - updatedAt
    ErrorSchema:
      type: object
      properties:
        message:
          type: string
        code:
          type: number
    RewardsInfo:
      type: object
      properties:
        pendingRewards:
          description: Amount that is pending for rewards
          type: string
    ApprovalRequest:
      type: object
      description: Approval request details
      properties:
        id:
          type: string
          format: numeric
          description: The approval request identifier
          example: '12345'
        type:
          type: string
          description: The approval request type
          enum:
            - TAG_UPDATE
            - TAG_DELETE
            - TAG_ATTACH_DETACH
        state:
          type: string
          description: The approval request state
          enum:
            - PENDING
            - APPROVED
            - REJECTED
            - FAILED
            - CANCELLED
            - EXPIRED
      required:
        - id
        - type
        - state
  headers:
    X-Request-ID:
      schema:
        type: string
      description: >-
        Unique ID correlated to the API request. Please provide it in any
        support ticket you create or on Github issues related to Fireblocks SDKs
  responses:
    Error:
      description: Error Response
      headers:
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorSchema'

````