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

# Create Vault Lock

> Locks funds from the vault's available balance for off-chain settlement or escrow.

#### Authentication

✅ Organization User (`CustomerEmployee`)\
❌ Delegated User (`EndUser`)\
✅ Service Account

#### Required Permissions

`Vaults:Locks:Create`: Always required.


## OpenAPI

````yaml /openapi.yaml post /vaults/{vaultId}/locks
openapi: 3.1.0
info:
  version: 1.968.0
  title: Dfns
servers:
  - url: https://api.dfns.io
    description: Default - Europe
  - url: https://api.uae.dfns.io
    description: UAE
  - url: https://api.dfns.ninja
    description: <Deprecated> Staging
security: []
paths:
  /vaults/{vaultId}/locks:
    post:
      tags:
        - Vaults
      summary: Create Vault Lock
      description: >-
        Locks funds from the vault's available balance for off-chain settlement
        or escrow.
      parameters:
        - schema:
            type: string
            minLength: 1
            maxLength: 64
            pattern: ^vlt-[a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{14,16}$
            description: Vault id.
          required: true
          description: Vault id.
          name: vaultId
          in: path
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                network:
                  type: string
                  enum:
                    - ArbitrumOne
                    - ArbitrumSepolia
                    - ArcTestnet
                    - AvalancheC
                    - AvalancheCFuji
                    - Base
                    - BaseSepolia
                    - Bob
                    - BobSepolia
                    - Bsc
                    - BscTestnet
                    - Berachain
                    - BerachainBepolia
                    - Celo
                    - CeloAlfajores
                    - Codex
                    - CodexSepolia
                    - Ethereum
                    - EthereumClassic
                    - EthereumClassicMordor
                    - EthereumSepolia
                    - EthereumHoodi
                    - FlareC
                    - FlareCCoston2
                    - FlowEvm
                    - FlowEvmTestnet
                    - Ink
                    - InkSepolia
                    - Optimism
                    - OptimismSepolia
                    - Plasma
                    - PlasmaTestnet
                    - Plume
                    - PlumeSepolia
                    - Polygon
                    - PolygonAmoy
                    - Race
                    - RaceSepolia
                    - Rayls
                    - RaylsTestnet
                    - Robinhood
                    - RobinhoodSepolia
                    - SeiPacific1
                    - SeiAtlantic2
                    - Sonic
                    - SonicTestnet
                    - Tempo
                    - TempoModerato
                    - Tsc
                    - TscTestnet1
                    - Xdc
                    - XdcApothem
                    - XLayer
                    - XLayerSepolia
                  description: The EVM network the locked asset is on.
                tid:
                  type: string
                  description: >-
                    The token identifier of the asset to lock (e.g. `native:eth`
                    or `erc20:0x...`).
                amount:
                  type: string
                  pattern: ^\d+$
                  description: The amount to lock, in minimum denomination.
                externalId:
                  type: string
                  minLength: 1
                  maxLength: 50
                  description: >-
                    A unique id from your system. Unique per vault: it cannot be
                    reused, even after the lock is deleted.
                reason:
                  type: string
                  description: An optional reason or note for the lock.
              required:
                - network
                - tid
                - amount
              additionalProperties: false
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VaultLock'
      security:
        - authenticationToken: []
          userActionSignature: []
components:
  schemas:
    VaultLock:
      type: object
      properties:
        id:
          type: string
          minLength: 1
          maxLength: 64
          pattern: ^vlt-lck-[a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{14,16}$
          description: Vault lock id.
          example: vlt-lck-0lf1e-8a8ag-2ak7vrvusrj3so0j
        vaultId:
          type: string
        network:
          type: string
        tid:
          type: string
        amount:
          type: string
        owner:
          type: string
          description: The user that created the lock. Only this user can delete it.
        externalId:
          type: string
        reason:
          type: string
          description: The reason or note the lock was created with.
        dateCreated:
          type: string
          format: date-time
        dateDeleted:
          type: string
          format: date-time
      required:
        - id
        - vaultId
        - network
        - tid
        - amount
        - owner
        - dateCreated
      additionalProperties: false
      description: >-
        Vault lock object: funds manually locked for off-chain settlement or
        escrow.
  securitySchemes:
    authenticationToken:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        **Bearer Token:** Used to authenticate API requests.

        More details how to generate the token: [Authentication
        flows](https://docs.dfns.co/api-reference/auth/login-flows)
    userActionSignature:
      type: apiKey
      in: header
      name: X-DFNS-USERACTION
      description: >-
        **User Action Signature:** Used to sign the change-inducing API
        requests.

        More details how to generate the token: [User Action Signing
        flows](https://docs.dfns.co/api-reference/auth/signing-flows)

````