Hevn Inc Balance API

The Balance API from Hevn Inc — 20 operation(s) for balance.

OpenAPI Specification

hevn-inc-balance-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: HEVN 2FA Balance API
  description: Backend API for HEVN mobile neobank
  version: 0.1.2
servers:
- url: https://api.hevn.finance
  description: Production
tags:
- name: Balance
paths:
  /api/v1/balance:
    get:
      tags:
      - Balance
      summary: Get wallet balances
      description: Get OMNI, NEAR, EVM and Swipelux wallet balances for authenticated user.
      operationId: get_balances_api_v1_balance_get
      security:
      - HTTPBearer: []
      parameters:
      - name: wallet_type
        in: query
        required: false
        schema:
          anyOf:
          - $ref: '#/components/schemas/WalletType'
          - type: 'null'
          title: Wallet Type
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BalancesResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/balance/withdraw_onchain:
    post:
      tags:
      - Balance
      summary: Withdraw to onchain address
      description: Send funds from Swipelux custodial wallet to external onchain address.
      operationId: withdraw_onchain_api_v1_balance_withdraw_onchain_post
      security:
      - HTTPBearer: []
      parameters:
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WithdrawOnchainRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayoutStatusResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/balance/sweep:
    post:
      tags:
      - Balance
      summary: Sweep custodial balance
      description: Withdraw all funds from Swipelux custodial wallet to user's Base smart wallet.
      operationId: sweep_custodial_api_v1_balance_sweep_post
      security:
      - HTTPBearer: []
      parameters:
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayoutStatusResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/balance/transaction/status/{quote_id}:
    get:
      tags:
      - Balance
      summary: Get transaction status
      description: Check status of any transaction by quote_id.
      operationId: get_transaction_status_api_v1_balance_transaction_status__quote_id__get
      security:
      - HTTPBearer: []
      parameters:
      - name: quote_id
        in: path
        required: true
        schema:
          type: string
          title: Quote Id
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UniversalTransactionResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/balance/oneclick/tokens:
    get:
      tags:
      - Balance
      summary: Get supported tokens for cross-chain swaps
      description: Get list of tokens supported by 1click for cross-chain swaps.
      operationId: get_oneclick_tokens_api_v1_balance_oneclick_tokens_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
  /api/v1/balance/payin/quote:
    post:
      tags:
      - Balance
      summary: Get cross-chain payin quote
      description: Create a quote to deposit from any chain to Base USDC.
      operationId: create_payin_quote_api_v1_balance_payin_quote_post
      security:
      - HTTPBearer: []
      parameters:
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PayinQuoteRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UniversalQuoteResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/balance/payin/submit:
    post:
      tags:
      - Balance
      summary: Submit cross-chain payin
      description: Materialize a 1click PAYIN row by deposit address. The quote is re-fetched from /v0/status (no quote state is kept on the backend). Status, origin_tx_hash and destination_tx_hash get filled in by the background 1click explorer sync once the deposit lands.
      operationId: submit_payin_api_v1_balance_payin_submit_post
      security:
      - HTTPBearer: []
      parameters:
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PayinSubmitRequest'
      responses:
        '204':
          description: Successful Response
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/balance/payout/quote:
    post:
      tags:
      - Balance
      summary: Get payout quote
      description: Get quote for payout to contact. Auto-detects payment channel (IBAN/onchain/internal).
      operationId: get_payout_quote_api_v1_balance_payout_quote_post
      security:
      - HTTPBearer: []
      parameters:
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PayoutQuoteRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UniversalQuoteResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/balance/payout/quote/dry_run:
    post:
      tags:
      - Balance
      summary: Estimate payout quote
      description: Estimate payout amount and fees without a contact or provider-side activation.
      operationId: dry_run_payout_quote_api_v1_balance_payout_quote_dry_run_post
      security:
      - HTTPBearer: []
      parameters:
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PayoutQuoteDryRunRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayoutQuoteDryRunResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/balance/payout/quote/submit:
    post:
      tags:
      - Balance
      summary: Activate payout quote
      description: Activate a payout quote and create pending records. Returns deposit address.
      operationId: submit_payout_quote_api_v1_balance_payout_quote_submit_post
      security:
      - HTTPBearer: []
      parameters:
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubmitPayoutQuoteRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubmitPayoutQuoteResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/wallet/balance:
    get:
      tags:
      - Balance
      summary: Get wallet balances
      description: Get OMNI, NEAR, EVM and Swipelux wallet balances for authenticated user.
      operationId: get_balances_package_alias_api_v1_wallet_balance_get
      security:
      - HTTPBearer: []
      parameters:
      - name: wallet_type
        in: query
        required: false
        schema:
          anyOf:
          - $ref: '#/components/schemas/WalletType'
          - type: 'null'
          title: Wallet Type
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BalancesResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/wallet/balance/withdraw_onchain:
    post:
      tags:
      - Balance
      summary: Withdraw to onchain address
      description: Send funds from Swipelux custodial wallet to external onchain address.
      operationId: withdraw_onchain_package_alias_api_v1_wallet_balance_withdraw_onchain_post
      security:
      - HTTPBearer: []
      parameters:
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WithdrawOnchainRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayoutStatusResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/wallet/balance/sweep:
    post:
      tags:
      - Balance
      summary: Sweep custodial balance
      description: Withdraw all funds from Swipelux custodial wallet to user's Base smart wallet.
      operationId: sweep_custodial_package_alias_api_v1_wallet_balance_sweep_post
      security:
      - HTTPBearer: []
      parameters:
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayoutStatusResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/wallet/balance/transaction/status/{quote_id}:
    get:
      tags:
      - Balance
      summary: Get transaction status
      description: Check status of any transaction by quote_id.
      operationId: get_transaction_status_package_alias_api_v1_wallet_balance_transaction_status__quote_id__get
      security:
      - HTTPBearer: []
      parameters:
      - name: quote_id
        in: path
        required: true
        schema:
          type: string
          title: Quote Id
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UniversalTransactionResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/wallet/balance/oneclick/tokens:
    get:
      tags:
      - Balance
      summary: Get supported tokens for cross-chain swaps
      description: Get list of tokens supported by 1click for cross-chain swaps.
      operationId: get_oneclick_tokens_package_alias_api_v1_wallet_balance_oneclick_tokens_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
  /api/v1/wallet/balance/payin/quote:
    post:
      tags:
      - Balance
      summary: Get cross-chain payin quote
      description: Create a quote to deposit from any chain to Base USDC.
      operationId: create_payin_quote_package_alias_api_v1_wallet_balance_payin_quote_post
      security:
      - HTTPBearer: []
      parameters:
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PayinQuoteRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UniversalQuoteResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/wallet/balance/payin/submit:
    post:
      tags:
      - Balance
      summary: Submit cross-chain payin
      description: Materialize a 1click PAYIN row by deposit address. The quote is re-fetched from /v0/status (no quote state is kept on the backend). Status, origin_tx_hash and destination_tx_hash get filled in by the background 1click explorer sync once the deposit lands.
      operationId: submit_payin_package_alias_api_v1_wallet_balance_payin_submit_post
      security:
      - HTTPBearer: []
      parameters:
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PayinSubmitRequest'
      responses:
        '204':
          description: Successful Response
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/wallet/balance/payout/quote:
    post:
      tags:
      - Balance
      summary: Get payout quote
      description: Get quote for payout to contact. Auto-detects payment channel (IBAN/onchain/internal).
      operationId: get_payout_quote_package_alias_api_v1_wallet_balance_payout_quote_post
      security:
      - HTTPBearer: []
      parameters:
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PayoutQuoteRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UniversalQuoteResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/wallet/balance/payout/quote/dry_run:
    post:
      tags:
      - Balance
      summary: Estimate payout quote
      description: Estimate payout amount and fees without a contact or provider-side activation.
      operationId: dry_run_payout_quote_package_alias_api_v1_wallet_balance_payout_quote_dry_run_post
      security:
      - HTTPBearer: []
      parameters:
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PayoutQuoteDryRunRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayoutQuoteDryRunResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/wallet/balance/payout/quote/submit:
    post:
      tags:
      - Balance
      summary: Activate payout quote
      description: Activate a payout quote and create pending records. Returns deposit address.
      operationId: submit_payout_quote_package_alias_api_v1_wallet_balance_payout_quote_submit_post
      security:
      - HTTPBearer: []
      parameters:
      - name: x-api-key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubmitPayoutQuoteRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubmitPayoutQuoteResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    PayoutQuoteRequest:
      properties:
        contactId:
          type: string
          format: uuid
          title: Contactid
        amount:
          type: number
          title: Amount
        swapType:
          $ref: '#/components/schemas/SwapType'
          default: FLEX_INPUT
      type: object
      required:
      - contactId
      - amount
      title: PayoutQuoteRequest
      description: Request for payout quote to contact.
    PayoutQuoteDryRunResponse:
      properties:
        currencyTo:
          type: string
          title: Currencyto
        amountTo:
          type: number
          title: Amountto
        fee:
          anyOf:
          - type: number
          - type: 'null'
          title: Fee
        fixedFee:
          anyOf:
          - type: number
          - type: 'null'
          title: Fixedfee
      type: object
      required:
      - currencyTo
      - amountTo
      title: PayoutQuoteDryRunResponse
      description: Approximate payout quote response without provider-side activation.
    AccountBalancesResponse:
      properties:
        accountId:
          type: string
          title: Accountid
        chainId:
          type: string
          title: Chainid
        walletType:
          $ref: '#/components/schemas/WalletType'
        balanceUsd:
          type: number
          title: Balanceusd
        rawBalance:
          type: string
          title: Rawbalance
        balanceByToken:
          additionalProperties:
            type: string
          type: object
          title: Balancebytoken
        custodial:
          type: boolean
          title: Custodial
          default: false
      type: object
      required:
      - accountId
      - chainId
      - walletType
      - balanceUsd
      - rawBalance
      - balanceByToken
      title: AccountBalancesResponse
    PayoutStatusResponse:
      properties:
        id:
          type: string
          title: Id
        state:
          type: string
          title: State
        fromAmount:
          type: number
          title: Fromamount
        fromCurrency:
          type: string
          title: Fromcurrency
        toAmount:
          type: number
          title: Toamount
        toCurrency:
          type: string
          title: Tocurrency
        maskedIban:
          anyOf:
          - type: string
          - type: 'null'
          title: Maskediban
      type: object
      required:
      - id
      - state
      - fromAmount
      - fromCurrency
      - toAmount
      - toCurrency
      title: PayoutStatusResponse
      description: Response with payout status.
    UniversalQuoteResponse:
      properties:
        quoteId:
          type: string
          title: Quoteid
        provider:
          anyOf:
          - type: string
          - type: 'null'
          title: Provider
        paymentChannel:
          type: string
          title: Paymentchannel
        fromAmount:
          type: number
          title: Fromamount
        fromCurrency:
          type: string
          title: Fromcurrency
        toAmount:
          type: number
          title: Toamount
        depositMemo:
          anyOf:
          - type: string
          - type: 'null'
          title: Depositmemo
        toCurrency:
          type: string
          title: Tocurrency
        feeAmount:
          anyOf:
          - type: number
          - type: 'null'
          title: Feeamount
        feeCurrency:
          anyOf:
          - type: string
          - type: 'null'
          title: Feecurrency
        rate:
          anyOf:
          - type: number
          - type: 'null'
          title: Rate
        expiresAt:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Expiresat
        maskedIban:
          anyOf:
          - type: string
          - type: 'null'
          title: Maskediban
        depositAddress:
          anyOf:
          - type: string
          - type: 'null'
          title: Depositaddress
        recipientAddress:
          anyOf:
          - type: string
          - type: 'null'
          title: Recipientaddress
        originChainId:
          anyOf:
          - type: string
          - type: 'null'
          title: Originchainid
        destinationChainId:
          anyOf:
          - type: string
          - type: 'null'
          title: Destinationchainid
        transactionRequest:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Transactionrequest
      type: object
      required:
      - quoteId
      - paymentChannel
      - fromAmount
      - fromCurrency
      - toAmount
      - toCurrency
      title: UniversalQuoteResponse
      description: Universal quote response.
    WithdrawOnchainRequest:
      properties:
        amount:
          type: number
          title: Amount
        currency:
          type: string
          title: Currency
          default: USDC
      type: object
      required:
      - amount
      title: WithdrawOnchainRequest
      description: Request to withdraw from Swipelux wallet to onchain address.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    WalletType:
      type: string
      enum:
      - omni
      - base-main
      - swipelux
      - mcp
      - base-aa-wallet
      - wirex
      title: WalletType
    SubmitPayoutQuoteRequest:
      properties:
        quoteId:
          type: string
          title: Quoteid
        contactId:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Contactid
        bankAccountId:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Bankaccountid
        amount:
          anyOf:
          - type: number
          - type: 'null'
          title: Amount
        destinationChainId:
          anyOf:
          - type: string
          - type: 'null'
          title: Destinationchainid
        toCurrency:
          anyOf:
          - type: string
          - type: 'null'
          title: Tocurrency
      type: object
      required:
      - quoteId
      title: SubmitPayoutQuoteRequest
      description: Request to activate a payout quote.
    SubmitPayoutQuoteResponse:
      properties:
        transferId:
          type: string
          title: Transferid
        status:
          type: string
          title: Status
        depositAddress:
          anyOf:
          - type: string
          - type: 'null'
          title: Depositaddress
        depositAmount:
          anyOf:
          - type: string
          - type: 'null'
          title: Depositamount
        quoteId:
          type: string
          title: Quoteid
      type: object
      required:
      - transferId
      - status
      - quoteId
      title: SubmitPayoutQuoteResponse
      description: Response after activating a payout quote.
    SwapType:
      type: string
      enum:
      - EXACT_INPUT
      - EXACT_OUTPUT
      - FLEX_INPUT
      - ANY_INPUT
      title: SwapType
      description: Type of swap quote.
    PayinSubmitRequest:
      properties:
        depositAddress:
          type: string
          title: Depositaddress
      type: object
      required:
      - depositAddress
      title: PayinSubmitRequest
      description: Request to materialize a 1click PAYIN by deposit address.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    PayoutQuoteDryRunRequest:
      properties:
        rail:
          anyOf:
          - type: string
          - type: 'null'
          title: Rail
        amount:
          type: number
          title: Amount
        type:
          anyOf:
          - type: string
          - type: 'null'
          title: Type
        tokenTo:
          anyOf:
          - type: string
          - type: 'null'
          title: Tokento
        chainTo:
          anyOf:
          - type: string
          - type: 'null'
          title: Chainto
      type: object
      required:
      - amount
      title: PayoutQuoteDryRunRequest
      description: Request for approximate payout quote without contact.
    OneClickChain:
      type: string
      enum:
      - eth
      - bsc
      - avax
      - op
      - arb
      - pol
      - sol
      - base
      - gnosis
      - tron
      - xrp
      - zec
      - doge
      - ltc
      - btc
      - cardano
      - bera
      - sui
      - near
      - near_intents
      - xlayer
      - plasma
      - ton
      - stellar
      - monad
      - starknet
      - aptos
      - adi
      - bch
      title: OneClickChain
      description: 1click chain codes.
    BalancesResponse:
      properties:
        accounts:
          items:
            $ref: '#/components/schemas/AccountBalancesResponse'
          type: array
          title: Accounts
        evmAddress:
          anyOf:
          - type: string
          - type: 'null'
          title: Evmaddress
        privyAddress:
          anyOf:
          - type: string
          - type: 'null'
          title: Privyaddress
      type: object
      required:
      - accounts
      title: BalancesResponse
      description: Response with wallet balances.
    UniversalTransactionResponse:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        quoteId:
          type: string
          title: Quoteid
        type:
          type: string
          title: Type
        paymentChannel:
          type: string
          title: Paymentchannel
        status:
          type: string
          title: Status
        fromAmount:
          type: number
          title: Fromamount
        fromCurrency:
          type: string
          title: Fromcurrency
        toAmount:
          anyOf:
          - type: number
          - type: 'null'
          title: Toamount
        toCurrency:
          type: string
          title: Tocurrency
        originTxHash:
          anyOf:
          - type: string
          - type: 'null'
          title: Origintxhash
        destinationTxHash:
          anyOf:
          - type: string
          - type: 'null'
          title: Destinationtxhash
        depositAddress:
          anyOf:
          - type: string
          - type: 'null'
          title: Depositaddress
        errorMessage:
          anyOf:
          - type: string
          - type: 'null'
          title: Errormessage
        expiresAt:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Expiresat
        createdAt:
          type: string
          format: date-time
          title: Createdat
      type: object
      required:
      - id
      - quoteId
      - type
      - paymentChannel
      - status
      - fromAmount
      - fromCurrency
      - toCurrency
      - createdAt
      title: UniversalTransactionResponse
      description: Universal transaction response.
    PayinQuoteRequest:
      properties:
        amount:
          anyOf:
          - type: number
          - type: 'null'
          title: Amount
        currency:
          type: string
          title: Currency
        originChainId:
          $ref: '#/components/schemas/OneClickChain'
        swapType:
          $ref: '#/components/schemas/SwapType'
          default: FLEX_INPUT
      type: object
      required:
      - currency
      - originChainId
      title: PayinQuoteRequest
      description: Request for cross-chain payin quote.
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer
      x-default: Bea

# --- truncated at 32 KB (32 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/hevn-inc/refs/heads/main/openapi/hevn-inc-balance-api-openapi.yml