# Portal > Portal is a key management platform for stablecoin companies. Create wallets, send and receive funds on-chain - all in a day. ## Docs - [Get a swap price estimate](https://docs.portalhq.io/api-reference/0x/get-a-swap-price-estimate.md): Retrieves a swap price estimate for trading tokens on a specific chain without building a complete transaction. Use this endpoint for displaying price quotes to users before they commit to a swap. - [Get a swap quote](https://docs.portalhq.io/api-reference/0x/get-a-swap-quote.md): Retrieves a swap quote with full transaction details for trading tokens on a specific chain. Use this endpoint when you are ready to execute a swap and need the complete transaction to sign and broadcast. - [Get available swap sources](https://docs.portalhq.io/api-reference/0x/get-available-swap-sources.md): Retrieves the available swap liquidity sources for a specific chain. Optionally provide your own 0x API key via `zeroXApiKey`, otherwise Portal uses a managed key if available. - [Create an external address](https://docs.portalhq.io/api-reference/alert-webhooks/create-an-external-address.md): Add an external blockchain address to receive alert webhook notifications for. The address is validated for correct format based on the selected namespace. Blackhole addresses (such as null or dead addresses) are rejected. - [Delete an external address](https://docs.portalhq.io/api-reference/alert-webhooks/delete-an-external-address.md): Remove an external address from alert webhook notifications. The address will no longer be monitored for transactions. - [Format a raw alert webhook event (deprecated)](https://docs.portalhq.io/api-reference/alert-webhooks/format-a-raw-alert-webhook-event-deprecated.md): **Deprecated.** Use the alert webhooks endpoints instead. - [Format raw alert webhook events (deprecated)](https://docs.portalhq.io/api-reference/alert-webhooks/format-raw-alert-webhook-events-deprecated.md): **Deprecated.** Use the alert webhooks endpoints instead. - [List alert webhook events](https://docs.portalhq.io/api-reference/alert-webhooks/list-alert-webhook-events.md): Retrieve a list of events sent to your alert webhook, including those that failed to be delivered. - [List alert webhooks](https://docs.portalhq.io/api-reference/alert-webhooks/list-alert-webhooks.md): Retrieve a list of your alert webhooks configured in your Portal Admin Dashboard. - [List external addresses](https://docs.portalhq.io/api-reference/alert-webhooks/list-external-addresses.md): Retrieve a list of external addresses configured for alert webhook notifications in your environment. External addresses are blockchain addresses not generated by Portal that you still want to monitor for transactions. - [Replay alert by block number (deprecated)](https://docs.portalhq.io/api-reference/alert-webhooks/replay-alert-by-block-number-deprecated.md): **Deprecated.** Use the `replay failed events` endpoint instead. - [Replay failed alert webhook events](https://docs.portalhq.io/api-reference/alert-webhooks/replay-failed-alert-webhook-events.md): Replays a list of alert webhook events with a delivery status of `"failed"`. If a failed event has already been replayed successfully, it cannot be replayed again. - [Scan a URL](https://docs.portalhq.io/api-reference/blockaid/scan-a-url.md): Scans a URL for phishing or malicious content using Blockaid. - [Scan an address](https://docs.portalhq.io/api-reference/blockaid/scan-an-address.md): Scans a blockchain address for malicious activity using Blockaid. - [Scan an EVM transaction](https://docs.portalhq.io/api-reference/blockaid/scan-an-evm-transaction.md): Scans an EVM transaction for security risks using Blockaid. Returns risk assessment and simulation results. - [Scan Solana transactions](https://docs.portalhq.io/api-reference/blockaid/scan-solana-transactions.md): Scans Solana transactions for security risks using Blockaid. - [Scan tokens](https://docs.portalhq.io/api-reference/blockaid/scan-tokens.md): Scans one or more tokens for malicious characteristics using Blockaid. - [Create a client](https://docs.portalhq.io/api-reference/clients/create-a-client.md): Registers a new client and returns a client API key, client session token, and whether account abstraction is enabled. - [Create a client session token](https://docs.portalhq.io/api-reference/clients/create-a-client-session-token.md): Creates a new Client Session Token (CST) for a client. The CST can be used by the client SDK to authenticate API requests. - [Create a web OTP](https://docs.portalhq.io/api-reference/clients/create-a-web-otp.md): Generates a one-time password (OTP) for a client using the Web SDK. - [Get a client](https://docs.portalhq.io/api-reference/clients/get-a-client.md): Fetches the specified client for the authorized custodian, including wallet details, backup share pairs, and signing share pairs. - [Get the client's details](https://docs.portalhq.io/api-reference/clients/get-the-clients-details.md): Retrieves the details of the current client, including information about associated wallets, backup share pairs, and signing share pairs. - [List clients](https://docs.portalhq.io/api-reference/clients/list-clients.md): Fetches all clients for the authorized custodian with cursor-based pagination. - [Mark client as ejected](https://docs.portalhq.io/api-reference/clients/mark-client-as-ejected.md): Marks the client and its wallets as ejected by setting the `ejectedAt` timestamp. This is a status update that should be called after the eject operation completes on the SDK/MPC side. This is irreversible. - [Approve a Solana delegation](https://docs.portalhq.io/api-reference/delegations/approve-a-solana-delegation.md): Builds a transaction to approve a Solana token delegation. - [Approve a token delegation](https://docs.portalhq.io/api-reference/delegations/approve-a-token-delegation.md): Builds a transaction to approve a delegate address to spend a specified amount of the given token on behalf of the client. The response format differs between EVM and Solana chains. - [Get delegation status for a token](https://docs.portalhq.io/api-reference/delegations/get-delegation-status-for-a-token.md): Retrieves the current delegation status for a specific client and token, including the balance and delegation details associated with a specified delegate address. - [Get Solana delegation status](https://docs.portalhq.io/api-reference/delegations/get-solana-delegation-status.md): Retrieves the delegation status for a Solana token account, including information about the token balance, delegate address, and delegated amount. - [Initialize a delegation system account](https://docs.portalhq.io/api-reference/delegations/initialize-a-delegation-system-account.md): Initializes a Solana system account for delegation operations. - [Initialize a delegation token account](https://docs.portalhq.io/api-reference/delegations/initialize-a-delegation-token-account.md): Initializes a Solana token account for delegation operations. - [Revoke a Solana delegation](https://docs.portalhq.io/api-reference/delegations/revoke-a-solana-delegation.md): Builds a transaction to revoke all Solana token delegations. - [Revoke a token delegation](https://docs.portalhq.io/api-reference/delegations/revoke-a-token-delegation.md): Builds a transaction to revoke a delegate address's approval to spend the given token on behalf of the client. The response format differs between EVM and Solana chains. - [Transfer as a delegate](https://docs.portalhq.io/api-reference/delegations/transfer-as-a-delegate.md): Transfers tokens from a client on behalf of another address using delegated spending authority. Returns unsigned transaction(s) ready for signing. - [Transfer as a Solana delegate](https://docs.portalhq.io/api-reference/delegations/transfer-as-a-solana-delegate.md): Builds a transaction to transfer tokens as a delegate on Solana. - [Transfer tokens as a delegate](https://docs.portalhq.io/api-reference/delegations/transfer-tokens-as-a-delegate.md): Builds a transaction to transfer tokens from one address to another using the delegate's approval. The response format differs between EVM and Solana chains. - [Get balances (deprecated)](https://docs.portalhq.io/api-reference/deprecated/get-balances-deprecated.md): **Deprecated.** Use `/clients/me/chains/{chain}/assets` instead. Sunset date: 2026-12-31. Responses include `Deprecation`, `Sunset`, and `Link` headers. - [Get NFTs (deprecated)](https://docs.portalhq.io/api-reference/deprecated/get-nfts-deprecated.md): **Deprecated.** Use `/clients/me/chains/{chain}/assets/nfts` instead. Sunset date: 2026-12-31. Responses include `Deprecation`, `Sunset`, and `Link` headers. - [Get transactions (deprecated)](https://docs.portalhq.io/api-reference/deprecated/get-transactions-deprecated.md): **Deprecated.** Use `/clients/me/chains/{chain}/transactions` instead. Sunset date: 2026-12-31. Responses include `Deprecation`, `Sunset`, and `Link` headers. - [Simulate a transaction](https://docs.portalhq.io/api-reference/deprecated/simulate-a-transaction.md): Simulates an EVM transaction and returns the expected state changes and gas usage. Only supports EIP-155 chains. - [Build an EIP-7702 authorization](https://docs.portalhq.io/api-reference/eip-7702/build-an-eip-7702-authorization.md): Builds an EIP-7702 authorization hash for the client to sign. This delegates the EOA to a smart contract implementation. - [Build an EIP-7702 authorization transaction](https://docs.portalhq.io/api-reference/eip-7702/build-an-eip-7702-authorization-transaction.md): Builds a complete EIP-7702 transaction with the signed authorization. Can optionally be subsidized (gas paid by Portal). - [Get account type](https://docs.portalhq.io/api-reference/eip-7702/get-account-type.md): Detects whether the client's wallet on the specified chain is a standard EOA, a smart contract, or an EIP-7702 delegated EOA. - [Fund the client's wallet with testnet tokens](https://docs.portalhq.io/api-reference/funding/fund-the-clients-wallet-with-testnet-tokens.md): Requests testnet tokens for the client's wallet on a supported testnet chain. Rate-limited to one request per 24 hours per client. - [Get gas sponsors](https://docs.portalhq.io/api-reference/gas-sponsorship/get-gas-sponsors.md): Retrieves all gas sponsors and their usage information across all chains for your Portal environment. Solana entries also include the gas sponsor's on-chain address and current balance. - [Get historical gas sponsorship usage (deprecated)](https://docs.portalhq.io/api-reference/gas-sponsorship/get-historical-gas-sponsorship-usage-deprecated.md): **Deprecated.** Use `GET /custodians/me/gas-sponsorship/chains` instead. - [Update gas sponsorship for a chain](https://docs.portalhq.io/api-reference/gas-sponsorship/update-gas-sponsorship-for-a-chain.md): Updates the maximum gas allowance limit for a specific chain's gas sponsor. The `value` parameter is in ETH/SOL units. - [Scan a Solana transaction](https://docs.portalhq.io/api-reference/hypernative/scan-a-solana-transaction.md): Scans a Solana transaction for security risks using Hypernative. - [Scan a URL](https://docs.portalhq.io/api-reference/hypernative/scan-a-url.md): Scans a URL for phishing or malicious content using Hypernative. - [Scan addresses](https://docs.portalhq.io/api-reference/hypernative/scan-addresses.md): Scans one or more blockchain addresses for risk using Hypernative. - [Scan an EIP-712 message](https://docs.portalhq.io/api-reference/hypernative/scan-an-eip-712-message.md): Scans an EIP-712 typed data message for security risks using Hypernative. - [Scan an EVM transaction](https://docs.portalhq.io/api-reference/hypernative/scan-an-evm-transaction.md): Scans an EVM transaction for security risks using Hypernative. - [Scan NFTs](https://docs.portalhq.io/api-reference/hypernative/scan-nfts.md): Scans one or more NFTs for risk using Hypernative. - [Scan tokens](https://docs.portalhq.io/api-reference/hypernative/scan-tokens.md): Scans one or more tokens for risk using Hypernative. - [Get a Li.Fi swap/bridge quote](https://docs.portalhq.io/api-reference/lifi/get-a-lifi-swapbridge-quote.md): Retrieves a quote for a cross-chain or same-chain swap via Li.Fi, including the transaction request to execute. - [Get details for a route step](https://docs.portalhq.io/api-reference/lifi/get-details-for-a-route-step.md): Enriches a route step with full transaction details and updated estimates. Pass a step object from a previous routes response as the request body (not wrapped under any key). - [Get Li.Fi supported tokens](https://docs.portalhq.io/api-reference/lifi/get-lifi-supported-tokens.md): Retrieves the list of tokens supported by Li.Fi, optionally filtered by chain, chain type, minimum USD price, or tags. - [Get Li.Fi swap/bridge routes](https://docs.portalhq.io/api-reference/lifi/get-lifi-swapbridge-routes.md): Retrieves multiple possible routes for a cross-chain or same-chain swap, each with different trade-offs (speed, cost, safety). - [Get Li.Fi transaction status](https://docs.portalhq.io/api-reference/lifi/get-lifi-transaction-status.md): Checks the status of a Li.Fi cross-chain or same-chain swap transaction. - [Back up the client's wallet](https://docs.portalhq.io/api-reference/mpc-operations/back-up-the-clients-wallet.md): Creates backup shares for the wallet. After storing the backup shares, confirm storage with the Client API's update backup share pairs statuses endpoint before attempting to recover. - [Create a presignature](https://docs.portalhq.io/api-reference/mpc-operations/create-a-presignature.md): Pre-computes MPC signing data for faster subsequent transaction signing. Each presignature can only be used once. You can have up to 100 active presignatures per client. - [Create the client's wallet](https://docs.portalhq.io/api-reference/mpc-operations/create-the-clients-wallet.md): Generates MPC shares for both SECP256K1 (EVM, Bitcoin, etc.) and ED25519 (Solana, XRP, etc.) curves (a Portal wallet). - [Recover the client's wallet](https://docs.portalhq.io/api-reference/mpc-operations/recover-the-clients-wallet.md): Recovers signing shares for the wallet using backup shares. After storing the recovered MPC shares, confirm storage with the Client API's update signing share pairs statuses endpoint before attempting to sign. - [Send the client's assets](https://docs.portalhq.io/api-reference/mpc-operations/send-the-clients-assets.md): Sends a token the client holds to another address. This endpoint builds, signs, and submits a transaction to an RPC gateway. - [Sign a transaction or message by chain](https://docs.portalhq.io/api-reference/mpc-operations/sign-a-transaction-or-message-by-chain.md): Signs a transaction or message using an RPC method and chain ID. - [Sign a transaction or message by curve](https://docs.portalhq.io/api-reference/mpc-operations/sign-a-transaction-or-message-by-curve.md): Signs a raw hex digest using the specified elliptic curve. The `data` field in the response is a hex string **without** the leading `0x`. - [Get payout channel form](https://docs.portalhq.io/api-reference/noah/get-payout-channel-form.md): Retrieves dynamic form schema for a payout channel. - [Get payout channels](https://docs.portalhq.io/api-reference/noah/get-payout-channels.md): Retrieves payout channels for a country, crypto currency, and fiat currency. - [Get payout countries](https://docs.portalhq.io/api-reference/noah/get-payout-countries.md): Lists supported payout countries and fiat currencies. - [Initiate KYC onboarding](https://docs.portalhq.io/api-reference/noah/initiate-kyc-onboarding.md): Creates or retrieves a Noah hosted onboarding session for the authenticated client. - [Initiate payin](https://docs.portalhq.io/api-reference/noah/initiate-payin.md): Creates a bank-deposit-to-onchain payin workflow and returns bank details. - [Initiate payout](https://docs.portalhq.io/api-reference/noah/initiate-payout.md): Initiates an onchain-deposit-to-payment-method workflow from a prepared payout intent. - [List payment methods](https://docs.portalhq.io/api-reference/noah/list-payment-methods.md): Retrieves Noah payment methods for the authenticated client. - [Quote payout](https://docs.portalhq.io/api-reference/noah/quote-payout.md): Validates payout form input and returns quote details plus a payout intent ID. - [Simulate fiat deposit](https://docs.portalhq.io/api-reference/noah/simulate-fiat-deposit.md): Simulates a fiat deposit for a Noah payment method in sandbox environments. - [Broadcast a signed transaction](https://docs.portalhq.io/api-reference/transactions/broadcast-a-signed-transaction.md): Broadcasts a signed transaction to the network. Currently only supports Bitcoin (bip122 P2WPKH) chains. Returns 400 for all other chain types. - [Build a transaction](https://docs.portalhq.io/api-reference/transactions/build-a-transaction.md): Creates an unsigned transaction for transferring assets to another address on a specific chain. You can then use this unsigned transaction to sign and submit the transaction. - [Evaluate a transaction for risks](https://docs.portalhq.io/api-reference/transactions/evaluate-a-transaction-for-risks.md): Evaluates a transaction using validation and/or simulation to assess risk before signing. Supports both EVM (EIP-155) and Solana chains. The request body format differs by chain type. - [Get asset balances](https://docs.portalhq.io/api-reference/wallet-metadata/get-asset-balances.md): Retrieves the native balance, token balances, and NFTs for a specified client and blockchain. - [Get NFTs](https://docs.portalhq.io/api-reference/wallet-metadata/get-nfts.md): Retrieves the NFTs held by a specified client on a given blockchain. - [Complete wallet ejection](https://docs.portalhq.io/api-reference/wallet-shares/complete-wallet-ejection.md): Completes the ejection process for a wallet. - [Delete a signing share pair](https://docs.portalhq.io/api-reference/wallet-shares/delete-a-signing-share-pair.md): Deletes a specific signing share pair from a wallet. - [Enable wallet ejection](https://docs.portalhq.io/api-reference/wallet-shares/enable-wallet-ejection.md): Prepare a wallet for ejection of its private keys. This endpoint enables a Portal client to be ejected for a specified duration. - [Get backup share pairs](https://docs.portalhq.io/api-reference/wallet-shares/get-backup-share-pairs.md): Retrieves the backup share pairs for a specific wallet. - [Get ejectable backup shares](https://docs.portalhq.io/api-reference/wallet-shares/get-ejectable-backup-shares.md): Fetches a client's encrypted backup share (if previously sent to Portal) and their custodian backup share. Used when running eject while using the Enclave MPC API with a Portal-Managed Backup configuration. - [Get ejectable backup shares for a wallet](https://docs.portalhq.io/api-reference/wallet-shares/get-ejectable-backup-shares-for-a-wallet.md): Retrieves the ejectable backup shares for a wallet that is in an ejectable state. The wallet must have `ejectableUntil` set and not expired. On successful retrieval, the `ejectableUntil` field is cleared (side effect). - [Get signing share pairs](https://docs.portalhq.io/api-reference/wallet-shares/get-signing-share-pairs.md): Retrieves the signing share pairs for a specific wallet. - [Prepare a client for eject (deprecated)](https://docs.portalhq.io/api-reference/wallet-shares/prepare-a-client-for-eject-deprecated.md): **Deprecated.** Use the `enable-eject` endpoint instead. - [Prepare wallet ejection (deprecated)](https://docs.portalhq.io/api-reference/wallet-shares/prepare-wallet-ejection-deprecated.md): **Deprecated.** Use the ejectable-backup-shares endpoint instead. - [Update backup share pair statuses](https://docs.portalhq.io/api-reference/wallet-shares/update-backup-share-pair-statuses.md): Updates the status of one or more backup share pairs. Valid target statuses: - [Update signing share pair statuses](https://docs.portalhq.io/api-reference/wallet-shares/update-signing-share-pair-statuses.md): Updates the status of one or more signing share pairs to `STORED_CLIENT`. This confirms that the client has stored its signing share locally. - [Get transaction details by signature](https://docs.portalhq.io/api-reference/wallet/get-transaction-details-by-signature.md): Look up a transaction or user operation by its hash or signature. Supports EVM (transaction hash or user operation hash), Solana (signature), Bitcoin (txid), Stellar (hash), and Tron (txid). - [Get wallet balances](https://docs.portalhq.io/api-reference/wallet/get-wallet-balances.md): Retrieves the native balance, token balances, and optionally NFTs for the client's wallet on the specified chain. - [Get wallet capabilities](https://docs.portalhq.io/api-reference/wallet/get-wallet-capabilities.md): Returns the EIP-5792 wallet capabilities for the client. If the client uses account abstraction, returns the supported capabilities (e.g. paymaster service) keyed by hex chain ID. Returns an empty object if account abstraction is not enabled. - [Get wallet NFTs](https://docs.portalhq.io/api-reference/wallet/get-wallet-nfts.md): Retrieves all NFTs owned by the client's wallet on the specified chain. Only returns results for EVM (EIP-155) chains. Returns an empty array for non-EVM chains. - [Get wallet transactions](https://docs.portalhq.io/api-reference/wallet/get-wallet-transactions.md): Retrieves transaction history for the client's wallet on the specified chain. Supports EVM (EIP-155), Solana, Bitcoin, Tron, and Stellar chains. - [Enter a yield position](https://docs.portalhq.io/api-reference/yieldxyz/enter-a-yield-position.md): Builds transactions for entering a yield position (staking, lending, or vault deposit). - [Exit a yield position](https://docs.portalhq.io/api-reference/yieldxyz/exit-a-yield-position.md): Builds transactions for exiting a yield position (unstaking, withdrawing, or redeeming). - [Get a yield transaction](https://docs.portalhq.io/api-reference/yieldxyz/get-a-yield-transaction.md): Retrieves the status and details of a specific yield transaction. - [Get default yield opportunities](https://docs.portalhq.io/api-reference/yieldxyz/get-default-yield-opportunities.md): Returns Portal's recommended yield opportunities per chain and token. By default, returns only the yield IDs (lightweight). Pass `includeOpportunities=true` to enrich each entry with live data (APY, status, mechanics, etc.) from Yield.xyz. Entries with no recommendation return `null` for both `yield… - [Get yield action history](https://docs.portalhq.io/api-reference/yieldxyz/get-yield-action-history.md): Retrieves a paginated list of yield actions performed by the client. - [Get yield balances](https://docs.portalhq.io/api-reference/yieldxyz/get-yield-balances.md): Retrieves yield balances for the client's positions across staking, lending, and vault opportunities. - [Get yield opportunities](https://docs.portalhq.io/api-reference/yieldxyz/get-yield-opportunities.md): Retrieves a paginated list of available yield opportunities across all supported networks and protocols. - [Get yield validators](https://docs.portalhq.io/api-reference/yieldxyz/get-yield-validators.md): Retrieves a paginated list of validators available for staking or delegation for a specific yield opportunity. Required for yields where `mechanics.requiresValidatorSelection` is `true` (e.g. native staking). Pass the chosen validator's address as `validatorAddress` in the enter action arguments. - [Manage a yield position](https://docs.portalhq.io/api-reference/yieldxyz/manage-a-yield-position.md): Builds transactions for managing an existing yield position, such as claiming rewards, restaking, or withdrawing unstaked tokens. - [Submit a transaction hash](https://docs.portalhq.io/api-reference/yieldxyz/submit-a-transaction-hash.md): Submits the on-chain transaction hash for a pending yield transaction after signing and broadcasting it. If `chainId` is provided alongside a user-operation hash, Portal resolves the underlying transaction hash before forwarding to Yield.xyz. - [API Reference](https://docs.portalhq.io/apis/api-reference-overview.md): Explore Portal's three REST APIs for MPC wallet operations, client-side actions, and custodian management. - [API Reference](https://docs.portalhq.io/apis/client/api-reference-link.md): Interactive API reference for the Client API endpoints. - [API Reference](https://docs.portalhq.io/apis/custodian/api-reference-link.md): Interactive API reference for the Custodian API endpoints. - [API Reference](https://docs.portalhq.io/apis/enclave-mpc/api-reference-link.md): Interactive API reference for the Enclave MPC API endpoints. - [Back up a wallet](https://docs.portalhq.io/apis/enclave-mpc/guide/backup.md): This guide will walk you through how to create a backup of a Portal client's wallet using the Enclave MPC API. - [Concurrent Transactions](https://docs.portalhq.io/apis/enclave-mpc/guide/concurrent-transactions.md): This guide will walk you through how to submit multiple transactions with sequential nonces using the Enclave MPC API. - [Create a client](https://docs.portalhq.io/apis/enclave-mpc/guide/create-a-client.md): This guide will walk you through how to create a Portal client using the Enclave MPC API. - [Create a wallet](https://docs.portalhq.io/apis/enclave-mpc/guide/create-a-wallet.md) - [Manage Token Delegations](https://docs.portalhq.io/apis/enclave-mpc/guide/delegations.md): Learn how to approve, revoke, and manage token delegations using the Enclave MPC API. - [Eject a wallet](https://docs.portalhq.io/apis/enclave-mpc/guide/eject-a-wallet.md): The eject feature allows a user to construct a private key that can be imported into another wallet manager, such as MetaMask. - [Getting Started](https://docs.portalhq.io/apis/enclave-mpc/guide/getting-started.md): This guide will walk you through creating a wallet and signing transactions using the Portal Enclave MPC API on various chains. - [Bridge & Swap with Li.Fi](https://docs.portalhq.io/apis/enclave-mpc/guide/lifi.md): Learn how to bridge and swap tokens across multiple chains using the Enclave MPC API with Li.Fi integration. - [Presignatures](https://docs.portalhq.io/apis/enclave-mpc/guide/presignatures.md): Pre-compute MPC signing data for faster transaction signing with the Enclave MPC API. - [Send tokens](https://docs.portalhq.io/apis/enclave-mpc/guide/send-tokens.md): Here's exactly how you can send tokens from your Portal wallet to another address. - [Sign Ethereum transactions](https://docs.portalhq.io/apis/enclave-mpc/guide/sign-ethereum-transactions.md): This guide will walk you through how to sign an Ethereum transaction using the Enclave MPC API. - [Sign Solana transactions](https://docs.portalhq.io/apis/enclave-mpc/guide/sign-solana-transactions.md): This guide will walk you through how to sign a Solana transaction using the Enclave MPC API. - [Sign Stellar transactions](https://docs.portalhq.io/apis/enclave-mpc/guide/sign-stellar-transactions.md): This guide will walk you through how to sign a Stellar transaction using the Enclave MPC API. - [Sign Tron transactions](https://docs.portalhq.io/apis/enclave-mpc/guide/sign-tron-transactions.md): This guide will walk you through how to sign a Tron transaction using the Enclave MPC API. - [Earn with Yield.xyz](https://docs.portalhq.io/apis/enclave-mpc/guide/yield-xyz.md): Learn how to discover, enter, manage, and exit yield opportunities using the Enclave MPC API. - [API Quickstart](https://docs.portalhq.io/apis/quickstart.md): This quick start guide will get you up and running with the Portal MPC API. - [Introduction](https://docs.portalhq.io/index.md): Build blockchain-enabled products rapidly with Portal's SDKs, REST APIs, and more. - [Overview](https://docs.portalhq.io/integrations/On-Off-Ramp/noah.md): Connect your Noah account to Portal to manage virtual bank accounts and global payouts. - [KYC Onboarding](https://docs.portalhq.io/integrations/On-Off-Ramp/noah-kyc.md): Initiate Noah hosted onboarding and receive KYC lifecycle updates through Noah webhooks. - [Payins](https://docs.portalhq.io/integrations/On-Off-Ramp/noah-payins.md): Assign virtual bank account details and process fiat-to-stablecoin settlement with Noah payins through Portal. - [Payouts](https://docs.portalhq.io/integrations/On-Off-Ramp/noah-payouts.md): Run Noah payout workflows through Portal from channel discovery and form rendering to quote and payout initiation. - [Webhooks](https://docs.portalhq.io/integrations/On-Off-Ramp/noah-webhooks.md): Set up Noah Dashboard webhooks to receive KYC, payin, and payout lifecycle events. - [Blockaid](https://docs.portalhq.io/integrations/Security/blockaid.md): Connect your Blockaid account to Portal and start scanning transactions, addresses, tokens, and URLs for security risks. - [Hypernative](https://docs.portalhq.io/integrations/Security/hypernative.md): Connect your Hypernative account to Portal and start scanning transactions, addresses, tokens, NFTs, and URLs for security risks. - [Li.Fi](https://docs.portalhq.io/integrations/Trading/lifi.md): Connect your Li.Fi account to Portal and start bridging & swapping across chains. - [0x](https://docs.portalhq.io/integrations/Trading/zerox.md): Connect your 0x account to Portal and start swapping tokens. - [Yield.xyz](https://docs.portalhq.io/integrations/Yield/yield-xyz.md): Connect your Yield.xyz account to Portal, store your API key, and start earning yield. - [Integrations Overview](https://docs.portalhq.io/integrations/index.md): Comprehensive index of all Portal integrations organized by category with SDK implementation guides - [Account abstraction](https://docs.portalhq.io/resources/account-abstraction.md): This guide will walk you through the process of configuring Account Abstraction for your organization and your users. - [Alert Webhooks](https://docs.portalhq.io/resources/alert-webhooks.md): Get realtime wallet notifications for your Portal clients. - [Authentication and API Keys](https://docs.portalhq.io/resources/authentication-and-api-keys.md): This guide will walk you through the two different credentials you need to work with Portal. - [Firebase Auth Backup](https://docs.portalhq.io/resources/backup-options/firebase-byo-auth.md): Use your existing Firebase Authentication to back up and recover Portal wallets via a secure enclave. - [GDrive](https://docs.portalhq.io/resources/backup-options/gdrive.md): This is to allow your app to have access to store files in your users google drive. - [iCloud](https://docs.portalhq.io/resources/backup-options/icloud.md) - [Passkey + Enclave](https://docs.portalhq.io/resources/backup-options/passkey-+-enclave.md) - [Password/PIN](https://docs.portalhq.io/resources/backup-options/password-pin.md) - [Chain support](https://docs.portalhq.io/resources/blockchain-support.md) - [Chain ID formatting](https://docs.portalhq.io/resources/chain-id-formatting.md) - [Delegations](https://docs.portalhq.io/resources/delegations.md): Learn how token delegations work in Portal and how to approve, revoke, and transfer tokens on behalf of delegated addresses. - [Eject](https://docs.portalhq.io/resources/eject.md): Eject allows a user to construct a private key from their MPC shares so that they may import it into a wallet like MetaMask. - [Error Codes](https://docs.portalhq.io/resources/error-codes.md): This guide documents the error identifiers returned by Portal's MPC (Multi-Party Computation) operations. - [Upgrading to EIP-7702](https://docs.portalhq.io/resources/evmAccountType.md): Learn how to upgrade wallets to EIP-7702. - [Security firewall](https://docs.portalhq.io/resources/firewall.md): In this page, we'll go through setting up policies on your security firewall to help protect your users/wallets from scams and threats. - [Glossary](https://docs.portalhq.io/resources/glossary.md): A breakdown of all the relevant concepts and terms as it pertains to Portal - [Going to Production](https://docs.portalhq.io/resources/going-to-production.md): This guide will walk you through the process of taking your application to Production using Portal. - [Overview](https://docs.portalhq.io/resources/hackathon-hub.md): All of the information you need to get started for a hackathon using Portal! - [Mobil3 Hackathon](https://docs.portalhq.io/resources/hackathons/mobil3.md): Resources for the Mobil3 Hackathon using Portal - [Idempotency Keys](https://docs.portalhq.io/resources/idempotency-keys.md): Prevent duplicate transactions by including an idempotency key with your requests. - [Migrating from Solana legacy webhooks](https://docs.portalhq.io/resources/migrating-from-solana-legacy-webhooks.md): Upgrade from the legacy Solana alert webhooks to the current ones to get per-address delivery, the triggeredBy field, and delegated transfer events. - [Portal's MPC architecture](https://docs.portalhq.io/resources/portals-mpc-architecture.md): This guide will go over the basics of Portal's MPC architecture for generating, backing up, and recovering a user's wallet. - [Presignatures](https://docs.portalhq.io/resources/presignatures.md): Pre-compute MPC signing data ahead of time for faster transaction signing. - [Rate Limits](https://docs.portalhq.io/resources/rate-limits.md) - [Security](https://docs.portalhq.io/resources/security.md): Security at Portal has been built in from day one. - [Self-Managed Backups](https://docs.portalhq.io/resources/self-managed-backups.md): Store and manage backup shares in your own infrastructure instead of using Portal-Managed Backups. - [Single Sign-On (SSO)](https://docs.portalhq.io/resources/single-sign-on.md): Configure Single Sign-On (SSO) for your organization in the Portal Admin Dashboard using OIDC or SAML2 protocols to manage authentication and authorization for your members. - [Testnet faucets](https://docs.portalhq.io/resources/testnet-faucets.md): Easily get free tokens to test with in your applications. - [Wallet lifecycle](https://docs.portalhq.io/resources/wallet-lifecycle.md): A Portal Wallet keeps track of the status of its signing shares and backup shares. - [WalletConnect metadata](https://docs.portalhq.io/resources/walletconnect-metadata.md): Personalize the pairing information displayed on third-party dApps via WalletConnect from the Portal Admin Dashboard. - [Add custom signature hooks](https://docs.portalhq.io/sdks/android/guide/add-custom-signature-hooks.md): This guide will help you configure custom signature hooks for requests to the Portal Provider to ensure your business logic is properly implemented into Portal's signing flow. - [Back up a wallet](https://docs.portalhq.io/sdks/android/guide/back-up-a-wallet.md): This guide will walk you through how to create a backup of a Portal client's wallet. - [Enhance your wallets' security with Blockaid](https://docs.portalhq.io/sdks/android/guide/blockaid.md): Learn how to integrate real-time transaction, address, token, and URL security scanning using Portal's Android SDK with Blockaid. - [Build a WebView](https://docs.portalhq.io/sdks/android/guide/build-a-webview.md): This guide will walk you through how to build a WebView to interact with dApps using the Portal wallet. - [Configure log level](https://docs.portalhq.io/sdks/android/guide/configure-log-level.md): Control the verbosity of SDK log output at runtime using PortalLogLevel. - [Connect with WalletConnect](https://docs.portalhq.io/sdks/android/guide/connect-with-walletconnect.md): Portal Connect allows you to connect your Portal MPC Wallet to any dApp that supports WalletConnect without extra dependency bloat. - [Create a wallet](https://docs.portalhq.io/sdks/android/guide/create-a-wallet.md): This guide will walk you through how to create a wallet using the Portal Android SDK. - [Cross-device sessions](https://docs.portalhq.io/sdks/android/guide/cross-device-sessions.md): This guide will walk you through how to use wallet provisioning to enable your users to create multiple signing shares across their devices. - [Manage Token Delegations](https://docs.portalhq.io/sdks/android/guide/delegations.md): Learn how to approve, revoke, and manage token delegations using Portal's Android SDK. - [Eject a wallet](https://docs.portalhq.io/sdks/android/guide/eject-a-wallet.md): This guide will walk you through how to eject a wallet using the Portal Android SDK. - [Error handling](https://docs.portalhq.io/sdks/android/guide/error-handling.md): Handle structured exceptions thrown by the Portal Android SDK using the PortalException hierarchy. - [Evaluate a transaction](https://docs.portalhq.io/sdks/android/guide/evaluate-a-transaction.md): Before committing to a transaction, it's often useful to simulate its outcome to understand the potential changes and detect any errors preemptively. - [Upgrading to EIP-7702](https://docs.portalhq.io/sdks/android/guide/evm-account-type.md): Learn how to check wallet account type and upgrade EOA wallets to EIP-7702 using Portal's Android SDK. - [Getting Started](https://docs.portalhq.io/sdks/android/guide/getting-started.md): Follow this guide to integrate Portal in your Android app. - [Enhance your wallets' security with Hypernative](https://docs.portalhq.io/sdks/android/guide/hypernative.md): Learn how to integrate real-time security scanning for transactions, addresses, tokens, NFTs, and URLs using Portal's Android SDK with Hypernative. - [Bridge & Swap with Li.Fi](https://docs.portalhq.io/sdks/android/guide/lifi.md): Learn how to bridge and swap tokens across multiple chains using Portal's Android SDK with Li.Fi integration. - [Manage wallet lifecycle states](https://docs.portalhq.io/sdks/android/guide/manage-wallet-lifecycle-states.md): This guide will walk you through how to manage your users' wallet lifecycle states. - [MPC progress callbacks](https://docs.portalhq.io/sdks/android/guide/mpc-progress-callbacks.md): This section describes how to check in on the status of each MPC operation - [Perform swaps](https://docs.portalhq.io/sdks/android/guide/perform-swaps.md): This guide will walk you through how to perform swaps with Portal's Android SDK. - [Portal API methods](https://docs.portalhq.io/sdks/android/guide/portal-api-methods.md): Portal API's convenient helper methods are designed to streamline data retrieval from the Portal REST API. - [Recover a wallet](https://docs.portalhq.io/sdks/android/guide/recover-a-wallet.md): This guide will walk you through how to use your users' backups to recover their wallet. - [Send tokens](https://docs.portalhq.io/sdks/android/guide/send-tokens.md): This guide will walk you through how to send tokens from your Portal wallet to another address. - [Sign a transaction](https://docs.portalhq.io/sdks/android/guide/sign-a-transaction.md): This guide will walk you through how to sign a transaction using the Portal Android SDK. - [Earn with Yield.xyz](https://docs.portalhq.io/sdks/android/guide/yield-xyz.md): Learn how to discover, enter, manage, and exit yield opportunities. - [Swap Tokens with 0x](https://docs.portalhq.io/sdks/android/guide/zerox.md): Learn how to swap tokens using Portal's Android SDK with 0x integration. - [Reference](https://docs.portalhq.io/sdks/android/reference.md): Read the reference documentation for the Portal Android SDK. - [Native Platform Channels (Android)](https://docs.portalhq.io/sdks/flutter/guide/android.md): Advanced guide for integrating Portal into your Flutter app using native platform channels. - [Back up a wallet](https://docs.portalhq.io/sdks/flutter/guide/back-up-a-wallet.md): This guide will walk you through how to create a backup of a Portal client's wallet. - [Configure log level](https://docs.portalhq.io/sdks/flutter/guide/configure-log-level.md): Control the verbosity of SDK log output at runtime using PortalLogLevel. - [Create a wallet](https://docs.portalhq.io/sdks/flutter/guide/create-a-wallet.md): Once you have a Portal instance, you can now create a wallet for your user. - [Manage Token Delegations](https://docs.portalhq.io/sdks/flutter/guide/delegations.md): Learn how to approve, revoke, and manage token delegations using Portal's Flutter SDK. - [Eject a wallet](https://docs.portalhq.io/sdks/flutter/guide/eject-a-wallet.md): Learn how to export private keys from the MPC system. - [Evaluate a transaction](https://docs.portalhq.io/sdks/flutter/guide/evaluate-a-transaction.md): Learn how to evaluate transactions for security risks before sending them. - [Upgrading to EIP-7702](https://docs.portalhq.io/sdks/flutter/guide/evm-account-type.md): Learn how to check wallet account type and upgrade EOA wallets to EIP-7702 using Portal's Flutter SDK. - [Getting Started](https://docs.portalhq.io/sdks/flutter/guide/getting-started.md): Follow this guide to integrate Portal in your Flutter app. - [Native Platform Channels (iOS)](https://docs.portalhq.io/sdks/flutter/guide/ios.md): Advanced guide for integrating Portal into your Flutter app using native platform channels. - [Bridge & Swap with Li.Fi](https://docs.portalhq.io/sdks/flutter/guide/lifi.md): Learn how to bridge and swap tokens across multiple chains using Portal's Flutter SDK with Li.Fi integration. - [Perform swaps](https://docs.portalhq.io/sdks/flutter/guide/perform-swaps.md): Learn how to swap tokens using the Portal SDK. - [Recover a wallet](https://docs.portalhq.io/sdks/flutter/guide/recover-a-wallet.md): This guide will walk you through how to recover a Portal wallet from a backup. - [Send tokens](https://docs.portalhq.io/sdks/flutter/guide/send-tokens.md): Here's exactly how you can send tokens from your Portal wallet to another address. - [Sign a transaction](https://docs.portalhq.io/sdks/flutter/guide/sign-a-transaction.md): This example shows how the Portal Provider interacts with the blockchain. - [Sign a user operation](https://docs.portalhq.io/sdks/flutter/guide/sign-a-user-operation.md): Sign an ERC-4337 UserOperation using your MPC key without broadcasting it. - [Earn with Yield.xyz](https://docs.portalhq.io/sdks/flutter/guide/yield-xyz.md): Learn how to discover, enter, manage, and exit yield opportunities. - [availableRecoveryMethods](https://docs.portalhq.io/sdks/flutter/reference/availablerecoverymethods.md): Get available recovery methods for a wallet. - [backupWallet](https://docs.portalhq.io/sdks/flutter/reference/backupwallet.md): Create a backup of the user's wallet. - [configureFirebaseStorage](https://docs.portalhq.io/sdks/flutter/reference/configurefirebasestorage.md): Configure Firebase Auth as a backup storage method for wallet backup and recovery. - [configureGoogleStorage](https://docs.portalhq.io/sdks/flutter/reference/configuregooglestorage.md): Configure Google Drive backup storage. - [configureICloudStorage](https://docs.portalhq.io/sdks/flutter/reference/configureicloud.md): Configure iCloud backup storage. - [configurePasskeyStorage](https://docs.portalhq.io/sdks/flutter/reference/configurepasskeystorage.md): Configure Passkey backup storage. - [createWallet](https://docs.portalhq.io/sdks/flutter/reference/createwallet.md): Create a new MPC wallet for the user. - [delegations.approve](https://docs.portalhq.io/sdks/flutter/reference/delegations-approve.md): Approve a token delegation. - [delegations.getStatus](https://docs.portalhq.io/sdks/flutter/reference/delegations-getstatus.md): Get the status of a token delegation. - [delegations.revoke](https://docs.portalhq.io/sdks/flutter/reference/delegations-revoke.md): Revoke a token delegation. - [delegations.transferFrom](https://docs.portalhq.io/sdks/flutter/reference/delegations-transferfrom.md): Transfer tokens from a delegated allowance. - [deleteKeychain](https://docs.portalhq.io/sdks/flutter/reference/deletekeychain.md): Delete local keychain data. - [doesWalletExist](https://docs.portalhq.io/sdks/flutter/reference/doeswalletexist.md): Check if a wallet exists. - [ejectPrivateKeys](https://docs.portalhq.io/sdks/flutter/reference/ejectprivatekeys.md): Export private keys from the MPC system. - [eth_signUserOperation](https://docs.portalhq.io/sdks/flutter/reference/eth_signuseroperation.md): Sign an ERC-4337 UserOperation without broadcasting it. - [evaluateTransaction](https://docs.portalhq.io/sdks/flutter/reference/evaluatetransaction.md): Evaluate a transaction for security risks. - [getAddresses / getAddress](https://docs.portalhq.io/sdks/flutter/reference/getaddresses.md): Get wallet addresses. - [getAssets](https://docs.portalhq.io/sdks/flutter/reference/getassets.md): Get asset balances for a chain. - [getClient](https://docs.portalhq.io/sdks/flutter/reference/getclient.md): Get client information. - [getNftAssets](https://docs.portalhq.io/sdks/flutter/reference/getnftassets.md): Get NFT assets for a chain. - [getTransactionDetails](https://docs.portalhq.io/sdks/flutter/reference/gettransactiondetails.md): Get full details for a specific transaction by chain and signature. - [getTransactions](https://docs.portalhq.io/sdks/flutter/reference/gettransactions.md): Get transaction history for a chain. - [isWalletBackedUp](https://docs.portalhq.io/sdks/flutter/reference/iswalletbackedup.md): Check if the wallet is backed up. - [isWalletOnDevice](https://docs.portalhq.io/sdks/flutter/reference/iswalletondevice.md): Check if the wallet is stored on the device. - [isWalletRecoverable](https://docs.portalhq.io/sdks/flutter/reference/iswalletrecoverable.md): Check if the wallet can be recovered. - [rawSign](https://docs.portalhq.io/sdks/flutter/reference/rawsign.md): Sign a raw message without any prefix. - [receiveTestnetAsset](https://docs.portalhq.io/sdks/flutter/reference/receivetestnetasset.md): Request testnet assets for development. - [recoverWallet](https://docs.portalhq.io/sdks/flutter/reference/recoverwallet.md): Recover a wallet from a backup. - [request](https://docs.portalhq.io/sdks/flutter/reference/request.md): Make a generic JSON-RPC request. - [sendAsset](https://docs.portalhq.io/sdks/flutter/reference/sendasset.md): Send tokens from your wallet to another address. - [sendTransaction](https://docs.portalhq.io/sdks/flutter/reference/sendtransaction.md): Send a transaction with full parameter control. - [setLogLevel](https://docs.portalhq.io/sdks/flutter/reference/setloglevel.md): Changes the SDK log verbosity at runtime without reinitializing Portal. - [setPassword](https://docs.portalhq.io/sdks/flutter/reference/setpassword.md): Set the password for backup/recovery. - [signMessage / signTypedData](https://docs.portalhq.io/sdks/flutter/reference/signmessage.md): Sign messages and typed data. - [swap](https://docs.portalhq.io/sdks/flutter/reference/swap.md): Execute a token swap. - [yieldIntegrations.yieldxyz.discover](https://docs.portalhq.io/sdks/flutter/reference/yield-discover.md): Discover yield opportunities. - [yieldIntegrations.yieldxyz.enter](https://docs.portalhq.io/sdks/flutter/reference/yield-enter.md): Enter a yield position. - [yieldIntegrations.yieldxyz.exit](https://docs.portalhq.io/sdks/flutter/reference/yield-exit.md): Exit a yield position. - [yieldIntegrations.yieldxyz.getBalances](https://docs.portalhq.io/sdks/flutter/reference/yield-getbalances.md): Get yield balances for wallet addresses. - [yieldIntegrations.yieldxyz.getHistoricalActions](https://docs.portalhq.io/sdks/flutter/reference/yield-gethistoricalactions.md): Get historical yield actions. - [yieldIntegrations.yieldxyz.getTransaction](https://docs.portalhq.io/sdks/flutter/reference/yield-gettransaction.md): Get details for a yield transaction. - [yieldIntegrations.yieldxyz.manage](https://docs.portalhq.io/sdks/flutter/reference/yield-manage.md): Manage a yield position. - [yieldIntegrations.yieldxyz.track](https://docs.portalhq.io/sdks/flutter/reference/yield-track.md): Track a yield transaction on-chain. - [Add custom signature hooks](https://docs.portalhq.io/sdks/ios/guide/add-custom-signature-hooks.md): This guide will help you configure custom signature hooks for requests to the Portal Provider to ensure your business logic is properly implemented into Portal's signing flow. - [Back up a wallet](https://docs.portalhq.io/sdks/ios/guide/back-up-a-wallet.md): This guide will walk you through how to create a backup of a Portal client's wallet. - [Enhance your wallets' security with Blockaid](https://docs.portalhq.io/sdks/ios/guide/blockaid.md): Learn how to integrate real-time transaction, address, token, and URL security scanning using Portal's iOS SDK with Blockaid. - [Build a WebView](https://docs.portalhq.io/sdks/ios/guide/build-a-webview.md): This guide will walk you through how to build a WebView to interact with dApps using the Portal wallet. - [Configure log level](https://docs.portalhq.io/sdks/ios/guide/configure-log-level.md): Control the verbosity of SDK log output at runtime using PortalLogLevel. - [Connect with WalletConnect](https://docs.portalhq.io/sdks/ios/guide/connect-with-walletconnect.md): Portal Connect allows you to connect your Portal MPC Wallet to any dApp that supports WalletConnect without extra dependency bloat. - [Create a wallet](https://docs.portalhq.io/sdks/ios/guide/create-a-wallet.md): Once you have a Portal instance, you can now create a wallet for your user. - [Cross-device sessions](https://docs.portalhq.io/sdks/ios/guide/cross-device-sessions.md): Use wallet recovery to enable your users to create multiple signing shares across their devices. - [Manage Token Delegations](https://docs.portalhq.io/sdks/ios/guide/delegations.md): Learn how to approve, revoke, and manage token delegations using Portal's iOS SDK. - [Eject a wallet](https://docs.portalhq.io/sdks/ios/guide/eject-a-wallet.md): The eject feature allows a user to construct private keys that can be imported into another wallet manager, such as MetaMask. - [Evaluate a transaction](https://docs.portalhq.io/sdks/ios/guide/evaluate-a-transaction.md): Before committing to a transaction, it's often useful to simulate its outcome to understand the potential changes and detect any errors preemptively. - [Upgrading to EIP-7702](https://docs.portalhq.io/sdks/ios/guide/evm-account-type.md): Learn how to check wallet account type and upgrade EOA wallets to EIP-7702 using Portal's iOS SDK. - [Feature Flags](https://docs.portalhq.io/sdks/ios/guide/feature-flags.md): Feature flags allow you to enable or disable specific features in the Portal SDK. This provides flexibility in customizing the behavior of the SDK for your application. - [Getting Started](https://docs.portalhq.io/sdks/ios/guide/getting-started.md): Follow this guide to integrate Portal in your iOS app. - [Enhance your wallets' security with Hypernative](https://docs.portalhq.io/sdks/ios/guide/hypernative.md): Learn how to integrate real-time security scanning for transactions, addresses, tokens, NFTs, and URLs using Portal's iOS SDK with Hypernative. - [Bridge & Swap with Li.Fi](https://docs.portalhq.io/sdks/ios/guide/lifi.md): Learn how to bridge and swap tokens across multiple chains using Portal's iOS SDK with Li.Fi integration. - [Manage ERC20 tokens](https://docs.portalhq.io/sdks/ios/guide/manage-erc20-tokens.md): This guide will walk you through how your Portal Wallets work with ERC20 tokens, how to interface with ERC20 Token Contracts, and how to use the Portal Provider to transfer ERC20 tokens. - [Manage wallet lifecycle states](https://docs.portalhq.io/sdks/ios/guide/manage-wallet-lifecycle-states.md): Users can have multiple states in their wallet lifecycle: having a wallet, having wallet backups, having certain recovery methods available, and more. - [MPC progress callbacks](https://docs.portalhq.io/sdks/ios/guide/mpc-progress-callbacks.md): This section describes how to check in on the status of each MPC operation - [Perform swaps (Deprecated)](https://docs.portalhq.io/sdks/ios/guide/perform-swaps.md): This guide will walk you through how to perform swaps with Portal's iOS SDK. - [Portal API methods](https://docs.portalhq.io/sdks/ios/guide/portal-api-methods.md): Portal API's convenient helper methods are designed to streamline data retrieval from the Portal REST API. - [Recover a wallet](https://docs.portalhq.io/sdks/ios/guide/recover-a-wallet.md): This guide will walk you through how to use your users' backups to recover their wallet. - [Send tokens](https://docs.portalhq.io/sdks/ios/guide/send-tokens.md): Here's exactly how you can send tokens from your Portal wallet to another address. - [Sign a transaction](https://docs.portalhq.io/sdks/ios/guide/sign-a-transaction.md): This example shows how the Portal Provider interacts with the blockchain. - [Troubleshooting tips](https://docs.portalhq.io/sdks/ios/guide/troubleshooting-tips.md): This guide will walk you through some tips and tricks to help you troubleshoot issues with the Portal SDK. - [Earn with Yield.xyz](https://docs.portalhq.io/sdks/ios/guide/yield-xyz.md): Learn how to discover, enter, manage, and exit yield opportunities. - [Swap Tokens with 0x](https://docs.portalhq.io/sdks/ios/guide/zerox.md): Learn how to swap tokens using Portal's iOS SDK with 0x integration. - [availableRecoveryMethods](https://docs.portalhq.io/sdks/ios/reference/availablerecoverymethods.md): Retrieves the list of available backup methods that can be used for wallet recovery. - [backupWallet](https://docs.portalhq.io/sdks/ios/reference/backupwallet.md): Creates a backup of the wallet using the specified backup method. - [buildEip155Transaction](https://docs.portalhq.io/sdks/ios/reference/buildeip155transaction.md): Builds an EIP-155 compliant transaction for Ethereum-compatible chains. This method constructs a transaction object that includes replay protection as specified in EIP-155. - [buildSolanaTransaction](https://docs.portalhq.io/sdks/ios/reference/buildsolanatransaction.md): Builds a Solana transaction for token transfers, handling both native SOL and SPL tokens with required program instructions. - [createWallet](https://docs.portalhq.io/sdks/ios/reference/createwallet.md): Creates a new wallet and generates addresses for supported chains. - [doesWalletExist](https://docs.portalhq.io/sdks/ios/reference/doeswalletexist.md): Checks whether a wallet exists with completed signing shares. This method verifies the presence of a wallet by checking for completed signing shares. - [ejectPrivateKeys](https://docs.portalhq.io/sdks/ios/reference/ejectprivatekeys.md): Extracts all private keys from the wallet using a specified backup method. - [evaluateTransaction](https://docs.portalhq.io/sdks/ios/reference/evaluatetransaction.md): Evaluates a transaction for security and risk assessment, providing both validation and simulation results. - [FirebaseStorage](https://docs.portalhq.io/sdks/ios/reference/firebasestorage.md): Storage implementation for Firebase Auth Backup and recovery. - [getAssets](https://docs.portalhq.io/sdks/ios/reference/getassets.md): Retrieves a collection of assets (tokens and NFTs) for the specified blockchain. - [getBalances](https://docs.portalhq.io/sdks/ios/reference/getbalances.md): Retrieves token balances for the specified blockchain. This method fetches all token balances (native and ERC-20 or SPL) associated with the wallet on the specified blockchain network. - [getNftAssets](https://docs.portalhq.io/sdks/ios/reference/getnftassets.md): Retrieves NFT assets for the specified blockchain. This method fetches all NFTs (Non-Fungible Tokens) owned by the wallet. - [getTransactions](https://docs.portalhq.io/sdks/ios/reference/gettransactions.md): Retrieves transaction history for the specified blockchain. - [getWalletCapabilities](https://docs.portalhq.io/sdks/ios/reference/getwalletcapabilities.md): Retrieves the capabilities and supported features of the current wallet, particularly focusing on available services like paymaster support. - [isWalletBackedUp](https://docs.portalhq.io/sdks/ios/reference/iswalletbackedup.md): Checks whether a wallet has completed backups. This method verifies if backup shares have been successfully created and stored. - [isWalletOnDevice](https://docs.portalhq.io/sdks/ios/reference/iswalletondevice.md): Checks whether wallet shares are present in the device's keychain. This method verifies if the signing shares required for wallet operations are stored in the device's local keychain. - [isWalletRecoverable](https://docs.portalhq.io/sdks/ios/reference/iswalletrecoverable.md): Checks whether the wallet can be recovered using any available backup methods. This method verifies if there are any completed backup methods that could be used to recover the wallet. - [recoverWallet](https://docs.portalhq.io/sdks/ios/reference/recoverwallet.md): Recovers a wallet using a specified backup method. - [registerBackupMethod](https://docs.portalhq.io/sdks/ios/reference/registerbackupmethod.md): Registers a storage implementation for a specific backup method. - [sendSol](https://docs.portalhq.io/sdks/ios/reference/sendsol.md): Sends SOL tokens to a specified Solana address. This method constructs and sends a Solana transfer transaction. - [setGDriveConfiguration](https://docs.portalhq.io/sdks/ios/reference/setgdriveconfiguration.md): Configures Google Drive settings for the SDK with a specified backup option. - [setLogLevel](https://docs.portalhq.io/sdks/ios/reference/setloglevel.md): Changes the SDK log verbosity at runtime without reinitializing Portal. - [setPasskeyAuthenticationAnchor](https://docs.portalhq.io/sdks/ios/reference/setpasskeyauthenticationanchor.md): Sets the presentation anchor for passkey authentication dialogs. This method is required for configuring where the passkey UI components will be displayed in your application. - [setPasskeyConfiguration](https://docs.portalhq.io/sdks/ios/reference/setpasskeyconfiguration.md): Configures the passkey authentication settings for backup and recovery operations. This method must be called before using passkey backup or recovery methods. - [setPassword](https://docs.portalhq.io/sdks/ios/reference/setpassword.md): Sets the password used for the Password backup method. This method configures the password that will be used to encrypt and decrypt wallet backups using password-based key derivation. - [SDK Quickstart](https://docs.portalhq.io/sdks/quickstart.md): This quick start guide will get you up and running with any of the Portal SDKs. - [Add custom signature hooks](https://docs.portalhq.io/sdks/react-native/guide/add-custom-signature-hooks.md) - [Back up a wallet](https://docs.portalhq.io/sdks/react-native/guide/back-up-a-wallet.md): This guide will walk you through how to create a backup of a Portal client's wallet. - [Build a WebView](https://docs.portalhq.io/sdks/react-native/guide/build-a-webview.md): Our ready-to-use WebView component helps you quickly integrate Portal into your app. - [Connect with WalletConnect](https://docs.portalhq.io/sdks/react-native/guide/connect-with-walletconnect.md): Portal Connect allows you to connect your Portal MPC Wallet to any dApp that supports WalletConnect without extra dependency bloat. - [Create a wallet](https://docs.portalhq.io/sdks/react-native/guide/create-a-wallet.md): The first step to the MPC process is generating key shares, or a wallet, for your users. - [Cross-device sessions](https://docs.portalhq.io/sdks/react-native/guide/cross-device-sessions.md): Use wallet provisioning to enable your users to create multiple signing shares across their devices. - [Manage Token Delegations](https://docs.portalhq.io/sdks/react-native/guide/delegations.md): Learn how to approve, revoke, and manage token delegations using Portal's React Native SDK. - [Eject a wallet](https://docs.portalhq.io/sdks/react-native/guide/eject-a-wallet.md): The eject feature allows a user to construct a private key that can be imported into another wallet manager, such as MetaMask. - [Evaluate a transaction](https://docs.portalhq.io/sdks/react-native/guide/evaluate-a-transaction.md): Before committing to a transaction, it's often useful to simulate its outcome to understand the potential changes and detect any errors preemptively. - [Upgrading to EIP-7702](https://docs.portalhq.io/sdks/react-native/guide/evm-account-type.md): Learn how to check wallet account type and upgrade EOA wallets to EIP-7702 using Portal's React Native SDK. - [Feature flags](https://docs.portalhq.io/sdks/react-native/guide/feature-flags.md): Enable or disable specific SDK behaviors using feature flags when initializing Portal. - [Getting Started](https://docs.portalhq.io/sdks/react-native/guide/getting-started.md): Follow this guide to integrate Portal in your React Native app. - [Enhance your wallets' security with Hypernative](https://docs.portalhq.io/sdks/react-native/guide/hypernative.md): Learn how to integrate real-time security scanning for transactions, addresses, tokens, NFTs, and URLs using Portal's React Native SDK with Hypernative. - [Bridge & Swap with Li.Fi](https://docs.portalhq.io/sdks/react-native/guide/lifi.md): Learn how to bridge and swap tokens across multiple chains using Portal's React Native SDK with Li.Fi integration. - [Logging Configuration](https://docs.portalhq.io/sdks/react-native/guide/logging.md): Configure logging for Portal SDK operations in React Native with log levels and custom loggers. - [Manage wallet lifecycle states](https://docs.portalhq.io/sdks/react-native/guide/manage-wallet-lifecycle-states.md): Users can have multiple states in their wallet lifecycle: having a wallet, having wallet backups, having certain recovery methods available, and more. - [MPC progress callbacks](https://docs.portalhq.io/sdks/react-native/guide/mpc-progress-callbacks.md): This section describes how to check in on the status of each MPC operation - [Perform swaps](https://docs.portalhq.io/sdks/react-native/guide/perform-swaps.md): This guide will walk you through how to perform swaps with Portal's React Native SDK. - [Portal API methods](https://docs.portalhq.io/sdks/react-native/guide/portal-api-methods.md): Portal API's convenient helper methods are designed to streamline data retrieval from the Portal REST API. - [Recover a wallet](https://docs.portalhq.io/sdks/react-native/guide/recover-a-wallet.md): This guide will walk you through how to use your users' backups to recover their wallet. - [Send tokens](https://docs.portalhq.io/sdks/react-native/guide/send-tokens.md): Here's exactly how you can send tokens from your Portal wallet to another address. - [Sign a transaction](https://docs.portalhq.io/sdks/react-native/guide/sign-a-transaction.md): Want to implement your own style, but with all the functionality Portal offers? Use these functions to implement your own custom web3 UI for your users. - [Earn with Yield.xyz](https://docs.portalhq.io/sdks/react-native/guide/yield-xyz.md): Learn how to discover, enter, manage, and exit yield opportunities. - [Swap Tokens with 0x](https://docs.portalhq.io/sdks/react-native/guide/zerox.md): Learn how to swap tokens using Portal's React Native SDK with 0x integration - [@portal-hq/core](https://docs.portalhq.io/sdks/react-native/reference/core.md): The @portal-hq/core package provides the Portal class for MPC wallet management, an EIP-1193 compliant provider, API methods, and React Context utilities. - [@portal-hq/gdrive-storage](https://docs.portalhq.io/sdks/react-native/reference/gdrive-storage.md): The @portal-hq/gdrive-storage package contains a storage adapter intended for use with the @portal-hq/core package. This storage adapter allows end users to save backup MPC shares to their Google Drive. - [@portal-hq/icloud-storage](https://docs.portalhq.io/sdks/react-native/reference/icloud-storage.md): The @portal-hq/icloud-storage package contains a storage adapter intended for use with the @portal-hq/core package. This storage adapter allows end users to save backup MPC shares to their iCloud filesystem. - [@portal-hq/keychain](https://docs.portalhq.io/sdks/react-native/reference/keychain.md): The @portal-hq/keychain package contains a storage adapter intended for use with the @portal-hq/core package. This storage adapter allows end users to save MPC shares to their local device keychain using the iOS Keychain. - [Add custom signature hooks](https://docs.portalhq.io/sdks/web/guide/add-custom-signature-hooks.md): This guide will help you configure custom signature hooks for requests to the Portal Provider to ensure your business logic is properly implemented into Portal's signing flow. - [Back up a wallet](https://docs.portalhq.io/sdks/web/guide/back-up-a-wallet.md): This guide will walk you through how to create a backup of a Portal client's wallet. - [Enhance your wallet security with Blockaid](https://docs.portalhq.io/sdks/web/guide/blockaid.md): Learn how to integrate real-time transaction, address, token, and URL security scanning using Portal's Web SDK with Blockaid. - [Configure a custom subdomain](https://docs.portalhq.io/sdks/web/guide/configure-a-custom-subdomain.md): Complete configuration for the Portal Web SDK by enabling it to run on a subdomain of your application. - [Create a wallet](https://docs.portalhq.io/sdks/web/guide/create-a-wallet.md): The first step to the MPC process is generating key shares, or a wallet, for your users. - [Cross-device sessions](https://docs.portalhq.io/sdks/web/guide/cross-device-sessions.md): Use wallet provisioning to enable your users to create multiple signing shares across their devices. - [Manage Token Delegations](https://docs.portalhq.io/sdks/web/guide/delegations.md): Learn how to approve, revoke, and manage token delegations using Portal's Web SDK. - [Eject a wallet](https://docs.portalhq.io/sdks/web/guide/eject-a-wallet.md): The eject feature allows a user to construct a private key that can be imported into another wallet manager, such as MetaMask. - [Upgrading to EIP-7702](https://docs.portalhq.io/sdks/web/guide/evm-account-type.md): Learn how to check wallet account type and upgrade EOA wallets to EIP-7702 using Portal's Web SDK. - [Feature flags](https://docs.portalhq.io/sdks/web/guide/feature-flags.md): Enable or disable specific SDK behaviors using feature flags when initializing Portal. - [Getting Started](https://docs.portalhq.io/sdks/web/guide/getting-started.md): Follow this guide to integrate Portal in your web app. - [Security Scanning with Hypernative](https://docs.portalhq.io/sdks/web/guide/hypernative.md): Learn how to integrate real-time security scanning for transactions, addresses, tokens, NFTs, and URLs using Portal's Web SDK with Hypernative. - [Bridge & Swap with Li.Fi](https://docs.portalhq.io/sdks/web/guide/lifi.md): Learn how to bridge and swap tokens across multiple chains using Portal's Web SDK with Li.Fi integration. - [Logging Configuration](https://docs.portalhq.io/sdks/web/guide/logging.md): Configure logging for Portal SDK operations in the Web SDK with log levels and custom loggers. - [Manage wallet lifecycle states](https://docs.portalhq.io/sdks/web/guide/manage-wallet-lifecycle-states.md): Users can have multiple states in their wallet lifecycle: having a wallet, having wallet backups, having certain recovery methods available, and more. - [MPC progress callbacks](https://docs.portalhq.io/sdks/web/guide/mpc-progress-callbacks.md): This section describes how to check in on the status of each MPC operation - [Noah virtual accounts and payouts](https://docs.portalhq.io/sdks/web/guide/noah.md): Use portal.ramps.noah in the Web SDK for Noah KYC, payins, payouts, and quotes via the Portal iframe and Client API. - [Perform swaps](https://docs.portalhq.io/sdks/web/guide/perform-swaps.md): This guide will walk you through how to perform swaps with Portal's Web SDK. - [Portal API methods](https://docs.portalhq.io/sdks/web/guide/portal-api-methods.md): Portal API's convenient helper methods are designed to streamline data retrieval from the Portal REST API. - [Recover a wallet](https://docs.portalhq.io/sdks/web/guide/recover-a-wallet.md): This guide will walk you through how to use your users' backups to recover their wallet. - [Send tokens](https://docs.portalhq.io/sdks/web/guide/send-tokens.md): Here's exactly how you can send tokens from your Portal wallet to another address. - [Sign a transaction](https://docs.portalhq.io/sdks/web/guide/sign-a-transaction.md): Easily use our EIP-1193 provider or custom built functions to make sending and signing transactions easier! - [Simulate a transaction](https://docs.portalhq.io/sdks/web/guide/simulate-a-transaction.md): Before committing to a transaction, it's often useful to simulate its outcome to understand the potential changes and detect any errors preemptively. - [Using the EIP-1193 Provider](https://docs.portalhq.io/sdks/web/guide/using-the-eip-1193-provider.md): portal.provider is compliant with the EIP-1193 specification and can be used with libraries like ethers.js and web3.js. This guide will walk you through using portal.provider with ethers.js. - [Web authentication methods](https://docs.portalhq.io/sdks/web/guide/web-authentication-methods.md): The Portal Web SDK offers various approaches to authenticating. The main reason for this is to allow you to strike the right balance between integration time and security. - [Earn with Yield.xyz](https://docs.portalhq.io/sdks/web/guide/yield-xyz.md): Learn how to discover, enter, manage, and exit yield opportunities. - [Swap Tokens with 0x](https://docs.portalhq.io/sdks/web/guide/zero-x.md): Learn how to swap tokens using Portal's Web SDK with 0x integration - [Reference](https://docs.portalhq.io/sdks/web/reference.md): Read the reference documentation for the Portal Web SDK. ## OpenAPI Specs - [client-api](https://docs.portalhq.io/openapi/client-api.yaml) - [custodian-api](https://docs.portalhq.io/openapi/custodian-api.yaml) - [enclave-mpc-api](https://docs.portalhq.io/openapi/enclave-mpc-api.yaml) - [openapi](https://docs.portalhq.io/api-reference/openapi.json) ## Optional - [GitHub](https://github.com/portal-hq) - [Community](https://join.slack.com/t/portalcommunity/shared_invite/zt-1zlyexf43-A94Z4ugntrgLGs2j5slmeQ) - [Blog](https://www.portalhq.io/blog)