{"openapi":"3.1.0","info":{"title":"Pay2Vault","description":"Pay2Vault","contact":{"name":"LC Labs Sp. z o.o.","email":"kacper@lclabs.org"},"license":{"name":""},"version":"0.1.0"},"servers":[{"url":"/api","description":"API server with /api prefix"}],"paths":{"/market/tokens/chart":{"get":{"tags":["market"],"summary":"Get price chart data for a token","description":"Returns historical price data points for charting. Cache TTL is dynamic: 60s for 1-day charts, 5min for 7-day, 15min for 30-day, 1h for 365-day.","operationId":"market_tokens_chart","parameters":[{"name":"coin_id","in":"query","description":"CoinGecko coin ID (e.g. \"ethereum\", \"solana\")","required":true,"schema":{"type":"string"}},{"name":"days","in":"query","description":"Number of days (e.g. 1, 7, 30, 365)","required":true,"schema":{"type":"integer","format":"int32","minimum":0}},{"name":"vs_currency","in":"query","description":"Currency for prices (default: \"usd\")","required":false,"schema":{"type":["string","null"]}}],"responses":{"200":{"description":"Price chart data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarketTokensChartResponse"}}}},"500":{"description":"Internal server error"}}}},"/market/tokens/defaults":{"get":{"tags":["market"],"summary":"Get default visible tokens for a chain","description":"Returns the list of coin_id values that should be visible in the portfolio by default (e.g. native token + USDC + USDT). Configurable on the backend without app release.","operationId":"market_tokens_defaults","parameters":[{"name":"chain","in":"query","description":"Blockchain chain identifier (e.g. \"ethereum\", \"solana\", \"tron\", \"bitcoin\")","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Default token coin IDs for a chain","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarketTokensDefaultsResponse"}}}},"500":{"description":"Internal server error"}}}},"/market/tokens/list":{"get":{"tags":["market"],"summary":"Get token list for a specific chain","description":"Returns a paginated list of tokens for a given chain with icons, prices, and market data from CoinGecko cache. Priority tokens (native + USDC + USDT) are always at the top. Use 'search' to filter by name/symbol.","operationId":"market_tokens_list","parameters":[{"name":"chain","in":"query","description":"Blockchain chain identifier (e.g. \"ethereum\", \"solana\", \"tron\", \"bitcoin\")","required":true,"schema":{"type":"string"}},{"name":"search","in":"query","description":"Search by token name, symbol, or contract address","required":false,"schema":{"type":["string","null"]}},{"name":"limit","in":"query","description":"Page size (default: 30, max: 250)","required":false,"schema":{"type":["integer","null"],"minimum":0}},{"name":"offset","in":"query","description":"Pagination offset (default: 0)","required":false,"schema":{"type":["integer","null"],"minimum":0}}],"responses":{"200":{"description":"Token list with market data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarketTokensListResponse"}}}},"500":{"description":"Internal server error"}}}},"/market/tokens/{coin_id}":{"get":{"tags":["market"],"summary":"Get detailed data for a specific token","description":"Returns full market data for a specific token by CoinGecko coin ID. First checks the token list cache, then falls back to a direct CoinGecko API call.","operationId":"market_tokens_detail","parameters":[{"name":"coin_id","in":"path","description":"CoinGecko coin ID (e.g. 'ethereum', 'usd-coin')","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Token details with market data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarketTokenDetailResponse"}}}},"404":{"description":"Token not found"},"500":{"description":"Internal server error"}}}},"/market/uniswap/tokens/list":{"get":{"tags":["market"],"summary":"Get Uniswap tokens list with optional filtering and pagination","description":"Retrieves the official Uniswap tokens list with optional filtering and pagination. Use 'search' parameter to find tokens by address, name, or symbol. Use 'limit' and 'offset' for pagination. Optionally enrich tokens with CoinGecko market data.","operationId":"market_uniswap_tokens_list","parameters":[{"name":"search","in":"query","required":false,"schema":{"type":["string","null"]}},{"name":"chain_id","in":"query","required":false,"schema":{"type":["integer","null"],"format":"int64"}},{"name":"limit","in":"query","required":false,"schema":{"type":["integer","null"],"minimum":0}},{"name":"offset","in":"query","required":false,"schema":{"type":["integer","null"],"minimum":0}},{"name":"market_data","in":"query","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"Uniswap tokens list","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarketTokensResponse"}}}},"500":{"description":"Internal server error"}}}},"/root/vault/auth/credentials/code/add/complete":{"post":{"tags":["root-vault"],"summary":"Complete credential addition with code","description":"Finalizes the Create Credential With Code flow. Creates a new credential using the signed challenge. This endpoint does not require authentication.","operationId":"root_vault_auth_credentials_code_add_complete","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreCredentialsCodeAddCompleteRequest"}}},"required":true},"responses":{"200":{"description":"Successfully created credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreCredentialsCodeAddCompleteResponse"}}}},"400":{"description":"Invalid request or credential kind","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/auth/credentials/code/add/init":{"post":{"tags":["root-vault"],"summary":"Initiate credential addition with code","description":"Part of the Create Credential With Code flow. Creates a credential challenge using a one-time code. This endpoint does not require authentication.","operationId":"root_vault_auth_credentials_code_add_init","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreCredentialsCodeAddInitRequest"}}},"required":true},"responses":{"200":{"description":"Successfully created credential challenge","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreCredentialsCodeAddInitResponse"}}}},"400":{"description":"Invalid credential kind","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/auth/credentials/code/generate/complete":{"post":{"tags":["root-vault"],"summary":"Complete credentials code creation","description":"Completes the Create Credential With Code flow by signing the challenge and creating the one-time-code.","operationId":"root_vault_auth_credentials_code_generate_complete","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreCredentialsCodeGenerateCompleteRequest"}}},"required":true},"responses":{"200":{"description":"Successfully created credentials code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreCredentialsCodeGenerateCompleteResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/auth/credentials/code/generate/init":{"post":{"tags":["root-vault"],"summary":"Initiate credentials code creation","description":"Part of the Create Credential With Code flow. Initiates a user action challenge to create a one-time-code for credential creation.","operationId":"root_vault_auth_credentials_code_generate_init","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreCredentialsCodeGenerateInitRequest"}}},"required":true},"responses":{"200":{"description":"Successfully initiated credentials code challenge","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreCredentialsCodeGenerateInitResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/auth/credentials/list":{"get":{"tags":["root-vault"],"summary":"List user's credentials","description":"Retrieve all credentials registered for the user in DFNS.","operationId":"root_vault_auth_credentials_list","responses":{"200":{"description":"Successfully retrieved credentials list","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreCredentialsListResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/auth/credentials/{credential_id}/activate/complete":{"post":{"tags":["root-vault"],"summary":"Complete credential activation","description":"Completes the credential activation flow by signing the challenge and activating the credential in DFNS.","operationId":"root_vault_auth_credentials_credential_id_activate_complete","parameters":[{"name":"credential_id","in":"path","description":"UUID credential do aktywacji","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreCredentialsCredentialActivateCompleteRequest"}}},"required":true},"responses":{"200":{"description":"Successfully activated credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreCredentialsActivateCompleteResponse"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/auth/credentials/{credential_id}/activate/init":{"post":{"tags":["root-vault"],"summary":"Initiate credential activation","description":"Initiates a user action challenge to activate a credential in DFNS. Returns challenge for FIDO2 signing.","operationId":"root_vault_auth_credentials_credential_id_activate_init","parameters":[{"name":"credential_id","in":"path","description":"UUID credential do aktywacji","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successfully initiated credentials activation challenge","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreCredentialsActivateInitResponse"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/auth/credentials/{credential_id}/deactivate/complete":{"post":{"tags":["root-vault"],"summary":"Complete credential deactivation","description":"Completes the credential deactivation flow by signing the challenge and deactivating the credential in DFNS.","operationId":"root_vault_auth_credentials_credential_id_deactivate_complete","parameters":[{"name":"credential_id","in":"path","description":"UUID credential do dezaktywacji","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreCredentialsCredentialDeactivateCompleteRequest"}}},"required":true},"responses":{"200":{"description":"Successfully deactivated credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreCredentialsDeactivateCompleteResponse"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/auth/credentials/{credential_id}/deactivate/init":{"post":{"tags":["root-vault"],"summary":"Initiate credential deactivation","description":"Initiates a user action challenge to deactivate a credential in DFNS. Returns challenge for FIDO2 signing.","operationId":"root_vault_auth_credentials_credential_id_deactivate_init","parameters":[{"name":"credential_id","in":"path","description":"UUID credential do dezaktywacji","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successfully initiated credentials deactivation challenge","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreCredentialsDeactivateInitResponse"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/network/fees":{"get":{"tags":["root-vault"],"summary":"Get network fees","description":"Returns real-time fee estimation for a given network. Routes to DFNS for EVM/Bitcoin/Solana or TronGrid for Tron.","operationId":"root_vault_network_fees","parameters":[{"name":"network","in":"query","description":"Sieć blockchain","required":true,"schema":{"type":"string","description":"Sieci obsługiwane przez endpoint network fees.","enum":["Ethereum","EthereumSepolia","Bitcoin","Solana","SolanaDevnet","Tron","TronNile"]}}],"responses":{"200":{"description":"Network fees","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultRouterNetworkFeesResponse"}}}},"400":{"description":"Invalid network","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}}}},"/root/vault/ready":{"get":{"tags":["root-vault"],"summary":"Readiness check endpoint","description":"Returns the readiness status of the API. This endpoint indicates whether the API is ready to serve traffic.","operationId":"root_vault_ready","responses":{"200":{"description":"Readiness check response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultReadyResponse"}}}}}}},"/root/vault/user":{"get":{"tags":["root-vault"],"summary":"Get user details","description":"Get the authenticated user's DFNS details.","operationId":"root_vault_user_get","responses":{"200":{"description":"User details","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultRouterVaultUserGetResponse"}}}},"404":{"description":"User not registered in DFNS","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/devices":{"post":{"tags":["root-vault"],"summary":"Register an FCM push token for the calling user","description":"Idempotent upsert keyed by `fcm_token`. If the token already exists for another user, ownership transfers to the calling user (e.g. when a different account logs in on the same physical device).","operationId":"root_vault_user_devices_register","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultUserDevicesRegisterRequest"}}},"required":true},"responses":{"200":{"description":"Token registered or refreshed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultUserDevicesRegisterResponse"}}}},"401":{"description":"Unauthorized - invalid or missing session"},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]},"delete":{"tags":["root-vault"],"summary":"Unregister an FCM push token for the calling user","description":"Deletes the row only if the token currently belongs to the calling user. Other users' tokens are never touched. Safe to call on logout even if the token has already been replaced by FCM (returns `deleted: false`).","operationId":"root_vault_user_devices_unregister","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultUserDevicesUnregisterRequest"}}},"required":true},"responses":{"200":{"description":"Token removed (or did not exist)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultUserDevicesUnregisterResponse"}}}},"401":{"description":"Unauthorized - invalid or missing session"},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/events":{"get":{"tags":["root-vault"],"summary":"Get user's event history","description":"Returns up to 100 most recent DFNS events for the authenticated user.","operationId":"root_vault_user_events","responses":{"200":{"description":"User's event history","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultUserEventsResponse"}}}},"401":{"description":"Unauthorized - invalid or missing session"},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/events/stream":{"get":{"tags":["root-vault"],"summary":"Stream user events via SSE","description":"Real-time streaming of DFNS events for the authenticated user using Server-Sent Events.","operationId":"root_vault_user_events_stream","responses":{"200":{"description":"SSE stream of DFNS events","content":{"text/event-stream":{"schema":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEvent"},"example":{"data":{"wallet":{"address":"0xe3154383044d0770e0f6122c01c712b9780a72ff","id":"wa-01jep-g7mi2-ea7quevihqtc5l2v","network":"EthereumSepolia","status":"Active"}},"date":"2026-01-12T16:22:13.154Z","deliveryAttempt":1,"deliveryFailed":false,"id":"whe-01jep-g7o13-emn9osjm47v2v28r","kind":"wallet.created","status":"200","timestampSent":1768234934}}}},"401":{"description":"Unauthorized - invalid or missing session"},"500":{"description":"Internal server error"}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/exists":{"get":{"tags":["root-vault"],"summary":"Check if user exists","description":"Check if the authenticated user is registered in DFNS.","operationId":"root_vault_user_exists","responses":{"200":{"description":"User existence check result","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultRouterVaultUserExistsResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/keys/create/complete":{"post":{"tags":["root-vault"],"summary":"Complete cryptographic key creation","description":"Complete user action challenge and create new cryptographic key in DFNS using user's FIDO2 credential.","operationId":"root_vault_user_keys_create_complete","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreKeyCreateCompleteRequest"}}},"required":true},"responses":{"200":{"description":"Successfully created key","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreKeyCreateCompleteResponse"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/keys/create/init":{"post":{"tags":["root-vault"],"summary":"Initialize cryptographic key creation","description":"Initialize user action challenge for creating a new cryptographic key in DFNS. Returns challenge for FIDO2 signing.","operationId":"root_vault_user_keys_create_init","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreKeyCreateInitRequest"}}},"required":true},"responses":{"200":{"description":"Successfully initiated key creation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreKeyCreateInitResponse"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/keys/list":{"get":{"tags":["root-vault"],"summary":"List user's cryptographic keys","description":"Retrieve all cryptographic keys registered for the user in DFNS.","operationId":"root_vault_user_keys_list","responses":{"200":{"description":"Successfully retrieved keys list","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreKeysListResponse"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/keys/{key_id}/export/complete":{"post":{"tags":["root-vault"],"summary":"Complete cryptographic key export","description":"Complete user action challenge and export cryptographic key from DFNS using user's FIDO2 credential. Returns encrypted key shares.","operationId":"root_vault_user_keys_export_complete","parameters":[{"name":"key_id","in":"path","description":"ID of the key to export","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreKeyExportCompleteRequest"}}},"required":true},"responses":{"200":{"description":"Successfully exported key","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreKeyExportCompleteResponse"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/keys/{key_id}/export/init":{"post":{"tags":["root-vault"],"summary":"Initialize cryptographic key export","description":"Initialize user action challenge for exporting a cryptographic key from DFNS. Returns challenge for FIDO2 signing.","operationId":"root_vault_user_keys_export_init","parameters":[{"name":"key_id","in":"path","description":"ID of the key to export","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreKeyExportInitRequest"}}},"required":true},"responses":{"200":{"description":"Successfully initiated key export","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreKeyExportInitResponse"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/register/complete":{"post":{"tags":["root-vault"],"summary":"Complete user registration","description":"Complete delegated user registration in DFNS (without creating wallets).","operationId":"root_vault_user_register_complete","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreUserDelegatedRegistrationCompleteRequest"}}},"required":true},"responses":{"200":{"description":"Successfully completed user registration","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultRouterVaultUserRegisterCompleteResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/register/complete-with-wallets":{"post":{"tags":["root-vault"],"summary":"Complete user registration with wallets","description":"Complete delegated user registration in DFNS and create wallets.","operationId":"root_vault_user_register_complete_with_wallets","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreUserDelegatedRegistrationCompleteWithWalletsRequest"}}},"required":true},"responses":{"200":{"description":"Successfully completed user registration with wallets","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultRouterVaultUserRegisterCompleteWithWalletsResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/register/init":{"post":{"tags":["root-vault"],"summary":"Initialize user registration","description":"Initialize delegated user registration in DFNS. Returns a challenge for the client to sign. No request body required - backend handles user action signing automatically.","operationId":"root_vault_user_register_init","responses":{"200":{"description":"Successfully initiated user registration","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultRouterVaultUserRegisterInitResponse"}}}},"409":{"description":"User already registered","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets":{"get":{"tags":["root-vault"],"summary":"List user wallets","description":"Get the list of wallets for the authenticated user from DFNS API.","operationId":"root_vault_user_wallets_list","parameters":[{"name":"paginationToken","in":"query","description":"Token do następnej strony wyników","required":false,"schema":{"type":["string","null"]}}],"responses":{"200":{"description":"Lista portfeli","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletListResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/create/complete":{"post":{"tags":["root-vault"],"summary":"Complete wallet creation","description":"Complete wallet creation with signed challenge from user credentials.","operationId":"root_vault_user_wallets_create_complete","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletCreateCompleteRequest"}}},"required":true},"responses":{"200":{"description":"Portfel utworzony","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletCreateCompleteResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/create/init":{"post":{"tags":["root-vault"],"summary":"Initialize wallet creation","description":"Start wallet creation process. Returns a challenge to be signed by user credentials.","operationId":"root_vault_user_wallets_create_init","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletCreateInitRequest"}}},"required":true},"responses":{"200":{"description":"Challenge do podpisania","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletCreateInitResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/full":{"get":{"tags":["root-vault"],"summary":"List wallets with assets","description":"List all DFNS wallets for the authenticated user with their assets, market data and net worth balances.","operationId":"root_vault_user_wallets_full","responses":{"200":{"description":"Wallets with assets and net worth","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultUserWalletsFullResponse"}}}},"404":{"description":"User not registered in Vault","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/assets":{"get":{"tags":["root-vault"],"summary":"Get wallet assets","description":"Pobiera listę assetów (tokenów) dla podanego portfela użytkownika z DFNS API. Opcjonalnie wzbogaca o dane rynkowe CoinGecko i on-chain ERC20 metadata.","operationId":"root_vault_wallet_assets","parameters":[{"name":"wallet_id","in":"path","description":"ID portfela DFNS","required":true,"schema":{"type":"string"}},{"name":"netWorth","in":"query","description":"Include net worth calculation from DFNS.","required":false,"schema":{"type":"boolean"}},{"name":"enrich","in":"query","description":"Enrich assets with CoinGecko market data.","required":false,"schema":{"type":"boolean"}},{"name":"erc20Rpc","in":"query","description":"Include on-chain ERC20 metadata via RPC (requires enrich=true).","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"Lista assetów portfela","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultWalletAssetsResponse"}}}},"404":{"description":"Użytkownik lub portfel nie znaleziony","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/details":{"get":{"tags":["root-vault"],"summary":"Get wallet details","description":"Get details of a specific wallet by ID.","operationId":"root_vault_user_wallets_wallet_id_details","parameters":[{"name":"wallet_id","in":"path","description":"ID of the wallet to get details for","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successfully retrieved wallet details","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreWalletDetailsResponse"}}}},"404":{"description":"User or wallet not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/history":{"get":{"tags":["root-vault"],"summary":"Get wallet history","description":"Get list of historical on-chain activities for a specific wallet.","operationId":"root_vault_user_wallets_wallet_id_history","parameters":[{"name":"wallet_id","in":"path","description":"ID of the wallet to get history for","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"schema":{"type":["integer","null"],"format":"int32"}},{"name":"paginationToken","in":"query","required":false,"schema":{"type":["string","null"]}},{"name":"hideSpam","in":"query","required":false,"schema":{"type":["boolean","null"]}}],"responses":{"200":{"description":"Successfully retrieved wallet history","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreWalletHistoryResponse"}}}},"404":{"description":"User or wallet not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/transactions":{"get":{"tags":["root-vault"],"summary":"Get wallet transactions","description":"Retrieves a list of transaction requests for the specified wallet from DFNS API.","operationId":"root_vault_user_wallets_wallet_id_transactions","parameters":[{"name":"wallet_id","in":"path","description":"DFNS wallet ID","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Maximum number of items to return.","required":false,"schema":{"type":["string","null"]}},{"name":"paginationToken","in":"query","description":"Token for pagination to get the next page of results.","required":false,"schema":{"type":["string","null"]}}],"responses":{"200":{"description":"Wallet transactions","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultWalletTransactionsResponse"}}}},"404":{"description":"User not registered in Vault","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/transfer/erc20/complete":{"post":{"tags":["root-vault"],"summary":"Complete ERC20 token transfer","description":"Completes an ERC20 token transfer by signing the challenge with FIDO2 credentials and executing the transfer on DFNS.","operationId":"root_vault_user_wallets_wallet_id_transfer_erc20_complete","parameters":[{"name":"wallet_id","in":"path","description":"ID portfela z którego wykonywany jest transfer","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletTransferErc20CompleteRequest"}}},"required":true},"responses":{"200":{"description":"Transfer wykonany pomyślnie","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreWalletTransferErc20CompleteResponse"}}}},"403":{"description":"Unauthorized - user is not the wallet owner","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/transfer/erc20/init":{"post":{"tags":["root-vault"],"summary":"Initialize ERC20 token transfer","description":"Initializes an ERC20 token transfer from a wallet. Returns a challenge that must be signed by the user's FIDO2 credentials.","operationId":"root_vault_user_wallets_wallet_id_transfer_erc20_init","parameters":[{"name":"wallet_id","in":"path","description":"ID portfela z którego ma być wykonany transfer","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreWalletTransferErc20InitRequest"}}},"required":true},"responses":{"200":{"description":"Challenge do podpisania","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletTransferErc20InitResponse"}}}},"403":{"description":"Unauthorized - user is not the wallet owner","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/transfer/native/complete":{"post":{"tags":["root-vault"],"summary":"Complete native token transfer","description":"Completes a native token transfer by signing the challenge with FIDO2 credentials and executing the transfer on DFNS.","operationId":"root_vault_user_wallets_wallet_id_transfer_native_complete","parameters":[{"name":"wallet_id","in":"path","description":"ID portfela z którego wykonywany jest transfer","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletTransferNativeCompleteRequest"}}},"required":true},"responses":{"200":{"description":"Transfer wykonany pomyślnie","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreWalletTransferNativeCompleteResponse"}}}},"403":{"description":"Unauthorized - user is not the wallet owner","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/transfer/native/init":{"post":{"tags":["root-vault"],"summary":"Initialize native token transfer","description":"Initializes a native token transfer from a wallet. Returns a challenge that must be signed by the user's FIDO2 credentials.","operationId":"root_vault_user_wallets_wallet_id_transfer_native_init","parameters":[{"name":"wallet_id","in":"path","description":"ID portfela z którego ma być wykonany transfer","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreWalletTransferNativeInitRequest"}}},"required":true},"responses":{"200":{"description":"Challenge do podpisania","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletTransferNativeInitResponse"}}}},"403":{"description":"Unauthorized - user is not the wallet owner","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/transfer/spl/complete":{"post":{"tags":["root-vault"],"summary":"Complete SPL token transfer","description":"Completes an SPL token transfer by signing the challenge with FIDO2 credentials and executing the transfer on DFNS.","operationId":"root_vault_user_wallets_wallet_id_transfer_spl_complete","parameters":[{"name":"wallet_id","in":"path","description":"Wallet ID to transfer from","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletTransferSplCompleteRequest"}}},"required":true},"responses":{"200":{"description":"Transfer completed successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreWalletTransferSplCompleteResponse"}}}},"403":{"description":"Unauthorized - user is not the wallet owner","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/transfer/spl/init":{"post":{"tags":["root-vault"],"summary":"Initialize SPL token transfer","description":"Initializes an SPL token transfer from a Solana wallet. Returns a challenge that must be signed by the user's FIDO2 credentials.","operationId":"root_vault_user_wallets_wallet_id_transfer_spl_init","parameters":[{"name":"wallet_id","in":"path","description":"Wallet ID to transfer from","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreWalletTransferSplInitRequest"}}},"required":true},"responses":{"200":{"description":"Challenge to sign","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletTransferSplInitResponse"}}}},"403":{"description":"Unauthorized - user is not the wallet owner","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/transfer/trc10/complete":{"post":{"tags":["root-vault"],"summary":"Complete TRC-10 token transfer","description":"Completes a TRC-10 token transfer by signing the challenge with FIDO2 credentials and executing the transfer on DFNS.","operationId":"root_vault_user_wallets_wallet_id_transfer_trc10_complete","parameters":[{"name":"wallet_id","in":"path","description":"Wallet ID to transfer from","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletTransferTrc10CompleteRequest"}}},"required":true},"responses":{"200":{"description":"Transfer completed successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreWalletTransferTrc10CompleteResponse"}}}},"403":{"description":"Unauthorized - user is not the wallet owner","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/transfer/trc10/init":{"post":{"tags":["root-vault"],"summary":"Initialize TRC-10 token transfer","description":"Initializes a TRC-10 token transfer from a Tron wallet. Returns a challenge that must be signed by the user's FIDO2 credentials.","operationId":"root_vault_user_wallets_wallet_id_transfer_trc10_init","parameters":[{"name":"wallet_id","in":"path","description":"Wallet ID to transfer from","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreWalletTransferTrc10InitRequest"}}},"required":true},"responses":{"200":{"description":"Challenge to sign","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletTransferTrc10InitResponse"}}}},"403":{"description":"Unauthorized - user is not the wallet owner","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/transfer/trc20/complete":{"post":{"tags":["root-vault"],"summary":"Complete TRC-20 token transfer","description":"Completes a TRC-20 token transfer by signing the challenge with FIDO2 credentials and executing the transfer on DFNS.","operationId":"root_vault_user_wallets_wallet_id_transfer_trc20_complete","parameters":[{"name":"wallet_id","in":"path","description":"Wallet ID to transfer from","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletTransferTrc20CompleteRequest"}}},"required":true},"responses":{"200":{"description":"Transfer completed successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreWalletTransferTrc20CompleteResponse"}}}},"403":{"description":"Unauthorized - user is not the wallet owner","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/transfer/trc20/init":{"post":{"tags":["root-vault"],"summary":"Initialize TRC-20 token transfer","description":"Initializes a TRC-20 token transfer from a Tron wallet. Returns a challenge that must be signed by the user's FIDO2 credentials.","operationId":"root_vault_user_wallets_wallet_id_transfer_trc20_init","parameters":[{"name":"wallet_id","in":"path","description":"Wallet ID to transfer from","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreWalletTransferTrc20InitRequest"}}},"required":true},"responses":{"200":{"description":"Challenge to sign","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletTransferTrc20InitResponse"}}}},"403":{"description":"Unauthorized - user is not the wallet owner","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/transfers":{"get":{"tags":["root-vault"],"summary":"Get wallet transfers","description":"Get list of transfer requests for a specific wallet.","operationId":"root_vault_user_wallets_wallet_id_transfers","parameters":[{"name":"wallet_id","in":"path","description":"ID of the wallet to get transfers for","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Maksymalna liczba wyników do zwrócenia","required":false,"schema":{"type":["string","null"]}},{"name":"paginationToken","in":"query","description":"Token do następnej strony wyników","required":false,"schema":{"type":["string","null"]}}],"responses":{"200":{"description":"Successfully retrieved wallet transfers","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DfnsCoreWalletTransfersResponse"}}}},"404":{"description":"User or wallet not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/update/complete":{"post":{"tags":["root-vault"],"summary":"Complete wallet update","description":"Complete wallet update with signed challenge from user credentials.","operationId":"root_vault_user_wallets_update_complete","parameters":[{"name":"wallet_id","in":"path","description":"ID of the wallet to update","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletUpdateCompleteRequest"}}},"required":true},"responses":{"200":{"description":"Portfel zaktualizowany","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletUpdateCompleteResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/user/wallets/{wallet_id}/update/init":{"post":{"tags":["root-vault"],"summary":"Initialize wallet update","description":"Start wallet update process. Returns a challenge to be signed by user credentials.","operationId":"root_vault_user_wallets_update_init","parameters":[{"name":"wallet_id","in":"path","description":"ID of the wallet to update","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletUpdateInitRequest"}}},"required":true},"responses":{"200":{"description":"Challenge do podpisania","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultCoreWalletUpdateInitResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/root/vault/webhook/dfns":{"post":{"tags":["root-vault"],"summary":"DFNS Webhook endpoint","description":"Receives webhook events from DFNS. Verifies HMAC-SHA256 signature using X-DFNS-WEBHOOK-SIGNATURE header.","operationId":"root_vault_webhook_dfns","requestBody":{"content":{"application/json":{"schema":{}}},"required":true},"responses":{"200":{"description":"Webhook received successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultRouterWebhookDfnsResponse"}}}},"400":{"description":"Invalid or missing signature","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}}}},"/xauth/login":{"post":{"tags":["XAuth"],"summary":"Login user with email and password","description":"Authenticates user with email and password, returns auth token and sets auth cookie.","operationId":"xauth_login","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthLoginRequest"}}},"required":true},"responses":{"200":{"description":"Successful user login","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthLoginResponse"}}}},"401":{"description":"Invalid credentials","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}}}},"/xauth/logout":{"post":{"tags":["XAuth"],"summary":"Logout user and invalidate session","description":"Logs out the currently authenticated user by invalidating their session in Zitadel and clearing the auth token cookie.","operationId":"xauth_logout","responses":{"200":{"description":"Successful user logout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthLogoutResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/xauth/me":{"get":{"tags":["XAuth"],"summary":"Get current user session information","description":"Returns information about the currently authenticated user session.","operationId":"xauth_me","responses":{"200":{"description":"Current user session information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthMeResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/xauth/passkey/list":{"get":{"tags":["XAuth"],"summary":"List user's passkeys","description":"Returns a list of all passkeys registered for the authenticated user.","operationId":"xauth_passkey_list","responses":{"200":{"description":"List of user's passkeys","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthPasskeyListResponse"}}}},"401":{"description":"Unauthorized - invalid or missing authentication","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/xauth/passkey/login/start":{"post":{"tags":["XAuth"],"summary":"Start passkey login process","description":"Initiates the passkey login process for a user. Returns the session ID, session token, and WebAuthn credential request options that should be used by the client to authenticate with the passkey.","operationId":"xauth_passkey_login_start","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthPasskeyLoginStartRequest"}}},"required":true},"responses":{"200":{"description":"Passkey login started successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthPasskeyLoginStartResponse"}}}},"400":{"description":"Invalid login request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}}}},"/xauth/passkey/login/verify":{"post":{"tags":["XAuth"],"summary":"Verify and complete passkey login","description":"Completes the passkey login process by verifying the WebAuthn credential assertion created by the client. The session_id and session_token must match those returned from the start endpoint, and the public_key_credential must be the credential assertion created by the WebAuthn API. Upon successful verification, an auth_token cookie is set and the user_id is returned.","operationId":"xauth_passkey_login_verify","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthPasskeyLoginVerifyRequest"}}},"required":true},"responses":{"200":{"description":"Passkey login verified successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthPasskeyLoginVerifyResponse"}}}},"400":{"description":"Invalid verification data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"404":{"description":"Session not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"409":{"description":"Session already completed or expired","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}}}},"/xauth/passkey/register/start":{"post":{"tags":["XAuth"],"summary":"Start passkey registration process","description":"Initiates the passkey registration process for the authenticated user. Returns the passkey ID and WebAuthn credential creation options that should be used by the client to create the passkey.","operationId":"xauth_passkey_register_start","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthPasskeyRegisterStartRequest"}}},"required":true},"responses":{"200":{"description":"Passkey registration started successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthPasskeyRegisterStartResponse"}}}},"401":{"description":"Unauthorized - invalid or missing authentication","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/xauth/passkey/register/verify":{"post":{"tags":["XAuth"],"summary":"Verify and complete passkey registration","description":"Completes the passkey registration process by verifying the WebAuthn credential created by the client. The passkey_id must match the one returned from the start endpoint, and the public_key_credential must be the credential created by the WebAuthn API.","operationId":"xauth_passkey_register_verify","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthPasskeyRegisterVerifyRequest"}}},"required":true},"responses":{"200":{"description":"Passkey registration verified successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthPasskeyRegisterVerifyResponse"}}}},"400":{"description":"Invalid verification data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"401":{"description":"Unauthorized - invalid or missing authentication","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"404":{"description":"Passkey registration not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/xauth/passkey/{passkey_id}":{"delete":{"tags":["XAuth"],"summary":"Remove a passkey","description":"Removes a specific passkey from the authenticated user's account.","operationId":"xauth_passkey_remove","parameters":[{"name":"passkey_id","in":"path","description":"The unique identifier of the passkey to remove","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Passkey removed successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthPasskeyRemoveResponse"}}}},"401":{"description":"Unauthorized - invalid or missing authentication","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"404":{"description":"Passkey not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/xauth/register":{"post":{"tags":["XAuth"],"summary":"Register new user with email and password","description":"Creates a new user account in Zitadel and automatically logs them in, returning an auth token and session cookie.","operationId":"xauth_register","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthRegisterRequest"}}},"required":true},"responses":{"200":{"description":"Successful user registration","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthRegisterResponse"}}}},"409":{"description":"User already exists","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}}}},"/xauth/service-principals":{"get":{"tags":["XAuth"],"summary":"List machine users (service principals)","operationId":"xauth_service_principals_list","responses":{"200":{"description":"List of service principals","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthServicePrincipalListResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]},"post":{"tags":["XAuth"],"summary":"Create a machine user (service principal)","operationId":"xauth_service_principals_create","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthCreateServicePrincipalRequest"}}},"required":true},"responses":{"201":{"description":"Service principal created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthServicePrincipalResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/xauth/service-principals/{spId}":{"delete":{"tags":["XAuth"],"summary":"Delete a service principal","operationId":"xauth_service_principals_delete","parameters":[{"name":"spId","in":"path","description":"Service principal ID","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Service principal deleted"},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/xauth/service-principals/{spId}/api-keys":{"get":{"tags":["XAuth"],"summary":"List personal access tokens for a service principal","operationId":"xauth_api_keys_list","parameters":[{"name":"spId","in":"path","description":"Service principal ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"List of API keys","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthApiKeyListResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]},"post":{"tags":["XAuth"],"summary":"Create a personal access token (API key) for a service principal","operationId":"xauth_api_keys_create","parameters":[{"name":"spId","in":"path","description":"Service principal ID","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthCreateApiKeyRequest"}}},"required":true},"responses":{"201":{"description":"API key created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthCreateApiKeyResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/xauth/service-principals/{spId}/api-keys/{keyId}":{"delete":{"tags":["XAuth"],"summary":"Delete a personal access token (API key)","operationId":"xauth_api_keys_delete","parameters":[{"name":"spId","in":"path","description":"Service principal ID","required":true,"schema":{"type":"string"}},{"name":"keyId","in":"path","description":"API key (PAT) ID","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"API key deleted"},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/xauth/sessions":{"get":{"tags":["XAuth"],"summary":"List active sessions across account slots","description":"Reads auth_token_0 through auth_token_9 cookies, validates each with Zitadel, and returns info for valid sessions.","operationId":"xauth_sessions","responses":{"200":{"description":"List of active sessions","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/XAuthSessionInfo"}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}}}},"/xauth/verify-email/confirm/link":{"get":{"tags":["XAuth"],"summary":"Verify email with code via GET link","description":"Verifies user email using code from verification email via GET request with query parameters.","operationId":"xauth_verify_email_confirm_link","parameters":[{"name":"code","in":"query","description":"Verification code from email","required":true,"schema":{"type":"string"}},{"name":"userId","in":"query","description":"User ID to verify","required":true,"schema":{"type":"string"}},{"name":"orgId","in":"query","description":"Organization ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Email verified successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthVerifyEmailConfirmLinkResponse"}}}},"400":{"description":"Invalid parameters or verification failed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}}}},"/xauth/verify-email/confirm/request":{"post":{"tags":["XAuth"],"summary":"Verify email with code","description":"Verifies user email using code from verification email.","operationId":"xauth_verify_email_confirm_request","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthVerifyEmailConfirmRequestRequest"}}},"required":true},"responses":{"200":{"description":"Email verified successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthVerifyEmailConfirmRequestResponse"}}}},"400":{"description":"Invalid parameters or verification failed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}}}},"/xauth/verify-email/is-verified":{"get":{"tags":["XAuth"],"summary":"Check if user's email is verified","description":"Returns the verification status of the authenticated user's email address.","operationId":"xauth_verify_email_is_verified","responses":{"200":{"description":"Email verification status retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthVerifyEmailIsVerifiedResponse"}}}},"401":{"description":"Unauthorized - invalid or missing session","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/xauth/verify-email/resend":{"post":{"tags":["XAuth"],"summary":"Resend email verification code","description":"Resends the email verification code to the authenticated user. Returns an error if the email is already verified.","operationId":"xauth_verify_email_resend","responses":{"200":{"description":"Verification email sent successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthVerifyEmailResendResponse"}}}},"400":{"description":"Email is already verified","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"401":{"description":"Unauthorized - invalid or missing session","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/xauth/verify-phone/resend":{"post":{"tags":["XAuth"],"summary":"Resend phone verification code","description":"Resends the phone verification code to the authenticated user. Returns an error if the phone is already verified or not set.","operationId":"xauth_verify_phone_resend","responses":{"200":{"description":"Verification SMS sent successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthVerifyPhoneResendResponse"}}}},"400":{"description":"Phone is already verified or not set","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"401":{"description":"Unauthorized - invalid or missing session","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/xauth/verify-phone/set-number":{"post":{"tags":["XAuth"],"summary":"Set user phone number","description":"Sets the phone number for the authenticated user and sends a verification SMS.","operationId":"xauth_verify_phone_set_number","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthVerifyPhoneSetNumberRequest"}}},"required":true},"responses":{"200":{"description":"Phone number set successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthVerifyPhoneSetNumberResponse"}}}},"400":{"description":"Invalid phone number","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"401":{"description":"Unauthorized - invalid or missing session","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}},"/xauth/verify-phone/verify":{"post":{"tags":["XAuth"],"summary":"Verify phone with code","description":"Verifies user phone number using the code received via SMS.","operationId":"xauth_verify_phone_verify","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthVerifyPhoneVerifyRequest"}}},"required":true},"responses":{"200":{"description":"Phone verified successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XAuthVerifyPhoneVerifyResponse"}}}},"400":{"description":"Invalid verification code or verification failed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"401":{"description":"Unauthorized - invalid or missing session","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}},"security":[{"bearer_auth":[]}]}}},"components":{"schemas":{"ChartDataPoint":{"type":"object","description":"Punkt danych wykresu cenowego.","required":["timestamp","price"],"properties":{"timestamp":{"type":"integer","format":"int64"},"price":{"type":"number","format":"double"}}},"DfnsAlgorandStandardAsset2":{"type":"object","description":"DfnsAlgorandStandardAsset2 : Transfer Algorand standard assets, or [ASAs](https://developer.algorand.org/docs/get-details/asa/).","required":["kind","assetId","to","amount"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsAlgorandStandardAsset2Kind"},"assetId":{"type":"string","description":"The token asset id."},"to":{"type":"string","description":"The destination address."},"amount":{"type":"string","description":"The amount of tokens to transfer in minimum denomination."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsAlgorandStandardAsset2Kind":{"type":"string","description":"","enum":["Asa"]},"DfnsAptosFungibleAssetAip211":{"type":"object","description":"DfnsAptosFungibleAssetAip211 : Transfer Aptos fungible asset that implement the [AIP-21 specification](https://github.com/aptos-foundation/AIPs/blob/main/aips/aip-21.md).","required":["kind","metadata","to","amount"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsAptosFungibleAssetAip211Kind"},"metadata":{"type":"string","description":"The asset metadata address."},"to":{"type":"string","description":"The destination address."},"amount":{"type":"string","description":"The amount of tokens to transfer in minimum denomination."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsAptosFungibleAssetAip211Kind":{"type":"string","description":"","enum":["Aip21"]},"DfnsAuthActionInitPost200Response":{"type":"object","required":["challenge","challengeIdentifier","supportedCredentialKinds","userVerification","attestation","allowCredentials","externalAuthenticationUrl"],"properties":{"challenge":{"type":"string","description":"Challenge (string) to be signed by the requester with his private key."},"challengeIdentifier":{"type":"string","description":"A JWT that identifies the signing session."},"rp":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsAuthActionInitPost200ResponseRp"}]},"supportedCredentialKinds":{"type":"array","items":{"$ref":"#/components/schemas/DfnsAuthActionInitPost200ResponseSupportedCredentialKindsInner"},"description":"Identifies the kind of credentials that can be used to sign the user action."},"userVerification":{"$ref":"#/components/schemas/DfnsAuthActionInitPost200ResponseUserVerification","description":"Value indicating if the user should be prompted for a second factor. Can be one of the following values: * required to indicate the user must be prompted for their pin, biometrics, or another second factor option * preferred to indicate the user should be prompted for a second factor if it is supported * discouraged to indicate the user should not be prompted for their second factor unless the device requires it"},"attestation":{"$ref":"#/components/schemas/DfnsAuthActionInitPost200ResponseAttestation","description":"Identifies the information needed to verify the user's signing certificate; can be one of the following: * none: indicates no attestation data is required * indirect: indicates the attestation data should be given, but that it can be generated using an Anonymization CA * direct: indicates the attestation data must be given and should be generated by the authenticator * enterprise: indicates the attestation data should include information to uniquely identify the user's device"},"allowCredentials":{"$ref":"#/components/schemas/DfnsAuthActionInitPost200ResponseAllowCredentials"},"externalAuthenticationUrl":{"type":"string","description":"Optional url containing a secret value that can be used to enable cross device/origin signing."}}},"DfnsAuthActionInitPost200ResponseAllowCredentials":{"type":"object","description":"DfnsAuthActionInitPost200ResponseAllowCredentials : List of credentials that the user can use to sign the user action.","required":["key","webauthn"],"properties":{"key":{"type":"array","items":{"$ref":"#/components/schemas/DfnsAuthActionInitPost200ResponseAllowCredentialsKeyInner"},"description":"List of keys that the user can use to sign the user action."},"passwordProtectedKey":{"type":["array","null"],"items":{"$ref":"#/components/schemas/DfnsAuthActionInitPost200ResponseAllowCredentialsPasswordProtectedKeyInner"},"description":"List of password protected keys that the user can use to sign the login challenge."},"webauthn":{"type":"array","items":{"$ref":"#/components/schemas/DfnsAuthActionInitPost200ResponseAllowCredentialsKeyInner"},"description":"List of WebAuthn credentials that the user can use to sign the user action."}}},"DfnsAuthActionInitPost200ResponseAllowCredentialsKeyInner":{"type":"object","required":["type","id"],"properties":{"type":{"$ref":"#/components/schemas/DfnsAuthActionInitPost200ResponseAllowCredentialsKeyInnerType","description":"Is always `public-key`."},"id":{"type":"string","description":"ID that identifies the credential."}}},"DfnsAuthActionInitPost200ResponseAllowCredentialsKeyInnerType":{"type":"string","description":"Is always `public-key`.","enum":["public-key"]},"DfnsAuthActionInitPost200ResponseAllowCredentialsPasswordProtectedKeyInner":{"type":"object","required":["type","id","encryptedPrivateKey"],"properties":{"type":{"$ref":"#/components/schemas/DfnsAuthActionInitPost200ResponseAllowCredentialsPasswordProtectedKeyInnerType","description":"Is always `public-key`."},"id":{"type":"string","description":"ID that identifies the credential."},"encryptedPrivateKey":{"type":"string","description":"Encrypted Private Key. Only the user knows the password to decrypt it and have access to the private key."}}},"DfnsAuthActionInitPost200ResponseAllowCredentialsPasswordProtectedKeyInnerType":{"type":"string","description":"Is always `public-key`.","enum":["public-key"]},"DfnsAuthActionInitPost200ResponseAttestation":{"type":"string","description":"Identifies the information needed to verify the user's signing certificate; can be one of the following: * none: indicates no attestation data is required * indirect: indicates the attestation data should be given, but that it can be generated using an Anonymization CA * direct: indicates the attestation data must be given and should be generated by the authenticator * enterprise: indicates the attestation data should include information to uniquely identify the user's device","enum":["none","indirect","direct","enterprise"]},"DfnsAuthActionInitPost200ResponseRp":{"type":"object","description":"DfnsAuthActionInitPost200ResponseRp : Deprecated. Should not be used.","required":["id","name"],"properties":{"id":{"type":"string"},"name":{"type":"string"}}},"DfnsAuthActionInitPost200ResponseSupportedCredentialKindsInner":{"type":"object","required":["kind","factor","requiresSecondFactor"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsCredentialKind"},"factor":{"$ref":"#/components/schemas/DfnsAuthActionInitPost200ResponseSupportedCredentialKindsInnerFactor","description":"Indicates if the credential can be used as a first factor, second factor, or either; can be `first`, `second`, or `either`."},"requiresSecondFactor":{"type":"boolean","description":"When true indicates a second factor credential is required if the credential is used as a first factor."}}},"DfnsAuthActionInitPost200ResponseSupportedCredentialKindsInnerFactor":{"type":"string","description":"Indicates if the credential can be used as a first factor, second factor, or either; can be `first`, `second`, or `either`.","enum":["first","second","either"]},"DfnsAuthActionInitPost200ResponseUserVerification":{"type":"string","description":"Value indicating if the user should be prompted for a second factor. Can be one of the following values: * required to indicate the user must be prompted for their pin, biometrics, or another second factor option * preferred to indicate the user should be prompted for a second factor if it is supported * discouraged to indicate the user should not be prompted for their second factor unless the device requires it","enum":["required","preferred","discouraged"]},"DfnsAuthAppsGet200ResponseItemsInnerPermissionAssignmentsInner":{"type":"object","required":["permissionName","permissionId","assignmentId"],"properties":{"permissionName":{"type":"string"},"permissionId":{"type":"string"},"assignmentId":{"type":"string"},"operations":{"type":["array","null"],"items":{"type":"string"}}}},"DfnsAuthCredentialsGet200Response":{"type":"object","required":["items"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/DfnsAuthCredentialsGet200ResponseItemsInner"}}}},"DfnsAuthCredentialsGet200ResponseItemsInner":{"type":"object","required":["kind","credentialId","credentialUuid","dateCreated","isActive","name","publicKey","relyingPartyId","origin"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsAuthCredentialsGet200ResponseItemsInnerKind"},"credentialId":{"type":"string"},"credentialUuid":{"type":"string"},"dateCreated":{"type":"string"},"isActive":{"type":"boolean"},"name":{"type":"string"},"publicKey":{"type":"string"},"relyingPartyId":{"type":"string"},"origin":{"type":"string"}}},"DfnsAuthCredentialsGet200ResponseItemsInnerKind":{"type":"string","description":"","enum":["Fido2","Key","Password","Totp","RecoveryKey","PasswordProtectedKey"]},"DfnsAuthCredentialsInitPost200Response":{"oneOf":[{"$ref":"#/components/schemas/DfnsFido2Passkeys3"},{"$ref":"#/components/schemas/DfnsPublicPrivateKeyPair3"},{"$ref":"#/components/schemas/DfnsPasswordProtectedKey3"},{"$ref":"#/components/schemas/DfnsRecoveryCredentials"},{"$ref":"#/components/schemas/DfnsDeprecatedPassword2"},{"$ref":"#/components/schemas/DfnsDeprecatedTotp2"}]},"DfnsAuthLoginDelegatedPost200Response":{"type":"object","required":["token"],"properties":{"token":{"type":"string"}}},"DfnsAuthRecoverUserPost200Response":{"type":"object","required":["credential","user"],"properties":{"credential":{"$ref":"#/components/schemas/DfnsAuthRecoverUserPost200ResponseCredential"},"user":{"$ref":"#/components/schemas/DfnsAuthRecoverUserPost200ResponseUser"}}},"DfnsAuthRecoverUserPost200ResponseCredential":{"type":"object","required":["uuid","kind","name"],"properties":{"uuid":{"type":"string"},"kind":{"$ref":"#/components/schemas/DfnsAuthRecoverUserPost200ResponseCredentialKind"},"name":{"type":"string"}}},"DfnsAuthRecoverUserPost200ResponseCredentialKind":{"type":"string","description":"","enum":["Fido2","Key","Password","Totp","RecoveryKey","PasswordProtectedKey"]},"DfnsAuthRecoverUserPost200ResponseUser":{"type":"object","required":["id","username","orgId"],"properties":{"id":{"type":"string"},"username":{"type":"string"},"orgId":{"type":"string"}}},"DfnsAuthRegistrationDelegatedPost200Response":{"type":"object","required":["user","temporaryAuthenticationToken","challenge","supportedCredentialKinds","authenticatorSelection","attestation","pubKeyCredParams","excludeCredentials","otpUrl"],"properties":{"user":{"$ref":"#/components/schemas/DfnsFido2Passkeys3User"},"temporaryAuthenticationToken":{"type":"string"},"challenge":{"type":"string"},"rp":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsFido2Passkeys3Rp"}]},"supportedCredentialKinds":{"$ref":"#/components/schemas/DfnsAuthRegistrationDelegatedPost200ResponseSupportedCredentialKinds"},"authenticatorSelection":{"$ref":"#/components/schemas/DfnsFido2Passkeys3AuthenticatorSelection"},"attestation":{"$ref":"#/components/schemas/DfnsAuthRegistrationDelegatedPost200ResponseAttestation","description":"Identifies the information needed to verify the user's signing certificate; can be one of the following: * none: indicates no attestation data is required * indirect: indicates the attestation data should be given, but that it can be generated using an Anonymization CA * direct: indicates the attestation data must be given and should be generated by the authenticator * enterprise: indicates the attestation data should include information to uniquely identify the user's device"},"pubKeyCredParams":{"type":"array","items":{"$ref":"#/components/schemas/DfnsFido2Passkeys3PubKeyCredParamsInner"}},"excludeCredentials":{"type":"array","items":{"$ref":"#/components/schemas/DfnsAuthActionInitPost200ResponseAllowCredentialsKeyInner"}},"otpUrl":{"type":"string"}}},"DfnsAuthRegistrationDelegatedPost200ResponseAttestation":{"type":"string","description":"Identifies the information needed to verify the user's signing certificate; can be one of the following: * none: indicates no attestation data is required * indirect: indicates the attestation data should be given, but that it can be generated using an Anonymization CA * direct: indicates the attestation data must be given and should be generated by the authenticator * enterprise: indicates the attestation data should include information to uniquely identify the user's device","enum":["none","indirect","direct","enterprise"]},"DfnsAuthRegistrationDelegatedPost200ResponseSupportedCredentialKinds":{"type":"object","required":["firstFactor","secondFactor"],"properties":{"firstFactor":{"type":"array","items":{"$ref":"#/components/schemas/DfnsAuthRegistrationDelegatedPost200ResponseSupportedCredentialKindsFirstFactor"}},"secondFactor":{"type":"array","items":{"$ref":"#/components/schemas/DfnsAuthRegistrationDelegatedPost200ResponseSupportedCredentialKindsSecondFactor"}}}},"DfnsAuthRegistrationDelegatedPost200ResponseSupportedCredentialKindsFirstFactor":{"type":"string","description":"","enum":["Fido2","Key","Password","Totp","RecoveryKey","PasswordProtectedKey"]},"DfnsAuthRegistrationDelegatedPost200ResponseSupportedCredentialKindsSecondFactor":{"type":"string","description":"","enum":["Fido2","Key","Password","Totp","RecoveryKey","PasswordProtectedKey"]},"DfnsAuthRegistrationEnduserPost200Response":{"type":"object","required":["credential","user","authentication","wallets"],"properties":{"credential":{"$ref":"#/components/schemas/DfnsAuthRecoverUserPost200ResponseCredential"},"user":{"$ref":"#/components/schemas/DfnsAuthRecoverUserPost200ResponseUser"},"authentication":{"$ref":"#/components/schemas/DfnsAuthLoginDelegatedPost200Response"},"wallets":{"type":"array","items":{"$ref":"#/components/schemas/DfnsWallet"}}}},"DfnsAuthRegistrationEnduserPostRequestFirstFactorCredential":{"oneOf":[{"$ref":"#/components/schemas/DfnsFido2Passkeys9"},{"$ref":"#/components/schemas/DfnsPublicPrivateKeyPair8"},{"$ref":"#/components/schemas/DfnsDeprecatedPassword7"},{"$ref":"#/components/schemas/DfnsPasswordProtectedKey8"}]},"DfnsAuthRegistrationEnduserPostRequestSecondFactorCredential":{"oneOf":[{"$ref":"#/components/schemas/DfnsFido2Passkeys9"},{"$ref":"#/components/schemas/DfnsPublicPrivateKeyPair8"},{"$ref":"#/components/schemas/DfnsDeprecatedTotp7"},{"$ref":"#/components/schemas/DfnsPasswordProtectedKey8"}]},"DfnsAuthRegistrationEnduserPostRequestWalletsInner":{"type":"object","required":["network"],"properties":{"network":{"$ref":"#/components/schemas/DfnsAuthRegistrationEnduserPostRequestWalletsInnerNetwork"},"name":{"type":["string","null"],"description":"Wallet nickname."}}},"DfnsAuthRegistrationEnduserPostRequestWalletsInnerNetwork":{"type":"string","description":"","enum":["Algorand","AlgorandTestnet","Aptos","AptosTestnet","ArbitrumOne","ArbitrumSepolia","AvalancheC","AvalancheCFuji","BabylonGenesis","BabylonTestnet5","Base","BaseSepolia","Berachain","BerachainBepolia","Bitcoin","BitcoinSignet","BitcoinTestnet3","BitcoinCash","Bob","BobSepolia","Bsc","BscTestnet","Canton","CantonTestnet","Cardano","CardanoPreprod","Celo","CeloAlfajores","Codex","CodexSepolia","CosmosHub4","CosmosIcsTestnet","Dogecoin","Ethereum","EthereumGoerli","EthereumSepolia","EthereumHolesky","EthereumHoodi","FantomOpera","FantomTestnet","FlareC","FlareCCoston2","Hedera","HederaTestnet","Ink","InkSepolia","InternetComputer","Ion","IonTestnet","Iota","IotaTestnet","KadenaTestnet4","Kadena","Kaspa","Kusama","Litecoin","Near","NearTestnet","Optimism","OptimismSepolia","Origyn","Plume","PlumeSepolia","Polkadot","Polygon","PolygonAmoy","Polymesh","PolymeshTestnet","Race","RaceSepolia","SeiAtlantic2","SeiPacific1","Solana","SolanaDevnet","Starknet","StarknetSepolia","Stellar","StellarTestnet","Sui","SuiTestnet","Tsc","TscTestnet1","Tezos","TezosGhostnet","Ton","TonTestnet","Tron","TronNile","Westend","XrpLedger","XrpLedgerTestnet"]},"DfnsAuthRegistrationPostRequestFirstFactorCredential":{"oneOf":[{"$ref":"#/components/schemas/DfnsFido2Passkeys9"},{"$ref":"#/components/schemas/DfnsPublicPrivateKeyPair8"},{"$ref":"#/components/schemas/DfnsDeprecatedPassword6"},{"$ref":"#/components/schemas/DfnsPasswordProtectedKey8"}]},"DfnsAuthRegistrationPostRequestSecondFactorCredential":{"oneOf":[{"$ref":"#/components/schemas/DfnsFido2Passkeys9"},{"$ref":"#/components/schemas/DfnsPublicPrivateKeyPair8"},{"$ref":"#/components/schemas/DfnsDeprecatedTotp6"},{"$ref":"#/components/schemas/DfnsPasswordProtectedKey8"}]},"DfnsCantonTransferPreapproval2":{"type":"object","description":"DfnsCantonTransferPreapproval2 : Enable canton coin auto approval.","required":["kind"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsCantonTransferPreapproval2Kind"},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key (read more [here](https://docs.dfns.co/api-reference/idempotency))."}}},"DfnsCantonTransferPreapproval2Kind":{"type":"string","description":"","enum":["TransferPreapproval"]},"DfnsCardanoAsset1":{"type":"object","description":"DfnsCardanoAsset1 : Transfer Cardano assets following [Mary update](https://docs.cardano.org/about-cardano/evolution/upgrades/mary)","required":["kind","assetId","to","amount"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsCardanoAsset1Kind"},"assetId":{"type":"string","description":"The token asset id."},"to":{"type":"string","description":"The destination address."},"amount":{"type":"string","description":"The amount of tokens to transfer in minimum denomination."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsCardanoAsset1Kind":{"type":"string","description":"","enum":["Asset"]},"DfnsCoreAssetQuotes":{"type":"object","description":"Wyceny assetu w walutach fiat.","properties":{"USD":{"type":["number","null"],"format":"double","description":"Wycena w USD"},"EUR":{"type":["number","null"],"format":"double","description":"Wycena w EUR"}}},"DfnsCoreBitcoinFeeLevel":{"type":"object","description":"Poziom opłat Bitcoin (feeRate + blockHorizon).","required":["feeRate","blockHorizon"],"properties":{"feeRate":{"type":"string"},"blockHorizon":{"type":"number","format":"double"}}},"DfnsCoreBitcoinFees":{"type":"object","description":"Opłaty dla sieci Bitcoin-like.","required":["kind","network","blockNumber","slow","standard","fast"],"properties":{"kind":{"type":"string"},"network":{"type":"string"},"blockNumber":{"type":"number","format":"double"},"slow":{"$ref":"#/components/schemas/DfnsCoreBitcoinFeeLevel"},"standard":{"$ref":"#/components/schemas/DfnsCoreBitcoinFeeLevel"},"fast":{"$ref":"#/components/schemas/DfnsCoreBitcoinFeeLevel"}}},"DfnsCoreCredentialKind":{"type":"string","description":"Rodzaj poświadczenia do utworzenia.","enum":["Fido2","Key","Password","Totp","RecoveryKey","PasswordProtectedKey"]},"DfnsCoreCredentialsCodeAddCompleteRequest":{"type":"object","description":"Request do zakończenia dodawania credential z kodem.","required":["credential_kind","credential_info","credential_name","challenge_identifier"],"properties":{"credential_kind":{"$ref":"#/components/schemas/DfnsCoreCredentialKind","description":"Rodzaj poświadczenia (aktualnie wspierany tylko \"Fido2\")."},"credential_info":{"$ref":"#/components/schemas/DfnsCoreFido2CredentialInfo","description":"Informacje o poświadczeniu Fido2."},"credential_name":{"type":"string","description":"Nazwa wyświetlana dla poświadczenia."},"challenge_identifier":{"type":"string","description":"Identyfikator challenge z kroku init."}}},"DfnsCoreCredentialsCodeAddInitRequest":{"type":"object","description":"Request do inicjalizacji dodawania credential z kodem.","required":["credential_kind","code"],"properties":{"credential_kind":{"$ref":"#/components/schemas/DfnsCoreCredentialKind","description":"Rodzaj poświadczenia do utworzenia."},"code":{"type":"string","description":"Kod jednorazowy z /auth/credentials/code."}}},"DfnsCoreCredentialsCodeGenerateCompleteRequest":{"type":"object","description":"Request do zakończenia generowania kodu jednorazowego.","required":["challenge_identifier","first_factor","expiration"],"properties":{"challenge_identifier":{"type":"string","description":"Identyfikator challenge z kroku init."},"first_factor":{"$ref":"#/components/schemas/DfnsCoreFido2Assertion","description":"Podpisane dane FIDO2."},"expiration":{"type":"string","description":"Czas wygaśnięcia kodu (ISO-8601 datetime)."}}},"DfnsCoreCredentialsCodeGenerateInitRequest":{"type":"object","description":"Request do inicjalizacji generowania kodu jednorazowego.","required":["expiration"],"properties":{"expiration":{"type":"string","description":"Czas wygaśnięcia kodu (ISO-8601 datetime). DFNS limituje max 60s."}}},"DfnsCoreCredentialsCredentialActivateCompleteRequest":{"type":"object","description":"Request do zakończenia aktywacji credential.","required":["challenge_identifier","first_factor"],"properties":{"challenge_identifier":{"type":"string","description":"Identyfikator challenge z kroku init."},"first_factor":{"$ref":"#/components/schemas/DfnsCoreFido2Assertion","description":"Podpisane dane FIDO2."}}},"DfnsCoreCredentialsCredentialDeactivateCompleteRequest":{"type":"object","description":"Request do zakończenia dezaktywacji credential.","required":["challenge_identifier","first_factor"],"properties":{"challenge_identifier":{"type":"string","description":"Identyfikator challenge z kroku init."},"first_factor":{"$ref":"#/components/schemas/DfnsCoreFido2Assertion","description":"Podpisane dane FIDO2."}}},"DfnsCoreEncryptedKeyShare":{"type":"object","description":"Zaszyfrowany udział klucza (key share).","required":["signerId","encryptedKeyShare"],"properties":{"signerId":{"type":"string","description":"ID signer'a"},"encryptedKeyShare":{"type":"string","description":"Zaszyfrowany udział klucza (base64)"}}},"DfnsCoreEvmFeeLevel":{"type":"object","description":"Poziom opłat EVM (maxPriorityFeePerGas + maxFeePerGas).","required":["maxPriorityFeePerGas","maxFeePerGas"],"properties":{"maxPriorityFeePerGas":{"type":"string"},"maxFeePerGas":{"type":"string"}}},"DfnsCoreEvmFees":{"type":"object","description":"Opłaty dla sieci EVM (EIP-1559).","required":["kind","network","blockNumber","slow","standard","fast","baseFeePerGas"],"properties":{"kind":{"type":"string"},"network":{"type":"string"},"blockNumber":{"type":"number","format":"double"},"slow":{"$ref":"#/components/schemas/DfnsCoreEvmFeeLevel"},"standard":{"$ref":"#/components/schemas/DfnsCoreEvmFeeLevel"},"fast":{"$ref":"#/components/schemas/DfnsCoreEvmFeeLevel"},"baseFeePerGas":{"type":"string"}}},"DfnsCoreExportScheme":{"type":"object","description":"Schemat eksportu (protokół + krzywa).","required":["protocol","curve"],"properties":{"protocol":{"type":"string","description":"Protokół MPC (np. \"CGGMP21\", \"CGGMP24\", \"FROST\")"},"curve":{"type":"string","description":"Krzywa eliptyczna (np. \"secp256k1\", \"ed25519\", \"stark\")"}}},"DfnsCoreFido2Assertion":{"type":"object","description":"FIDO2 credential assertion z podpisem użytkownika.","required":["credId","clientData","signature","authenticatorData"],"properties":{"credId":{"type":"string","description":"ID credential"},"clientData":{"type":"string","description":"Client data (base64)"},"signature":{"type":"string","description":"Podpis (base64)"},"authenticatorData":{"type":"string","description":"Authenticator data (base64)"}}},"DfnsCoreFido2CredentialInfo":{"type":"object","description":"Informacje o poświadczeniu Fido2 (credId, clientData, attestationData).","required":["credId","clientData","attestationData"],"properties":{"credId":{"type":"string","description":"Credential ID (base64url)."},"clientData":{"type":"string","description":"Client data (base64)."},"attestationData":{"type":"string","description":"Attestation data (base64)."}}},"DfnsCoreKeyCreateCompleteRequest":{"type":"object","description":"Request do zakończenia tworzenia klucza.","required":["scheme","curve","challengeIdentifier","firstFactor"],"properties":{"scheme":{"$ref":"#/components/schemas/DfnsKeysPostRequestScheme","description":"Schemat kryptograficzny (musi być taki sam jak w init)"},"curve":{"$ref":"#/components/schemas/DfnsKeysPostRequestCurve","description":"Krzywa kryptograficzna (musi być taka sama jak w init)"},"name":{"type":["string","null"],"description":"Opcjonalna nazwa klucza (musi być taka sama jak w init)"},"challengeIdentifier":{"type":"string","description":"Identyfikator challenge z kroku init"},"firstFactor":{"$ref":"#/components/schemas/DfnsCoreFido2Assertion","description":"Podpisane dane FIDO2"}}},"DfnsCoreKeyCreateCompleteResponse":{"type":"object","description":"Response z utworzenia klucza.","required":["key"],"properties":{"key":{"$ref":"#/components/schemas/DfnsKeysGet200ResponseItemsInner"}}},"DfnsCoreKeyCreateInitRequest":{"type":"object","description":"Request do inicjalizacji tworzenia klucza.","required":["scheme","curve"],"properties":{"scheme":{"$ref":"#/components/schemas/DfnsKeysPostRequestScheme","description":"Schemat kryptograficzny (ECDSA, EdDSA, Schnorr, DH)"},"curve":{"$ref":"#/components/schemas/DfnsKeysPostRequestCurve","description":"Krzywa kryptograficzna (ed25519, secp256k1, stark)"},"name":{"type":["string","null"],"description":"Opcjonalna nazwa klucza"}}},"DfnsCoreKeyExportCompleteRequest":{"type":"object","description":"Request do zakończenia eksportu klucza.","required":["encryptionKey","supportedSchemes","challengeIdentifier","firstFactor"],"properties":{"encryptionKey":{"type":"string","description":"Klucz publiczny do zaszyfrowania eksportu (ten sam co w init)"},"supportedSchemes":{"type":"array","items":{"$ref":"#/components/schemas/DfnsCoreExportScheme"},"description":"Obsługiwane schematy eksportu (te same co w init)"},"challengeIdentifier":{"type":"string","description":"Identyfikator challenge z kroku init"},"firstFactor":{"$ref":"#/components/schemas/DfnsCoreFido2Assertion","description":"Podpisane dane FIDO2"}}},"DfnsCoreKeyExportCompleteResponse":{"type":"object","description":"Response z eksportu klucza.","required":["publicKey","protocol","curve","minSigners","encryptedKeyShares"],"properties":{"publicKey":{"type":"string","description":"Klucz publiczny"},"protocol":{"type":"string","description":"Protokół MPC użyty do eksportu"},"curve":{"type":"string","description":"Krzywa eliptyczna"},"minSigners":{"type":"integer","format":"int32","description":"Minimalna liczba signer'ów do odtworzenia klucza"},"encryptedKeyShares":{"type":"array","items":{"$ref":"#/components/schemas/DfnsCoreEncryptedKeyShare"},"description":"Zaszyfrowane udziały klucza"}}},"DfnsCoreKeyExportInitRequest":{"type":"object","description":"Request do inicjalizacji eksportu klucza.","required":["encryptionKey","supportedSchemes"],"properties":{"encryptionKey":{"type":"string","description":"Klucz publiczny do zaszyfrowania eksportu (base64, format DFNS)"},"supportedSchemes":{"type":"array","items":{"$ref":"#/components/schemas/DfnsCoreExportScheme"},"description":"Obsługiwane schematy eksportu"}}},"DfnsCoreKeysListResponse":{"type":"object","description":"Response z listą kluczy użytkownika.","required":["keys"],"properties":{"keys":{"$ref":"#/components/schemas/DfnsKeysGet200Response"}}},"DfnsCoreNetWorth":{"type":"object","description":"Całkowita wartość portfela.","properties":{"USD":{"type":["number","null"],"format":"double","description":"Wartość w USD"},"EUR":{"type":["number","null"],"format":"double","description":"Wartość w EUR"}}},"DfnsCoreNetworkFeesResponse":{"oneOf":[{"$ref":"#/components/schemas/DfnsCoreBitcoinFees"},{"$ref":"#/components/schemas/DfnsCoreEvmFees"},{"$ref":"#/components/schemas/DfnsCoreSolanaFees"}],"description":"Odpowiedź z opłatami sieciowymi - może być Bitcoin, EVM lub Solana."},"DfnsCoreSolanaFeeLevel":{"type":"object","description":"Poziom opłat Solana (computeUnitPrice).","required":["computeUnitPrice"],"properties":{"computeUnitPrice":{"type":"string"}}},"DfnsCoreSolanaFees":{"type":"object","description":"Opłaty dla sieci Solana.","required":["kind","network","blockNumber","slow","standard","fast"],"properties":{"kind":{"type":"string"},"network":{"type":"string"},"blockNumber":{"type":"number","format":"double"},"slow":{"$ref":"#/components/schemas/DfnsCoreSolanaFeeLevel"},"standard":{"$ref":"#/components/schemas/DfnsCoreSolanaFeeLevel"},"fast":{"$ref":"#/components/schemas/DfnsCoreSolanaFeeLevel"}}},"DfnsCoreSupportedNetwork":{"type":"string","description":"Wspierane sieci blockchain.","enum":["Ethereum","EthereumSepolia","Bitcoin","Solana","Tron"]},"DfnsCoreUserDelegatedRegistrationCompleteRequest":{"type":"object","description":"Request do finalizacji delegowanej rejestracji (bez portfeli).","required":["temporary_authentication_token","first_factor_credential"],"properties":{"temporary_authentication_token":{"type":"string","description":"Temporary authentication token z odpowiedzi init."},"first_factor_credential":{"$ref":"#/components/schemas/DfnsAuthRegistrationPostRequestFirstFactorCredential","description":"First factor credential (wymagany)."},"second_factor_credential":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsAuthRegistrationPostRequestSecondFactorCredential","description":"Second factor credential (opcjonalny)."}]},"recovery_credential":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsRecoveryKey3","description":"Recovery credential (opcjonalny)."}]}}},"DfnsCoreUserDelegatedRegistrationCompleteResponse":{"$ref":"#/components/schemas/DfnsAuthRecoverUserPost200Response","description":"Response z finalizacji delegowanej rejestracji (bez portfeli).\n\nZawiera informacje o utworzonym credential i użytkowniku."},"DfnsCoreUserDelegatedRegistrationCompleteWithWalletsRequest":{"type":"object","description":"Request do finalizacji delegowanej rejestracji z portfelami.","required":["temporary_authentication_token","first_factor_credential","wallets"],"properties":{"temporary_authentication_token":{"type":"string","description":"Temporary authentication token z odpowiedzi init."},"first_factor_credential":{"$ref":"#/components/schemas/DfnsAuthRegistrationEnduserPostRequestFirstFactorCredential","description":"First factor credential (wymagany)."},"second_factor_credential":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsAuthRegistrationEnduserPostRequestSecondFactorCredential","description":"Second factor credential (opcjonalny)."}]},"recovery_credential":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsRecoveryKey4","description":"Recovery credential (opcjonalny)."}]},"wallets":{"type":"array","items":{"$ref":"#/components/schemas/DfnsAuthRegistrationEnduserPostRequestWalletsInner"},"description":"Portfele do utworzenia (wymagany, minimum 1)."}}},"DfnsCoreUserDelegatedRegistrationCompleteWithWalletsResponse":{"$ref":"#/components/schemas/DfnsAuthRegistrationEnduserPost200Response","description":"Response z finalizacji delegowanej rejestracji z portfelami.\n\nZawiera informacje o credential, użytkowniku, authentication oraz utworzonych portfelach."},"DfnsCoreUserDelegatedRegistrationInitResponse":{"$ref":"#/components/schemas/DfnsAuthRegistrationDelegatedPost200Response","description":"Response z inicjalizacji delegowanej rejestracji.\n\nZawiera challenge do podpisania przez credential użytkownika\noraz temporary authentication token do użycia w kroku complete."},"DfnsCoreUserGetResponse":{"$ref":"#/components/schemas/DfnsUser","description":"Response z pobierania użytkownika."},"DfnsCoreWalletAsset":{"oneOf":[{"allOf":[{"$ref":"#/components/schemas/DfnsCoreWalletAssetNative","description":"Natywny token blockchain (ETH, BTC, SOL, TRX)"},{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["Native"]}}}],"title":"DfnsWalletAssetNative","description":"Natywny token blockchain (ETH, BTC, SOL, TRX)"},{"allOf":[{"$ref":"#/components/schemas/DfnsCoreWalletAssetErc20","description":"Token ERC-20 na sieciach kompatybilnych z Ethereum"},{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["Erc20"]}}}],"title":"DfnsWalletAssetErc20","description":"Token ERC-20 na sieciach kompatybilnych z Ethereum"},{"allOf":[{"$ref":"#/components/schemas/DfnsCoreWalletAssetSpl","description":"Token SPL na Solanie"},{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["Spl"]}}}],"title":"DfnsWalletAssetSpl","description":"Token SPL na Solanie"},{"allOf":[{"$ref":"#/components/schemas/DfnsCoreWalletAssetSpl","description":"Token SPL-2022 (Token Extensions) na Solanie"},{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["Spl2022"]}}}],"title":"DfnsWalletAssetSpl2022","description":"Token SPL-2022 (Token Extensions) na Solanie"},{"allOf":[{"$ref":"#/components/schemas/DfnsCoreWalletAssetTrc20","description":"Token TRC-20 na Tron (smart contract)"},{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["Trc20"]}}}],"title":"DfnsWalletAssetTrc20","description":"Token TRC-20 na Tron (smart contract)"},{"allOf":[{"$ref":"#/components/schemas/DfnsCoreWalletAssetTrc10","description":"Token TRC-10 na Tron (natywny standard)"},{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["Trc10"]}}}],"title":"DfnsWalletAssetTrc10","description":"Token TRC-10 na Tron (natywny standard)"}],"description":"Enum reprezentujący różne typy assetów w portfelu.\n\nWspierane typy: Native, ERC-20, SPL, TRC-20, TRC-10"},"DfnsCoreWalletAssetErc20":{"type":"object","description":"Asset ERC-20.","required":["balance","symbol","decimals","contract"],"properties":{"balance":{"type":"string","description":"Saldo w najmniejszej jednostce"},"symbol":{"type":"string","description":"Symbol tokena"},"decimals":{"type":"integer","format":"int32","description":"Liczba miejsc dziesiętnych"},"contract":{"type":"string","description":"Adres kontraktu"},"verified":{"type":["boolean","null"],"description":"Czy token jest zweryfikowany"},"quotes":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsCoreAssetQuotes","description":"Wyceny w walutach fiat"}]}}},"DfnsCoreWalletAssetNative":{"type":"object","description":"Asset natywny blockchain.","required":["balance","symbol","decimals"],"properties":{"balance":{"type":"string","description":"Saldo w najmniejszej jednostce"},"symbol":{"type":"string","description":"Symbol tokena"},"decimals":{"type":"integer","format":"int32","description":"Liczba miejsc dziesiętnych"},"verified":{"type":["boolean","null"],"description":"Czy token jest zweryfikowany"},"quotes":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsCoreAssetQuotes","description":"Wyceny w walutach fiat"}]}}},"DfnsCoreWalletAssetSpl":{"type":"object","description":"Asset SPL (Solana).","required":["balance","symbol","decimals","mint"],"properties":{"balance":{"type":"string","description":"Saldo w najmniejszej jednostce"},"symbol":{"type":"string","description":"Symbol tokena"},"decimals":{"type":"integer","format":"int32","description":"Liczba miejsc dziesiętnych"},"mint":{"type":"string","description":"Adres mint"},"verified":{"type":["boolean","null"],"description":"Czy token jest zweryfikowany"},"quotes":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsCoreAssetQuotes","description":"Wyceny w walutach fiat"}]}}},"DfnsCoreWalletAssetTrc10":{"type":"object","description":"Asset TRC-10 (Tron natywny standard tokenów).","required":["balance","symbol","decimals","tokenId"],"properties":{"balance":{"type":"string","description":"Saldo w najmniejszej jednostce"},"symbol":{"type":"string","description":"Symbol tokena"},"decimals":{"type":"integer","format":"int32","description":"Liczba miejsc dziesiętnych"},"tokenId":{"type":"string","description":"ID tokena TRC-10"},"verified":{"type":["boolean","null"],"description":"Czy token jest zweryfikowany"},"quotes":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsCoreAssetQuotes","description":"Wyceny w walutach fiat"}]}}},"DfnsCoreWalletAssetTrc20":{"type":"object","description":"Asset TRC-20 (Tron smart contract token).","required":["balance","symbol","decimals","contract"],"properties":{"balance":{"type":"string","description":"Saldo w najmniejszej jednostce"},"symbol":{"type":"string","description":"Symbol tokena"},"decimals":{"type":"integer","format":"int32","description":"Liczba miejsc dziesiętnych"},"contract":{"type":"string","description":"Adres kontraktu"},"verified":{"type":["boolean","null"],"description":"Czy token jest zweryfikowany"},"quotes":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsCoreAssetQuotes","description":"Wyceny w walutach fiat"}]}}},"DfnsCoreWalletDetailsResponse":{"type":"object","description":"Response z pobrania szczegółów portfela.","required":["wallet"],"properties":{"wallet":{"$ref":"#/components/schemas/DfnsWallet"}}},"DfnsCoreWalletHistoryResponse":{"type":"object","description":"Response z historii transakcji portfela.","required":["walletId","network","items"],"properties":{"walletId":{"type":"string","description":"ID portfela"},"network":{"type":"string","description":"Sieć blockchain portfela"},"items":{"type":"array","items":{"$ref":"#/components/schemas/DfnsCoreWalletTransaction"},"description":"Lista transakcji on-chain"},"nextPageToken":{"type":["string","null"],"description":"Token do następnej strony (paginacja)"}}},"DfnsCoreWalletTransaction":{"oneOf":[{"allOf":[{"$ref":"#/components/schemas/DfnsCoreWalletTransactionNative"},{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["NativeTransfer"]}}}],"title":"NativeTransfer"},{"allOf":[{"$ref":"#/components/schemas/DfnsCoreWalletTransactionErc20"},{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["Erc20Transfer"]}}}],"title":"Erc20Transfer"},{"allOf":[{"$ref":"#/components/schemas/DfnsCoreWalletTransactionSpl"},{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["SplTransfer"]}}}],"title":"SplTransfer"},{"allOf":[{"$ref":"#/components/schemas/DfnsCoreWalletTransactionTrc10"},{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["Trc10Transfer"]}}}],"title":"Trc10Transfer"},{"allOf":[{"$ref":"#/components/schemas/DfnsCoreWalletTransactionTrc20"},{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["Trc20Transfer"]}}}],"title":"Trc20Transfer"},{"allOf":[{"$ref":"#/components/schemas/DfnsCoreWalletTransactionUtxo"},{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["UtxoTransfer"]}}}],"title":"UtxoTransfer"}],"description":"Tagged union of wallet transaction types.\n\nDiscriminated by the `kind` field which maps to:\n- `\"NativeTransfer\"` - Native token transfers (ETH, SOL, TRX, etc.)\n- `\"Erc20Transfer\"` - ERC-20 token transfers\n- `\"SplTransfer\"` - Solana SPL token transfers\n- `\"Trc10Transfer\"` - Tron TRC-10 token transfers\n- `\"Trc20Transfer\"` - Tron TRC-20 token transfers\n- `\"UtxoTransfer\"` - UTXO-chain transfers (Bitcoin, Bitcoin Cash, Litecoin, Dogecoin)"},"DfnsCoreWalletTransactionErc20":{"allOf":[{"type":"object","required":["walletId","direction","network","blockNumber","txHash","timestamp","metadata","kind","contract","from","to","value","decimals"],"properties":{"walletId":{"type":"string"},"direction":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOf5Direction"},"network":{"$ref":"#/components/schemas/DfnsNetwork"},"blockNumber":{"type":"number","format":"double"},"txHash":{"type":"string"},"index":{"type":["string","null"]},"timestamp":{"type":"string"},"metadata":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOfMetadata"},"kind":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOf5Kind"},"contract":{"type":"string"},"from":{"type":"string"},"to":{"type":"string"},"value":{"type":"string"},"fee":{"type":["string","null"]},"symbol":{"type":["string","null"],"description":"@deprecated use metadata.asset.symbol instead"},"decimals":{"type":"number","format":"double","description":"@deprecated use metadata.asset.decimals instead"},"verified":{"type":["boolean","null"],"description":"@deprecated use metadata.asset.verified instead"}}}]},"DfnsCoreWalletTransactionNative":{"allOf":[{"type":"object","required":["walletId","direction","network","blockNumber","txHash","timestamp","metadata","kind","value","symbol","decimals"],"properties":{"walletId":{"type":"string"},"direction":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOfDirection"},"network":{"$ref":"#/components/schemas/DfnsNetwork"},"blockNumber":{"type":"number","format":"double"},"txHash":{"type":"string"},"index":{"type":["string","null"]},"timestamp":{"type":"string"},"metadata":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOfMetadata"},"kind":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOfKind"},"from":{"type":["string","null"]},"to":{"type":["string","null"]},"value":{"type":"string"},"fee":{"type":["string","null"]},"memo":{"type":["string","null"]},"liquidityPool":{"type":["string","null"]},"balanceId":{"type":["string","null"]},"symbol":{"type":"string","description":"@deprecated use metadata.asset.symbol instead"},"decimals":{"type":"number","format":"double","description":"@deprecated use metadata.asset.decimals instead"},"verified":{"type":["boolean","null"],"description":"@deprecated use metadata.asset.verified instead"}}}]},"DfnsCoreWalletTransactionSpl":{"allOf":[{"type":"object","required":["walletId","direction","network","blockNumber","txHash","timestamp","metadata","kind","mint","value"],"properties":{"walletId":{"type":"string"},"direction":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOf14Direction"},"network":{"$ref":"#/components/schemas/DfnsNetwork"},"blockNumber":{"type":"number","format":"double"},"txHash":{"type":"string"},"index":{"type":["string","null"]},"timestamp":{"type":"string"},"metadata":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOfMetadata"},"kind":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOf14Kind"},"from":{"type":["string","null"]},"to":{"type":["string","null"]},"mint":{"type":"string"},"value":{"type":"string"},"fee":{"type":["string","null"]}}}]},"DfnsCoreWalletTransactionTrc10":{"allOf":[{"type":"object","required":["walletId","direction","network","blockNumber","txHash","timestamp","metadata","kind","tokenId","from","to","value"],"properties":{"walletId":{"type":"string"},"direction":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOf16Direction"},"network":{"$ref":"#/components/schemas/DfnsNetwork"},"blockNumber":{"type":"number","format":"double"},"txHash":{"type":"string"},"index":{"type":["string","null"]},"timestamp":{"type":"string"},"metadata":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOfMetadata"},"kind":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOf16Kind"},"tokenId":{"type":"string"},"from":{"type":"string"},"to":{"type":"string"},"value":{"type":"string"},"fee":{"type":["string","null"]}}}]},"DfnsCoreWalletTransactionTrc20":{"allOf":[{"type":"object","required":["walletId","direction","network","blockNumber","txHash","timestamp","metadata","kind","contract","from","to","value"],"properties":{"walletId":{"type":"string"},"direction":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOf17Direction"},"network":{"$ref":"#/components/schemas/DfnsNetwork"},"blockNumber":{"type":"number","format":"double"},"txHash":{"type":"string"},"index":{"type":["string","null"]},"timestamp":{"type":"string"},"metadata":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOfMetadata"},"kind":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOf17Kind"},"contract":{"type":"string"},"from":{"type":"string"},"to":{"type":"string"},"value":{"type":"string"},"fee":{"type":["string","null"]}}}]},"DfnsCoreWalletTransactionUtxo":{"allOf":[{"type":"object","required":["walletId","direction","network","blockNumber","txHash","timestamp","metadata","kind","froms","tos","value"],"properties":{"walletId":{"type":"string"},"direction":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOf19Direction"},"network":{"$ref":"#/components/schemas/DfnsNetwork"},"blockNumber":{"type":"number","format":"double"},"txHash":{"type":"string"},"index":{"type":["string","null"]},"timestamp":{"type":"string"},"metadata":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOfMetadata"},"kind":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOf19Kind"},"froms":{"type":"array","items":{"type":"string"}},"tos":{"type":"array","items":{"type":"string"}},"value":{"type":"string"},"fee":{"type":["string","null"]}}}]},"DfnsCoreWalletTransferErc20CompleteResponse":{"type":"object","description":"Response z wykonanego transferu ERC20.","required":["transfer"],"properties":{"transfer":{"$ref":"#/components/schemas/DfnsTransferRequest","description":"Zainicjowany transfer"}}},"DfnsCoreWalletTransferErc20InitRequest":{"type":"object","description":"Request do inicjalizacji transferu tokenów ERC20.","required":["contractAddress","to","amount"],"properties":{"contractAddress":{"type":"string","description":"Adres kontraktu tokena ERC20"},"to":{"type":"string","description":"Adres docelowy transferu"},"amount":{"type":"string","description":"Kwota w najmniejszej jednostce tokena"},"priority":{"type":["string","null"],"description":"Priorytet transakcji: \"Slow\", \"Standard\", \"Fast\""}}},"DfnsCoreWalletTransferNativeCompleteResponse":{"type":"object","description":"Response z wykonanego transferu.","required":["transfer"],"properties":{"transfer":{"$ref":"#/components/schemas/DfnsTransferRequest","description":"Zainicjowany transfer"}}},"DfnsCoreWalletTransferNativeInitRequest":{"type":"object","description":"Request do inicjalizacji transferu natywnych tokenów.","required":["to","amount"],"properties":{"to":{"type":"string","description":"Adres docelowy transferu"},"amount":{"type":"string","description":"Kwota w najmniejszej jednostce (Wei, Satoshi, etc.)"},"priority":{"type":["string","null"],"description":"Priorytet transakcji: \"Slow\", \"Standard\", \"Fast\""}}},"DfnsCoreWalletTransferSplCompleteResponse":{"type":"object","description":"Response z wykonanego transferu SPL.","required":["transfer"],"properties":{"transfer":{"$ref":"#/components/schemas/DfnsTransferRequest","description":"Zainicjowany transfer"}}},"DfnsCoreWalletTransferSplInitRequest":{"type":"object","description":"Request do inicjalizacji transferu tokenów SPL / SPL2022.","required":["mint","to","amount"],"properties":{"kind":{"type":"string","description":"Typ tokena: \"Spl\" lub \"Spl2022\" (domyślnie \"Spl\")"},"mint":{"type":"string","description":"Mint address tokena SPL"},"to":{"type":"string","description":"Adres docelowy transferu"},"amount":{"type":"string","description":"Kwota w najmniejszej jednostce tokena"},"memo":{"type":["string","null"],"description":"Memo (opcjonalne, 0-64 znaków alfanumerycznych)"},"createDestinationAccount":{"type":["boolean","null"],"description":"Czy utworzyć konto docelowe jeśli nie istnieje"}}},"DfnsCoreWalletTransferTrc10CompleteResponse":{"type":"object","description":"Response z wykonanego transferu TRC-10.","required":["transfer"],"properties":{"transfer":{"$ref":"#/components/schemas/DfnsTransferRequest","description":"Zainicjowany transfer"}}},"DfnsCoreWalletTransferTrc10InitRequest":{"type":"object","description":"Request do inicjalizacji transferu tokenów TRC-10.","required":["tokenId","to","amount"],"properties":{"tokenId":{"type":"string","description":"ID tokena TRC-10 (numeryczny string, np. \"1002000\")"},"to":{"type":"string","description":"Adres docelowy transferu (format Tron: T...)"},"amount":{"type":"string","description":"Kwota w najmniejszej jednostce tokena"}}},"DfnsCoreWalletTransferTrc20CompleteResponse":{"type":"object","description":"Response z wykonanego transferu TRC-20.","required":["transfer"],"properties":{"transfer":{"$ref":"#/components/schemas/DfnsTransferRequest","description":"Zainicjowany transfer"}}},"DfnsCoreWalletTransferTrc20InitRequest":{"type":"object","description":"Request do inicjalizacji transferu tokenów TRC-20.","required":["contract","to","amount"],"properties":{"contract":{"type":"string","description":"Adres kontraktu tokena TRC-20"},"to":{"type":"string","description":"Adres docelowy transferu (format Tron: T...)"},"amount":{"type":"string","description":"Kwota w najmniejszej jednostce tokena"}}},"DfnsCoreWalletTransfersResponse":{"type":"object","description":"Response z listowania transferów portfela.","required":["walletId","items"],"properties":{"walletId":{"type":"string","description":"ID portfela"},"items":{"type":"array","items":{"$ref":"#/components/schemas/DfnsTransferRequest"},"description":"Lista transferów"},"nextPageToken":{"type":["string","null"],"description":"Token do następnej strony (paginacja)"}}},"DfnsCredentialKind":{"type":"string","description":"DfnsCredentialKind : The kind of credential.\nThe kind of credential.","enum":["Fido2","Key","RecoveryKey","PasswordProtectedKey"]},"DfnsDeprecatedEvmEip15592":{"type":"object","description":"DfnsDeprecatedEvmEip15592 : Deprecated. Only support type 2 transactions. Use the new JSON format with `Transaction` kind instead which has support for legacy and type 4 transactions.","required":["kind"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsDeprecatedEvmEip15592Kind"},"to":{"type":["string","null"]},"value":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsDeprecatedEvmTransaction2Value"}]},"data":{"type":["string","null"]},"nonce":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsDeprecatedEvmEip15592Nonce"}]},"gasLimit":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsDeprecatedEvmTransaction2Value"}]},"maxFeePerGas":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsDeprecatedEvmTransaction2Value"}]},"maxPriorityFeePerGas":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsDeprecatedEvmTransaction2Value"}]},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key (read more [here](https://docs.dfns.co/api-reference/idempotency))."}}},"DfnsDeprecatedEvmEip15592Kind":{"type":"string","description":"","enum":["Eip1559"]},"DfnsDeprecatedEvmEip15592Nonce":{"type":"object"},"DfnsDeprecatedEvmTransaction2":{"type":"object","description":"DfnsDeprecatedEvmTransaction2 : Deprecated. Only support type 2 transactions. Use the new JSON format with `Transaction` kind instead which has support for legacy and type 4 transactions.","required":["kind"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsDeprecatedEvmTransaction2Kind"},"to":{"type":["string","null"]},"value":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsDeprecatedEvmTransaction2Value"}]},"data":{"type":["string","null"]},"nonce":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsDeprecatedEvmTransaction2Nonce"}]},"gasLimit":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsDeprecatedEvmTransaction2Value"}]},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key (read more [here](https://docs.dfns.co/api-reference/idempotency))."}}},"DfnsDeprecatedEvmTransaction2Kind":{"type":"string","description":"","enum":["Evm"]},"DfnsDeprecatedEvmTransaction2Nonce":{"type":"object","description":"DfnsDeprecatedEvmTransaction2Nonce : The current nonce of the signer EOA."},"DfnsDeprecatedEvmTransaction2Value":{"type":"object"},"DfnsDeprecatedPassword2":{"type":"object","description":"DfnsDeprecatedPassword2 : Not supported, will be removed in a future release.","required":["kind","user","challengeIdentifier","temporaryAuthenticationToken"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsDeprecatedPassword2Kind"},"user":{"$ref":"#/components/schemas/DfnsFido2Passkeys3User"},"challengeIdentifier":{"type":"string"},"rp":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsFido2Passkeys3Rp"}]},"temporaryAuthenticationToken":{"type":"string","description":"@deprecated use challengeIdentifier instead"}}},"DfnsDeprecatedPassword2Kind":{"type":"string","description":"","enum":["Password"]},"DfnsDeprecatedPassword5CredentialInfo":{"type":"object","required":["password"],"properties":{"password":{"type":"string"}}},"DfnsDeprecatedPassword6":{"type":"object","description":"DfnsDeprecatedPassword6 : Not supported, will be removed in a future release.","required":["credentialKind","credentialInfo"],"properties":{"credentialKind":{"$ref":"#/components/schemas/DfnsDeprecatedPassword6CredentialKind"},"credentialInfo":{"$ref":"#/components/schemas/DfnsDeprecatedPassword5CredentialInfo"},"credentialName":{"type":["string","null"]}}},"DfnsDeprecatedPassword6CredentialKind":{"type":"string","description":"","enum":["Password"]},"DfnsDeprecatedPassword7":{"type":"object","description":"DfnsDeprecatedPassword7 : Not supported, will be removed in a future release.","required":["credentialKind","credentialInfo"],"properties":{"credentialKind":{"$ref":"#/components/schemas/DfnsDeprecatedPassword7CredentialKind"},"credentialInfo":{"$ref":"#/components/schemas/DfnsDeprecatedPassword5CredentialInfo"},"credentialName":{"type":["string","null"]}}},"DfnsDeprecatedPassword7CredentialKind":{"type":"string","description":"","enum":["Password"]},"DfnsDeprecatedTotp2":{"type":"object","description":"DfnsDeprecatedTotp2 : Not supported, will be removed in a future release.","required":["kind","user","challengeIdentifier","otpUrl","temporaryAuthenticationToken"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsDeprecatedTotp2Kind"},"user":{"$ref":"#/components/schemas/DfnsFido2Passkeys3User"},"challengeIdentifier":{"type":"string"},"rp":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsFido2Passkeys3Rp"}]},"otpUrl":{"type":"string"},"temporaryAuthenticationToken":{"type":"string","description":"@deprecated use challengeIdentifier instead"}}},"DfnsDeprecatedTotp2Kind":{"type":"string","description":"","enum":["Totp"]},"DfnsDeprecatedTotp5CredentialInfo":{"type":"object","required":["otpCode"],"properties":{"otpCode":{"type":"string"}}},"DfnsDeprecatedTotp6":{"type":"object","description":"DfnsDeprecatedTotp6 : Not supported, will be removed in a future release.","required":["credentialKind","credentialInfo"],"properties":{"credentialKind":{"$ref":"#/components/schemas/DfnsDeprecatedTotp6CredentialKind"},"credentialInfo":{"$ref":"#/components/schemas/DfnsDeprecatedTotp5CredentialInfo"},"credentialName":{"type":["string","null"]}}},"DfnsDeprecatedTotp6CredentialKind":{"type":"string","description":"","enum":["Totp"]},"DfnsDeprecatedTotp7":{"type":"object","description":"DfnsDeprecatedTotp7 : Not supported, will be removed in a future release.","required":["credentialKind","credentialInfo"],"properties":{"credentialKind":{"$ref":"#/components/schemas/DfnsDeprecatedTotp7CredentialKind"},"credentialInfo":{"$ref":"#/components/schemas/DfnsDeprecatedTotp5CredentialInfo"},"credentialName":{"type":["string","null"]}}},"DfnsDeprecatedTotp7CredentialKind":{"type":"string","description":"","enum":["Totp"]},"DfnsEvmFungibleTokenErc205":{"type":"object","description":"DfnsEvmFungibleTokenErc205 : Transfer fungible tokens that implement the [ERC-20 specification](https://eips.ethereum.org/EIPS/eip-20).","required":["kind","contract","to","amount"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsEvmFungibleTokenErc205Kind"},"contract":{"type":"string","description":"The ERC-20 contract address."},"to":{"type":"string","description":"The destination address."},"amount":{"type":"string","description":"The amount of tokens to transfer in minimum denomination."},"priority":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsEvmFungibleTokenErc205Priority","description":"The priority that determines the fees paid for the transfer."}]},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsEvmFungibleTokenErc205Kind":{"type":"string","description":"","enum":["Erc20"]},"DfnsEvmFungibleTokenErc205Priority":{"type":"string","description":"The priority that determines the fees paid for the transfer.","enum":["Slow","Standard","Fast"]},"DfnsEvmNonFungibleTokenErc7211":{"type":"object","description":"DfnsEvmNonFungibleTokenErc7211 : Transfer non-fungible tokens that implement the [ERC-721 specification](https://eips.ethereum.org/EIPS/eip-721)","required":["kind","contract","to","tokenId"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsEvmNonFungibleTokenErc7211Kind"},"contract":{"type":"string","description":"The ERC-721 contract address."},"to":{"type":"string","description":"The destination address."},"tokenId":{"type":"string","description":"The token to transfer."},"priority":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsEvmNonFungibleTokenErc7211Priority","description":"The priority that determines the fees paid for the transfer."}]},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsEvmNonFungibleTokenErc7211Kind":{"type":"string","description":"","enum":["Erc721"]},"DfnsEvmNonFungibleTokenErc7211Priority":{"type":"string","description":"The priority that determines the fees paid for the transfer.","enum":["Slow","Standard","Fast"]},"DfnsEvmSponsoredTransaction2":{"type":"object","description":"DfnsEvmSponsoredTransaction2 : Signs one or more user operations and broadcasts to chain using a sponsored transaction. Used for invoking arbitrary smart contract calls, including batch operations, with a [fee sponsor](https://docs.dfns.co/features/fee-sponsors).  Can only be used with a fee sponsor. Unsponsored user operations are not supported.","required":["kind","userOperations","feeSponsorId"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsEvmSponsoredTransaction2Kind"},"userOperations":{"type":"array","items":{"$ref":"#/components/schemas/DfnsEvmSponsoredTransaction2UserOperationsInner"}},"feeSponsorId":{"type":"string","description":"A fee sponsor id to sponsor the transaction fee by another wallet. (read more [here](https://docs.dfns.co/features/fee-sponsors))"},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key (read more [here](https://docs.dfns.co/api-reference/idempotency))."}}},"DfnsEvmSponsoredTransaction2Kind":{"type":"string","description":"","enum":["UserOperations"]},"DfnsEvmSponsoredTransaction2UserOperationsInner":{"type":"object","required":["to"],"properties":{"to":{"type":"string","description":"The destination address or target contract."},"value":{"type":["string","null"],"description":"The amount of native tokens to transfer in minimum denomination."},"data":{"type":["string","null"],"description":"ABI encoded function call data in hex format."}}},"DfnsExchangesExchangeIdAccountsAccountIdDepositsPost200ResponseRequester":{"type":"object","required":["userId"],"properties":{"userId":{"type":"string"},"tokenId":{"type":["string","null"]}}},"DfnsFido2Passkeys3":{"type":"object","description":"DfnsFido2Passkeys3 : Fido2 Credential, also known as Passkeys or WebauthN credential.","required":["kind","user","challengeIdentifier","challenge","authenticatorSelection","attestation","pubKeyCredParams","excludeCredentials","temporaryAuthenticationToken"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsFido2Passkeys3Kind"},"user":{"$ref":"#/components/schemas/DfnsFido2Passkeys3User"},"challengeIdentifier":{"type":"string"},"challenge":{"type":"string"},"rp":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsFido2Passkeys3Rp"}]},"authenticatorSelection":{"$ref":"#/components/schemas/DfnsFido2Passkeys3AuthenticatorSelection"},"attestation":{"$ref":"#/components/schemas/DfnsFido2Passkeys3Attestation","description":"Identifies the information needed to verify the user's signing certificate; can be one of the following: * none: indicates no attestation data is required * indirect: indicates the attestation data should be given, but that it can be generated using an Anonymization CA * direct: indicates the attestation data must be given and should be generated by the authenticator * enterprise: indicates the attestation data should include information to uniquely identify the user's device"},"pubKeyCredParams":{"type":"array","items":{"$ref":"#/components/schemas/DfnsFido2Passkeys3PubKeyCredParamsInner"}},"excludeCredentials":{"type":"array","items":{"$ref":"#/components/schemas/DfnsAuthActionInitPost200ResponseAllowCredentialsKeyInner"}},"temporaryAuthenticationToken":{"type":"string","description":"@deprecated use challengeIdentifier instead"}}},"DfnsFido2Passkeys3Attestation":{"type":"string","description":"Identifies the information needed to verify the user's signing certificate; can be one of the following: * none: indicates no attestation data is required * indirect: indicates the attestation data should be given, but that it can be generated using an Anonymization CA * direct: indicates the attestation data must be given and should be generated by the authenticator * enterprise: indicates the attestation data should include information to uniquely identify the user's device","enum":["none","indirect","direct","enterprise"]},"DfnsFido2Passkeys3AuthenticatorSelection":{"type":"object","required":["residentKey","requireResidentKey","userVerification"],"properties":{"authenticatorAttachment":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsFido2Passkeys3AuthenticatorSelectionAuthenticatorAttachment"}]},"residentKey":{"$ref":"#/components/schemas/DfnsFido2Passkeys3AuthenticatorSelectionResidentKey"},"requireResidentKey":{"type":"boolean"},"userVerification":{"$ref":"#/components/schemas/DfnsFido2Passkeys3AuthenticatorSelectionUserVerification","description":"Value indicating if the user should be prompted for a second factor. Can be one of the following values: * required to indicate the user must be prompted for their pin, biometrics, or another second factor option * preferred to indicate the user should be prompted for a second factor if it is supported * discouraged to indicate the user should not be prompted for their second factor unless the device requires it"}}},"DfnsFido2Passkeys3AuthenticatorSelectionAuthenticatorAttachment":{"type":"string","description":"","enum":["platform","cross-platform"]},"DfnsFido2Passkeys3AuthenticatorSelectionResidentKey":{"type":"string","description":"","enum":["required","preferred","discouraged"]},"DfnsFido2Passkeys3AuthenticatorSelectionUserVerification":{"type":"string","description":"Value indicating if the user should be prompted for a second factor. Can be one of the following values: * required to indicate the user must be prompted for their pin, biometrics, or another second factor option * preferred to indicate the user should be prompted for a second factor if it is supported * discouraged to indicate the user should not be prompted for their second factor unless the device requires it","enum":["required","preferred","discouraged"]},"DfnsFido2Passkeys3Kind":{"type":"string","description":"","enum":["Fido2"]},"DfnsFido2Passkeys3PubKeyCredParamsInner":{"type":"object","required":["type","alg"],"properties":{"type":{"$ref":"#/components/schemas/DfnsFido2Passkeys3PubKeyCredParamsInnerType"},"alg":{"type":"number","format":"double"}}},"DfnsFido2Passkeys3PubKeyCredParamsInnerType":{"type":"string","description":"","enum":["public-key"]},"DfnsFido2Passkeys3Rp":{"type":"object","required":["id","name"],"properties":{"id":{"type":"string"},"name":{"type":"string"}}},"DfnsFido2Passkeys3User":{"type":"object","required":["id","displayName","name"],"properties":{"id":{"type":"string"},"displayName":{"type":"string"},"name":{"type":"string"}}},"DfnsFido2Passkeys9":{"type":"object","description":"DfnsFido2Passkeys9 : Register a Fido2 Credential, also known as Passkeys or WebauthN credential.","required":["credentialKind","credentialInfo"],"properties":{"credentialKind":{"$ref":"#/components/schemas/DfnsFido2Passkeys9CredentialKind"},"credentialInfo":{"$ref":"#/components/schemas/DfnsFido2Passkeys9CredentialInfo"},"credentialName":{"type":["string","null"]}}},"DfnsFido2Passkeys9CredentialInfo":{"type":"object","required":["credId","clientData","attestationData"],"properties":{"credId":{"type":"string"},"clientData":{"type":"string"},"attestationData":{"type":"string"}}},"DfnsFido2Passkeys9CredentialKind":{"type":"string","description":"","enum":["Fido2"]},"DfnsHederaNonFungibleTokenHip171":{"type":"object","description":"DfnsHederaNonFungibleTokenHip171 :","required":["kind","tokenId","serialNumber","to"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsHederaNonFungibleTokenHip171Kind"},"tokenId":{"type":"string","description":"The token to transfer."},"serialNumber":{"type":"string"},"to":{"type":"string","description":"The destination address."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsHederaNonFungibleTokenHip171Kind":{"type":"string","description":"","enum":["Hip17"]},"DfnsHederaTokensHts1":{"type":"object","description":"DfnsHederaTokensHts1 :","required":["kind","tokenId","to","amount"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsHederaTokensHts1Kind"},"tokenId":{"type":"string","description":"The token to transfer."},"to":{"type":"string","description":"The destination address."},"amount":{"type":"string","description":"The amount of tokens to transfer in minimum denomination."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsHederaTokensHts1Kind":{"type":"string","description":"","enum":["Hts"]},"DfnsKeysGet200Response":{"type":"object","required":["items"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/DfnsKeysGet200ResponseItemsInner"}},"nextPageToken":{"type":["string","null"]}}},"DfnsKeysGet200ResponseItemsInner":{"type":"object","required":["id","scheme","curve","publicKey","status","custodial","dateCreated"],"properties":{"id":{"type":"string"},"scheme":{"$ref":"#/components/schemas/DfnsKeysGet200ResponseItemsInnerScheme"},"curve":{"$ref":"#/components/schemas/DfnsKeysGet200ResponseItemsInnerCurve"},"publicKey":{"type":"string"},"masterKey":{"type":["boolean","null"]},"derivedFrom":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsKeysGet200ResponseItemsInnerDerivedFrom"}]},"name":{"type":["string","null"]},"status":{"$ref":"#/components/schemas/DfnsKeysGet200ResponseItemsInnerStatus"},"custodial":{"type":"boolean"},"dateCreated":{"type":"string"},"imported":{"type":["boolean","null"]},"exported":{"type":["boolean","null"]},"dateExported":{"type":["string","null"]},"dateDeleted":{"type":["string","null"]}}},"DfnsKeysGet200ResponseItemsInnerCurve":{"type":"string","description":"","enum":["ed25519","secp256k1","stark"]},"DfnsKeysGet200ResponseItemsInnerDerivedFrom":{"type":"object","required":["keyId","path"],"properties":{"keyId":{"type":"string","description":"Key id."},"path":{"type":"string"}}},"DfnsKeysGet200ResponseItemsInnerScheme":{"type":"string","description":"","enum":["DH","ECDSA","EdDSA","Schnorr"]},"DfnsKeysGet200ResponseItemsInnerStatus":{"type":"string","description":"","enum":["Active","Archived"]},"DfnsKeysPostRequestCurve":{"type":"string","description":"","enum":["ed25519","secp256k1","stark"]},"DfnsKeysPostRequestScheme":{"type":"string","description":"","enum":["DH","ECDSA","EdDSA","Schnorr"]},"DfnsNativeAsset3":{"type":"object","description":"DfnsNativeAsset3 : Transfer the native token of the network. All networks support the native token type.","required":["kind","to","amount"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsNativeAsset3Kind"},"to":{"type":"string","description":"The destination address."},"amount":{"type":"string","description":"The amount of native tokens to transfer in minimum denomination."},"memo":{"type":["string","null"],"description":"The memo or destination tag. `Stellar`, `TON` and `XrpLedger` support `memo`. Not valid for other networks."},"priority":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsNativeAsset3Priority","description":"The priority that determines the fees paid for the transfer. All EVM compatible networks and Bitcoin support `priority`. Not supported for other networks. It uses the [estimate fees](https://docs.dfns.co/api-reference/networks/estimate-fees) API to calculate the transfer fees. When not specified, defaults to `Standard` priority."}]},"createDestinationAccount":{"type":["boolean","null"],"description":"Whether to create the destination account on chains that require account creation (e.g., Stellar, Kadena). Only valid for chains that require the receiver account to exist before transfer."},"offer":{"type":["boolean","null"],"description":"Optional field for Canton, if true it will create a transfer offer."},"expiresAt":{"type":["string","null"],"description":"Optional field for Canton, especially useful in the context of offers"},"targetChain":{"type":["string","null"],"description":"For multi-chain networks (e.g., Kadena), specify the destination chain for cross-chain transfers."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsNativeAsset3Kind":{"type":"string","description":"","enum":["Native"]},"DfnsNativeAsset3Priority":{"type":"string","description":"The priority that determines the fees paid for the transfer. All EVM compatible networks and Bitcoin support `priority`. Not supported for other networks. It uses the [estimate fees](https://docs.dfns.co/api-reference/networks/estimate-fees) API to calculate the transfer fees. When not specified, defaults to `Standard` priority.","enum":["Slow","Standard","Fast"]},"DfnsNetwork":{"type":"string","description":"","enum":["Algorand","AlgorandTestnet","Aptos","AptosTestnet","ArbitrumOne","ArbitrumSepolia","AvalancheC","AvalancheCFuji","BabylonGenesis","BabylonTestnet5","Base","BaseSepolia","Berachain","BerachainBepolia","Bitcoin","BitcoinSignet","BitcoinTestnet3","BitcoinCash","Bob","BobSepolia","Bsc","BscTestnet","Canton","CantonTestnet","Cardano","CardanoPreprod","Celo","CeloAlfajores","Codex","CodexSepolia","CosmosHub4","CosmosIcsTestnet","Dogecoin","Ethereum","EthereumGoerli","EthereumSepolia","EthereumHolesky","EthereumHoodi","FantomOpera","FantomTestnet","FlareC","FlareCCoston2","Hedera","HederaTestnet","Ink","InkSepolia","InternetComputer","Ion","IonTestnet","Iota","IotaTestnet","KadenaTestnet4","Kadena","Kaspa","Kusama","Litecoin","Near","NearTestnet","Optimism","OptimismSepolia","Origyn","Plume","PlumeSepolia","Polkadot","Polygon","PolygonAmoy","Polymesh","PolymeshTestnet","Race","RaceSepolia","SeiAtlantic2","SeiPacific1","Solana","SolanaDevnet","Starknet","StarknetSepolia","Stellar","StellarTestnet","Sui","SuiTestnet","Tsc","TscTestnet1","Tezos","TezosGhostnet","Ton","TonTestnet","Tron","TronNile","Westend","XrpLedger","XrpLedgerTestnet"]},"DfnsPasswordProtectedKey3":{"type":"object","description":"DfnsPasswordProtectedKey3 : Encrypted private key.","required":["kind","user","challengeIdentifier","challenge","attestation","pubKeyCredParams","temporaryAuthenticationToken"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsPasswordProtectedKey3Kind"},"user":{"$ref":"#/components/schemas/DfnsFido2Passkeys3User"},"challengeIdentifier":{"type":"string"},"challenge":{"type":"string"},"rp":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsFido2Passkeys3Rp"}]},"attestation":{"$ref":"#/components/schemas/DfnsPasswordProtectedKey3Attestation","description":"Identifies the information needed to verify the user's signing certificate; can be one of the following: * none: indicates no attestation data is required * indirect: indicates the attestation data should be given, but that it can be generated using an Anonymization CA * direct: indicates the attestation data must be given and should be generated by the authenticator * enterprise: indicates the attestation data should include information to uniquely identify the user's device"},"pubKeyCredParams":{"type":"array","items":{"$ref":"#/components/schemas/DfnsFido2Passkeys3PubKeyCredParamsInner"}},"temporaryAuthenticationToken":{"type":"string","description":"@deprecated use challengeIdentifier instead"}}},"DfnsPasswordProtectedKey3Attestation":{"type":"string","description":"Identifies the information needed to verify the user's signing certificate; can be one of the following: * none: indicates no attestation data is required * indirect: indicates the attestation data should be given, but that it can be generated using an Anonymization CA * direct: indicates the attestation data must be given and should be generated by the authenticator * enterprise: indicates the attestation data should include information to uniquely identify the user's device","enum":["none","indirect","direct","enterprise"]},"DfnsPasswordProtectedKey3Kind":{"type":"string","description":"","enum":["PasswordProtectedKey"]},"DfnsPasswordProtectedKey8":{"type":"object","description":"DfnsPasswordProtectedKey8 : Register an encrypted private key. Note that Dfns only stores the encrypted private key and should not have access to the password to decrypt it!","required":["credentialKind","credentialInfo","encryptedPrivateKey"],"properties":{"credentialKind":{"$ref":"#/components/schemas/DfnsPasswordProtectedKey8CredentialKind"},"credentialInfo":{"$ref":"#/components/schemas/DfnsFido2Passkeys9CredentialInfo"},"encryptedPrivateKey":{"type":"string"},"credentialName":{"type":["string","null"]}}},"DfnsPasswordProtectedKey8CredentialKind":{"type":"string","description":"","enum":["PasswordProtectedKey"]},"DfnsPsbt4":{"type":"object","description":"DfnsPsbt4 : Signs a partially signed Bitcoin / Litecoin transaction.","required":["kind","psbt"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsPsbt4Kind"},"psbt":{"type":"string","description":"The hex encoded PSBT."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key (read more [here](https://docs.dfns.co/api-reference/idempotency))."}}},"DfnsPsbt4Kind":{"type":"string","description":"","enum":["Psbt"]},"DfnsPsbt6":{"type":"object","description":"DfnsPsbt6 : Signs a partially signed Bitcoin / Litecoin transaction.","required":["kind","transaction"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsPsbt6Kind"},"transaction":{},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key (read more [here](https://docs.dfns.co/api-reference/idempotency))."}}},"DfnsPsbt6Kind":{"type":"string","description":"","enum":["Json"]},"DfnsPublicPrivateKeyPair2CredentialInfo":{"type":"object","required":["credId","clientData","attestationData"],"properties":{"credId":{"type":"string"},"clientData":{"type":"string"},"attestationData":{"type":"string"}}},"DfnsPublicPrivateKeyPair3":{"type":"object","description":"DfnsPublicPrivateKeyPair3 : \\\"raw\\\" public/private keypair.","required":["kind","user","challengeIdentifier","challenge","attestation","pubKeyCredParams","temporaryAuthenticationToken"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsPublicPrivateKeyPair3Kind"},"user":{"$ref":"#/components/schemas/DfnsFido2Passkeys3User"},"challengeIdentifier":{"type":"string"},"challenge":{"type":"string"},"rp":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsFido2Passkeys3Rp"}]},"attestation":{"$ref":"#/components/schemas/DfnsPublicPrivateKeyPair3Attestation","description":"Identifies the information needed to verify the user's signing certificate; can be one of the following: * none: indicates no attestation data is required * indirect: indicates the attestation data should be given, but that it can be generated using an Anonymization CA * direct: indicates the attestation data must be given and should be generated by the authenticator * enterprise: indicates the attestation data should include information to uniquely identify the user's device"},"pubKeyCredParams":{"type":"array","items":{"$ref":"#/components/schemas/DfnsFido2Passkeys3PubKeyCredParamsInner"}},"temporaryAuthenticationToken":{"type":"string","description":"@deprecated use challengeIdentifier instead"}}},"DfnsPublicPrivateKeyPair3Attestation":{"type":"string","description":"Identifies the information needed to verify the user's signing certificate; can be one of the following: * none: indicates no attestation data is required * indirect: indicates the attestation data should be given, but that it can be generated using an Anonymization CA * direct: indicates the attestation data must be given and should be generated by the authenticator * enterprise: indicates the attestation data should include information to uniquely identify the user's device","enum":["none","indirect","direct","enterprise"]},"DfnsPublicPrivateKeyPair3Kind":{"type":"string","description":"","enum":["Key"]},"DfnsPublicPrivateKeyPair8":{"type":"object","description":"DfnsPublicPrivateKeyPair8 : Register a \\\"raw\\\" public/private keypair, mostly meant to be used by Service Accounts. See [Generate a Key Pair](https://docs.dfns.co/developers/guides/generate-a-key-pair) for more details.","required":["credentialKind","credentialInfo"],"properties":{"credentialKind":{"$ref":"#/components/schemas/DfnsPublicPrivateKeyPair8CredentialKind"},"credentialInfo":{"$ref":"#/components/schemas/DfnsFido2Passkeys9CredentialInfo"},"credentialName":{"type":["string","null"]}}},"DfnsPublicPrivateKeyPair8CredentialKind":{"type":"string","description":"","enum":["Key"]},"DfnsRecoveryCredentials":{"type":"object","description":"DfnsRecoveryCredentials : Use an recovery key.","required":["kind","user","challengeIdentifier","challenge","attestation","pubKeyCredParams","temporaryAuthenticationToken"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsRecoveryCredentialsKind"},"user":{"$ref":"#/components/schemas/DfnsFido2Passkeys3User"},"challengeIdentifier":{"type":"string"},"challenge":{"type":"string"},"rp":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsFido2Passkeys3Rp"}]},"attestation":{"$ref":"#/components/schemas/DfnsRecoveryCredentialsAttestation","description":"Identifies the information needed to verify the user's signing certificate; can be one of the following: * none: indicates no attestation data is required * indirect: indicates the attestation data should be given, but that it can be generated using an Anonymization CA * direct: indicates the attestation data must be given and should be generated by the authenticator * enterprise: indicates the attestation data should include information to uniquely identify the user's device"},"pubKeyCredParams":{"type":"array","items":{"$ref":"#/components/schemas/DfnsFido2Passkeys3PubKeyCredParamsInner"}},"temporaryAuthenticationToken":{"type":"string","description":"@deprecated use challengeIdentifier instead"}}},"DfnsRecoveryCredentialsAttestation":{"type":"string","description":"Identifies the information needed to verify the user's signing certificate; can be one of the following: * none: indicates no attestation data is required * indirect: indicates the attestation data should be given, but that it can be generated using an Anonymization CA * direct: indicates the attestation data must be given and should be generated by the authenticator * enterprise: indicates the attestation data should include information to uniquely identify the user's device","enum":["none","indirect","direct","enterprise"]},"DfnsRecoveryCredentialsKind":{"type":"string","description":"","enum":["RecoveryKey"]},"DfnsRecoveryKey3":{"type":"object","description":"DfnsRecoveryKey3 : Register a recovery key. See [Account Recovery](https://docs.dfns.co/api-reference/auth/account-recovery) for more details.","required":["credentialKind","credentialInfo"],"properties":{"credentialKind":{"$ref":"#/components/schemas/DfnsRecoveryKey3CredentialKind"},"credentialInfo":{"$ref":"#/components/schemas/DfnsPublicPrivateKeyPair2CredentialInfo"},"encryptedPrivateKey":{"type":["string","null"]},"credentialName":{"type":["string","null"]}}},"DfnsRecoveryKey3CredentialKind":{"type":"string","description":"","enum":["RecoveryKey"]},"DfnsRecoveryKey4":{"type":"object","description":"DfnsRecoveryKey4 : Register a recovery key. See [Account Recovery](https://docs.dfns.co/api-reference/auth/account-recovery) for more details.","required":["credentialKind","credentialInfo"],"properties":{"credentialKind":{"$ref":"#/components/schemas/DfnsRecoveryKey4CredentialKind"},"credentialInfo":{"$ref":"#/components/schemas/DfnsFido2Passkeys9CredentialInfo"},"encryptedPrivateKey":{"type":["string","null"]},"credentialName":{"type":["string","null"]}}},"DfnsRecoveryKey4CredentialKind":{"type":"string","description":"","enum":["RecoveryKey"]},"DfnsSignDocDirect4":{"type":"object","description":"DfnsSignDocDirect4 : Signs an unsigned transaction using [sign mode direct](https://docs.cosmos.network/main/learn/advanced/transactions#sign_mode_direct-preferred).","required":["kind","signDoc"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsSignDocDirect4Kind"},"signDoc":{"type":"string"},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key (read more [here](https://docs.dfns.co/api-reference/idempotency))."}}},"DfnsSignDocDirect4Kind":{"type":"string","description":"","enum":["SignDocDirect"]},"DfnsSolanaProgramLibraryTokenSplAndSpl20222":{"type":"object","description":"DfnsSolanaProgramLibraryTokenSplAndSpl20222 : Transfer [SPL tokens](https://spl.solana.com/token) or [SPL 2022 tokens](https://spl.solana.com/token-2022).","required":["kind","to","amount","mint"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsSolanaProgramLibraryTokenSplAndSpl20222Kind"},"to":{"type":"string","description":"The destination address."},"amount":{"type":"string","description":"The amount of tokens to transfer in minimum denomination."},"mint":{"type":"string","description":"The mint account address."},"createDestinationAccount":{"type":["boolean","null"],"description":"If `true`, pay to create the associated token account for the recipient if it doesn't exist. Defaults to `false`."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsSolanaProgramLibraryTokenSplAndSpl20222Kind":{"type":"string","description":"","enum":["Spl","Spl2022"]},"DfnsStarknetEvmFungibleTokenErc201":{"type":"object","description":"DfnsStarknetEvmFungibleTokenErc201 : Transfer fungible tokens that implement the [SNIP2 (ERC-20-like) specification](https://github.com/starknet-io/SNIPs/blob/ea46a8777d8c8d53a43f45b7beb1abcc301a1a69/SNIPS/snip-2.md).","required":["kind","contract","to","amount"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsStarknetEvmFungibleTokenErc201Kind"},"contract":{"type":"string","description":"The Snip2 (ERC-20-like) contract address."},"to":{"type":"string","description":"The destination address."},"amount":{"type":"string","description":"The amount of tokens to transfer in minimum denomination."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsStarknetEvmFungibleTokenErc201Kind":{"type":"string","description":"","enum":["Snip2"]},"DfnsStarknetNonFungibleTokenErc721Like1":{"type":"object","description":"DfnsStarknetNonFungibleTokenErc721Like1 : Transfer non-fungible tokens that implement the [SNIP3 (ERC-721-like) specification](https://github.com/starknet-io/SNIPs/blob/ea46a8777d8c8d53a43f45b7beb1abcc301a1a69/SNIPS/snip-3.md)","required":["kind","contract","to","tokenId"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsStarknetNonFungibleTokenErc721Like1Kind"},"contract":{"type":"string","description":"The Snip3 (ERC-721) contract address."},"to":{"type":"string","description":"The destination address."},"tokenId":{"type":"string","description":"The token to transfer."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsStarknetNonFungibleTokenErc721Like1Kind":{"type":"string","description":"","enum":["Snip3"]},"DfnsStellarClassicAssetsSep412":{"type":"object","description":"DfnsStellarClassicAssetsSep412 : Transfer classic [Stellar Assets](https://developers.stellar.org/docs/issuing-assets/anatomy-of-an-asset). They all implement the [SEP-41 token interface](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0041.md).","required":["kind","issuer","assetCode","to","amount"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsStellarClassicAssetsSep412Kind"},"issuer":{"type":"string","description":"The asset issuer address."},"assetCode":{"type":"string","description":"The asset code."},"to":{"type":"string","description":"The destination address."},"amount":{"type":"string","description":"The amount of tokens to transfer in minimum denomination."},"memo":{"type":["string","null"],"description":"The memo or destination tag."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsStellarClassicAssetsSep412Kind":{"type":"string","description":"","enum":["Sep41"]},"DfnsSuiCoin1":{"type":"object","description":"DfnsSuiCoin1 : Transfer Sui fungible assets that implement [coin standard](https://docs.sui.io/standards/coin).","required":["kind","coin","to","amount"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsSuiCoin1Kind"},"coin":{"type":"string","description":"The coin identifier."},"to":{"type":"string","description":"The destination address."},"amount":{"type":"string","description":"The amount of tokens to transfer in minimum denomination."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsSuiCoin1Kind":{"type":"string","description":"","enum":["Coin"]},"DfnsTonJettonTep742":{"type":"object","description":"DfnsTonJettonTep742 : Transfer [Jetton](https://github.com/ton-blockchain/TEPs/blob/master/text/0074-jettons-standard.md) tokens.","required":["kind","to","master","amount"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsTonJettonTep742Kind"},"to":{"type":"string","description":"The destination address."},"master":{"type":"string","description":"The Jetton master contract address."},"amount":{"type":"string","description":"The amount of tokens to transfer in minimum denomination."},"memo":{"type":["string","null"],"description":"The memo or destination tag."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsTonJettonTep742Kind":{"type":"string","description":"","enum":["Tep74"]},"DfnsTransaction4":{"type":"object","description":"DfnsTransaction4 : Signs an unsigned transaction and broadcasts it to chain.       For EVM transactions, you may use JSON objects:   | Field                | Description                                                                                                                                                                                                                         | Type - Optional              | |----------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------| | type                 | Ethereum transaction type. 0 for legacy transaction; 2 for EIP-1559 transaction; 4 for EIP-7702 transaction. Default is 2 if undefined.                                                                                             | Integer (optional)           | | to                   | The destination address or target contract. Leave undefined when the transaction is a contract deployment.                                                                                                                          | String (optional)            | | value                | The amount of native tokens to transfer in minimum denomination.                                                                                                                                                                    | String (optional)            | | data                 | ABI encoded function call data in hex format. Can also be the encoded smart contract data when the transaction is a contract deployment.                                                                                            | String (optional)            | | nonce                | The transaction number to guarantee idempotency. If omitted, it will be provided automatically. Note the same nonce can be submitted multiple times with a higher maxFeePerGas to \\\"overwrite\\\" existing transactions in the mempool. | Integer or String (optional) | | gasLimit             | The maximum amount of gas that can be spent for executing the transaction. If omitted, it will be calculated automatically.                                                                                                         | String (optional)            | | gasPrice             | The amount of per unit gas. Only valid for a type 0 legacy transaction. If omitted, it will be calculated automatically.                                                                                                            | String (optional)            | | maxFeePerGas         | The maximum amount of per unit gas willing to be paid for the transaction. Valid for type 2 and type 4 transactions. If omitted, it will be calculated automatically.                                                               | String (optional)            | | maxPriorityFeePerGas | The maximum amount of per unit gas to be included as a tip to the validator. Valid for type 2 and type 4 transactions. If omitted, it will be calculated automatically.                                                             | String (optional)            | | authorizationList    | A list that indicates what code the signer of each authorization desires to execute in the context of their EOA. Only valid for type 4 transaction.                                                                                 | Authorization (optional)     |  For Starknet transactions, you may use invocation request objects:  | Field                         | Description                                                                                         | Type - Optional                  | |-------------------------------|-----------------------------------------------------------------------------------------------------|----------------------------------| | calls                         | **Array** of contract calls to execute. Each element contains:                                      | **Array** (required)             | | ↳ calls[0].contractAddress    | The target contract address                                                                         | String (required)                | | ↳ calls[0].entrypoint         | The function name to call                                                                           | String (required)                | | ↳ calls[0].calldata           | Parameters for the function call                                                                    | Array of Strings (optional)      | | nonce                         | Transaction nonce. If omitted, will be determined automatically.                                    | String/Number/BigInt (optional)  | | resourceBounds                | Gas bounds for L1 and L2. If omitted, will be estimated automatically.                              | Object (optional)                | | ↳ resourceBounds.l1Gas        | L1 gas configuration with maxAmount and maxPricePerUnit                                         | Object (optional)                | | ↳ resourceBounds.l2Gas        | L2 gas configuration with maxAmount and maxPricePerUnit                                         | Object (optional)                | | ↳ resourceBounds.l1DataGas    | L1 data gas configuration with maxAmount and maxPricePerUnit                                    | Object (optional)                | | tip                           | Transaction tip. Defaults to 0 if omitted.                                                          | String/Number/BigInt (optional)  |   ```json {   \\\"kind\\\": \\\"Transaction\\\",   \\\"transaction\\\": {     \\\"to\\\": \\\"0x00fb58432ef9d418bf6688bcf0a226d2fcaa18e2\\\",     \\\"data\\\": \\\"0x40d097c3000000000000000000000000d2f77f85a50cdd650ca562f3a180284e1d5b4934\\\",     \\\"maxFeePerGas\\\": \\\"1626000000000\\\",     \\\"maxPriorityFeePerGas\\\": \\\"1332000000000\\\"   } } ```  ```json {   \\\"kind\\\": \\\"Transaction\\\",   \\\"transaction\\\": {     \\\"calls\\\": [       {         \\\"contractAddress\\\": \\\"0x049d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7\\\",         \\\"entrypoint\\\": \\\"transfer\\\",         \\\"calldata\\\": [\\\"0x123...\\\", \\\"0x1000000000000000000\\\", \\\"0x0\\\"]       }     ],     \\\"nonce\\\": \\\"0x3a\\\",     \\\"resourceBounds\\\": {       \\\"l2Gas\\\": {         \\\"maxAmount\\\": \\\"0x1694a0\\\",         \\\"maxPricePerUnit\\\": \\\"0x10c388d00\\\"       },       \\\"l1Gas\\\": {         \\\"maxAmount\\\": \\\"0x0\\\",         \\\"maxPricePerUnit\\\": \\\"0x2e83a3bfd70a\\\"       },       \\\"l1DataGas\\\": {         \\\"maxAmount\\\": \\\"0x120\\\",         \\\"maxPricePerUnit\\\": \\\"0xc7c6\\\"       }     },     \\\"tip\\\": 0,   } } ```","required":["kind","transaction"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsTransaction4Kind"},"transaction":{"$ref":"#/components/schemas/DfnsTransaction4Transaction"},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key (read more [here](https://docs.dfns.co/api-reference/idempotency))."}}},"DfnsTransaction4Kind":{"type":"string","description":"","enum":["Transaction"]},"DfnsTransaction4Transaction":{"type":"object","description":"DfnsTransaction4Transaction : The unsigned hex encoded transaction. EVM transactions also accept JSON objects."},"DfnsTransferRequest":{"type":"object","required":["id","walletId","network","requester","requestBody","metadata","status","dateRequested"],"properties":{"id":{"type":"string"},"walletId":{"type":"string"},"network":{"$ref":"#/components/schemas/DfnsNetwork"},"requester":{"$ref":"#/components/schemas/DfnsExchangesExchangeIdAccountsAccountIdDepositsPost200ResponseRequester"},"requestBody":{"$ref":"#/components/schemas/DfnsTransferRequestRequestBody"},"metadata":{"$ref":"#/components/schemas/DfnsTransferRequestMetadata"},"status":{"$ref":"#/components/schemas/DfnsTransferRequestStatus"},"reason":{"type":["string","null"]},"txHash":{"type":["string","null"]},"fee":{"type":["string","null"]},"dateRequested":{"type":"string"},"datePolicyResolved":{"type":["string","null"]},"dateBroadcasted":{"type":["string","null"]},"dateConfirmed":{"type":["string","null"]},"approvalId":{"type":["string","null"]},"externalId":{"type":["string","null"]},"feeSponsorId":{"type":["string","null"]}}},"DfnsTransferRequestMetadata":{"type":"object","required":["asset"],"properties":{"asset":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOfMetadataAsset"}}},"DfnsTransferRequestRequestBody":{"oneOf":[{"$ref":"#/components/schemas/DfnsNativeAsset3"},{"$ref":"#/components/schemas/DfnsAlgorandStandardAsset2"},{"$ref":"#/components/schemas/DfnsAptosFungibleAssetAip211"},{"$ref":"#/components/schemas/DfnsCardanoAsset1"},{"$ref":"#/components/schemas/DfnsSuiCoin1"},{"$ref":"#/components/schemas/DfnsEvmFungibleTokenErc205"},{"$ref":"#/components/schemas/DfnsEvmNonFungibleTokenErc7211"},{"$ref":"#/components/schemas/DfnsHederaNonFungibleTokenHip171"},{"$ref":"#/components/schemas/DfnsHederaTokensHts1"},{"$ref":"#/components/schemas/DfnsStellarClassicAssetsSep412"},{"$ref":"#/components/schemas/DfnsStarknetEvmFungibleTokenErc201"},{"$ref":"#/components/schemas/DfnsStarknetNonFungibleTokenErc721Like1"},{"$ref":"#/components/schemas/DfnsSolanaProgramLibraryTokenSplAndSpl20222"},{"$ref":"#/components/schemas/DfnsTonJettonTep742"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc102"},{"$ref":"#/components/schemas/DfnsTronSmartContractFungibleTokenTrc202"},{"$ref":"#/components/schemas/DfnsTronNonFungibleTokenTrc7211"}]},"DfnsTransferRequestStatus":{"type":"string","description":"","enum":["Pending","Executing","Broadcasted","Confirmed","Failed","Rejected"]},"DfnsTronNativeFungibleTokenTrc102":{"type":"object","description":"DfnsTronNativeFungibleTokenTrc102 : Transfer TRON's TRC-10 fungible tokens","required":["kind","tokenId","to","amount"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc102Kind"},"tokenId":{"type":"string","description":"The token ID."},"to":{"type":"string","description":"The destination address."},"amount":{"type":"string","description":"The amount of tokens to transfer in minimum denomination."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsTronNativeFungibleTokenTrc102Kind":{"type":"string","description":"","enum":["Trc10"]},"DfnsTronNativeFungibleTokenTrc10TravelRule":{"type":"object","required":["kind","originator","beneficiary"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRuleKind"},"beneficiaryVASPdid":{"type":["string","null"]},"beneficiaryProof":{},"originator":{},"beneficiary":{}}},"DfnsTronNativeFungibleTokenTrc10TravelRuleKind":{"type":"string","description":"","enum":["Notabene"]},"DfnsTronNonFungibleTokenTrc7211":{"type":"object","description":"DfnsTronNonFungibleTokenTrc7211 : Transfer non-fungible tokens that implement the TRC-721 smart contract specification.","required":["kind","contract","to","tokenId"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsTronNonFungibleTokenTrc7211Kind"},"contract":{"type":"string","description":"The smart contract address."},"to":{"type":"string","description":"The destination address."},"tokenId":{"type":"string","description":"The token to transfer."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsTronNonFungibleTokenTrc7211Kind":{"type":"string","description":"","enum":["Trc721"]},"DfnsTronSmartContractFungibleTokenTrc202":{"type":"object","description":"DfnsTronSmartContractFungibleTokenTrc202 : Transfer fungible tokens that implement the TRC-20 smart contract specification.","required":["kind","contract","to","amount"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsTronSmartContractFungibleTokenTrc202Kind"},"contract":{"type":"string","description":"The smart contract address."},"to":{"type":"string","description":"The destination address."},"amount":{"type":"string","description":"The amount of tokens to transfer in minimum denomination."},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency))"},"travelRule":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsTronNativeFungibleTokenTrc10TravelRule"}]},"feeSponsorId":{"type":["string","null"],"description":"Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors))"}}},"DfnsTronSmartContractFungibleTokenTrc202Kind":{"type":"string","description":"","enum":["Trc20"]},"DfnsUser":{"type":"object","required":["username","name","userId","kind","credentialUuid","orgId","isActive","isServiceAccount","isRegistered","isSSORequired","permissionAssignments"],"properties":{"username":{"type":"string"},"name":{"type":"string"},"userId":{"type":"string","description":"User id."},"kind":{"$ref":"#/components/schemas/DfnsUserKind","description":"User kind."},"credentialUuid":{"type":"string"},"orgId":{"type":"string"},"permissions":{"type":["array","null"],"items":{"type":"string"}},"isActive":{"type":"boolean"},"isServiceAccount":{"type":"boolean"},"isRegistered":{"type":"boolean"},"isSSORequired":{"type":"boolean"},"permissionAssignments":{"type":"array","items":{"$ref":"#/components/schemas/DfnsAuthAppsGet200ResponseItemsInnerPermissionAssignmentsInner"}}}},"DfnsUserKind":{"type":"string","description":"User kind.","enum":["CustomerEmployee","EndUser"]},"DfnsWallet":{"type":"object","required":["id","network","signingKey","status","dateCreated","custodial","tags"],"properties":{"id":{"type":"string","description":"ID of the wallet."},"network":{"$ref":"#/components/schemas/DfnsWalletNetwork","description":"Network this wallet is bound to."},"address":{"type":["string","null"],"description":"Wallet address on its corresponding network."},"signingKey":{"$ref":"#/components/schemas/DfnsWalletSigningKey"},"status":{"$ref":"#/components/schemas/DfnsWalletStatus","description":"Wallet status."},"dateCreated":{"type":"string","description":"[ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date string when wallet was created."},"dateDeleted":{"type":["string","null"],"description":"[ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date string when wallet was deleted."},"name":{"type":["string","null"],"description":"Wallet nickname."},"custodial":{"type":"boolean","description":"Whether the wallet is owned by an end user (non-custodial), or by your organization (custodial)."},"externalId":{"type":["string","null"],"description":"User-defined value that can be used to correlate the entity with an external system."},"tags":{"type":"array","items":{"type":"string"},"description":"List of tags."},"validatorId":{"type":["string","null"],"description":"Id of the validator on which the wallet is created for Canton networks"}}},"DfnsWalletNetwork":{"type":"string","description":"Network this wallet is bound to.","enum":["Algorand","AlgorandTestnet","Aptos","AptosTestnet","ArbitrumOne","ArbitrumSepolia","AvalancheC","AvalancheCFuji","BabylonGenesis","BabylonTestnet5","Base","BaseSepolia","Berachain","BerachainBepolia","Bitcoin","BitcoinSignet","BitcoinTestnet3","BitcoinCash","Bob","BobSepolia","Bsc","BscTestnet","Canton","CantonTestnet","Cardano","CardanoPreprod","Celo","CeloAlfajores","Codex","CodexSepolia","CosmosHub4","CosmosIcsTestnet","Dogecoin","Ethereum","EthereumGoerli","EthereumSepolia","EthereumHolesky","EthereumHoodi","FantomOpera","FantomTestnet","FlareC","FlareCCoston2","Hedera","HederaTestnet","Ink","InkSepolia","InternetComputer","Ion","IonTestnet","Iota","IotaTestnet","KadenaTestnet4","Kadena","Kaspa","Kusama","Litecoin","Near","NearTestnet","Optimism","OptimismSepolia","Origyn","Plume","PlumeSepolia","Polkadot","Polygon","PolygonAmoy","Polymesh","PolymeshTestnet","Race","RaceSepolia","SeiAtlantic2","SeiPacific1","Solana","SolanaDevnet","Starknet","StarknetSepolia","Stellar","StellarTestnet","Sui","SuiTestnet","Tsc","TscTestnet1","Tezos","TezosGhostnet","Ton","TonTestnet","Tron","TronNile","Westend","XrpLedger","XrpLedgerTestnet"]},"DfnsWalletSigningKey":{"type":"object","description":"DfnsWalletSigningKey : Details about the key underlying the wallet.","required":["id","scheme","curve","publicKey"],"properties":{"id":{"type":"string","description":"Key id."},"scheme":{"$ref":"#/components/schemas/DfnsWalletSigningKeyScheme","description":"Key scheme."},"curve":{"$ref":"#/components/schemas/DfnsWalletSigningKeyCurve"},"publicKey":{"type":"string","description":"Hex-encoded value of the public key."},"delegatedTo":{"type":["string","null"],"description":"The end user ID the key (and wallet) is delegated to."}}},"DfnsWalletSigningKeyCurve":{"type":"string","description":"","enum":["ed25519","secp256k1","stark"]},"DfnsWalletSigningKeyScheme":{"type":"string","description":"Key scheme.","enum":["ECDSA","EdDSA","Schnorr"]},"DfnsWalletStatus":{"type":"string","description":"Wallet status.","enum":["Active","Archived"]},"DfnsWalletsIncomingTransaction4BlockchainEventOneOfMetadataAssetQuotes":{"type":"object","properties":{"EUR":{"type":["number","null"],"format":"double"},"USD":{"type":["number","null"],"format":"double"}}},"DfnsWalletsIncomingTransaction8BlockchainEventOneOf14Direction":{"type":"string","description":"","enum":["In","Out"]},"DfnsWalletsIncomingTransaction8BlockchainEventOneOf14Kind":{"type":"string","description":"","enum":["SplTransfer","Spl2022Transfer"]},"DfnsWalletsIncomingTransaction8BlockchainEventOneOf16Direction":{"type":"string","description":"","enum":["In","Out"]},"DfnsWalletsIncomingTransaction8BlockchainEventOneOf16Kind":{"type":"string","description":"","enum":["Trc10Transfer"]},"DfnsWalletsIncomingTransaction8BlockchainEventOneOf17Direction":{"type":"string","description":"","enum":["In","Out"]},"DfnsWalletsIncomingTransaction8BlockchainEventOneOf17Kind":{"type":"string","description":"","enum":["Trc20Transfer"]},"DfnsWalletsIncomingTransaction8BlockchainEventOneOf19Direction":{"type":"string","description":"","enum":["In","Out"]},"DfnsWalletsIncomingTransaction8BlockchainEventOneOf19Kind":{"type":"string","description":"","enum":["UtxoTransfer"]},"DfnsWalletsIncomingTransaction8BlockchainEventOneOf5Direction":{"type":"string","description":"","enum":["In","Out"]},"DfnsWalletsIncomingTransaction8BlockchainEventOneOf5Kind":{"type":"string","description":"","enum":["Erc20Transfer"]},"DfnsWalletsIncomingTransaction8BlockchainEventOneOfDirection":{"type":"string","description":"","enum":["In","Out"]},"DfnsWalletsIncomingTransaction8BlockchainEventOneOfKind":{"type":"string","description":"","enum":["NativeTransfer"]},"DfnsWalletsIncomingTransaction8BlockchainEventOneOfMetadata":{"type":"object","required":["asset"],"properties":{"asset":{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOfMetadataAsset"},"fee":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction8BlockchainEventOneOfMetadataAsset"}]}}},"DfnsWalletsIncomingTransaction8BlockchainEventOneOfMetadataAsset":{"type":"object","properties":{"symbol":{"type":["string","null"]},"decimals":{"type":["integer","null"],"format":"int32"},"verified":{"type":["boolean","null"]},"quotes":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsWalletsIncomingTransaction4BlockchainEventOneOfMetadataAssetQuotes"}]}}},"DfnsWalletsSign8TransactionRequest":{"type":"object","required":["id","walletId","network","requester","requestBody","status","dateRequested"],"properties":{"id":{"type":"string"},"walletId":{"type":"string"},"network":{"$ref":"#/components/schemas/DfnsNetwork"},"requester":{"$ref":"#/components/schemas/DfnsExchangesExchangeIdAccountsAccountIdDepositsPost200ResponseRequester"},"requestBody":{"$ref":"#/components/schemas/DfnsWalletsSign8TransactionRequestRequestBody"},"status":{"$ref":"#/components/schemas/DfnsWalletsSign8TransactionRequestStatus"},"reason":{"type":["string","null"]},"txHash":{"type":["string","null"]},"fee":{"type":["string","null"]},"approvalId":{"type":["string","null"]},"dateRequested":{"type":"string"},"datePolicyResolved":{"type":["string","null"]},"dateBroadcasted":{"type":["string","null"]},"dateConfirmed":{"type":["string","null"]},"externalId":{"type":["string","null"]}}},"DfnsWalletsSign8TransactionRequestRequestBody":{"oneOf":[{"$ref":"#/components/schemas/DfnsTransaction4"},{"$ref":"#/components/schemas/DfnsPsbt4"},{"$ref":"#/components/schemas/DfnsPsbt6"},{"$ref":"#/components/schemas/DfnsSignDocDirect4"},{"$ref":"#/components/schemas/DfnsEvmSponsoredTransaction2"},{"$ref":"#/components/schemas/DfnsCantonTransferPreapproval2"},{"$ref":"#/components/schemas/DfnsDeprecatedEvmTransaction2"},{"$ref":"#/components/schemas/DfnsDeprecatedEvmEip15592"},{"$ref":"#/components/schemas/DfnsWalletsSign8TransactionRequestRequestBodyOneOf"},{"$ref":"#/components/schemas/DfnsWalletsSign8TransactionRequestRequestBodyOneOf1"}]},"DfnsWalletsSign8TransactionRequestRequestBodyOneOf":{"type":"object","required":["kind","txHash","decision"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsWalletsSign8TransactionRequestRequestBodyOneOfKind"},"txHash":{"type":"string"},"decision":{"$ref":"#/components/schemas/DfnsWalletsSign8TransactionRequestRequestBodyOneOfDecision"},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key (read more [here](https://docs.dfns.co/api-reference/idempotency))."}}},"DfnsWalletsSign8TransactionRequestRequestBodyOneOf1":{"type":"object","required":["kind","request"],"properties":{"kind":{"$ref":"#/components/schemas/DfnsWalletsSign8TransactionRequestRequestBodyOneOf1Kind"},"request":{},"externalId":{"type":["string","null"],"description":"A unique ID from your system. It can be leveraged to be used as an idempotency key (read more [here](https://docs.dfns.co/api-reference/idempotency))."}}},"DfnsWalletsSign8TransactionRequestRequestBodyOneOf1Kind":{"type":"string","description":"","enum":["ActivateAccount"]},"DfnsWalletsSign8TransactionRequestRequestBodyOneOfDecision":{"type":"string","description":"","enum":["Accept","Reject"]},"DfnsWalletsSign8TransactionRequestRequestBodyOneOfKind":{"type":"string","description":"","enum":["SettleOffer"]},"DfnsWalletsSign8TransactionRequestStatus":{"type":"string","description":"","enum":["Pending","Executing","Broadcasted","Confirmed","Failed","Rejected"]},"Erc20RpcData":{"type":"object","description":"ERC20 on-chain data fetched via JSON-RPC.","required":["name","symbol","decimals","totalSupply"],"properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer","format":"int32","minimum":0},"totalSupply":{"type":"string","description":"U256 as decimal string (JSON-safe)."}}},"MarketData":{"type":"object","description":"Dane rynkowe z CoinGecko — unified struct dla wszystkich typów tokenów.","required":["name","symbol","current_price_usd"],"properties":{"coin_id":{"type":["string","null"],"description":"CoinGecko coin ID (np. \"ethereum\", \"usd-coin\")"},"name":{"type":"string","description":"Nazwa tokenu (np. \"Ethereum\")"},"symbol":{"type":"string","description":"Symbol tokenu (np. \"ETH\")"},"image":{"type":["string","null"],"description":"URL do ikonki tokenu (PNG z CoinGecko CDN)"},"current_price_usd":{"type":"number","format":"double","description":"Aktualna cena w USD"},"current_price_eur":{"type":["number","null"],"format":"double","description":"Aktualna cena w EUR"},"price_change_24h":{"type":["number","null"],"format":"double","description":"Zmiana ceny w ciągu 24h (procent)"},"market_cap":{"type":["number","null"],"format":"double","description":"Kapitalizacja rynkowa w USD"},"total_supply":{"type":["number","null"],"format":"double","description":"Całkowita podaż tokenu"},"circulating_supply":{"type":["number","null"],"format":"double","description":"Podaż w obiegu"},"total_volume":{"type":["number","null"],"format":"double","description":"Wolumen obrotu 24h w USD"},"decimals":{"type":["integer","null"],"format":"int32","description":"Liczba miejsc dziesiętnych tokena (z detail_platforms)"}}},"MarketToken":{"allOf":[{"$ref":"#/components/schemas/UniswapTokenInfo"},{"type":"object","properties":{"market_data":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/MarketData"}]}}}]},"MarketTokenDetailResponse":{"type":"object","required":["token"],"properties":{"token":{"$ref":"#/components/schemas/TokenListEntry"}}},"MarketTokensChartResponse":{"type":"object","required":["coinId","days","vsCurrency","prices"],"properties":{"coinId":{"type":"string"},"days":{"type":"integer","format":"int32","minimum":0},"vsCurrency":{"type":"string"},"prices":{"type":"array","items":{"$ref":"#/components/schemas/ChartDataPoint"}}}},"MarketTokensDefaultsResponse":{"type":"object","required":["chain","defaultCoinIds"],"properties":{"chain":{"type":"string"},"defaultCoinIds":{"type":"array","items":{"type":"string"}}}},"MarketTokensListResponse":{"type":"object","required":["tokens","totalTokens","filteredTokens","returnedTokens","limit","offset"],"properties":{"tokens":{"type":"array","items":{"$ref":"#/components/schemas/TokenListEntry"}},"totalTokens":{"type":"integer","minimum":0},"filteredTokens":{"type":"integer","minimum":0},"returnedTokens":{"type":"integer","minimum":0},"limit":{"type":"integer","minimum":0},"offset":{"type":"integer","minimum":0}}},"MarketTokensResponse":{"type":"object","required":["name","timestamp","tokens","totalTokens","filteredTokens","returnedTokens","limit","offset"],"properties":{"name":{"type":"string"},"timestamp":{"type":"string"},"tokens":{"type":"array","items":{"$ref":"#/components/schemas/MarketToken"}},"totalTokens":{"type":"integer","minimum":0},"filteredTokens":{"type":"integer","minimum":0},"returnedTokens":{"type":"integer","minimum":0},"limit":{"type":"integer","minimum":0},"offset":{"type":"integer","minimum":0}}},"ServerError":{"oneOf":[{"type":"object","title":"ServerErrorBadRequest","description":"Błędy złego żądania - zwracają kod 400","required":["message","error_type"],"properties":{"message":{"type":"string"},"context":{"type":["string","null"]},"error_type":{"type":"string","enum":["bad_request"]}}},{"type":"object","title":"ServerErrorUnauthorized","description":"Błędy autoryzacji - zwracają kod 401","required":["message","error_type"],"properties":{"message":{"type":"string"},"context":{"type":["string","null"]},"error_type":{"type":"string","enum":["unauthorized"]}}},{"type":"object","title":"ServerErrorForbidden","description":"Błędy uprawnień - zwracają kod 403","required":["message","error_type"],"properties":{"message":{"type":"string"},"context":{"type":["string","null"]},"error_type":{"type":"string","enum":["forbidden"]}}},{"type":"object","title":"ServerErrorNotFound","description":"Błędy braku zasobu - zwracają kod 404","required":["message","error_type"],"properties":{"message":{"type":"string"},"context":{"type":["string","null"]},"error_type":{"type":"string","enum":["not_found"]}}},{"type":"object","title":"ServerErrorConflict","description":"Błędy konfliktu zasobów - zwracają kod 409","required":["message","error_type"],"properties":{"message":{"type":"string"},"context":{"type":["string","null"]},"error_type":{"type":"string","enum":["conflict"]}}},{"type":"object","title":"ServerErrorInternal","description":"Błędy wewnętrzne serwera - zwracają kod 500","required":["message","error_type"],"properties":{"message":{"type":"string"},"context":{"type":["string","null"]},"error_type":{"type":"string","enum":["internal"]}}}]},"TokenListEntry":{"type":"object","description":"Połączony wynik z `/coins/markets` + `/coins/list` — serwowany do klienta.\nPola cenowe/rynkowe są `Option` — sieci bez danych CoinGecko (np. BitShares) zwracają `None`.","required":["coin_id","symbol","name","chain"],"properties":{"coin_id":{"type":"string"},"symbol":{"type":"string"},"name":{"type":"string"},"image":{"type":["string","null"]},"current_price_usd":{"type":["number","null"],"format":"double"},"price_change_24h":{"type":["number","null"],"format":"double"},"market_cap":{"type":["number","null"],"format":"double"},"market_cap_rank":{"type":["integer","null"],"format":"int32","minimum":0},"total_volume":{"type":["number","null"],"format":"double"},"contract_address":{"type":["string","null"]},"decimals":{"type":["integer","null"],"format":"int32"},"chain":{"type":"string"}}},"TokensPage":{"type":"object","description":"Strona wyników listy tokenów (paginacja).","required":["tokens","total_tokens","filtered_tokens"],"properties":{"tokens":{"type":"array","items":{"$ref":"#/components/schemas/TokenListEntry"}},"total_tokens":{"type":"integer","minimum":0},"filtered_tokens":{"type":"integer","minimum":0}}},"TronGridFees":{"type":"object","required":["kind","network","energyFee","bandwidthFee","nativeTransferFee","trc20TransferFee"],"properties":{"kind":{"type":"string"},"network":{"type":"string"},"energyFee":{"type":"integer","format":"int64"},"bandwidthFee":{"type":"integer","format":"int64"},"nativeTransferFee":{"type":"number","format":"double"},"trc20TransferFee":{"type":"number","format":"double"}}},"UniswapTokenInfo":{"type":"object","required":["chainId","address","name","symbol","decimals"],"properties":{"chainId":{"type":"integer","format":"int64"},"address":{"type":"string"},"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer","format":"int64"},"logoURI":{"type":["string","null"]}}},"VaultAsset":{"type":"object","description":"Asset wzbogacony o dane rynkowe — do użycia w vault-router.","required":["asset"],"properties":{"asset":{"$ref":"#/components/schemas/DfnsCoreWalletAsset"},"market_data":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/MarketData"}]},"erc20_rpc":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/Erc20RpcData","description":"On-chain ERC20 metadata (name, symbol, decimals, totalSupply) fetched via JSON-RPC."}]}}},"VaultCoreCredentialDescriptor":{"type":"object","description":"Opis credential dozwolonego do podpisania challenge.","required":["type","id"],"properties":{"type":{"type":"string","description":"Typ credential (zawsze \"public-key\")"},"id":{"type":"string","description":"ID credential (base64url)"}}},"VaultCoreCredentialsActivateCompleteResponse":{"type":"object","description":"Response z aktywacji credential.","required":["status","message"],"properties":{"status":{"type":"string","description":"Status operacji."},"message":{"type":"string","description":"Wiadomość potwierdzająca aktywację."}}},"VaultCoreCredentialsActivateInitResponse":{"type":"object","description":"Response z inicjalizacji aktywacji credential.","required":["status","user_action_challenge"],"properties":{"status":{"type":"string","description":"Status operacji."},"user_action_challenge":{"$ref":"#/components/schemas/DfnsAuthActionInitPost200Response"}}},"VaultCoreCredentialsCodeAddCompleteResponse":{"type":"object","description":"Response z zakończenia dodawania credential z kodem.","required":["status","credential"],"properties":{"status":{"type":"string","description":"Status operacji."},"credential":{"$ref":"#/components/schemas/DfnsAuthCredentialsGet200ResponseItemsInner"}}},"VaultCoreCredentialsCodeAddInitResponse":{"type":"object","description":"Response z inicjalizacji dodawania credential z kodem.","required":["status","challenge"],"properties":{"status":{"type":"string","description":"Status operacji."},"challenge":{"$ref":"#/components/schemas/DfnsAuthCredentialsInitPost200Response"}}},"VaultCoreCredentialsCodeGenerateCompleteResponse":{"type":"object","description":"Response z generowania kodu jednorazowego.","required":["status","code","expiration"],"properties":{"status":{"type":"string","description":"Status operacji."},"code":{"type":"string","description":"Wygenerowany kod jednorazowy."},"expiration":{"type":"string","description":"Czas wygaśnięcia kodu."}}},"VaultCoreCredentialsCodeGenerateInitResponse":{"type":"object","description":"Response z inicjalizacji generowania kodu jednorazowego.","required":["status","user_action_challenge"],"properties":{"status":{"type":"string","description":"Status operacji."},"user_action_challenge":{"$ref":"#/components/schemas/DfnsAuthActionInitPost200Response"}}},"VaultCoreCredentialsDeactivateCompleteResponse":{"type":"object","description":"Response z dezaktywacji credential.","required":["status","message"],"properties":{"status":{"type":"string","description":"Status operacji."},"message":{"type":"string","description":"Wiadomość potwierdzająca dezaktywację."}}},"VaultCoreCredentialsDeactivateInitResponse":{"type":"object","description":"Response z inicjalizacji dezaktywacji credential.","required":["status","user_action_challenge"],"properties":{"status":{"type":"string","description":"Status operacji."},"user_action_challenge":{"$ref":"#/components/schemas/DfnsAuthActionInitPost200Response"}}},"VaultCoreCredentialsListResponse":{"type":"object","description":"Response z listą poświadczeń użytkownika.","required":["status","credentials"],"properties":{"status":{"type":"string","description":"Status operacji."},"credentials":{"$ref":"#/components/schemas/DfnsAuthCredentialsGet200Response"}}},"VaultCoreDfnsWebhookEvent":{"type":"object","description":"Main struct for all DFNS webhook events.\nHas explicit `kind` and `data` fields for OpenAPI compatibility.","required":["id","date","kind","data","timestampSent","deliveryAttempt"],"properties":{"id":{"type":"string","description":"Unique webhook identifier (e.g., \"whe-01jep-hqu6t-e2eog0ronug89dj3\")"},"date":{"type":"string","description":"Date sent in ISO 8601 format (e.g., \"2026-01-12T16:50:10.480Z\")"},"kind":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventKind","description":"Event kind (e.g., \"key.created\", \"wallet.transfer.confirmed\")"},"data":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventDataContent","description":"Event-specific data"},"status":{"type":["string","null"],"description":"HTTP response status (e.g., \"200\", \"422\") - optional, may not exist on first attempt"},"timestampSent":{"type":"integer","format":"int64","description":"Unix timestamp of sending (seconds since epoch)"},"deliveryAttempt":{"type":"integer","format":"int32","description":"Delivery attempt number (starts from 1)"},"deliveryFailed":{"type":"boolean","description":"Whether delivery failed"},"error":{"type":["string","null"],"description":"Error message (if delivery failed)"},"retryOf":{"type":["string","null"],"description":"ID of previous webhook (if this is a retry)"},"nextAttemptDate":{"type":["string","null"],"description":"Date of next delivery attempt"}}},"VaultCoreDfnsWebhookEventAssetMetadata":{"type":"object","description":"Asset metadata","properties":{"symbol":{"type":["string","null"],"description":"Token symbol"},"decimals":{"type":["integer","null"],"format":"int32","description":"Number of decimal places","minimum":0},"verified":{"type":["boolean","null"],"description":"Whether the asset is verified"},"quotes":{"type":"object","description":"Valuations in different fiat currencies","additionalProperties":{"type":"number","format":"double"},"propertyNames":{"type":"string"}}}},"VaultCoreDfnsWebhookEventBlockchainEvent":{"type":"object","description":"Blockchain event details (incoming/outgoing transaction)","required":["walletId","orgId","network","kind","direction","symbol","decimals","value","from","to","txHash","blockNumber","timestamp"],"properties":{"walletId":{"type":"string","description":"Wallet ID"},"orgId":{"type":"string","description":"Organization ID"},"network":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventNetwork","description":"Blockchain network"},"kind":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventBlockchainEventKind","description":"Blockchain event kind"},"direction":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransactionDirection","description":"Transaction direction"},"symbol":{"type":"string","description":"Token/currency symbol (e.g., \"ETH\", \"USDC\")"},"decimals":{"type":"integer","format":"int32","description":"Number of decimal places","minimum":0},"value":{"type":"string","description":"Transaction value (in smallest units, as string)"},"fee":{"type":["string","null"],"description":"Transaction fee (in smallest units, as string)"},"from":{"type":"string","description":"Sender address"},"to":{"type":"string","description":"Recipient address"},"txHash":{"type":"string","description":"Transaction hash"},"blockNumber":{"type":"integer","format":"int64","description":"Block number","minimum":0},"timestamp":{"type":"string","description":"Transaction timestamp in ISO 8601 format"},"verified":{"type":["boolean","null"],"description":"Whether the transaction is verified (optional)"},"metadata":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventBlockchainMetadata","description":"Transaction metadata (valuations, asset info)"}]}}},"VaultCoreDfnsWebhookEventBlockchainEventData":{"type":"object","description":"Data for wallet.blockchainevent.detected event","required":["blockchainEvent","wallet"],"properties":{"blockchainEvent":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventBlockchainEvent","description":"Blockchain event details"},"wallet":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventWallet","description":"Wallet the event relates to"}}},"VaultCoreDfnsWebhookEventBlockchainEventKind":{"type":"string","description":"Blockchain event kind","enum":["NativeTransfer","Erc20Transfer","Erc721Transfer","Erc1155Transfer","SplTransfer","Spl2022Transfer","Trc20Transfer","Trc10Transfer","Other"]},"VaultCoreDfnsWebhookEventBlockchainMetadata":{"type":"object","description":"Blockchain event metadata","properties":{"asset":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventAssetMetadata","description":"Information about transferred assets"}]},"fee":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventAssetMetadata","description":"Information about transaction fee"}]}}},"VaultCoreDfnsWebhookEventDataContent":{"oneOf":[{"oneOf":[{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventKeyCreatedData","description":"Data for key.created"}],"title":"KeyCreated"},{"oneOf":[{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventWalletCreatedData","description":"Data for wallet.created"}],"title":"WalletCreated"},{"oneOf":[{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventBlockchainEventData","description":"Data for wallet.blockchainevent.detected"}],"title":"WalletBlockchainEventDetected"},{"oneOf":[{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferRequestedData","description":"Data for wallet.transfer.requested"}],"title":"WalletTransferRequested"},{"oneOf":[{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferBroadcastedData","description":"Data for wallet.transfer.broadcasted"}],"title":"WalletTransferBroadcasted"},{"oneOf":[{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferConfirmedData","description":"Data for wallet.transfer.confirmed"}],"title":"WalletTransferConfirmed"},{"oneOf":[{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferFailedData","description":"Data for wallet.transfer.failed"}],"title":"WalletTransferFailed"},{"oneOf":[{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventSignatureData","description":"Data for wallet.signature.requested"}],"title":"WalletSignatureRequested"},{"oneOf":[{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventSignatureData","description":"Data for wallet.signature.signed"}],"title":"WalletSignatureSigned"}],"description":"Event data - oneOf for different event types"},"VaultCoreDfnsWebhookEventKey":{"type":"object","description":"Cryptographic key structure","required":["id","dateCreated","scheme","curve","publicKey","status","custodial"],"properties":{"id":{"type":"string","description":"Unique key identifier (e.g., \"key-01jep-g7m4p-ei6ac4pen2prlod8\")"},"dateCreated":{"type":"string","description":"Creation date in ISO 8601 format"},"scheme":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventKeyScheme","description":"Cryptographic scheme (e.g., \"EdDSA\", \"ECDSA\")"},"curve":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventKeyCurve","description":"Cryptographic curve (e.g., \"ed25519\", \"secp256k1\")"},"publicKey":{"type":"string","description":"Public key in hex format"},"status":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventKeyStatus","description":"Key status"},"custodial":{"type":"boolean","description":"Whether the key is custodial"},"delegatedTo":{"type":["string","null"],"description":"ID of the user the key is delegated to"}}},"VaultCoreDfnsWebhookEventKeyCreatedData":{"type":"object","description":"Data for key.created event","required":["key"],"properties":{"key":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventKey","description":"Information about the created key"}}},"VaultCoreDfnsWebhookEventKeyCurve":{"type":"string","description":"Cryptographic curve","enum":["ed25519","secp256k1"]},"VaultCoreDfnsWebhookEventKeyScheme":{"type":"string","description":"Key cryptographic scheme","enum":["EdDSA","ECDSA"]},"VaultCoreDfnsWebhookEventKeyStatus":{"type":"string","description":"Key status","enum":["Active","Inactive","Archived"]},"VaultCoreDfnsWebhookEventKind":{"type":"string","description":"DFNS event kind","enum":["key.created","wallet.created","wallet.blockchainevent.detected","wallet.transfer.requested","wallet.transfer.broadcasted","wallet.transfer.confirmed","wallet.transfer.failed","wallet.signature.requested","wallet.signature.signed"]},"VaultCoreDfnsWebhookEventNetwork":{"type":"string","description":"Blockchain network","enum":["Ethereum","Bitcoin","Solana","Polygon","ArbitrumOne","Optimism","AvalancheCChain","Base","Bsc","Fantom","Tron","EthereumSepolia","EthereumGoerli","EthereumHolesky","PolygonMumbai","PolygonAmoy","ArbitrumSepolia","OptimismSepolia","AvalancheFuji","BaseSepolia","BscTestnet","FantomTestnet","SolanaDevnet","BitcoinTestnet3","Unknown"]},"VaultCoreDfnsWebhookEventRequester":{"type":"object","description":"Information about the person/system requesting the operation","required":["userId"],"properties":{"userId":{"type":"string","description":"DFNS user ID"},"appId":{"type":["string","null"],"description":"Application ID (optional)"}}},"VaultCoreDfnsWebhookEventSignature":{"type":"object","description":"Resulting ECDSA signature","required":["r","s"],"properties":{"r":{"type":"string","description":"R component of signature (hex)"},"s":{"type":"string","description":"S component of signature (hex)"},"recid":{"type":["integer","null"],"format":"int32","description":"Recovery ID (0 or 1)","minimum":0},"encoded":{"type":["string","null"],"description":"Full signature (hex, optional)"}}},"VaultCoreDfnsWebhookEventSignatureData":{"type":"object","description":"Data for wallet.signature.* events","required":["signatureRequest"],"properties":{"signatureRequest":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventSignatureRequest","description":"Signature request details"}}},"VaultCoreDfnsWebhookEventSignatureKind":{"type":"string","description":"Signature kind","enum":["Hash","Message","Eip712","Transaction"]},"VaultCoreDfnsWebhookEventSignatureRequest":{"type":"object","description":"Full signature request","required":["id","keyId","status","requester","requestBody","dateRequested"],"properties":{"id":{"type":"string","description":"Unique signature request identifier (e.g., \"sig-01jeh-opmmc-ej9pk2bnlm1o8bhb\")"},"keyId":{"type":"string","description":"ID of the key used for signing"},"status":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventSignatureStatus","description":"Signature request status"},"requester":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventRequester","description":"Information about the requester"},"requestBody":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventSignatureRequestBody","description":"Signature request body"},"dateRequested":{"type":"string","description":"Request date in ISO 8601 format"},"dateSigned":{"type":["string","null"],"description":"Signing date (for signed)"},"signature":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventSignature","description":"Resulting signature (for signed)"}]}}},"VaultCoreDfnsWebhookEventSignatureRequestBody":{"type":"object","description":"Signature request body","required":["kind"],"properties":{"kind":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventSignatureKind","description":"Signature kind"},"hash":{"type":["string","null"],"description":"Hash to sign (for Kind::Hash)"},"message":{"type":["string","null"],"description":"Message to sign (for Kind::Message)"},"typedData":{"description":"Typed data to sign (for Kind::Eip712)"},"transaction":{"description":"Transaction to sign (for Kind::Transaction)"}}},"VaultCoreDfnsWebhookEventSignatureStatus":{"type":"string","description":"Signature request status","enum":["Pending","Signed","Failed","Cancelled"]},"VaultCoreDfnsWebhookEventSigningKey":{"type":"object","description":"Signing key associated with a wallet","required":["id","publicKey","scheme","curve"],"properties":{"id":{"type":"string","description":"Unique key identifier"},"publicKey":{"type":"string","description":"Public key in hex format"},"scheme":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventKeyScheme","description":"Cryptographic scheme"},"curve":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventKeyCurve","description":"Cryptographic curve"},"delegatedTo":{"type":["string","null"],"description":"ID of the user the key is delegated to"}}},"VaultCoreDfnsWebhookEventTransactionDirection":{"type":"string","description":"Transaction direction","enum":["In","Out"]},"VaultCoreDfnsWebhookEventTransferBroadcasted":{"type":"object","description":"Transfer request in Broadcasted status","required":["id","walletId","network","status","requester","requestBody","dateRequested","dateBroadcasted","txHash"],"properties":{"id":{"type":"string","description":"Unique transfer identifier"},"walletId":{"type":"string","description":"ID of the wallet from which the transfer is made"},"network":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventNetwork","description":"Blockchain network"},"status":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferStatus","description":"Transfer status (always Broadcasted)"},"requester":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventRequester","description":"Information about the requester"},"requestBody":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferRequestBody","description":"Transfer request body"},"dateRequested":{"type":"string","description":"Request date in ISO 8601 format"},"dateBroadcasted":{"type":"string","description":"Broadcast date in ISO 8601 format"},"txHash":{"type":"string","description":"Transaction hash on blockchain"},"metadata":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferMetadata","description":"Transfer metadata"}]}}},"VaultCoreDfnsWebhookEventTransferBroadcastedData":{"type":"object","description":"Data for wallet.transfer.broadcasted event","required":["transferRequest"],"properties":{"transferRequest":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferBroadcasted","description":"Transfer request details"}}},"VaultCoreDfnsWebhookEventTransferConfirmed":{"type":"object","description":"Transfer request in Confirmed status","required":["id","walletId","network","status","requester","requestBody","dateRequested","dateBroadcasted","dateConfirmed","txHash","fee"],"properties":{"id":{"type":"string","description":"Unique transfer identifier"},"walletId":{"type":"string","description":"ID of the wallet from which the transfer is made"},"network":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventNetwork","description":"Blockchain network"},"status":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferStatus","description":"Transfer status (always Confirmed)"},"requester":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventRequester","description":"Information about the requester"},"requestBody":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferRequestBody","description":"Transfer request body"},"dateRequested":{"type":"string","description":"Request date in ISO 8601 format"},"dateBroadcasted":{"type":"string","description":"Broadcast date in ISO 8601 format"},"dateConfirmed":{"type":"string","description":"Confirmation date in ISO 8601 format"},"txHash":{"type":"string","description":"Transaction hash on blockchain"},"fee":{"type":"string","description":"Transaction fee (in smallest units, as string)"},"metadata":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferMetadata","description":"Transfer metadata"}]}}},"VaultCoreDfnsWebhookEventTransferConfirmedData":{"type":"object","description":"Data for wallet.transfer.confirmed event","required":["transferRequest"],"properties":{"transferRequest":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferConfirmed","description":"Transfer request details"}}},"VaultCoreDfnsWebhookEventTransferFailed":{"type":"object","description":"Transfer request in Failed status","required":["id","walletId","network","status","requester","requestBody","dateRequested","reason"],"properties":{"id":{"type":"string","description":"Unique transfer identifier"},"walletId":{"type":"string","description":"ID of the wallet from which the transfer is made"},"network":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventNetwork","description":"Blockchain network"},"status":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferStatus","description":"Transfer status (always Failed)"},"requester":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventRequester","description":"Information about the requester"},"requestBody":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferRequestBody","description":"Transfer request body"},"dateRequested":{"type":"string","description":"Request date in ISO 8601 format"},"reason":{"type":"string","description":"Failure reason"},"metadata":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferMetadata","description":"Transfer metadata"}]}}},"VaultCoreDfnsWebhookEventTransferFailedData":{"type":"object","description":"Data for wallet.transfer.failed event","required":["transferRequest"],"properties":{"transferRequest":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferFailed","description":"Transfer request details"}}},"VaultCoreDfnsWebhookEventTransferKind":{"type":"string","description":"Transfer kind","enum":["Native","Erc20","Erc721","Erc1155","Spl","Spl2022","Asa","Trc20","Trc721"]},"VaultCoreDfnsWebhookEventTransferMetadata":{"type":"object","description":"Transfer metadata","properties":{"asset":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventAssetMetadata","description":"Information about the transferred asset"}]}}},"VaultCoreDfnsWebhookEventTransferPriority":{"type":"string","description":"Transaction priority","enum":["Slow","Standard","Fast"]},"VaultCoreDfnsWebhookEventTransferRequestBody":{"type":"object","description":"Transfer request body","required":["kind","to","amount"],"properties":{"kind":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferKind","description":"Transfer kind"},"to":{"type":"string","description":"Recipient address"},"amount":{"type":"string","description":"Transfer amount (in smallest units, as string)"},"priority":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferPriority","description":"Transaction priority"}]},"contract":{"type":["string","null"],"description":"Token contract address (for ERC-20, SPL)"},"tokenId":{"type":["string","null"],"description":"Token ID (for NFT)"},"memo":{"type":["string","null"],"description":"Memo/note (for some networks like Solana)"}}},"VaultCoreDfnsWebhookEventTransferRequested":{"type":"object","description":"Transfer request in Pending status","required":["id","walletId","network","status","requester","requestBody","dateRequested"],"properties":{"id":{"type":"string","description":"Unique transfer identifier (e.g., \"xfr-01jep-4prhl-entq7aej9buh103e\")"},"walletId":{"type":"string","description":"ID of the wallet from which the transfer is made"},"network":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventNetwork","description":"Blockchain network"},"status":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferStatus","description":"Transfer status (always Pending)"},"requester":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventRequester","description":"Information about the requester"},"requestBody":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferRequestBody","description":"Transfer request body"},"dateRequested":{"type":"string","description":"Request date in ISO 8601 format"},"metadata":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferMetadata","description":"Transfer metadata"}]}}},"VaultCoreDfnsWebhookEventTransferRequestedData":{"type":"object","description":"Data for wallet.transfer.requested event","required":["transferRequest"],"properties":{"transferRequest":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventTransferRequested","description":"Transfer request details"}}},"VaultCoreDfnsWebhookEventTransferStatus":{"type":"string","description":"Transfer status","enum":["Pending","Broadcasted","Confirmed","Failed","Cancelled"]},"VaultCoreDfnsWebhookEventWallet":{"type":"object","description":"Full DFNS wallet structure","required":["id","address","dateCreated","network","status","custodial","signingKey"],"properties":{"id":{"type":"string","description":"Unique wallet identifier (e.g., \"wa-01jep-g7mi2-ea7quevihqtc5l2v\")"},"address":{"type":"string","description":"Wallet address on blockchain (e.g., \"0xe3154383044d0770e0f6122c01c712b9780a72ff\")"},"dateCreated":{"type":"string","description":"Creation date in ISO 8601 format"},"network":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventNetwork","description":"Blockchain network"},"status":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventWalletStatus","description":"Wallet status"},"name":{"type":["string","null"],"description":"Wallet name (optional)"},"custodial":{"type":"boolean","description":"Whether the wallet is custodial"},"signingKey":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventSigningKey","description":"Signing key associated with the wallet"},"tags":{"type":"array","items":{"type":"string"},"description":"Tags assigned to the wallet"}}},"VaultCoreDfnsWebhookEventWalletCreatedData":{"type":"object","description":"Data for wallet.created event","required":["wallet"],"properties":{"wallet":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEventWallet","description":"Information about the created wallet"}}},"VaultCoreDfnsWebhookEventWalletStatus":{"type":"string","description":"Wallet status","enum":["Active","Inactive","Archived"]},"VaultCoreFido2Assertion":{"type":"object","description":"FIDO2 credential assertion z podpisem użytkownika.","required":["credId","clientData","signature","authenticatorData"],"properties":{"credId":{"type":"string","description":"ID credential"},"clientData":{"type":"string","description":"Client data (base64)"},"signature":{"type":"string","description":"Podpis (base64)"},"authenticatorData":{"type":"string","description":"Authenticator data (base64)"}}},"VaultCoreKeyCreateInitResponse":{"type":"object","description":"Challenge do podpisania przez FIDO2 credential użytkownika.","required":["challengeIdentifier","challenge","allowCredentials"],"properties":{"challengeIdentifier":{"type":"string","description":"Identyfikator challenge (do przekazania w complete)"},"challenge":{"type":"string","description":"Challenge do podpisania (base64)"},"allowCredentials":{"type":"array","items":{"$ref":"#/components/schemas/VaultCoreCredentialDescriptor"},"description":"Dozwolone credentials do podpisania"},"rpId":{"type":["string","null"],"description":"RP ID dla WebAuthn"}}},"VaultCoreKeyExportInitResponse":{"type":"object","description":"Challenge do podpisania przez FIDO2 credential użytkownika.","required":["challengeIdentifier","challenge","allowCredentials"],"properties":{"challengeIdentifier":{"type":"string","description":"Identyfikator challenge (do przekazania w complete)"},"challenge":{"type":"string","description":"Challenge do podpisania (base64)"},"allowCredentials":{"type":"array","items":{"$ref":"#/components/schemas/VaultCoreCredentialDescriptor"},"description":"Dozwolone credentials do podpisania"},"rpId":{"type":["string","null"],"description":"RP ID dla WebAuthn"}}},"VaultCoreUserVerification":{"type":"string","enum":["required","preferred","discouraged"]},"VaultCoreWalletCreateCompleteRequest":{"type":"object","description":"Request do zakończenia tworzenia portfela.","required":["network","name","challengeIdentifier","firstFactor"],"properties":{"network":{"$ref":"#/components/schemas/DfnsCoreSupportedNetwork","description":"Sieć blockchain (musi być taka sama jak w init)"},"name":{"type":"string","description":"Nazwa portfela (musi być taka sama jak w init)"},"challengeIdentifier":{"type":"string","description":"Identyfikator challenge z kroku init"},"firstFactor":{"$ref":"#/components/schemas/VaultCoreFido2Assertion","description":"Podpisane dane FIDO2"}}},"VaultCoreWalletCreateCompleteResponse":{"type":"object","description":"Response z utworzenia portfela.","required":["wallet"],"properties":{"wallet":{"$ref":"#/components/schemas/DfnsWallet","description":"Utworzony portfel"}}},"VaultCoreWalletCreateInitRequest":{"type":"object","description":"Request do inicjalizacji tworzenia portfela.","required":["network","name"],"properties":{"network":{"$ref":"#/components/schemas/DfnsCoreSupportedNetwork","description":"Sieć blockchain dla portfela"},"name":{"type":"string","description":"Nazwa portfela"}}},"VaultCoreWalletCreateInitResponse":{"type":"object","description":"Challenge do podpisania przez FIDO2 credential użytkownika.","required":["challengeIdentifier","challenge","allowCredentials","userVerification"],"properties":{"challengeIdentifier":{"type":"string","description":"Identyfikator challenge (do przekazania w complete)"},"challenge":{"type":"string","description":"Challenge do podpisania (base64)"},"allowCredentials":{"type":"array","items":{"$ref":"#/components/schemas/VaultCoreCredentialDescriptor"},"description":"Dozwolone credentials do podpisania"},"rpId":{"type":["string","null"],"description":"RP ID dla WebAuthn"},"userVerification":{"$ref":"#/components/schemas/VaultCoreUserVerification"}}},"VaultCoreWalletListResponse":{"type":"object","description":"Response zawierający listę portfeli użytkownika.","required":["wallets"],"properties":{"wallets":{"type":"array","items":{"$ref":"#/components/schemas/DfnsWallet"},"description":"Lista portfeli"},"next_page_token":{"type":["string","null"],"description":"Token do następnej strony (paginacja)"}}},"VaultCoreWalletTransferErc20CompleteRequest":{"type":"object","description":"Request do zakończenia transferu tokenów ERC20.","required":["contractAddress","to","amount","challengeIdentifier","firstFactor"],"properties":{"contractAddress":{"type":"string","description":"Adres kontraktu tokena ERC20 (musi być taki sam jak w init)"},"to":{"type":"string","description":"Adres docelowy transferu (musi być taki sam jak w init)"},"amount":{"type":"string","description":"Kwota w najmniejszej jednostce (musi być taka sama jak w init)"},"priority":{"type":["string","null"],"description":"Priorytet transakcji (opcjonalny)"},"challengeIdentifier":{"type":"string","description":"Identyfikator challenge z kroku init"},"firstFactor":{"$ref":"#/components/schemas/VaultCoreFido2Assertion","description":"Podpisane dane FIDO2"}}},"VaultCoreWalletTransferErc20InitResponse":{"type":"object","description":"Challenge do podpisania przez FIDO2 credential użytkownika.","required":["challengeIdentifier","challenge","allowCredentials","userVerification"],"properties":{"challengeIdentifier":{"type":"string","description":"Identyfikator challenge (do przekazania w complete)"},"challenge":{"type":"string","description":"Challenge do podpisania (base64)"},"allowCredentials":{"type":"array","items":{"$ref":"#/components/schemas/VaultCoreCredentialDescriptor"},"description":"Dozwolone credentials do podpisania"},"rpId":{"type":["string","null"],"description":"RP ID dla WebAuthn"},"userVerification":{"$ref":"#/components/schemas/VaultCoreUserVerification"}}},"VaultCoreWalletTransferNativeCompleteRequest":{"type":"object","description":"Request do zakończenia transferu natywnych tokenów.","required":["to","amount","challengeIdentifier","firstFactor"],"properties":{"to":{"type":"string","description":"Adres docelowy transferu (musi być taki sam jak w init)"},"amount":{"type":"string","description":"Kwota w najmniejszej jednostce (musi być taka sama jak w init)"},"priority":{"type":["string","null"],"description":"Priorytet transakcji (opcjonalny)"},"challengeIdentifier":{"type":"string","description":"Identyfikator challenge z kroku init"},"firstFactor":{"$ref":"#/components/schemas/VaultCoreFido2Assertion","description":"Podpisane dane FIDO2"}}},"VaultCoreWalletTransferNativeInitResponse":{"type":"object","description":"Challenge do podpisania przez FIDO2 credential użytkownika.","required":["challengeIdentifier","challenge","allowCredentials","userVerification"],"properties":{"challengeIdentifier":{"type":"string","description":"Identyfikator challenge (do przekazania w complete)"},"challenge":{"type":"string","description":"Challenge do podpisania (base64)"},"allowCredentials":{"type":"array","items":{"$ref":"#/components/schemas/VaultCoreCredentialDescriptor"},"description":"Dozwolone credentials do podpisania"},"rpId":{"type":["string","null"],"description":"RP ID dla WebAuthn"},"userVerification":{"$ref":"#/components/schemas/VaultCoreUserVerification"}}},"VaultCoreWalletTransferSplCompleteRequest":{"type":"object","description":"Request do zakończenia transferu tokenów SPL / SPL2022.","required":["mint","to","amount","challengeIdentifier","firstFactor"],"properties":{"kind":{"type":"string","description":"Typ tokena: \"Spl\" lub \"Spl2022\" (domyślnie \"Spl\")"},"mint":{"type":"string","description":"Mint address tokena SPL (musi być taki sam jak w init)"},"to":{"type":"string","description":"Adres docelowy transferu (musi być taki sam jak w init)"},"amount":{"type":"string","description":"Kwota w najmniejszej jednostce (musi być taka sama jak w init)"},"memo":{"type":["string","null"],"description":"Memo (opcjonalne)"},"createDestinationAccount":{"type":["boolean","null"],"description":"Czy utworzyć konto docelowe jeśli nie istnieje"},"challengeIdentifier":{"type":"string","description":"Identyfikator challenge z kroku init"},"firstFactor":{"$ref":"#/components/schemas/VaultCoreFido2Assertion","description":"Podpisane dane FIDO2"}}},"VaultCoreWalletTransferSplInitResponse":{"type":"object","description":"Challenge do podpisania przez FIDO2 credential użytkownika.","required":["challengeIdentifier","challenge","allowCredentials","userVerification"],"properties":{"challengeIdentifier":{"type":"string"},"challenge":{"type":"string"},"allowCredentials":{"type":"array","items":{"$ref":"#/components/schemas/VaultCoreCredentialDescriptor"}},"rpId":{"type":["string","null"]},"userVerification":{"$ref":"#/components/schemas/VaultCoreUserVerification"}}},"VaultCoreWalletTransferTrc10CompleteRequest":{"type":"object","description":"Request do zakończenia transferu tokenów TRC-10.","required":["tokenId","to","amount","challengeIdentifier","firstFactor"],"properties":{"tokenId":{"type":"string","description":"ID tokena TRC-10 (musi być taki sam jak w init)"},"to":{"type":"string","description":"Adres docelowy transferu (musi być taki sam jak w init)"},"amount":{"type":"string","description":"Kwota w najmniejszej jednostce (musi być taka sama jak w init)"},"challengeIdentifier":{"type":"string","description":"Identyfikator challenge z kroku init"},"firstFactor":{"$ref":"#/components/schemas/VaultCoreFido2Assertion","description":"Podpisane dane FIDO2"}}},"VaultCoreWalletTransferTrc10InitResponse":{"type":"object","description":"Challenge do podpisania przez FIDO2 credential użytkownika.","required":["challengeIdentifier","challenge","allowCredentials","userVerification"],"properties":{"challengeIdentifier":{"type":"string"},"challenge":{"type":"string"},"allowCredentials":{"type":"array","items":{"$ref":"#/components/schemas/VaultCoreCredentialDescriptor"}},"rpId":{"type":["string","null"]},"userVerification":{"$ref":"#/components/schemas/VaultCoreUserVerification"}}},"VaultCoreWalletTransferTrc20CompleteRequest":{"type":"object","description":"Request do zakończenia transferu tokenów TRC-20.","required":["contract","to","amount","challengeIdentifier","firstFactor"],"properties":{"contract":{"type":"string","description":"Adres kontraktu tokena TRC-20 (musi być taki sam jak w init)"},"to":{"type":"string","description":"Adres docelowy transferu (musi być taki sam jak w init)"},"amount":{"type":"string","description":"Kwota w najmniejszej jednostce (musi być taka sama jak w init)"},"challengeIdentifier":{"type":"string","description":"Identyfikator challenge z kroku init"},"firstFactor":{"$ref":"#/components/schemas/VaultCoreFido2Assertion","description":"Podpisane dane FIDO2"}}},"VaultCoreWalletTransferTrc20InitResponse":{"type":"object","description":"Challenge do podpisania przez FIDO2 credential użytkownika.","required":["challengeIdentifier","challenge","allowCredentials","userVerification"],"properties":{"challengeIdentifier":{"type":"string"},"challenge":{"type":"string"},"allowCredentials":{"type":"array","items":{"$ref":"#/components/schemas/VaultCoreCredentialDescriptor"}},"rpId":{"type":["string","null"]},"userVerification":{"$ref":"#/components/schemas/VaultCoreUserVerification"}}},"VaultCoreWalletUpdateCompleteRequest":{"type":"object","description":"Request do zakończenia aktualizacji portfela.","required":["name","challengeIdentifier","firstFactor"],"properties":{"name":{"type":"string","description":"Nowa nazwa portfela (musi być taka sama jak w init)"},"challengeIdentifier":{"type":"string","description":"Identyfikator challenge z kroku init"},"firstFactor":{"$ref":"#/components/schemas/VaultCoreFido2Assertion","description":"Podpisane dane FIDO2"}}},"VaultCoreWalletUpdateCompleteResponse":{"type":"object","description":"Response z aktualizacji portfela.","required":["wallet"],"properties":{"wallet":{"$ref":"#/components/schemas/DfnsWallet","description":"Zaktualizowany portfel"}}},"VaultCoreWalletUpdateInitRequest":{"type":"object","description":"Request do inicjalizacji aktualizacji portfela.","required":["name"],"properties":{"name":{"type":"string","description":"Nowa nazwa portfela"}}},"VaultCoreWalletUpdateInitResponse":{"type":"object","description":"Response z inicjalizacji aktualizacji portfela.","required":["challengeIdentifier","challenge","allowCredentials","userVerification"],"properties":{"challengeIdentifier":{"type":"string","description":"Identyfikator challenge (do przekazania w complete)"},"challenge":{"type":"string","description":"Challenge do podpisania (base64)"},"allowCredentials":{"type":"array","items":{"$ref":"#/components/schemas/VaultCoreCredentialDescriptor"},"description":"Dozwolone credentials do podpisania"},"rpId":{"type":["string","null"],"description":"RP ID dla WebAuthn"},"userVerification":{"$ref":"#/components/schemas/VaultCoreUserVerification"}}},"VaultReadyResponse":{"type":"object","description":"Response for the readiness check endpoint.","required":["status"],"properties":{"status":{"type":"string"}}},"VaultRouterNetworkFeesResponse":{"oneOf":[{"$ref":"#/components/schemas/DfnsCoreNetworkFeesResponse"},{"$ref":"#/components/schemas/TronGridFees"}]},"VaultRouterVaultUserExistsResponse":{"type":"object","required":["exists"],"properties":{"exists":{"type":"boolean","description":"Whether the user is registered in DFNS"}}},"VaultRouterVaultUserGetResponse":{"type":"object","required":["user"],"properties":{"user":{"$ref":"#/components/schemas/DfnsCoreUserGetResponse","description":"DFNS user details"}}},"VaultRouterVaultUserRegisterCompleteResponse":{"type":"object","required":["status","registration_result"],"properties":{"status":{"type":"string"},"registration_result":{"$ref":"#/components/schemas/DfnsCoreUserDelegatedRegistrationCompleteResponse"}}},"VaultRouterVaultUserRegisterCompleteWithWalletsResponse":{"type":"object","required":["status","registration_result"],"properties":{"status":{"type":"string"},"registration_result":{"$ref":"#/components/schemas/DfnsCoreUserDelegatedRegistrationCompleteWithWalletsResponse"}}},"VaultRouterVaultUserRegisterInitResponse":{"type":"object","required":["status","registration_challenge"],"properties":{"status":{"type":"string"},"registration_challenge":{"$ref":"#/components/schemas/DfnsCoreUserDelegatedRegistrationInitResponse"}}},"VaultRouterWebhookDfnsResponse":{"type":"object","description":"Response confirming webhook receipt","required":["received"],"properties":{"received":{"type":"boolean","description":"Whether the webhook was received successfully"}}},"VaultUserDevicesPlatform":{"type":"string","description":"Platform on which the FCM token was issued.","enum":["ios","android","web"]},"VaultUserDevicesRegisterRequest":{"type":"object","description":"Request body for registering a device's FCM token.","required":["platform","fcmToken"],"properties":{"platform":{"$ref":"#/components/schemas/VaultUserDevicesPlatform","description":"Target platform - drives FCM payload selection on dispatch."},"fcmToken":{"type":"string","description":"Opaque FCM registration token from Firebase SDK on the client."},"appVersion":{"type":["string","null"],"description":"Client app version (e.g. `\"1.42.0\"`) - optional, used for support diagnostics."},"userAgent":{"type":["string","null"],"description":"User-Agent string (web) or device descriptor (mobile) - optional, diagnostic only."}}},"VaultUserDevicesRegisterResponse":{"type":"object","description":"Response after registering or refreshing an FCM token.","required":["created"],"properties":{"created":{"type":"boolean","description":"`true` if a new row was inserted, `false` if an existing row was updated."}}},"VaultUserDevicesUnregisterRequest":{"type":"object","description":"Request body for unregistering an FCM token.","required":["fcmToken"],"properties":{"fcmToken":{"type":"string","description":"FCM token to remove from the registry."}}},"VaultUserDevicesUnregisterResponse":{"type":"object","description":"Response after attempting to unregister an FCM token.","required":["deleted"],"properties":{"deleted":{"type":"boolean","description":"`true` if a row was deleted, `false` if no matching token existed for this user."}}},"VaultUserEventsResponse":{"type":"object","description":"Response containing user's event history","required":["events","count"],"properties":{"events":{"type":"array","items":{"$ref":"#/components/schemas/VaultCoreDfnsWebhookEvent"},"description":"List of events (newest first)"},"count":{"type":"integer","description":"Total count of events returned","minimum":0}}},"VaultUserWalletsFullResponse":{"type":"object","description":"Response containing wallets with their assets.","required":["items"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/WalletWithAssets"},"description":"Wallets with their assets and net worth."},"nextPageToken":{"type":["string","null"],"description":"Token for the next page (pagination)."}}},"VaultWalletAssetsResponse":{"type":"object","description":"Wallet assets response with optional enrichment.","required":["walletId","network","assets"],"properties":{"walletId":{"type":"string"},"network":{"$ref":"#/components/schemas/DfnsNetwork"},"assets":{"type":"array","items":{"$ref":"#/components/schemas/VaultAsset"}},"netWorth":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsCoreNetWorth"}]}}},"VaultWalletTransactionsResponse":{"type":"object","description":"Response containing wallet transaction requests.","required":["walletId","items"],"properties":{"walletId":{"type":"string","description":"Wallet ID."},"items":{"type":"array","items":{"$ref":"#/components/schemas/DfnsWalletsSign8TransactionRequest"},"description":"List of transaction request objects."},"nextPageToken":{"type":["string","null"],"description":"Token for the next page (pagination)."}}},"WalletWithAssets":{"allOf":[{"$ref":"#/components/schemas/DfnsWallet","description":"The wallet details (flattened)."},{"type":"object","required":["assets"],"properties":{"assets":{"type":"array","items":{"$ref":"#/components/schemas/VaultAsset"},"description":"List of assets in the wallet (enriched with market data)."},"netWorth":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DfnsCoreNetWorth","description":"Total net worth of the wallet (if available)."}]}}}],"description":"A wallet together with its enriched assets and optional net worth."},"XAuthApiKeyListItem":{"type":"object","required":["key_id"],"properties":{"key_id":{"type":"string"},"expiration_date":{"type":["string","null"]}}},"XAuthApiKeyListResponse":{"type":"object","required":["items"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/XAuthApiKeyListItem"}}}},"XAuthCreateApiKeyRequest":{"type":"object","properties":{"description":{"type":["string","null"]},"expiration_days":{"type":["integer","null"],"format":"int32","default":365,"maximum":3650,"minimum":0}}},"XAuthCreateApiKeyResponse":{"type":"object","required":["key_id","token"],"properties":{"key_id":{"type":"string"},"token":{"type":"string"}}},"XAuthCreateServicePrincipalRequest":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"description":{"type":["string","null"]}}},"XAuthLoginRequest":{"type":"object","required":["email","password"],"properties":{"email":{"type":"string"},"password":{"type":"string"}}},"XAuthLoginResponse":{"type":"object","required":["auth_token","email"],"properties":{"auth_token":{"type":"string"},"email":{"type":"string"}}},"XAuthLogoutResponse":{"type":"object","required":["success"],"properties":{"success":{"type":"boolean"}}},"XAuthMeResponse":{"type":"object","required":["user"],"properties":{"user":{"$ref":"#/components/schemas/XAuthUserSession"}}},"XAuthPasskeyAuthenticatorType":{"type":"string","enum":["platform","cross_platform"]},"XAuthPasskeyInfo":{"type":"object","required":["id","name","state"],"properties":{"id":{"type":"string"},"name":{"type":"string"},"state":{"type":"integer","format":"int32"}}},"XAuthPasskeyListResponse":{"type":"object","required":["passkeys"],"properties":{"passkeys":{"type":"array","items":{"$ref":"#/components/schemas/XAuthPasskeyInfo"}}}},"XAuthPasskeyLoginStartRequest":{"type":"object","required":["login_name","domain"],"properties":{"login_name":{"type":"string"},"domain":{"type":"string"}}},"XAuthPasskeyLoginStartResponse":{"type":"object","required":["session_id","session_token","public_key_credential_request_options"],"properties":{"session_id":{"type":"string"},"session_token":{"type":"string"},"public_key_credential_request_options":{}}},"XAuthPasskeyLoginVerifyRequest":{"type":"object","required":["session_id","session_token","public_key_credential"],"properties":{"session_id":{"type":"string"},"session_token":{"type":"string"},"public_key_credential":{}}},"XAuthPasskeyLoginVerifyResponse":{"type":"object","required":["user_id"],"properties":{"user_id":{"type":"string"}}},"XAuthPasskeyRegisterStartRequest":{"type":"object","required":["authenticator","domain"],"properties":{"authenticator":{"$ref":"#/components/schemas/XAuthPasskeyAuthenticatorType"},"domain":{"type":"string"}}},"XAuthPasskeyRegisterStartResponse":{"type":"object","required":["passkey_id","public_key_credential_creation_options"],"properties":{"passkey_id":{"type":"string"},"public_key_credential_creation_options":{}}},"XAuthPasskeyRegisterVerifyRequest":{"type":"object","required":["passkey_id","public_key_credential","passkey_name"],"properties":{"passkey_id":{"type":"string"},"public_key_credential":{},"passkey_name":{"type":"string"}}},"XAuthPasskeyRegisterVerifyResponse":{"type":"object","required":["success"],"properties":{"success":{"type":"boolean"}}},"XAuthPasskeyRemoveResponse":{"type":"object","required":["success"],"properties":{"success":{"type":"boolean"}}},"XAuthRegisterRequest":{"type":"object","required":["email","password"],"properties":{"email":{"type":"string"},"password":{"type":"string"}}},"XAuthRegisterResponse":{"type":"object","required":["auth_token","email"],"properties":{"auth_token":{"type":"string"},"email":{"type":"string"}}},"XAuthServicePrincipalListItem":{"type":"object","required":["id","name","state"],"properties":{"id":{"type":"string"},"name":{"type":"string"},"state":{"type":"integer","format":"int32"}}},"XAuthServicePrincipalListResponse":{"type":"object","required":["items"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/XAuthServicePrincipalListItem"}}}},"XAuthServicePrincipalResponse":{"type":"object","required":["id","name"],"properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":["string","null"]}}},"XAuthSessionInfo":{"type":"object","required":["index","email","user_id"],"properties":{"index":{"type":"integer","format":"int32","minimum":0},"email":{"type":"string"},"user_id":{"type":"string"}}},"XAuthUserSession":{"type":"object","description":"User session extracted from token.\nContains user information from Zitadel session.","required":["user_id","login_name","session_id","session_token"],"properties":{"user_id":{"type":"string"},"login_name":{"type":"string"},"session_id":{"type":"string"},"session_token":{"type":"string"}}},"XAuthVerifyEmailConfirmLinkResponse":{"type":"object","required":["success","message"],"properties":{"success":{"type":"boolean"},"message":{"type":"string"}}},"XAuthVerifyEmailConfirmRequestRequest":{"type":"object","required":["code","userId","orgId"],"properties":{"code":{"type":"string"},"userId":{"type":"string"},"orgId":{"type":"string"}}},"XAuthVerifyEmailConfirmRequestResponse":{"type":"object","required":["success","message"],"properties":{"success":{"type":"boolean"},"message":{"type":"string"}}},"XAuthVerifyEmailIsVerifiedResponse":{"type":"object","required":["is_verified"],"properties":{"is_verified":{"type":"boolean"}}},"XAuthVerifyEmailResendResponse":{"type":"object","required":["success","message"],"properties":{"success":{"type":"boolean"},"message":{"type":"string"}}},"XAuthVerifyPhoneResendResponse":{"type":"object","required":["success","message"],"properties":{"success":{"type":"boolean"},"message":{"type":"string"}}},"XAuthVerifyPhoneSetNumberRequest":{"type":"object","required":["phone"],"properties":{"phone":{"type":"string"}}},"XAuthVerifyPhoneSetNumberResponse":{"type":"object","required":["success","message"],"properties":{"success":{"type":"boolean"},"message":{"type":"string"}}},"XAuthVerifyPhoneVerifyRequest":{"type":"object","required":["verification_code"],"properties":{"verification_code":{"type":"string"}}},"XAuthVerifyPhoneVerifyResponse":{"type":"object","required":["success","message"],"properties":{"success":{"type":"boolean"},"message":{"type":"string"}}}},"securitySchemes":{"bearer_auth":{"type":"http","scheme":"bearer","bearerFormat":"base64-encoded-json","description":"Bearer token authentication using base64-encoded session data from /auth/login"},"cookie_auth":{"type":"apiKey","in":"cookie","name":"auth_token"}}},"tags":[{"name":"root-vault","description":"DFNS Vault SDK-based endpoints"},{"name":"XAuth","description":"Authentication and user management endpoints"},{"name":"market","description":"Market data endpoints"}]}