> ## 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.

# Set LayerZero DVN configuration

> Configure DVN settings for LayerZero adapters. This endpoint sets up the DVN configuration for message verification between source and destination adapters.



## OpenAPI

````yaml https://docs.fireblocks.com/api/v1/swagger.yaml post /tokenization/multichain/bridge/layerzero/config/dvns
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:
  /tokenization/multichain/bridge/layerzero/config/dvns:
    post:
      tags:
        - Tokenization
      summary: Set LayerZero DVN configuration
      description: >-
        Configure DVN settings for LayerZero adapters. This endpoint sets up the
        DVN configuration for message verification between source and
        destination adapters.
      operationId: setLayerZeroDvnConfig
      parameters:
        - $ref: '#/components/parameters/X-Idempotency-Key'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SetLayerZeroDvnConfigRequest'
      responses:
        '200':
          description: LayerZero DVN configuration set successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SetLayerZeroDvnConfigResponse'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '404':
          $ref: '#/components/responses/OriginalTokenLinkNotFoundError'
        '409':
          $ref: '#/components/responses/TokenLinkPreparationError'
        '422':
          $ref: >-
            #/components/responses/BridgingProtocolBlockchainMetadataNotFoundError
        '500':
          $ref: '#/components/responses/InternalServerError'
      x-codeSamples:
        - lang: TypeScript
          source: >-
            const response:
            Promise<FireblocksResponse<SetLayerZeroDvnConfigResponse>> =
            fireblocks.tokenization.setLayerZeroDvnConfig(tokenizationApiSetLayerZeroDvnConfigRequest);
        - lang: Java
          source: >-
            CompletableFuture<ApiResponse<SetLayerZeroDvnConfigResponse>>
            response =
            fireblocks.tokenization().setLayerZeroDvnConfig(setLayerZeroDvnConfigRequest,
            idempotencyKey);
        - lang: Python
          source: >-
            response =
            fireblocks.tokenization.set_layer_zero_dvn_config(set_layer_zero_dvn_config_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:
    SetLayerZeroDvnConfigRequest:
      type: object
      properties:
        vaultAccountId:
          type: string
          description: Vault account that pays gas
          example: '0'
        sourceAdapterTokenLinkId:
          type: string
          description: Source adapter TokenLink ID
          example: b70701f4-d7b1-4795-a8ee-b09cdb5b850d
        destinationAdapterTokenLinkId:
          type: string
          description: Destination adapter TokenLink ID
          example: 6add4f2a-b206-4114-8f94-2882618ffbb4
        sendConfig:
          $ref: '#/components/schemas/DvnConfig'
        receiveConfig:
          $ref: '#/components/schemas/DvnConfig'
      required:
        - vaultAccountId
        - sourceAdapterTokenLinkId
        - destinationAdapterTokenLinkId
        - sendConfig
        - receiveConfig
    SetLayerZeroDvnConfigResponse:
      type: object
      properties:
        txnIds:
          type: array
          items:
            type: string
          description: Transaction IDs submitted to the network
      required:
        - txnIds
    DvnConfig:
      type: object
      properties:
        dvnAddresses:
          type: array
          items:
            type: string
          description: Array of required DVN Ethereum addresses that sign ULN messages.
          example:
            - 1.0284746938594775e+54
            - 2.5101940177441514e+50
          minItems: 1
        optionalDVNAddresses:
          type: array
          items:
            type: string
          description: Array of optional DVN Ethereum addresses that sign ULN messages.
          example:
            - 1.334824162533763e+54
        optionalThreshold:
          type: number
          description: Minimum number of DVN signatures required (M-of-N).
          example: 2
      required:
        - dvnAddresses
        - optionalThreshold
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - INTERNAL
                - AUTHENTICATION
                - AUTHORIZATION
                - VALIDATION
                - NOT_FOUND
                - UNPROCESSABLE_ENTITY
                - FORBIDDEN
            message:
              type: string
          required:
            - type
            - message
      required:
        - error
  responses:
    BadRequestError:
      description: Bad request, invalid input data or parameters
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              type: VALIDATION
              message: Invalid input data or parameters
    OriginalTokenLinkNotFoundError:
      description: Token link not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              type: NOT_FOUND
              message: The specified token link was not found
    TokenLinkPreparationError:
      description: Token link preparation error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              type: UNPROCESSABLE_ENTITY
              message: An error occurred during token link preparation
    BridgingProtocolBlockchainMetadataNotFoundError:
      description: Bridging protocol blockchain metadata not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              type: NOT_FOUND
              message: Bridging to the specified blockchain is not supported
    InternalServerError:
      description: Internal server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              type: INTERNAL
              message: >-
                An unexpected error occurred during execution. Please try again
                later.

````