Smart wallet multisig thresholds
Update and validate the approval threshold for a DALP smart wallet that uses weighted multisig signing.
Use the smart wallet threshold API when an integration needs to change how much signer weight is required before a multisig smart wallet operation can be approved.
The threshold is a weighted approval value, not a signer count. A smart wallet
with signer weights of 3, 2, and 1 can use threshold 4 so the signer
with weight 3 must approve with at least one other signer.
How to update a threshold
Before sending the update, read the wallet's current signer configuration and choose a threshold that can be met by the configured signer weights.
Request validation accepts a threshold only when it is:
- a decimal string
- at least
1 - no more than
18446744073709551615(2^64-1)
Choose a value that is no more than the sum of all signer weights for the wallet. If the value cannot be reached by the configured signer weights, that failure is reported through the asynchronous blockchain mutation status rather than by the initial request validation.
Submit the update using credentials for the wallet owner:
curl -X PUT https://your-platform.example.com/api/v2/smart-wallets/0x1234567890AbcdEF1234567890aBcdef12345678/threshold \
-H "X-Api-Key: YOUR_DALP_API_KEY" \
-H "Content-Type: application/json" \
-H "Prefer: respond-async" \
-d '{
"threshold": "4"
}'The endpoint submits an asynchronous blockchain mutation. Treat the response as the start of an on-chain operation: persist the returned status information and poll the status URL when the response includes one. If confirmation times out, check transaction status before retrying the same threshold update.
Co-signers do not call this endpoint directly. They approve pending multisig operations through the multisig approval flow.
Endpoint reference
PUT /api/v2/smart-wallets/{address}/threshold
Sets the multisig approval threshold for a smart wallet.
Path parameters
| Parameter | Type | Description |
|---|---|---|
address | Ethereum address | Smart wallet contract address |
Request body
| Field | Type | Required | Description |
|---|---|---|---|
threshold | string | Yes | Positive decimal integer string from 1 through 18446744073709551615. Choose a value that can be met by the configured signer weights. |
Authorisation
Only the wallet owner can call this endpoint. Co-signers use the multisig approval flow to approve operations that require their signature weight.
Behaviour
- The endpoint targets smart wallets with an installed weighted multisig validator.
- The threshold update is submitted as an asynchronous blockchain mutation.
- Synchronous request validation checks only the positive decimal-string and
uint64bounds. - A threshold that exceeds available signer weight is not a valid multisig configuration; if the chain rejects it, track that failure through the queued transaction or on-chain status instead of expecting pre-submission rejection.
Related operations
- Use
GET /api/v2/smart-wallets/{address}/signersto inspect signer weights before choosing a threshold. - Use
GET /api/v2/smart-wallets/{address}/approvalsto list pending multisig approvals for a wallet. - Use
POST /api/v2/smart-wallets/{address}/approvals/{userOpHash}/signwhen a co-signer needs to sign a pending approval.