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

# Execute transfer

> **Commit the previously previewed transfer.**


---
Previews the transfer, using the `PreviewId` value.


Handles multi-factor authentication codes if the account is configured to use them for additional security.



Returns the status of the transfer and the details of the transfer if it was initiated successfully.



## OpenAPI

````yaml post /api/v1/transfers/managed/execute
openapi: 3.0.1
info:
  title: Mesh Connect Integration API
  description: >-

    Mesh allows users to connect accounts of financial institutions,

    crypto exchanges, and self-custody wallets. Mesh handles credential

    validation, MFA, and error handling for each integration. After

    an account is connected, Mesh allows client applications to read holdings,

    transaction history and balances and execute crypto transfers (with user
    approval).
  version: '1.0'
servers:
  - url: https://integration-api.meshconnect.com
  - url: https://sandbox-integration-api.meshconnect.com
security:
  - Client-Secret: []
    Client-Id: []
tags:
  - name: BlockchainQuery
  - name: CatalogGasSponsorship
  - name: CatalogSubscription
  - name: TokenNetworkPairs
  - name: Integrations account information
  - name: Managed Account Authentication
    description: >-
      The recommended approach for account authentication. Front manages
      multiple authentication flows and handles all authentication steps such as
      MFA codes and OAuth redirect through our web and mobile SDKs.
  - name: Portfolio
    description: |


      ### Supported integrations:
      ```Robinhood```
      ```Coinbase```
      ```Kraken```
      ```CryptoCom```
      ```OpenSea```
      ```Binance```
      ```Gemini```
      ```OkCoin```
      ```KuCoin```
      ```CexIo```
      ```BinanceInternational```
      ```Bitstamp```
      ```GateIo```
      ```Okx```
      ```BitFlyer```
      ```Coinlist```
      ```Huobi```
      ```Bitfinex```
      ```KrakenDirect```
      ```BinanceInternationalDirect```
      ```BitfinexDirect```
      ```Bybit```
      ```Paxos```
      ```CoinbasePrime```
      ```BtcTurkDirect```
      ```KuCoinDirect```
      ```OkxOAuth```
      ```ParibuDirect```
      ```RobinhoodConnect```
      ```BlockchainCom```
      ```BitsoDirect```
      ```BinanceOAuth```
      ```BybitDirect```
      ```ParibuOAuth```
      ```BinanceTrDirect```
      ```BybitDirectMobile```
      ```Sandbox```
      ```Uphold```
      ```SandboxCoinbase```
      ```KrakenOAuth```
      ```BluvoKrakenOAuth```
      ```SandboxKrakenOAuth```
      ```DeFiWallet```
  - name: Balance
    description: |


      ### Supported integrations:
      ```Robinhood```
      ```Coinbase```
      ```Kraken```
      ```CryptoCom```
      ```Binance```
      ```Gemini```
      ```OkCoin```
      ```KuCoin```
      ```CexIo```
      ```BinanceInternational```
      ```Bitstamp```
      ```GateIo```
      ```Okx```
      ```BitFlyer```
      ```Coinlist```
      ```Huobi```
      ```Bitfinex```
      ```KrakenDirect```
      ```BinanceInternationalDirect```
      ```BitfinexDirect```
      ```Bybit```
      ```Paxos```
      ```CoinbasePrime```
      ```BtcTurkDirect```
      ```KuCoinDirect```
      ```OkxOAuth```
      ```ParibuDirect```
      ```RobinhoodConnect```
      ```BlockchainCom```
      ```BitsoDirect```
      ```BybitDirect```
      ```ParibuOAuth```
      ```BinanceTrDirect```
      ```BybitDirectMobile```
      ```Sandbox```
      ```Uphold```
      ```SandboxCoinbase```
      ```KrakenOAuth```
      ```BluvoKrakenOAuth```
      ```SandboxKrakenOAuth```
  - name: Transfers
    description: >


      ### Supported integrations:

      ```Robinhood```

      ```Coinbase```

      ```Kraken```

      ```CryptoCom```

      ```Binance```

      ```Gemini```

      ```OkCoin```

      ```KuCoin```

      ```BinanceInternational```

      ```Bitstamp```

      ```GateIo```

      ```Okx```

      ```Huobi```

      ```Bitfinex```

      ```KrakenDirect```

      ```BinanceInternationalDirect```

      ```BitfinexDirect```

      ```Bybit```

      ```Paxos```

      ```CoinbasePrime```

      ```BtcTurkDirect```

      ```ParibuDirect```

      ```RobinhoodConnect```

      ```BlockchainCom```

      ```BinanceConnect```

      ```RevolutConnect```

      ```BinancePay```

      ```BybitDirect```

      ```ParibuOAuth```

      ```PayPalConnect```

      ```CoinbaseRamp```

      ```BybitDirectMobile```

      ```Sandbox```

      ```CryptoComPay```

      ```Uphold```

      ```BinancePayOnchain```

      ```SandboxCoinbase```

      ```BybitPay```

      ```CashApp```

      ```SandboxKrakenOAuth```

      ```KrakPay```

      ```OkxPay```

      ```BybitPayPsp```

      ```DeFiWallet```



      ### Integration-specific notes:



      #### Robinhood:



      Cryptocurrency transfers should be enabled in Robinhood settings.
      Transfers are disabled by default, enabling them for end users requires a
      review from Robinhood.


      Please note:
       * `MfaCode` parameter is required to initiate a transaction in Robinhood.
       * The user's security settings should be configured to use an authenticator application.
       * Robinhood doesn't allow initiation of transactions if the authenticator application is not configured.


      #### Coinbase:



      `MfaCode` parameter should be used to initiate transactions in Coinbase.
       * If the end user's Coinbase account is configured to use text messages (SMS) for two factor authentication, the API will return `MfaRequired` status, and a text code will then be sent by Coinbase. The code is expected to be provided in the subsequent call using the `MfaCode` request field
       * If the account is configured to use an authenticator application, the API is expecting to get the code in the `MfaCode` request field.


      #### Kraken:



      Kraken requires the explicit chain name to be provided (e.g. `Dogecoin` or
      `Ethereum (ERC20)`). The list of possible chains can be obtained by
      calling `symbol/details` endpoint.


      To initiate a transaction, a Kraken Address Key name should be provided in
      `TargetAddress` field. Target address should be added using Kraken UI,
      then its name should be used.



      #### Binance:



      `Enable Withdrawals` permission should be given to the user's API key to
      initiate transfers with Binance Us.


      Binance requires adding the IP address to the list of trusted IPs to be
      able to create API keys with transfer permission.
       * Please reach out to Front to get the static IP address. This address should be provided to the end user, and the user should be instructed to add it to the list of trusted IP addresses.
       * By default, the permission to enable withdrawals is turned off. If the end user's API key does not have the permission, asset transfers will not be available.


      #### KuCoin:



      KuCoin requires adding the IP address to the list of trusted IPs to be
      able to create API keys with transfer permission.


      `Fee` parameter should be used to initiate a transaction in KuCoin.


      Please note:
       * Please reach out to Front to get the static IP address. This address should be provided to the end user, and the user should be instructed to add it to the list of trusted IP addresses.
       * All currencies have their minimum `fee` and `amount` requirements. Please use `symbol/details` endpoint to get this data for a particular symbol.
       * KuCoin requires chain name to be provided for getting deposit address or initiating a cryptocurrency transfer. Some cryptocurrencies are supported over multiple chains. It's recommended to use `symbol/details` endpoint to get the list of supported chains and show it to the end user to select a target one.


      #### BinanceInternational:



      `Enable Withdrawals` permission should be given to the user's API key to
      initiate transfers with Binance International.


      Binance requires adding the IP address to the list of trusted IPs to be
      able to create API keys with transfer permission.
       * Please reach out to Front to get the static IP address. This address should be provided to the end user, and the user should be instructed to add it to the list of trusted IP addresses.
       * By default, the permission to enable withdrawals is turned off. If the end user's API key does not have the permission, asset transfers will not be available.


      #### GateIo:



      Gate.io requires adding IP address to the list of trusted IP addresses to
      be able to initiate a cryptocurrency transfers.


      Withdrawal address should be already verified or added on the Gate.io UI
      (in mobile application or on the web site).
       * Please reach out to Front to get the static IP address for withdrawals. This address should be provided to the end user, and the user should be instructed to add it to the list of trusted IP addresses.
       * Only verified withdrawal blockchain addresses are allowed for withdrawal with Gate.io API.
       * Gate.io requires chain name to be provided for getting deposit address or initiating a cryptocurrency transfer. Some cryptocurrencies are supported over multiple chains. It's recommended to use `symbol/details` endpoint to get the list of supported chains and show it to the end user to select a target one.


      #### Huobi:



      Warning: Huobi does not refund executed deposits that are below the
      `Minimum Deposit Amount`
       * Please check the MinimumDepositAmount in Get Deposit Address response in order to avoid making a deposit below the minimum amount
       * Huobi does not allow withdrawals to addresses that are not white-listed, please add the address that you would like to withdraw to the white list of addresses through the UI so that a withrawal can be processed


      #### Bitfinex:
       * The hash of transfer is not available when making a transfer in Bitfinex. To get the hash please re-query the transfer using the transaction id.
       * Bitfinex does not separate sub-accounts when returning the list of transfers.Therefore the same list of transfers is returned for all Bitfinex sub-accounts.


      #### KrakenDirect:



      Kraken requires the explicit chain name to be provided (e.g. `Dogecoin` or
      `Ethereum (ERC20)`). The list of possible chains can be obtained by
      calling `symbol/details` endpoint.


      To initiate a transaction, a Kraken Address Key name should be provided in
      `TargetAddress` field. Target address should be added using Kraken UI,
      then its name should be used.



      #### BitfinexDirect:
       * The hash of transfer is not available when making a transfer in Bitfinex. To get the hash please re-query the transfer using the transaction id.
       * Bitfinex does not separate sub-accounts when returning the list of transfers.Therefore the same list of transfers is returned for all Bitfinex sub-accounts.
  - name: Assets
  - name: Managed Transfers
  - name: Wallets
  - name: Headless Bridging
    description: >-
      Mesh's cross-chain bridging engine as a pure API, with no Mesh-hosted UI
      or SDK. Discover bridged routes, quote a pay-in amount and generate a
      single-use deposit address that bridges funds to the destination the user
      selected. Enabled per client; see
      https://docs.meshconnect.com/resources/headless-bridging.
paths:
  /api/v1/transfers/managed/execute:
    post:
      tags:
        - Managed Transfers
      summary: Execute transfer
      description: "**Commit the previously previewed transfer.**\r\n\n\r\n---\r\nPreviews the transfer, using the `PreviewId` value.\r\n\n\r\nHandles multi-factor authentication codes if the account is configured to use them for additional security.\r\n\n\n\r\nReturns the status of the transfer and the details of the transfer if it was initiated successfully."
      requestBody:
        content:
          application/json:
            schema:
              allOf:
                - $ref: '#/components/schemas/ExecuteTransferRequest'
            examples:
              Execute transfer:
                value:
                  fromAuthToken: Secret authentication token
                  fromType: robinhood
                  previewId: 29b185b1-2305-40fb-a0e2-929d61451568
                  tryAnotherMfa: false
              Execute transfer providing the MFA code:
                value:
                  fromAuthToken: Secret authentication token
                  fromType: robinhood
                  previewId: 29b185b1-2305-40fb-a0e2-929d61451568
                  mfaCode: '112457'
                  tryAnotherMfa: false
          text/json:
            schema:
              allOf:
                - $ref: '#/components/schemas/ExecuteTransferRequest'
            examples:
              Execute transfer:
                value:
                  fromAuthToken: Secret authentication token
                  fromType: robinhood
                  previewId: 29b185b1-2305-40fb-a0e2-929d61451568
                  tryAnotherMfa: false
              Execute transfer providing the MFA code:
                value:
                  fromAuthToken: Secret authentication token
                  fromType: robinhood
                  previewId: 29b185b1-2305-40fb-a0e2-929d61451568
                  mfaCode: '112457'
                  tryAnotherMfa: false
          application/*+json:
            schema:
              allOf:
                - $ref: '#/components/schemas/ExecuteTransferRequest'
            examples:
              Execute transfer:
                value:
                  fromAuthToken: Secret authentication token
                  fromType: robinhood
                  previewId: 29b185b1-2305-40fb-a0e2-929d61451568
                  tryAnotherMfa: false
              Execute transfer providing the MFA code:
                value:
                  fromAuthToken: Secret authentication token
                  fromType: robinhood
                  previewId: 29b185b1-2305-40fb-a0e2-929d61451568
                  mfaCode: '112457'
                  tryAnotherMfa: false
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExecuteTransferResponseApiResult'
              examples:
                Successful transfer preview:
                  value:
                    content:
                      status: succeeded
                      executeTransferResult:
                        transferId: e332336c-de22-11ed-b5ea-0242ac120002
                        status: pending
                        statusDetails: In progress
                        fromAddress: '0x9Bf6207f8A3f4278E0C989527015deFe10e5D7c6'
                        toAddress: '0x326a8825472bb0f4719998e708a1eeeb4473ed1b'
                        symbol: USDT
                        networkName: Ethereum
                        networkId: e3c7fdd8-b1fc-4e51-85ae-bb276e075611
                        hash: >-
                          0xdcfd72635a9b16d3bc0e75311f6fe0612970e9714a1e9e93de0ea5acffc6a454
                        amount: 10
                        amountInFiat: 10
                        totalAmountInFiat: 11.1
                        completedConfirmations: 1
                        institutionTransferFee:
                          fee: 0
                          feeCurrency: USDT
                          feeInFiat: 0
                          feeInTransferCurrency: 0
                        networkGasFee:
                          fee: 1.1
                          feeCurrency: USDT
                          feeInFiat: 1.1
                          feeInTransferCurrency: 0
                      fallbackMfaAvailable: false
                    status: ok
                    message: ''
                    errorHash: a544e6d1
                    teamCode: P4
                    errorType: ''
                Transfer preview when MFA is required:
                  value:
                    content:
                      status: mfaRequired
                      fallbackMfaAvailable: false
                    status: ok
                    message: ''
                    errorHash: cc9d92d0
                    teamCode: P4
                    errorType: ''
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResult'
              example:
                status: badRequest
                message: Error message
                displayMessage: Optional display message
                errorHash: 7dcbb73d
                teamCode: P4
                errorType: missingField
        '401':
          description: Unauthorized
          content:
            application/json:
              schema: {}
        '403':
          description: >-
            The API key used does not have write permission to call this Mesh
            endpoint.
          content:
            application/json:
              schema: {}
components:
  schemas:
    ExecuteTransferRequest:
      required:
        - fromAuthToken
        - fromType
        - previewId
      type: object
      properties:
        fromAuthToken:
          minLength: 1
          type: string
          description: The authentication token to send the asset from.
        fromType:
          enum:
            - robinhood
            - eTrade
            - alpaca
            - tdAmeritrade
            - weBull
            - stash
            - interactiveBrokers
            - public
            - coinbase
            - kraken
            - coinbasePro
            - cryptoCom
            - openSea
            - binanceUs
            - gemini
            - cryptocurrencyAddress
            - cryptocurrencyWallet
            - okCoin
            - bittrex
            - kuCoin
            - etoro
            - cexIo
            - binanceInternational
            - bitstamp
            - gateIo
            - acorns
            - okx
            - bitFlyer
            - coinlist
            - huobi
            - bitfinex
            - deFiWallet
            - krakenDirect
            - vanguard
            - binanceInternationalDirect
            - bitfinexDirect
            - bybit
            - paxos
            - coinbasePrime
            - btcTurkDirect
            - kuCoinDirect
            - okxOAuth
            - paribuDirect
            - robinhoodConnect
            - blockchainCom
            - bitsoDirect
            - binanceConnect
            - binanceOAuth
            - revolutConnect
            - binancePay
            - bybitDirect
            - paribuOAuth
            - payPalConnect
            - binanceTrDirect
            - coinbaseRamp
            - bybitDirectMobile
            - sandbox
            - cryptoComPay
            - bybitEuDirect
            - uphold
            - binancePayOnchain
            - sandboxCoinbase
            - bybitPay
            - krakenOAuth
            - bluvoKrakenOAuth
            - cashApp
            - sandboxKrakenOAuth
            - krakPay
            - unlimit
            - alchemyPay
            - okxPay
            - bybitPayPsp
          allOf:
            - $ref: '#/components/schemas/BrokerType'
          description: The type of the integration to send the asset from.
        previewId:
          type: string
          description: Id of the Preview of the transfer.
          format: uuid
        mfaCode:
          type: string
          description: >-
            Multi-factor auth code that should be provided if the status of the
            transfer was `MfaRequired`.
          nullable: true
        tryAnotherMfa:
          type: boolean
          description: >-
            When user is unable to provide the primary Mfa this should be passed
            in to use fallback Mfa.
        challengeId:
          type: string
          nullable: true
      additionalProperties: false
    ExecuteTransferResponseApiResult:
      type: object
      properties:
        status:
          enum:
            - ok
            - serverFailure
            - permissionDenied
            - badRequest
            - notFound
            - conflict
            - tooManyRequest
            - locked
            - unavailableForLegalReasons
            - serviceUnavailable
          allOf:
            - $ref: '#/components/schemas/ApiResultStatus'
          readOnly: true
        message:
          type: string
          description: A message generated by the API
          nullable: true
        displayMessage:
          type: string
          description: User-friendly display message that can be presented to the end user
          nullable: true
        errorHash:
          type: string
          description: >-
            An error grouping hash from string components and caller
            information. Used by bugsnag on FE for correct error grouping
          nullable: true
          readOnly: true
        teamCode:
          type: string
          description: "Opaque team code for error routing. Resolved from exception origin or caller file path via CODEOWNERS.\r\nFormat: 2-character code (e.g., \"7K\", \"M2\"). Use for alerting/routing, not display."
          nullable: true
          readOnly: true
        errorType:
          type: string
          description: "Strictly-typed error type that is explaining the reason of an unsuccessful status of the operation.\r\nAll possible error types are available in the documentation."
          nullable: true
        errorData:
          nullable: true
          readOnly: true
        content:
          allOf:
            - $ref: '#/components/schemas/ExecuteTransferResponse'
          nullable: true
      additionalProperties: false
    ApiResult:
      type: object
      properties:
        status:
          enum:
            - ok
            - serverFailure
            - permissionDenied
            - badRequest
            - notFound
            - conflict
            - tooManyRequest
            - locked
            - unavailableForLegalReasons
            - serviceUnavailable
          allOf:
            - $ref: '#/components/schemas/ApiResultStatus'
          readOnly: true
        message:
          type: string
          description: A message generated by the API
          nullable: true
        displayMessage:
          type: string
          description: User-friendly display message that can be presented to the end user
          nullable: true
        errorHash:
          type: string
          description: >-
            An error grouping hash from string components and caller
            information. Used by bugsnag on FE for correct error grouping
          nullable: true
          readOnly: true
        teamCode:
          type: string
          description: "Opaque team code for error routing. Resolved from exception origin or caller file path via CODEOWNERS.\r\nFormat: 2-character code (e.g., \"7K\", \"M2\"). Use for alerting/routing, not display."
          nullable: true
          readOnly: true
        errorType:
          type: string
          description: "Strictly-typed error type that is explaining the reason of an unsuccessful status of the operation.\r\nAll possible error types are available in the documentation."
          nullable: true
        errorData:
          nullable: true
          readOnly: true
      additionalProperties: false
    BrokerType:
      enum:
        - robinhood
        - eTrade
        - alpaca
        - tdAmeritrade
        - weBull
        - stash
        - interactiveBrokers
        - public
        - coinbase
        - kraken
        - coinbasePro
        - cryptoCom
        - openSea
        - binanceUs
        - gemini
        - cryptocurrencyAddress
        - cryptocurrencyWallet
        - okCoin
        - bittrex
        - kuCoin
        - etoro
        - cexIo
        - binanceInternational
        - bitstamp
        - gateIo
        - acorns
        - okx
        - bitFlyer
        - coinlist
        - huobi
        - bitfinex
        - deFiWallet
        - krakenDirect
        - vanguard
        - binanceInternationalDirect
        - bitfinexDirect
        - bybit
        - paxos
        - coinbasePrime
        - btcTurkDirect
        - kuCoinDirect
        - okxOAuth
        - paribuDirect
        - robinhoodConnect
        - blockchainCom
        - bitsoDirect
        - binanceConnect
        - binanceOAuth
        - revolutConnect
        - binancePay
        - bybitDirect
        - paribuOAuth
        - payPalConnect
        - binanceTrDirect
        - coinbaseRamp
        - bybitDirectMobile
        - sandbox
        - cryptoComPay
        - bybitEuDirect
        - uphold
        - binancePayOnchain
        - sandboxCoinbase
        - bybitPay
        - krakenOAuth
        - bluvoKrakenOAuth
        - cashApp
        - sandboxKrakenOAuth
        - krakPay
        - unlimit
        - alchemyPay
        - okxPay
        - bybitPayPsp
      type: string
    ApiResultStatus:
      enum:
        - ok
        - serverFailure
        - permissionDenied
        - badRequest
        - notFound
        - conflict
        - tooManyRequest
        - locked
        - unavailableForLegalReasons
        - serviceUnavailable
      type: string
    ExecuteTransferResponse:
      type: object
      properties:
        status:
          enum:
            - succeeded
            - inProgress
            - failed
            - mfaRequired
            - emailConfirmationRequired
            - deviceConfirmationRequired
            - mfaFailed
            - addressWhitelistRequired
            - secondMfaRequired
            - deFiWalletConfirmationRequired
            - emailConfirmationApprovalRequired
            - travelRuleRequired
          allOf:
            - $ref: '#/components/schemas/ExecuteTransferStatus'
          description: The status of the transfer.
        mfaType:
          allOf:
            - $ref: '#/components/schemas/ExecuteTransferMfaType'
          description: The type of the MFA when the status is `MfaRequired`.
          nullable: true
        verificationSteps:
          type: array
          items:
            $ref: '#/components/schemas/ExecuteTransferMfaType'
          description: The type of the MFA when the status is `MfaRequired`.
          nullable: true
        travelRuleTransactionId:
          type: integer
          description: >-
            The transaction number for Travel rule required clients (optional,
            depends on an integration).
          format: int32
          nullable: true
        qrCode:
          type: string
          nullable: true
        qrCodeLink:
          type: string
          nullable: true
        errorMessage:
          type: string
          description: Error message, if the operation did not complete successfully.
          nullable: true
        executeTransferResult:
          allOf:
            - $ref: '#/components/schemas/ExecuteTransferResultResponse'
          description: Result of the transfer initiation.
          nullable: true
        fallbackMfaAvailable:
          type: boolean
        challengeId:
          type: string
          nullable: true
      additionalProperties: false
    ExecuteTransferStatus:
      enum:
        - succeeded
        - inProgress
        - failed
        - mfaRequired
        - emailConfirmationRequired
        - deviceConfirmationRequired
        - mfaFailed
        - addressWhitelistRequired
        - secondMfaRequired
        - deFiWalletConfirmationRequired
        - emailConfirmationApprovalRequired
        - travelRuleRequired
      type: string
    ExecuteTransferMfaType:
      enum:
        - unspecified
        - phone
        - email
        - totp
        - face
        - tradingPin
        - mobile
        - passkey
      type: string
    ExecuteTransferResultResponse:
      type: object
      properties:
        transferId:
          type: string
          description: The Id of the transfer by the integration.
          nullable: true
        status:
          enum:
            - unknown
            - failed
            - frozen
            - succeeded
            - mfaRequired
            - pending
            - expired
            - canceled
            - waitingForSignature
            - waitingForClearing
            - awaitingApproval
            - awaitingConfirmation
            - awaitingVerification
            - rejected
            - pendingCancel
            - emailVerification
            - deviceConfirmationRequired
            - mfaFailed
            - addressWhitelistRequired
            - secondMfaRequired
            - emailConfirmationApprovalRequired
            - travelRuleRequired
          allOf:
            - $ref: '#/components/schemas/BrokerCryptocurrencyTransactionStatus'
          description: The current status of the transfer.
        statusDetails:
          type: string
          description: >-
            Details of the current status of the transfer, as provided by the
            integration.
          nullable: true
        fromAddress:
          type: string
          description: The address of the source account or wallet.
          nullable: true
        toAddress:
          type: string
          description: The address of the target account or wallet.
          nullable: true
        symbol:
          type: string
          description: Transferred symbol.
          nullable: true
        networkName:
          type: string
          description: The name of the used network.
          nullable: true
        networkId:
          type: string
          description: The Id of the used network in Front system.
          format: uuid
        hash:
          type: string
          description: The hash of the blockchain transaction.
          nullable: true
        amount:
          type: number
          description: The transferred amount, in the symbol of the transfer.
          format: double
        amountInFiat:
          type: number
          description: The transferred amount, converted to the fiat currency.
          format: double
        totalAmountInFiat:
          type: number
          description: Total amount of the transfer including all fees, converted to fiat.
          format: double
        completedConfirmations:
          type: integer
          description: Current number of network confirmations.
          format: int64
          nullable: true
        institutionTransferFee:
          allOf:
            - $ref: '#/components/schemas/TransferFee'
          description: The fee that was taken by the institution.
          nullable: true
        networkGasFee:
          allOf:
            - $ref: '#/components/schemas/TransferFee'
          description: "The gas fee that was taken by the network. Depending on the integration, the network gas fee might be\r\ncovered by the `InstitutionTransferFee`."
          nullable: true
        smartContract:
          allOf:
            - $ref: '#/components/schemas/SmartContractTransferAllocation'
          description: >-
            Details of the allocated Smart Contract in case of 'Deposit' type
            transfers.
          nullable: true
        userId:
          type: string
          description: The end-user identifier from the brokerage session.
          nullable: true
        clientTransactionId:
          type: string
          description: The client-provided transaction identifier, if supplied.
          nullable: true
      additionalProperties: false
    BrokerCryptocurrencyTransactionStatus:
      enum:
        - unknown
        - failed
        - frozen
        - succeeded
        - mfaRequired
        - pending
        - expired
        - canceled
        - waitingForSignature
        - waitingForClearing
        - awaitingApproval
        - awaitingConfirmation
        - awaitingVerification
        - rejected
        - pendingCancel
        - emailVerification
        - deviceConfirmationRequired
        - mfaFailed
        - addressWhitelistRequired
        - secondMfaRequired
        - emailConfirmationApprovalRequired
        - travelRuleRequired
      type: string
    TransferFee:
      type: object
      properties:
        fee:
          type: number
          description: The amount of the fee.
          format: double
        feeCurrency:
          type: string
          description: >-
            The currency of the fee. Does not match the currency of the transfer
            in some cases.
          nullable: true
        feeInFiat:
          type: number
          description: The value of the fee converted to the fiat currency.
          format: double
        feeInTransferCurrency:
          type: number
          description: The value of the fee converted to the transfer currency.
          format: double
      additionalProperties: false
    SmartContractTransferAllocation:
      type: object
      properties:
        address:
          type: string
          description: Blockchain address of the Smart Contract
          nullable: true
        expirationTimestamp:
          type: integer
          description: >-
            The timestamp by which the transfer must be completely initiated.
            Currently, this means solving the MFA steps
          format: int64
      additionalProperties: false
  securitySchemes:
    Client-Secret:
      type: apiKey
      description: Contact Mesh to get client Secret
      name: X-Client-Secret
      in: header
    Client-Id:
      type: apiKey
      description: Contact Mesh to get client Id
      name: X-Client-Id
      in: header

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.