SettleMint
Developer guidesAPI integration

Smart wallet API overview

Use the DALP smart wallet API to list account-abstraction wallets, inspect gas readiness, manage signers and modules, and coordinate multisig approvals.

DALP smart wallet endpoints let integrations operate ERC-4337 smart wallets through the API. Use them to discover a participant's wallets, check whether a wallet is ready to pay for user operations, manage signer and validator-module configuration, and coordinate multisig approvals.

This page is a reference for integration developers. For the general API entry point, see API reference. For the dedicated threshold workflow, see Smart wallet thresholds.

When to use smart wallet endpoints

Use /api/v2/smart-wallets when your integration needs to:

  • list smart wallets where the authenticated user is a signer
  • read a wallet's owner, validators, signers, threshold, and metadata
  • check gas status before submitting account-abstraction operations
  • deploy a smart wallet with the default validator or weighted multisig configuration
  • update the wallet description stored off-chain
  • install or remove ERC-7579 validator modules
  • add, remove, list, and weight multisig signers
  • create, inspect, and sign multisig approvals for pending user operations

Smart wallet mutations that change on-chain configuration are asynchronous blockchain operations. Persist the returned status information and poll the status URL when one is present.

Executor selection with X-Executor

Most API callers can omit X-Executor and let DALP choose the active executor for the authenticated participant and organization policy.

Send X-Executor only when the request must force a specific execution wallet:

Header valueEffectNotes
OmittedUses the organization's default executor routing.This is the default for most integrations.
eoaForces raw execution through a personal participant's externally owned account.DALP rejects this value for non-person participants.
smart-walletForces smart-wallet execution.DALP returns an error when no smart wallet is available for the selected participant.

DALP validates the selected participant and executor before queueing a blockchain operation. Invalid participant IDs, unsupported executor values, missing signer wallets, or unavailable smart wallets fail before submission.

Endpoint groups

Wallet discovery and metadata

OperationEndpointUse it for
List smart walletsGET /api/v2/smart-walletsPaginated list of smart wallets where the authenticated user is a signer.
Read smart walletGET /api/v2/smart-wallets/{address}Wallet details, validators, signers, threshold, identity, owner, and metadata.
Check gas statusGET /api/v2/smart-wallets/{address}/gas-statusEntryPoint deposit, wallet balance, paymaster availability, and zero-gas readiness.
Create smart walletPOST /api/v2/smart-walletsDeploy a new smart wallet with default ECDSA validation or weighted multisig configuration.
Update metadataPATCH /api/v2/smart-wallets/{address}Update off-chain metadata such as the wallet description.

The list endpoint supports pagination, filtering, sorting, global search, and faceted counts. It can filter by walletAddress, ownerAddress, factoryAddress, createdAt, and description; the default sort is newest first by createdAt.

Signers and threshold

OperationEndpointUse it for
List signersGET /api/v2/smart-wallets/{address}/signersInspect authorized signers, weights, and validator assignments.
Add signerPOST /api/v2/smart-wallets/{address}/signersAdd a multisig signer with an optional positive uint64 weight.
Remove signerDELETE /api/v2/smart-wallets/{address}/signers/{signer}Remove a signer from the wallet.
Set thresholdPUT /api/v2/smart-wallets/{address}/thresholdSet the weighted multisig approval threshold.

The threshold is a weighted approval value, not a signer count. Before changing it, read the signer list and choose a value that can be met by the configured signer weights.

Validator modules

OperationEndpointUse it for
Install modulePOST /api/v2/smart-wallets/{address}/modulesInstall an ERC-7579 validator module with optional initialization data.
Uninstall moduleDELETE /api/v2/smart-wallets/{address}/modules/{moduleAddress}Remove a validator module from the wallet.

Install only validator modules that are supported by your platform configuration and operational policy. Treat module installation and removal as on-chain configuration changes.

Multisig approvals

OperationEndpointUse it for
Create approvalPOST /api/v2/smart-wallets/{address}/approvalsCreate a multisig approval for a user operation. The initiator's signature is recorded immediately.
List approvalsGET /api/v2/smart-wallets/{address}/approvalsPaginated approval history and pending approvals, including collected signatures.
Read approvalGET /api/v2/smart-wallets/{address}/approvals/{userOpHash}Inspect one approval and its collected signatures.
Sign approvalPOST /api/v2/smart-wallets/{address}/approvals/{userOpHash}/signAdd a co-signer signature. When cumulative weight meets the threshold, DALP submits the user operation automatically.

Use approvals when a smart wallet operation requires signer weight beyond the initiating signer. Co-signers approve through the approval endpoints instead of calling owner-only configuration endpoints directly.

Basic integration sequence

  1. List smart wallets with GET /api/v2/smart-wallets and select the wallet address your integration should operate.
  2. Read the wallet with GET /api/v2/smart-wallets/{address} to inspect validators, signers, threshold, and metadata.
  3. Check GET /api/v2/smart-wallets/{address}/gas-status before submitting account-abstraction operations.
  4. For multisig wallets, list signers and approvals before changing signer configuration or threshold values.
  5. Submit mutations with idempotency and async status handling, then poll the returned status URL when present.
curl "https://your-platform.example.com/api/v2/smart-wallets?sort=-createdAt" \
  -H "X-Api-Key: YOUR_DALP_API_KEY"
curl "https://your-platform.example.com/api/v2/smart-wallets/0x1234567890AbcdEF1234567890aBcdef12345678/gas-status" \
  -H "X-Api-Key: YOUR_DALP_API_KEY"

On this page