# Portal: API Reference

> Portal is a key management platform for stablecoin companies. Create wallets, send and receive funds on-chain - all in a day.

## API Reference

### Overview

- [API Reference](https://docs.portalhq.io/apis/api-reference-overview.md): Explore Portal's REST APIs for MPC wallet operations, client-side actions, custodian management, and reseller workflows.

### Enclave MPC API

#### Wallet Management

- [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).
- [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.
- [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.

#### Signing

- [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`.

#### Presignatures

- [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.
- [List active presignatures](https://docs.portalhq.io/api-reference/mpc-operations/list-active-presignatures.md): Lists active presignatures for the authenticated client. The response includes both client-stored and Portal-managed presignatures. Use the `managed` field on each entry to determine whether signing requires the opaque `presignature` data blob or the `presignatureId`.
- [Delete a presignature](https://docs.portalhq.io/api-reference/mpc-operations/delete-a-presignature.md): Deletes a presignature by ID. After deletion, the presignature can no longer be used for signing. For client-stored presignatures, the locally stored opaque `data` blob for that ID also becomes unusable.

### Client API

#### Clients

- [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.

#### Wallet

- [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 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.
- [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 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.

#### Transactions

- [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.
- [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 user operation](https://docs.portalhq.io/api-reference/transactions/build-a-user-operation.md): Builds an ERC-4337 user operation (EntryPoint v0.6) for an Account Abstraction client from one or more calls, which the smart account executes in order. Returns the user operation and the hash to sign. Sign `userOpHash` with the Enclave MPC API `POST /v1/raw/sign/SECP256K1` (or `rawSign` in the SDKs…
- [Broadcast a user operation](https://docs.portalhq.io/api-reference/transactions/broadcast-a-user-operation.md): Attaches a signature to a user operation and submits it to the bundler. The user operation can be the one `build-user-operation` returned, or one you built yourself for the client's smart account (EntryPoint v0.6, ZeroDev Kernel v2). Pass the signature exactly as the raw signing endpoint returned it…
- [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.

#### Funding

- [Get the testnet funding configuration](https://docs.portalhq.io/api-reference/funding/get-the-testnet-funding-configuration.md): Returns the funding configuration for every supported testnet chain and token pair. Each entry describes the per-request maximum and the cumulative maximum allowed over a rolling window, along with the window length in minutes. These are the same limits the `POST /clients/me/fund` endpoint enforces,…
- [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. Each request funds a caller-specified amount, which must not exceed the per-request maximum for that chain and token. Cumulative successful funding is capped per client, per chain, and per token over a rolling 24-hour wind…

#### Wallet Shares

- [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.
- [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:
- [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).
- [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.
- [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 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.
- [Complete wallet ejection](https://docs.portalhq.io/api-reference/wallet-shares/complete-wallet-ejection.md): Completes the ejection process for a wallet.
- [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.

#### Delegations

- [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.
- [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.
- [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 active delegations. See the delegateAddress parameter for per-chain behavior.
- [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.
- [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.
- [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.
- [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.
- [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.
- [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.

#### EIP-7702

- [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.
- [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).

#### Li.Fi

- [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 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 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 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.
- [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.

#### 0x

- [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.
- [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 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 cross-chain swap quotes](https://docs.portalhq.io/api-reference/0x/get-cross-chain-swap-quotes.md): Retrieves quotes for a cross-chain swap across EVM chains. Returns multiple quotes with different bridge providers and routing options.
- [Get cross-chain transaction status](https://docs.portalhq.io/api-reference/0x/get-cross-chain-transaction-status.md): Tracks the status of a cross-chain transaction from origin chain submission through bridge completion.
- [List cross-chain bridge and swap sources](https://docs.portalhq.io/api-reference/0x/list-cross-chain-bridge-and-swap-sources.md): Lists all available bridge providers and DEX sources for cross-chain swaps, including their supported chain pairs. Chain IDs are returned in CAIP-2 format.
- [Get cross-chain transaction history](https://docs.portalhq.io/api-reference/0x/get-cross-chain-transaction-history.md): Retrieves cross-chain transaction history for a wallet address. Supports pagination via cursor.

#### Yield

- [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 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 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.
- [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.
- [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).
- [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.
- [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 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.

#### Yield.xyz Borrow

- [Get positions](https://docs.portalhq.io/api-reference/yieldxyz-borrow/get-positions.md): Retrieve all supply and borrow positions for a user address across specified integration and network.
- [Get liquidation history](https://docs.portalhq.io/api-reference/yieldxyz-borrow/get-liquidation-history.md): Retrieve a paginated history of Morpho Blue liquidation events for a borrower address, read from the indexed store. This is the only place a fully-liquidated (closed) position can be retrieved, since it no longer appears in GET /v1/positions. Ordered by most recent first.
- [Execute a borrow action](https://docs.portalhq.io/api-reference/yieldxyz-borrow/execute-a-borrow-action.md): Generate unsigned transactions for a lending/borrowing action. Returns transaction(s) to sign. Submit each signed transaction via POST /transactions/:id/submit. For async multi-step flows (e.g., cross-chain bridges), hasNextStep will be true — call POST /actions/:id/step after confirmation to get th…
- [List actions](https://docs.portalhq.io/api-reference/yieldxyz-borrow/list-actions.md): Get a paginated list of actions, with optional filtering by address, integration, status, etc.
- [Get action by ID](https://docs.portalhq.io/api-reference/yieldxyz-borrow/get-action-by-id.md): Retrieve detailed information about a specific action including current status, transactions, and step progress.
- [Get next step transactions](https://docs.portalhq.io/api-reference/yieldxyz-borrow/get-next-step-transactions.md): For async multi-step actions (e.g., cross-chain bridges, delayed withdrawals), retrieve the next transaction(s) after the previous step has been confirmed on-chain. Call this when hasNextStep is true on the action response.
- [Submit signed transaction](https://docs.portalhq.io/api-reference/yieldxyz-borrow/submit-signed-transaction.md): Submit a signed transaction. Provide signedPayload to have us broadcast it to the blockchain, or transactionHash if already submitted by the client.
- [List integrations](https://docs.portalhq.io/api-reference/yieldxyz-borrow/list-integrations.md): Retrieve a list of available lending/borrowing integrations (e.g., Aave, Spark, Morpho) with their supported actions and networks.
- [Get integration details](https://docs.portalhq.io/api-reference/yieldxyz-borrow/get-integration-details.md): Retrieve detailed information about a specific lending/borrowing integration
- [List lending markets](https://docs.portalhq.io/api-reference/yieldxyz-borrow/list-lending-markets.md): Retrieve a paginated list of available lending markets across all supported integrations and networks. Each market represents a token that can be supplied or borrowed.
- [Get market by ID](https://docs.portalhq.io/api-reference/yieldxyz-borrow/get-market-by-id.md): Retrieve details for a specific lending market. Useful for deep linking into a specific market (e.g., cbBTC/USDT on Morpho Blue).
- [Health check](https://docs.portalhq.io/api-reference/yieldxyz-borrow/health-check.md): Get the health status of the borrow API with current timestamp

#### Yield.xyz Perps

- [List trading venues](https://docs.portalhq.io/api-reference/yieldxyz-perps/list-trading-venues.md): List the perpetual-futures trading venues (providers), each with the actions it supports and a JSON Schema per action describing the exact `args` that action accepts.
- [Get a trading venue](https://docs.portalhq.io/api-reference/yieldxyz-perps/get-a-trading-venue.md): Get one trading venue by id, including its supported actions and per-action argument schemas.
- [List markets](https://docs.portalhq.io/api-reference/yieldxyz-perps/list-markets.md): List tradable instruments (markets), each with mark and oracle price, funding rate, leverage range, fees and minimum size. Filter by venue and sort by 24h volume, mark price or 24h change.
- [Get a market](https://docs.portalhq.io/api-reference/yieldxyz-perps/get-a-market.md): Get one market by id, with its leverage range, mark/oracle price, funding rate, fees and minimum size.
- [Get market candles](https://docs.portalhq.io/api-reference/yieldxyz-perps/get-market-candles.md): Get OHLCV price-history candles for a market over a time window, for charting.
- [Get positions](https://docs.portalhq.io/api-reference/yieldxyz-perps/get-positions.md): Get a wallet's open positions on one or more venues (size, entry/mark price, leverage, margin, unrealised PnL, funding and liquidation price), each with its available pending actions.
- [Get orders](https://docs.portalhq.io/api-reference/yieldxyz-perps/get-orders.md): Get a wallet's resting limit and trigger orders on one or more venues, each with its available pending actions.
- [Get account balances](https://docs.portalhq.io/api-reference/yieldxyz-perps/get-account-balances.md): Get a wallet's trading-account collateral and margin on a venue (`accountValue`, `usedMargin`, `availableBalance`, `unrealizedPnl`). Accepts a single venue.
- [Execute a perps action](https://docs.portalhq.io/api-reference/yieldxyz-perps/execute-a-perps-action.md): Build unsigned transaction(s) for a perps action (`open`, `close`, `updateLeverage`, `stopLoss`, `takeProfit`, `setTpAndSl`, `cancelOrder`, `editOrder`, `updateMargin`, `fund`, `withdraw`, `approveAgent`, `approveBuilderFee`, `setUnifiedAccount`). Returns transaction(s) to sign by their `signingForm…
- [List actions](https://docs.portalhq.io/api-reference/yieldxyz-perps/list-actions.md): Get a paginated list of a wallet's actions, filterable by venue, market, action type and status.
- [Get an action](https://docs.portalhq.io/api-reference/yieldxyz-perps/get-an-action.md): Get one action by id, with its unsigned transactions and current status. Poll this to track a multi-transaction action to `SUCCESS`.
- [Get activity feed](https://docs.portalhq.io/api-reference/yieldxyz-perps/get-activity-feed.md): Get a wallet's unified activity feed, interleaving its actions and lifecycle events, newest first.
- [List events](https://docs.portalhq.io/api-reference/yieldxyz-perps/list-events.md): Get a paginated list of a wallet's lifecycle events — order fills, liquidations, and stop-loss / take-profit triggers — filterable by venue, market, event type and time window.
- [Get an event](https://docs.portalhq.io/api-reference/yieldxyz-perps/get-an-event.md): Get one lifecycle event by id.
- [Submit a signed transaction](https://docs.portalhq.io/api-reference/yieldxyz-perps/submit-a-signed-transaction.md): Submit a signed payload for the venue to broadcast, or report a transaction hash you broadcast yourself. At least one of `signedPayload` or `transactionHash` is required.
- [Health check](https://docs.portalhq.io/api-reference/yieldxyz-perps/health-check.md): Get the health status of the Yield.xyz Perps API with a current timestamp.
- [Per-venue health](https://docs.portalhq.io/api-reference/yieldxyz-perps/per-venue-health.md): Get per-venue health, with a state and optional message per provider.

#### 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 a TRON transaction](https://docs.portalhq.io/api-reference/blockaid/scan-a-tron-transaction.md): Scans a TRON transaction for security risks using Blockaid. Only TRON mainnet is supported; testnet chain IDs are rejected.
- [Scan an address](https://docs.portalhq.io/api-reference/blockaid/scan-an-address.md): Scans a blockchain address for malicious activity using Blockaid.
- [Scan tokens](https://docs.portalhq.io/api-reference/blockaid/scan-tokens.md): Scans one or more tokens for malicious characteristics using Blockaid.
- [Scan a URL](https://docs.portalhq.io/api-reference/blockaid/scan-a-url.md): Scans a URL for phishing or malicious content using Blockaid.

#### 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 EVM transaction](https://docs.portalhq.io/api-reference/hypernative/scan-an-evm-transaction.md): Scans an EVM transaction for security risks 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 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 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.
- [Scan a URL](https://docs.portalhq.io/api-reference/hypernative/scan-a-url.md): Scans a URL for phishing or malicious content using Hypernative.

#### Noah

- [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.
- [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.
- [Get payout countries](https://docs.portalhq.io/api-reference/noah/get-payout-countries.md): Lists supported payout countries and fiat currencies.
- [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 channel form](https://docs.portalhq.io/api-reference/noah/get-payout-channel-form.md): Retrieves dynamic form schema for a payout channel.
- [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.
- [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.

#### Meld

- [List service providers](https://docs.portalhq.io/api-reference/meld/list-service-providers.md): Lists Meld service providers available to the current account.
- [List countries](https://docs.portalhq.io/api-reference/meld/list-countries.md): Lists Meld-supported countries (with regions when applicable).
- [List fiat currencies](https://docs.portalhq.io/api-reference/meld/list-fiat-currencies.md): Lists Meld-supported fiat currencies.
- [List crypto currencies](https://docs.portalhq.io/api-reference/meld/list-crypto-currencies.md): Lists Meld-supported crypto currencies and their chains.
- [List payment methods](https://docs.portalhq.io/api-reference/meld/list-payment-methods.md): Lists Meld-supported payment methods.
- [List country defaults](https://docs.portalhq.io/api-reference/meld/list-country-defaults.md): Returns the default fiat currency and payment methods per country.
- [List buy limits](https://docs.portalhq.io/api-reference/meld/list-buy-limits.md): Lists per-fiat min/max/default purchase amounts.
- [List sell limits](https://docs.portalhq.io/api-reference/meld/list-sell-limits.md): Lists per-crypto min/max/default sell amounts.
- [List KYC limits](https://docs.portalhq.io/api-reference/meld/list-kyc-limits.md): Lists daily, weekly, monthly, yearly, and per-transaction limits per KYC tier.
- [Create Meld customer](https://docs.portalhq.io/api-reference/meld/create-meld-customer.md): Registers the authenticated Portal client as a Meld customer. Returns `409 Conflict` if a Meld customer already exists for this client — use `GET /customers` instead.
- [Get Meld customer](https://docs.portalhq.io/api-reference/meld/get-meld-customer.md): Looks up the Meld customer registered to the authenticated Portal client.
- [Get quote](https://docs.portalhq.io/api-reference/meld/get-quote.md): Returns live pricing across available service providers for a buy, sell, or transfer transaction.
- [Create widget session](https://docs.portalhq.io/api-reference/meld/create-widget-session.md): Creates a Meld widget session for the chosen service provider and returns the embeddable `widgetUrl` plus a single-use session `token`.
- [List transactions](https://docs.portalhq.io/api-reference/meld/list-transactions.md): Lists Meld transactions for the authenticated Portal client.
- [Get transaction](https://docs.portalhq.io/api-reference/meld/get-transaction.md): Retrieves a single Meld transaction by its Meld transaction ID.
- [Get transaction by session](https://docs.portalhq.io/api-reference/meld/get-transaction-by-session.md): Retrieves the Meld transaction associated with a widget session ID.

#### Due

- [Provision Due customer](https://docs.portalhq.io/api-reference/due/provision-due-customer.md): Provisions the Due customer for the authenticated client. Idempotent: calling it again for the same client returns the existing customer.
- [Get Due customer](https://docs.portalhq.io/api-reference/due/get-due-customer.md): Returns the Due customer for the authenticated client.
- [List channels](https://docs.portalhq.io/api-reference/due/list-channels.md): Lists the rails and currencies available to the customer. Pass `onlyAvailable=true` to filter to channels the customer can use today.
- [List financial institutions](https://docs.portalhq.io/api-reference/due/list-financial-institutions.md): Lists financial institutions for a country and bank schema.
- [Get financial institution](https://docs.portalhq.io/api-reference/due/get-financial-institution.md): Returns a single financial institution by id.
- [Start KYC submission](https://docs.portalhq.io/api-reference/due/start-kyc-submission.md): Starts an API-driven KYC submission for the customer.
- [Get KYC status](https://docs.portalhq.io/api-reference/due/get-kyc-status.md): Returns the customer's KYC state and outstanding requirements.
- [Start hosted KYC session](https://docs.portalhq.io/api-reference/due/start-hosted-kyc-session.md): Creates a hosted KYC session and returns a URL to redirect the user to.
- [Get KYC submission](https://docs.portalhq.io/api-reference/due/get-kyc-submission.md): Returns a KYC submission and its required fields.
- [Submit KYC information](https://docs.portalhq.io/api-reference/due/submit-kyc-information.md): Submits collected information for a KYC submission. Due validates the payload and returns field-level errors for anything missing or malformed.
- [Create KYC document](https://docs.portalhq.io/api-reference/due/create-kyc-document.md): Registers a document against a submission and returns an upload token.
- [Upload KYC document](https://docs.portalhq.io/api-reference/due/upload-kyc-document.md): Uploads a document's bytes using the token from create document. The decoded file can be up to 10MB; the MIME type is inferred from the filename extension or supplied explicitly.
- [Complete KYC submission](https://docs.portalhq.io/api-reference/due/complete-kyc-submission.md): Submits a KYC submission for review.
- [List endorsements](https://docs.portalhq.io/api-reference/due/list-endorsements.md): Lists the customer's endorsements.
- [Request endorsement](https://docs.portalhq.io/api-reference/due/request-endorsement.md): Requests an endorsement by code. Returns `409 Conflict` when the endorsement already exists; treat it as already in progress and fetch its state instead.
- [Get endorsement](https://docs.portalhq.io/api-reference/due/get-endorsement.md): Returns an endorsement's state and any extra requirements it adds.
- [Get terms of service](https://docs.portalhq.io/api-reference/due/get-terms-of-service.md): Fetches a terms of service document by token.
- [Accept terms of service](https://docs.portalhq.io/api-reference/due/accept-terms-of-service.md): Records the end user's acceptance of a terms of service document.
- [Get usage](https://docs.portalhq.io/api-reference/due/get-usage.md): Returns the customer's Due usage records.
- [Create transfer quote](https://docs.portalhq.io/api-reference/due/create-transfer-quote.md): Prices a transfer. `source` and `destination` each carry a rail, currency, and amount. Application fees are enforced server-side from the custodian's configuration; any client-supplied `applicationFee*` is stripped.
- [Estimate transfer](https://docs.portalhq.io/api-reference/due/estimate-transfer.md): Returns an indicative estimate without creating a quote token.
- [List transfers](https://docs.portalhq.io/api-reference/due/list-transfers.md): Lists the customer's transfers.
- [Create transfer](https://docs.portalhq.io/api-reference/due/create-transfer.md): Creates a transfer from a quote token and a recipient.
- [Get transfer](https://docs.portalhq.io/api-reference/due/get-transfer.md): Returns a transfer's current state.
- [Create transfer intent](https://docs.portalhq.io/api-reference/due/create-transfer-intent.md): Creates a transfer intent for a crypto-source transfer.
- [Create funding address](https://docs.portalhq.io/api-reference/due/create-funding-address.md): Returns the funding instructions for a transfer. For a payin these are fiat bank details; for a payout, the onchain deposit address.
- [Create FX quote](https://docs.portalhq.io/api-reference/due/create-fx-quote.md): Returns an FX quote for a currency pair.
- [List FX markets](https://docs.portalhq.io/api-reference/due/list-fx-markets.md): Lists available FX markets and rates.
- [Get FX market](https://docs.portalhq.io/api-reference/due/get-fx-market.md): Returns the FX market for a base and quote currency.
- [Get FX market history](https://docs.portalhq.io/api-reference/due/get-fx-market-history.md): Returns historical rates for a base and quote currency.
- [List recipients](https://docs.portalhq.io/api-reference/due/list-recipients.md): Lists the customer's recipients.
- [Create recipient](https://docs.portalhq.io/api-reference/due/create-recipient.md): Creates a recipient. For onchain recipients, pass a CAIP-2 `chainId` and omit the address to default it to the client's Portal wallet. For a fiat beneficiary, set `isExternal: true` and provide the bank `details`.
- [Get recipient](https://docs.portalhq.io/api-reference/due/get-recipient.md): Returns a recipient by id.
- [Delete recipient](https://docs.portalhq.io/api-reference/due/delete-recipient.md): Deletes a recipient by id.
- [Register wallet](https://docs.portalhq.io/api-reference/due/register-wallet.md): Registers the client's Portal wallet address with Due.
- [List wallets](https://docs.portalhq.io/api-reference/due/list-wallets.md): Lists the client's wallets registered with Due.
- [Get wallet balance](https://docs.portalhq.io/api-reference/due/get-wallet-balance.md): Returns balances for a registered wallet.
- [Create virtual account](https://docs.portalhq.io/api-reference/due/create-virtual-account.md): Creates a persistent virtual account that auto-converts fiat deposits to crypto in the destination wallet.
- [Get virtual account by query](https://docs.portalhq.io/api-reference/due/get-virtual-account-by-query.md): Returns a virtual account matching the supplied query parameters.
- [List virtual accounts](https://docs.portalhq.io/api-reference/due/list-virtual-accounts.md): Lists the customer's virtual accounts.
- [Get virtual account](https://docs.portalhq.io/api-reference/due/get-virtual-account.md): Returns a virtual account by its composite key, `destination/schemaIn/currencyIn/railOut/currencyOut/reference`.
- [Update virtual account](https://docs.portalhq.io/api-reference/due/update-virtual-account.md): Updates a virtual account by its composite key. Application fees are enforced server-side; any client-supplied `applicationFee*` is stripped.

#### Deprecated

- [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.
- [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.
- [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.
- [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 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.

### Authentication API

#### Auth Methods

- [Get the enabled auth methods](https://docs.portalhq.io/api-reference/auth-methods/get-the-enabled-auth-methods.md): Returns the sign-in methods enabled for the environment, so your app can render only the buttons that will work. Also returns whether the environment is configured to create a wallet for new users.

#### Magic Links

- [Send a magic link](https://docs.portalhq.io/api-reference/magic-links/send-a-magic-link.md): Emails a sign-in link to the end user. Portal sends the email from a verified sending domain using one of your email templates.
- [Validate a magic link token](https://docs.portalhq.io/api-reference/magic-links/validate-a-magic-link-token.md): Exchanges the single-use `token` from a magic link for a session.

#### OAuth

- [Get the OAuth authorize URLs](https://docs.portalhq.io/api-reference/oauth/get-the-oauth-authorize-urls.md): Returns the provider authorize URLs to send the end user to. Open the returned URL in a browser to start the sign-in.
- [Validate an OAuth token](https://docs.portalhq.io/api-reference/oauth/validate-an-oauth-token.md): Exchanges the single-use `token` returned to your `redirectUrl` after a Google or Apple sign-in for a session.

#### Two-Factor Authentication

- [Validate a TOTP code](https://docs.portalhq.io/api-reference/two-factor-authentication/validate-a-totp-code.md): Completes a sign-in that requires two-factor authentication by verifying the six-digit code from the user's authenticator app, and returns the Client Session Token.

### Custodian API

#### Clients

- [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.
- [List clients](https://docs.portalhq.io/api-reference/clients/list-clients.md): Fetches all clients for the authorized custodian with cursor-based pagination.
- [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.
- [Disable or enable a client capability](https://docs.portalhq.io/api-reference/clients/disable-or-enable-a-client-capability.md): Disables or re-enables a single capability for the specified client.
- [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.

#### Transactions

- [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.

#### Wallet Metadata

- [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.

#### Wallet Shares

- [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 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.
- [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.

#### Delegations

- [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.
- [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 active delegations. See the delegateAddress parameter for per-chain behavior.
- [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.

#### Alert Webhooks

- [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 alert webhook delivery events](https://docs.portalhq.io/api-reference/alert-webhooks/list-alert-webhook-delivery-events.md): Retrieve a cursor-paginated list of delivery events for an alert webhook, including those that are pending, currently being replayed, delivered, or failed. Use this endpoint to inspect delivery history and identify events that need to be retried with `POST /custodians/me/alerts/webhooks/{alertWebhoo…
- [Retry an alert webhook delivery event](https://docs.portalhq.io/api-reference/alert-webhooks/retry-an-alert-webhook-delivery-event.md): Manually retry the delivery of a single alert webhook event. The event's status is set to `REPLAYING` and a one-shot delivery attempt is scheduled on a dedicated retry queue. On completion, the event moves to `DELIVERED` (2XX response) or `FAILED` (non-2XX response or timeout).
- [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.
- [Replay failed alert webhook events](https://docs.portalhq.io/api-reference/alert-webhooks/replay-failed-alert-webhook-events.md): **Deprecated.** Use `POST /custodians/me/alerts/webhooks/{alertWebhookId}/delivery-events/{deliveryEventId}/retries` instead to retry one delivery event at a time. The new endpoint also supports retrying events that are still `PENDING`, not just those in `FAILED` state.
- [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.
- [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.
- [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.
- [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.

#### Gas Sponsorship

- [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.
- [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.
- [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.

#### Due

- [List webhook event types](https://docs.portalhq.io/api-reference/due/list-webhook-event-types.md): Lists the Due webhook event types you can subscribe to.
- [List webhook endpoints](https://docs.portalhq.io/api-reference/due/list-webhook-endpoints.md): Lists the environment's registered Due webhook endpoints.
- [Create webhook endpoint](https://docs.portalhq.io/api-reference/due/create-webhook-endpoint.md): Registers a webhook endpoint. The response includes an Ed25519 `publicKey` used to verify deliveries from this endpoint.
- [List webhook deliveries](https://docs.portalhq.io/api-reference/due/list-webhook-deliveries.md): Returns the delivery history for a webhook endpoint. The response is paginated: when more events exist, `data.next` holds the cursor for the next page. Query parameters are forwarded to Due, so pass that value back as Due's pagination cursor to page through the history.
- [Retry webhook delivery](https://docs.portalhq.io/api-reference/due/retry-webhook-delivery.md): Re-delivers a specific webhook event.
- [Update webhook endpoint](https://docs.portalhq.io/api-reference/due/update-webhook-endpoint.md): Updates a webhook endpoint. Send any of url, description, events, or enabled.
- [Delete webhook endpoint](https://docs.portalhq.io/api-reference/due/delete-webhook-endpoint.md): Removes a webhook endpoint.

#### Audit Events

- [List audit events](https://docs.portalhq.io/api-reference/audit-events/list-audit-events.md): Retrieve a cursor-paginated list of the actions your Portal Dashboard members took, newest first. This is the same feed shown in the Portal Dashboard's audit log.
- [List audit event types](https://docs.portalhq.io/api-reference/audit-events/list-audit-event-types.md): Retrieve every audit event type that can appear in `GET /custodians/me/audit-events`, with a human-readable label and the kind of resource each event's `resourceId` refers to. These `type` values are the valid values for that endpoint's `eventTypes` filter.

### Reseller API

#### Reseller Statistics

- [Get reseller statistics](https://docs.portalhq.io/api-reference/reseller-statistics/get-reseller-statistics.md): Returns all-time wallet generation and completed signature statistics for the authenticated reseller. `totals` summarizes usage across all owned sub-custodians, while `custodians` provides the same metrics for each sub-custodian. Sub-custodians without activity are included with zero values.

#### Sub-Custodians

- [Create a sub-custodian](https://docs.portalhq.io/api-reference/sub-custodians/create-a-sub-custodian.md): Creates a sub-custodian owned by the authenticated reseller. The new custodian is active, non-reseller, assigned the Start-Up plan, created with Development and Production environments, and has Portal backup and Alert webhooks enabled.
- [List sub-custodians](https://docs.portalhq.io/api-reference/sub-custodians/list-sub-custodians.md): Lists sub-custodians owned by the authenticated reseller. Each custodian includes environments, users, billing plan, billing status, and Portal API key metadata.
- [Suspend a sub-custodian](https://docs.portalhq.io/api-reference/sub-custodians/suspend-a-sub-custodian.md): Suspends a sub-custodian owned by the authenticated reseller. Suspension blocks that custodian's Portal dashboard users, Portal API keys, client API keys, client session tokens, and service-authenticated requests.
- [Activate a sub-custodian](https://docs.portalhq.io/api-reference/sub-custodians/activate-a-sub-custodian.md): Reactivates a suspended sub-custodian owned by the authenticated reseller by setting its billing status to ACTIVE.
- [Disable or enable signing for a sub-custodian](https://docs.portalhq.io/api-reference/sub-custodians/disable-or-enable-signing-for-a-sub-custodian.md): Disables or re-enables a single capability for every client of a sub-custodian owned by the authenticated reseller, across all of its environments.

#### Sub-Custodian Environments

- [List sub-custodian environments](https://docs.portalhq.io/api-reference/sub-custodian-environments/list-sub-custodian-environments.md): Lists environments for a sub-custodian owned by the authenticated reseller.

#### Sub-Custodian API Keys

- [Create a sub-custodian API key](https://docs.portalhq.io/api-reference/sub-custodian-api-keys/create-a-sub-custodian-api-key.md): Creates an environment-scoped Portal API key for a sub-custodian owned by the authenticated reseller. The raw API key value is returned only in this creation response.
- [Delete a sub-custodian API key](https://docs.portalhq.io/api-reference/sub-custodian-api-keys/delete-a-sub-custodian-api-key.md): Deletes an environment-scoped Portal API key for a sub-custodian owned by the authenticated reseller.

## OpenAPI Specs

- [enclave-mpc-api](/openapi/enclave-mpc-api.yaml)
- [client-api](/openapi/client-api.yaml)
- [custodian-api](/openapi/custodian-api.yaml)
- [authentication-api](/openapi/authentication-api.yaml)
- [reseller-api](/openapi/reseller-api.yaml)
