Skip to main content
For resources owned by a key quorum of team members, propose intents to make changes such as wallet updates, policy updates, signatures, or transactions. Once a team member submits an intent, it is queued for manual review by the team members in the assigned key quorum. Team members can then review the proposed change in the Dashboard and decide to approve or reject it. Once enough reviewers approve, the intent executes. Manual approvals flow chart There are two ways to propose intents:
  • Dashboard: From the Wallets and Policies pages, create an intent to update an existing wallet or policy owned by a key quorum of your team members.
  • REST API: Create an intent to update a wallet, update a policy, or execute a signature or transaction.
Intents expire 72 hours after creation. Reviewers must approve them within this window.
Learn more about proposing intents for the following flows.

Authorize a transaction

Propose an intent to authorize and execute a signature or transaction via the REST API. The Dashboard does not currently support proposing RPC intents.

REST API

To propose an RPC intent, make a POST request to
https://api.privy.io/v1/intents/wallets/{wallet_id}/rpc
This endpoint accepts the same request body as the synchronous RPC endpoint but does not require authorization signatures in the request. Instead, the intent is queued for manual review and executes once enough reviewers approve. From the response, note the returned intent_id. Use this ID to check approval progress and execution results. View the full API reference for this endpoint below.

Create an intent to execute a signature or transaction

View API reference for submitting an RPC intent.

Update wallet

Propose an intent to update a wallet via the Dashboard or REST API.

Dashboard

Visit the Wallets page and select the target wallet. Click Update wallet, make the desired changes, then select Propose changes to submit the intent for review.

REST API

To propose a wallet intent, make a PATCH request to
https://api.privy.io/v1/intents/wallets/{wallet_id}
This endpoint accepts the same request body as the synchronous Update wallet endpoint but does not require authorization signatures in the request. Instead, the intent is queued for manual review and executes once enough reviewers approve. From the response, note the returned intent_id. Use this ID to check approval progress and execution results. View the full API reference for this endpoint below:

Create an intent to update a wallet

View API reference for submitting a wallet intent.

Update policy

Propose an intent to update a policy via the Dashboard or REST API.

Dashboard

Visit the Policies page and select the target policy. Make the desired changes and click Propose changes to submit the intent for review.

REST API

To propose a policy intent, make a PATCH request to
https://api.privy.io/v1/intents/policies/{policy_id}
This endpoint accepts the same request body as the synchronous Update policy endpoint but does not require authorization signatures in the request. Instead, the intent is queued for manual review and executes once enough reviewers approve. From the response, note the returned intent_id. Use this ID to check approval progress and execution results. View the full API reference for this endpoint below:

Create an intent to update a policy

View API reference for submitting a policy intent.

Update policy rules

Propose an intent to add, edit, or remove rules for a policy via the Dashboard or REST API.

Dashboard

Visit the Policies page, select a policy, and navigate to its rules. Make the desired changes and click Propose changes to submit the intent for review.

REST API

Each rule action uses a different HTTP method and endpoint:
ActionMethodEndpoint
Add a rulePOST/v1/intents/policies/{policy_id}/rules
Update a rulePATCH/v1/intents/policies/{policy_id}/rules/{rule_id}
Delete a ruleDELETE/v1/intents/policies/{policy_id}/rules/{rule_id}
Each endpoint accepts the same request body as its synchronous counterpart (create, update, delete) but does not require authorization signatures in the request. Instead, the intent is queued for manual review and executes once enough reviewers approve. From the response, note the returned intent_id. Use this ID to check approval progress and execution results. View the full API reference for this endpoint below:

Create an intent to add a rule

View API reference for submitting a rule intent.

Update key quorum

Your app can also propose an update to the key quorum itself — changing its name, members, or authorization threshold. This intent must be approved by a sufficient number of members of the existing quorum in order to be executed.

Dashboard

Visit the Authorization page and select the target key quorum. Select Update key quorum, make the desired changes, and select Propose changes to submit the intent for review.

REST API

To propose a key quorum intent, make a PATCH request to
https://api.privy.io/v1/intents/key_quorums/{key_quorum_id}
This endpoint accepts the same request body as the synchronous Update key quorum endpoint but does not require authorization signatures in the request. Instead, the intent is queued for manual review and executes once enough reviewers approve. From the response, note the returned intent_id. Use this ID to check approval progress and execution results. View the full API reference for this endpoint below.

Create an intent to update a key quorum

View API reference for submitting a key quorum intent.

Next steps