Hevn Inc Balance API
The Balance API from Hevn Inc — 20 operation(s) for balance.
The Balance API from Hevn Inc — 20 operation(s) for balance.
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