# Privy Docs: API reference

## API reference

### API reference

- [Introduction](https://docs.privy.io/api-reference/introduction.md): Getting started with the Privy REST API
- [Authorization signatures](https://docs.privy.io/api-reference/authorization-signatures.md): Securing Privy API requests with authorization signatures
- [Idempotency keys](https://docs.privy.io/api-reference/idempotency-keys.md): Making Privy API requests idempotent with idempotency keys
- [Request expiry](https://docs.privy.io/api-reference/request-expiry.md): Prevent replay attacks and delayed execution with request expiry timestamps
- [Webhooks overview](https://docs.privy.io/api-reference/webhooks/overview.md): Set up webhooks to receive real-time notifications when users take actions in your application
- [Privy labs APIs](https://docs.privy.io/api-reference/labs/overview.md): Learn what Privy Labs APIs are and what expectations apply to documented experimental endpoints.

### Wallets

- [Create wallet](https://docs.privy.io/api-reference/wallets/create.md): Creates a new wallet on the requested chain and for the requested owner.
- [Create wallets in batch](https://docs.privy.io/api-reference/wallets/batch-create.md): Creates multiple wallets in a single request.
- [Create custodial wallets](https://docs.privy.io/api-reference/wallets/custodial-wallets.md): Create a new wallet custodied by a third-party provider.
- [Get wallet](https://docs.privy.io/api-reference/wallets/get.md): Get a wallet by wallet ID.
- [Get wallet by address](https://docs.privy.io/api-reference/wallets/get-by-address.md): Look up a wallet by its blockchain address. Returns the wallet object if found.
- [Update wallet](https://docs.privy.io/api-reference/wallets/update.md): Update a wallet's policies or authorization key configuration.
- [Assign wallet entity](https://docs.privy.io/api-reference/wallets/entity.md): Assign a user or organization to a wallet.
- [Archive wallet](https://docs.privy.io/api-reference/wallets/archive.md): Archives a wallet, preventing it from being used in any write or signing operations. Archived wallets are hidden from list endpoints by default. Returns 404 if the wallet does not exist or is already archived.
- [Get wallets](https://docs.privy.io/api-reference/wallets/get-all.md): Get all wallets in your app.
- [Get balance](https://docs.privy.io/api-reference/wallets/get-balance.md): Get the balance of a wallet by wallet ID.
- [Get transactions](https://docs.privy.io/api-reference/wallets/get-transactions.md): Get incoming and outgoing transactions of a wallet by wallet ID.
- [Export wallet](https://docs.privy.io/api-reference/wallets/export.md): Export a wallet's private key.
- [Authenticate](https://docs.privy.io/api-reference/wallets/authenticate.md): Exchange a user JWT for a session key authorized to act on the user's wallets. Returns the encrypted authorization key and the list of wallets it can access.

#### Import wallet

- [Initialize import](https://docs.privy.io/api-reference/wallets/import/init.md): Initialize a wallet import. Complete by submitting the import.
- [Submit import](https://docs.privy.io/api-reference/wallets/import/submit.md): Submit a wallet import request.

#### Ethereum

- [eth_sendTransaction](https://docs.privy.io/api-reference/wallets/ethereum/eth-send-transaction.md): Sign and send a transaction using the eth_sendTransaction method.
- [wallet_sendCalls](https://docs.privy.io/api-reference/wallets/ethereum/wallet-send-calls.md): Send a batch of calls using the wallet_sendCalls method.
- [personal_sign](https://docs.privy.io/api-reference/wallets/ethereum/personal-sign.md): Sign a message using the personal_sign method.
- [eth_signTransaction](https://docs.privy.io/api-reference/wallets/ethereum/eth-sign-transaction.md): Sign a transaction using the eth_signTransaction method.
- [eth_signTypedData_v4](https://docs.privy.io/api-reference/wallets/ethereum/eth-signtypeddata-v4.md): Sign a message using the eth_signTypedData_v4 method.
- [eth_signUserOperation](https://docs.privy.io/api-reference/wallets/ethereum/eth-sign-user-operation.md): Sign a user operation using the eth_signUserOperation method.
- [eth_sign7702Authorization](https://docs.privy.io/api-reference/wallets/ethereum/eth-sign-7702-authorization.md): Signs an EIP-7702 authorization struct using the wallet's private key.
- [secp256k1_sign](https://docs.privy.io/api-reference/wallets/ethereum/secp256k1-sign.md): Sign a hash using the secp256k1 method.

#### Solana

- [signMessage](https://docs.privy.io/api-reference/wallets/solana/sign-message.md): Sign a message with a Solana wallet using the signMessage method.
- [signTransaction](https://docs.privy.io/api-reference/wallets/solana/sign-transaction.md): Sign a transaction with a Solana wallet using the signTransaction method.
- [signAndSendTransaction](https://docs.privy.io/api-reference/wallets/solana/sign-and-send-transaction.md): Sign and send transaction with a Solana wallet using the signAndSendTransaction method.

#### Tempo

- [eth_sendTransaction](https://docs.privy.io/api-reference/wallets/tempo/eth-send-transaction.md): Sign and send a Tempo transaction using the eth_sendTransaction method with type 118.
- [eth_signTransaction](https://docs.privy.io/api-reference/wallets/tempo/eth-sign-transaction.md): Sign a Tempo transaction using the eth_signTransaction method with type 118.

#### Spark BTC

- [getBalance](https://docs.privy.io/api-reference/wallets/spark/get-balance.md): Retrieve the balance and token holdings of a Spark wallet. Claims any pending transfers.
- [transfer](https://docs.privy.io/api-reference/wallets/spark/transfer.md): Transfer satoshis from a Spark wallet to another Spark address.
- [transferTokens](https://docs.privy.io/api-reference/wallets/spark/transfer-tokens.md): Transfer a specified amount of Spark tokens to another Spark address.
- [getStaticDepositAddress](https://docs.privy.io/api-reference/wallets/spark/get-static-deposit-address.md): Returns a static deposit address that can be used to deposit tokens from BTC into Spark.
- [claimStaticDeposit](https://docs.privy.io/api-reference/wallets/spark/claim-static-deposit.md): Claims funds sent to the static BTC deposit address.
- [getClaimStaticDepositQuote](https://docs.privy.io/api-reference/wallets/spark/get-static-deposit-quote.md): Retrieve the quote needed to claim BTC sent to a static deposit address.
- [createLightningInvoice](https://docs.privy.io/api-reference/wallets/spark/create-lightning-invoice.md): Creates a Lightning invoice for the given wallet, allowing funds to be received via the Lightning Network.
- [payLightningInvoice](https://docs.privy.io/api-reference/wallets/spark/pay-lightning-invoice.md): Pay a Lightning Network invoice from a Spark wallet.
- [signMessageWithIdentityKey](https://docs.privy.io/api-reference/wallets/spark/sign-message-with-identity-key.md): Sign a message using the Spark wallet's identity key.
- [getWithdrawalFeeQuote](https://docs.privy.io/api-reference/wallets/spark/get-withdrawal-fee-quote.md): Get a fee quote for withdrawing BTC from a Spark wallet to a Bitcoin L1 address.
- [withdraw](https://docs.privy.io/api-reference/wallets/spark/withdraw.md): Withdraw BTC from a Spark wallet to a Bitcoin L1 address (cooperative exit).

#### Other chains

- [Raw sign](https://docs.privy.io/api-reference/wallets/raw-sign.md): Sign a raw hash along the blockchain's cryptographic curve using the wallet's private key.

#### Webhooks

- [Wallet archived](https://docs.privy.io/api-reference/webhooks/wallet/archived.md): Fired when a wallet is archived.
- [Wallet restored](https://docs.privy.io/api-reference/webhooks/wallet/restored.md): Fired when a wallet is restored from archive.
- [Funds deposited](https://docs.privy.io/api-reference/webhooks/wallet/funds_deposited.md): Fired when funds are deposited into a wallet.
- [Funds withdrawn](https://docs.privy.io/api-reference/webhooks/wallet/funds_withdrawn.md): Fired when funds are withdrawn from a wallet.
- [Private key export](https://docs.privy.io/api-reference/webhooks/wallet/private_key_export.md): Fired when a user exports the private key of their embedded wallet.
- [Wallet recovered](https://docs.privy.io/api-reference/webhooks/wallet/recovered.md): Fired when a user recovers their embedded wallet.
- [Wallet recovery setup](https://docs.privy.io/api-reference/webhooks/wallet/recovery_setup.md): Fired when a user sets up recovery for their embedded wallet.

### Financial flows

#### Deposits

##### Fiat

- [Create fiat deposit account](https://docs.privy.io/api-reference/fiat/deposit-accounts/create.md): Creates a Bridge Virtual Account linked to a wallet. Fiat sent to the returned deposit instructions will be converted to the specified crypto asset and delivered to the wallet.
- [List fiat deposit accounts](https://docs.privy.io/api-reference/fiat/deposit-accounts/list.md): Returns a list of fiat deposit accounts linked to a wallet.
- [Get fiat deposit account](https://docs.privy.io/api-reference/fiat/deposit-accounts/get.md): Returns a single fiat deposit account linked to a wallet.

##### Crypto

- [Create crypto deposit account](https://docs.privy.io/api-reference/crypto-deposits/create.md): Create a deposit address to send crypto to to convert it into a target asset.

#### Payouts

##### Fiat

- [Create a payout](https://docs.privy.io/api-reference/wallets/payout/create.md): Create a payout from a wallet that lands as a fiat currency in a destination bank account.

###### External fiat accounts

###### For users

- [Create external fiat account](https://docs.privy.io/api-reference/fiat/external-fiat-accounts/create.md): Creates an external fiat account linked to a user for use in offramp transfers.
- [List external fiat accounts](https://docs.privy.io/api-reference/fiat/external-fiat-accounts/list.md): Returns a list of external fiat accounts linked to a user.
- [Get external fiat account](https://docs.privy.io/api-reference/fiat/external-fiat-accounts/get.md): Returns a single external fiat account linked to a user.
- [Delete external fiat account](https://docs.privy.io/api-reference/fiat/external-fiat-accounts/delete.md): Deletes an external fiat account linked to a user.

###### For organizations

- [Create external fiat account](https://docs.privy.io/api-reference/fiat/external-fiat-accounts/organizations/create.md): Creates an external fiat account linked to an organization for use in offramp transfers.
- [List external fiat accounts](https://docs.privy.io/api-reference/fiat/external-fiat-accounts/organizations/list.md): Returns a list of external fiat accounts linked to an organization.
- [Get external fiat account](https://docs.privy.io/api-reference/fiat/external-fiat-accounts/organizations/get.md): Returns a single external fiat account linked to an organization.
- [Delete external fiat account](https://docs.privy.io/api-reference/fiat/external-fiat-accounts/organizations/delete.md): Deletes an external fiat account linked to an organization.

##### Crypto

- [Transfer](https://docs.privy.io/api-reference/wallets/transfer/index.md): Transfer tokens from a wallet to a destination address.
- [Quote transfer fees](https://docs.privy.io/api-reference/wallets/transfer/quote.md): Get a fee estimate and expected output amount before executing a transfer

#### Swaps

- [Get swap quote](https://docs.privy.io/api-reference/wallets/swap/quote.md): Get a price quote for swapping tokens within a wallet.
- [Swap tokens](https://docs.privy.io/api-reference/wallets/swap/tokens.md): Execute a token swap within a wallet.

#### Earn

- [Deposit into vault](https://docs.privy.io/api-reference/wallets/earn/deposit.md): Deposit assets into an ERC-4626 yield vault.
- [Withdraw from vault](https://docs.privy.io/api-reference/wallets/earn/withdraw.md): Withdraw assets from an ERC-4626 yield vault.
- [Claim reward incentives](https://docs.privy.io/api-reference/wallets/earn/incentive-claim.md): Claim reward incentives for a wallet on a given chain.
- [Get incentive rewards](https://docs.privy.io/api-reference/wallets/earn/get-incentive-rewards.md): Retrieve all incentive rewards for a wallet on a given chain, with claimed and claimable amounts per token.
- [Get Ethereum vault details](https://docs.privy.io/api-reference/wallets/earn/get-vault-details.md): Retrieve detailed information about an Ethereum vault, including current APY and liquidity.
- [Get Ethereum vault position](https://docs.privy.io/api-reference/wallets/earn/get-position.md): Retrieve a wallet's current position in a specific Ethereum vault. Returns the vault shares and asset values.
- [Earn fee collect](https://docs.privy.io/api-reference/wallets/earn/fees-collect.md): Collect accumulated performance fees from an Aave vault.

#### Wallet actions

- [Get wallet action](https://docs.privy.io/api-reference/wallets/actions/get.md): Get the current status of a wallet action by its ID.
- [Get wallet action by external ID](https://docs.privy.io/api-reference/wallets/actions/external-id.md): Look up a wallet action by `reference_id` across every wallet in the app. Returns an empty list if no action matches. Use `?include=steps` to include step-level details.
- [List all wallet actions](https://docs.privy.io/api-reference/wallets/actions/list.md): List all wallet actions for a wallet.

#### Webhooks

##### Swaps

- [Swap created](https://docs.privy.io/api-reference/webhooks/wallet-action/swap/created.md): Fired when a wallet action is created and execution has begun. The action is now pending.
- [Swap succeeded](https://docs.privy.io/api-reference/webhooks/wallet-action/swap/succeeded.md): Fired when all steps of a wallet action have been confirmed onchain. The action is complete.
- [Swap failed](https://docs.privy.io/api-reference/webhooks/wallet-action/swap/failed.md): Fired when a wallet action fails after at least one transaction was broadcast. There may be onchain state changes; inspect the steps for details.
- [Swap rejected](https://docs.privy.io/api-reference/webhooks/wallet-action/swap/rejected.md): Fired when a wallet action fails before any onchain effects (e.g. policy rejection, simulation failure). Safe to retry.

##### Transfers

- [Transfer created](https://docs.privy.io/api-reference/webhooks/wallet-action/transfer/created.md): Fired when a wallet action is created and execution has begun. The action is now pending.
- [Transfer succeeded](https://docs.privy.io/api-reference/webhooks/wallet-action/transfer/succeeded.md): Fired when all steps of a wallet action have been confirmed onchain. The action is complete.
- [Transfer failed](https://docs.privy.io/api-reference/webhooks/wallet-action/transfer/failed.md): Fired when a wallet action fails after at least one transaction was broadcast. There may be onchain state changes; inspect the steps for details.
- [Transfer rejected](https://docs.privy.io/api-reference/webhooks/wallet-action/transfer/rejected.md): Fired when a wallet action fails before any onchain effects (e.g. policy rejection, simulation failure). Safe to retry.

##### Earn deposits

- [Earn deposit created](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-deposit/created.md): Fired when a wallet action is created and execution has begun. The action is now pending.
- [Earn deposit succeeded](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-deposit/succeeded.md): Fired when all steps of a wallet action have been confirmed onchain. The action is complete.
- [Earn deposit failed](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-deposit/failed.md): Fired when a wallet action fails after at least one transaction was broadcast. There may be onchain state changes; inspect the steps for details.
- [Earn deposit rejected](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-deposit/rejected.md): Fired when a wallet action fails before any onchain effects (e.g. policy rejection, simulation failure). Safe to retry.

##### Earn withdrawals

- [Earn withdraw created](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-withdraw/created.md): Fired when a wallet action is created and execution has begun. The action is now pending.
- [Earn withdraw succeeded](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-withdraw/succeeded.md): Fired when all steps of a wallet action have been confirmed onchain. The action is complete.
- [Earn withdraw failed](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-withdraw/failed.md): Fired when a wallet action fails after at least one transaction was broadcast. There may be onchain state changes; inspect the steps for details.
- [Earn withdraw rejected](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-withdraw/rejected.md): Fired when a wallet action fails before any onchain effects (e.g. policy rejection, simulation failure). Safe to retry.

##### Earn incentive claims

- [Earn reward incentive claim created](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-incentive-claim/created.md): Fired when a wallet action is created and execution has begun. The action is now pending.
- [Earn reward incentive claim succeeded](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-incentive-claim/succeeded.md): Fired when all steps of a wallet action have been confirmed onchain. The action is complete.
- [Earn reward incentive claim failed](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-incentive-claim/failed.md): Fired when a wallet action fails after at least one transaction was broadcast. There may be onchain state changes; inspect the steps for details.
- [Earn reward incentive claim rejected](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-incentive-claim/rejected.md): Fired when a wallet action fails before any onchain effects (e.g. policy rejection, simulation failure). Safe to retry.

##### Earn fee collections

- [Earn fee collect created](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-fee-collect/created.md): Fired when a wallet action is created and execution has begun. The action is now pending.
- [Earn fee collect succeeded](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-fee-collect/succeeded.md): Fired when all steps of a wallet action have been confirmed onchain. The action is complete.
- [Earn fee collect failed](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-fee-collect/failed.md): Fired when a wallet action fails after at least one transaction was broadcast. There may be onchain state changes; inspect the steps for details.
- [Earn fee collect rejected](https://docs.privy.io/api-reference/webhooks/wallet-action/earn-fee-collect/rejected.md): Fired when a wallet action fails before any onchain effects (e.g. policy rejection, simulation failure). Safe to retry.

### Organizations

- [Create organization](https://docs.privy.io/api-reference/organizations/create.md): Create an organization in an app.
- [List organizations](https://docs.privy.io/api-reference/organizations/get-all.md): List organizations in an app.
- [Get organization](https://docs.privy.io/api-reference/organizations/get.md): Get an organization by ID.
- [Update organization](https://docs.privy.io/api-reference/organizations/update.md): Update an organization by ID.
- [Delete organization](https://docs.privy.io/api-reference/organizations/delete.md): Delete an organization by ID.

#### KYB

- [Get KYB status](https://docs.privy.io/api-reference/fiat/kyb/get.md): Returns KYB status for all providers the organization has initiated KYB with.
- [Initiate KYB terms of service](https://docs.privy.io/api-reference/fiat/kyb/tos.md): Generates a Bridge terms-of-service acceptance link for the organization.
- [Initiate KYB verification](https://docs.privy.io/api-reference/fiat/kyb/links.md): Generates a hosted KYB link for the organization and returns the current KYB status snapshot.

### Usage charges

- [Gas sponsorship charge recorded](https://docs.privy.io/api-reference/webhooks/usage/gas_sponsorship_recorded.md): Fired when Privy records a sponsored-gas charge for a wallet action.
- [Cross-chain swap charge recorded](https://docs.privy.io/api-reference/webhooks/usage/cross_chain_fee_recorded.md): Fired when Privy records its fee on a cross-chain transfer or swap for a wallet action.

### Accounts

- [Create account](https://docs.privy.io/api-reference/accounts/create.md): Creates a new account with associated wallets.
- [Get account](https://docs.privy.io/api-reference/accounts/get.md): Get an account by account ID.
- [List all accounts](https://docs.privy.io/api-reference/accounts/list.md): List all accounts in your app.
- [Update account](https://docs.privy.io/api-reference/accounts/update.md): Update an account by account ID. Supports updating the display name and adding new wallets.
- [Get account balance](https://docs.privy.io/api-reference/accounts/balance.md): Get the balance of an account, aggregated across all wallets and supported chains.

### Policies

- [Create policy](https://docs.privy.io/api-reference/policies/create.md): Create a new policy.
- [Get policy](https://docs.privy.io/api-reference/policies/get.md): Get a policy by policy ID.
- [Update policy](https://docs.privy.io/api-reference/policies/update.md): Update a policy by policy ID.
- [Delete policy](https://docs.privy.io/api-reference/policies/delete.md): Delete a policy by policy ID.

#### Rules

- [Add a rule to a policy](https://docs.privy.io/api-reference/policies/rules/create.md): Create a new rule for a policy.
- [Get a rule from a policy](https://docs.privy.io/api-reference/policies/rules/get.md): Get a rule by policy ID and rule ID.
- [Update a rule in a policy](https://docs.privy.io/api-reference/policies/rules/update.md): Update a rule by policy ID and rule ID.
- [Delete a rule from a policy](https://docs.privy.io/api-reference/policies/rules/delete.md): Delete a rule by policy ID and rule ID.

### Condition sets

- [Create condition set](https://docs.privy.io/api-reference/condition-sets/create.md): Create a new condition set. You must provide either "owner" or "owner_id" (but not both) to specify ownership.
- [Get condition set](https://docs.privy.io/api-reference/condition-sets/get.md): Get a condition set by condition set ID.
- [Update condition set](https://docs.privy.io/api-reference/condition-sets/update.md): Update a condition set by condition set ID.
- [Delete condition set](https://docs.privy.io/api-reference/condition-sets/delete.md): Delete a condition set by condition set ID.

#### Condition set items

- [Add items to a condition set](https://docs.privy.io/api-reference/condition-sets/condition-set-items/create.md): Add new items to a condition set. Can add up to 100 items at once.
- [Get an item from a condition set](https://docs.privy.io/api-reference/condition-sets/condition-set-items/get.md): Get an item from a condition set by condition set ID and item ID.
- [Get all items from a condition set](https://docs.privy.io/api-reference/condition-sets/condition-set-items/get-all.md): Get all items in a condition set with pagination support.
- [Update items in a condition set](https://docs.privy.io/api-reference/condition-sets/condition-set-items/update.md): Replace all items in a condition set by condition set ID. Can add up to 100 items at once.
- [Delete an item from a condition set](https://docs.privy.io/api-reference/condition-sets/condition-set-items/delete.md): Delete an item from a condition set by condition set ID and item ID.

### Aggregations

- [Create aggregation](https://docs.privy.io/api-reference/aggregations/create.md): Create a new aggregation to track and measure metrics over a time window.
- [Get aggregation](https://docs.privy.io/api-reference/aggregations/get.md): Get an aggregation by aggregation ID.
- [Delete aggregation](https://docs.privy.io/api-reference/aggregations/delete.md): Delete an aggregation by aggregation ID.

### Transactions

- [Get transaction](https://docs.privy.io/api-reference/transactions/get.md): Get a transaction by transaction ID.
- [Get transaction by external ID](https://docs.privy.io/api-reference/transactions/external-id.md): List transactions by reference ID.
- [Get gas spend](https://docs.privy.io/api-reference/transactions/gas-spend.md): Get aggregated Privy gas credits charged for a set of wallets over a time range. Maximum 100 wallet IDs and 30-day range per request.

#### Webhooks

- [Transaction broadcasted](https://docs.privy.io/api-reference/webhooks/transaction/broadcasted.md): Fired when a transaction is successfully broadcast to the blockchain network.
- [Transaction confirmed](https://docs.privy.io/api-reference/webhooks/transaction/confirmed.md): Fired when a transaction is confirmed on-chain.
- [Transaction execution reverted](https://docs.privy.io/api-reference/webhooks/transaction/execution_reverted.md): Fired when a transaction execution reverts on-chain.
- [Transaction failed](https://docs.privy.io/api-reference/webhooks/transaction/failed.md): Fired when a transaction fails.
- [Transaction provider error](https://docs.privy.io/api-reference/webhooks/transaction/provider_error.md): Fired when there is an error from the transaction provider.
- [Transaction replaced](https://docs.privy.io/api-reference/webhooks/transaction/replaced.md): Fired when a transaction is replaced by another transaction (e.g., speed-up or cancellation).
- [Transaction still pending](https://docs.privy.io/api-reference/webhooks/transaction/still_pending.md): Fired when a transaction has been pending for an extended period without confirmation.

### Key quorums

- [Create key quorum](https://docs.privy.io/api-reference/key-quorums/create.md): Create a new key quorum.
- [Get key quorum](https://docs.privy.io/api-reference/key-quorums/get.md): Get a key quorum by ID.
- [Update key quorum](https://docs.privy.io/api-reference/key-quorums/update.md): Update a key quorum by key quorum ID.
- [Delete key quorum](https://docs.privy.io/api-reference/key-quorums/delete.md): Delete a key quorum by key quorum ID.

### Intents

- [Get intent](https://docs.privy.io/api-reference/intents/get.md): Retrieve an intent by ID. Returns its current status, authorization details, and execution result when applicable. Requests authenticated with an app secret can retrieve any intent for the app. Requests authenticated with a user token can retrieve only intents that the authenticated user created, mu…
- [List intents](https://docs.privy.io/api-reference/intents/list.md): List intents for an app. Returns a paginated list with each intent's current status and details. Requests authenticated with an app secret can retrieve all intents for the app. Requests authenticated with a user token return only intents that the authenticated user created, must approve, or has sign…
- [Create RPC transaction](https://docs.privy.io/api-reference/intents/rpc.md): Create an intent to execute an RPC method on a wallet. The intent must be authorized by either the wallet owner or signers before it can be executed.
- [Create transfer action](https://docs.privy.io/api-reference/intents/transfer.md): Create an intent to execute a token transfer via a wallet. The intent must be authorized by either the wallet owner or signers before it can be executed.
- [Authorize intent](https://docs.privy.io/api-reference/intents/authorize.md): Authorize a pending intent by providing a signature. Can be called by the wallet owner (via user token) or with the app secret.
- [Reject intent](https://docs.privy.io/api-reference/intents/reject.md): Reject a pending intent, preventing it from being executed. Can be called by the intent creator (via user token) or with the app secret.

#### Resource update intents

- [Update wallet](https://docs.privy.io/api-reference/intents/update-wallet.md): Create an intent to update a wallet. The intent must be authorized by the wallet owner before it can be executed.
- [Update key quorum](https://docs.privy.io/api-reference/intents/update-key-quorum.md): Create an intent to update a key quorum. The intent must be authorized by the key quorum members before it can be executed.
- [Update policy](https://docs.privy.io/api-reference/intents/update-policy.md): Create an intent to update a policy. The intent must be authorized by the policy owner before it can be executed.
- [Create rule](https://docs.privy.io/api-reference/intents/create-rule.md): Create an intent to add a rule to a policy. The intent must be authorized by the policy owner before it can be executed.
- [Update policy rule](https://docs.privy.io/api-reference/intents/update-rule.md): Create an intent to update a rule on a policy. The intent must be authorized by the policy owner before it can be executed.
- [Delete rule](https://docs.privy.io/api-reference/intents/delete-rule.md): Create an intent to delete a rule from a policy. The intent must be authorized by the policy owner before it can be executed.

#### Webhooks

- [Intent created](https://docs.privy.io/api-reference/webhooks/intents/created.md): Fired when a new intent is created.
- [Intent authorized](https://docs.privy.io/api-reference/webhooks/intents/authorized.md): Fired when a user authorizes (signs) an intent.
- [Intent rejected](https://docs.privy.io/api-reference/webhooks/intents/rejected.md): Fired when an intent is rejected.
- [Intent executed](https://docs.privy.io/api-reference/webhooks/intents/executed.md): Fired when an intent is successfully executed (2xx response from enclave).
- [Intent failed](https://docs.privy.io/api-reference/webhooks/intents/failed.md): Fired when an intent execution fails (non-2xx response from enclave).

### Users

- [Create user](https://docs.privy.io/api-reference/users/create.md): Create a new user with linked accounts. Optionally pre-generate embedded wallets for the user.
- [Get users](https://docs.privy.io/api-reference/users/get-all.md): Get all users in your app.
- [Search users](https://docs.privy.io/api-reference/users/search.md): Search users by search term, emails, phone numbers, or wallet addresses.
- [Refresh Twitter account](https://docs.privy.io/api-reference/users/refresh-twitter-account.md): Refresh the cached profile data for a user's linked Twitter account, including their username, display name, and profile picture.
- [Delete user](https://docs.privy.io/api-reference/users/delete.md): Delete a user by user ID.
- [Add custom metadata](https://docs.privy.io/api-reference/users/custom-metadata/create.md): Adds custom metadata to a user by user ID.
- [Update custom metadata](https://docs.privy.io/api-reference/users/custom-metadata/update.md): Partially updates custom metadata for a user by user ID. Only top-level keys provided in the request are updated; unspecified keys are preserved.
- [Pregenerate wallets](https://docs.privy.io/api-reference/users/pregenerate-wallets.md): Creates an embedded wallet for an existing user.

#### Get user

- [Get user by ID](https://docs.privy.io/api-reference/users/get.md): Get a user by user ID.
- [Get user by wallet address](https://docs.privy.io/api-reference/users/get-by-wallet-address.md): Looks up a user by their wallet address.
- [Get user by smart wallet address](https://docs.privy.io/api-reference/users/get-by-smart-wallet-address.md): Looks up a user by their smart wallet address.
- [Get user by custom auth ID](https://docs.privy.io/api-reference/users/get-by-custom-auth.md): Looks up a user by their custom auth ID.
- [Get user by email address](https://docs.privy.io/api-reference/users/get-by-email-address.md): Looks up a user by their email address.
- [Get user by phone number](https://docs.privy.io/api-reference/users/get-by-phone-number.md): Looks up a user by their phone number.
- [Get user by Discord username](https://docs.privy.io/api-reference/users/get-by-discord-username.md): Looks up a user by their Discord username.
- [Get user by GitHub username](https://docs.privy.io/api-reference/users/get-by-github-username.md): Looks up a user by their Github username.
- [Get user by Instagram username](https://docs.privy.io/api-reference/users/get-by-instagram-username.md): Looks up a user by their Instagram username.
- [Get user by Twitter username](https://docs.privy.io/api-reference/users/get-by-twitter-username.md): Looks up a user by their Twitter username.
- [Get user by Twitter subject](https://docs.privy.io/api-reference/users/get-by-twitter-subject.md): Looks up a user by their Twitter subject.
- [Get user by Telegram username](https://docs.privy.io/api-reference/users/get-by-telegram-username.md): Looks up a user by their Telegram username.
- [Get user by Telegram user ID](https://docs.privy.io/api-reference/users/get-by-telegram-user-id.md): Looks up a user by their Telegram user ID.
- [Get user by Farcaster ID](https://docs.privy.io/api-reference/users/get-by-farcaster-id.md): Looks up a user by their Farcaster ID.
- [Get user by Spotify subject](https://docs.privy.io/api-reference/users/get-by-spotify-subject.md): Looks up a user by their Spotify subject (user ID).
- [Get user by Twitch username](https://docs.privy.io/api-reference/users/get-by-twitch-username.md): Looks up a user by their Twitch username.

#### Allowlist

- [List allowlist entries](https://docs.privy.io/api-reference/apps/list-allowlist.md): Get all allowlist entries for an app. Returns the list of users allowed to access the app when the allowlist is enabled.
- [Add to allowlist](https://docs.privy.io/api-reference/apps/add-to-allowlist.md): Add a new entry to the allowlist for an app. The allowlist must be enabled.
- [Remove from allowlist](https://docs.privy.io/api-reference/apps/remove-from-allowlist.md): Remove an entry from the allowlist for an app. The allowlist must be enabled.

#### Webhooks

- [User authenticated](https://docs.privy.io/api-reference/webhooks/user/authenticated.md): Fired when a user successfully authenticates (logs in) to your app.
- [User created](https://docs.privy.io/api-reference/webhooks/user/created.md): Fired when a new user is created in your app.
- [User deleted](https://docs.privy.io/api-reference/webhooks/user/deleted.md): Fired when a user is deleted from your app, for any reason (manual deletion or account merge).
- [User linked account](https://docs.privy.io/api-reference/webhooks/user/linked_account.md): Fired when a user links a new account (email, phone, wallet, social login, etc.) to their profile.
- [User transferred account](https://docs.privy.io/api-reference/webhooks/user/transferred_account.md): Fired when an account is transferred from one user to another.
- [User unlinked account](https://docs.privy.io/api-reference/webhooks/user/unlinked_account.md): Fired when a user unlinks an account from their profile.
- [User updated account](https://docs.privy.io/api-reference/webhooks/user/updated_account.md): Fired when a user updates one of their linked accounts.
- [User wallet created](https://docs.privy.io/api-reference/webhooks/user/wallet_created.md): Fired when an embedded wallet is created for a user.
- [MFA disabled](https://docs.privy.io/api-reference/webhooks/mfa/disabled.md): Fired when a user disables multi-factor authentication.
- [MFA enabled](https://docs.privy.io/api-reference/webhooks/mfa/enabled.md): Fired when a user enables multi-factor authentication.

#### KYC

- [Get KYC status](https://docs.privy.io/api-reference/fiat/kyc-server/get.md): Returns KYC status for all providers the user has initiated KYC with.
- [Initiate KYC terms of service](https://docs.privy.io/api-reference/fiat/kyc-server/tos.md): Generates a Bridge terms-of-service acceptance link for the user.
- [Initiate KYC verification](https://docs.privy.io/api-reference/fiat/kyc-server/links.md): Generates a hosted KYC link for the user and returns the current KYC status snapshot.

### Labs

- [Advanced swap (Solana)](https://docs.privy.io/api-reference/labs/advanced-swap.md): Execute a low-latency synchronous Solana token swap with an embedded wallet.
