Skip to main content
POST
/
v1
/
bundle
curl -X POST https://zap.dzap.io/v1/bundle \
  -H "Content-Type: application/json" \
  -d '{
    "account": "0xUser",
    "steps": [
      { "type": "bridge", "srcChainId": 42161, "destChainId": 8453, "srcToken": "0xaf88...", "destToken": "0x8335...", "amount": "100000000" },
      { "type": "zap", "srcChainId": 8453, "destChainId": 8453, "srcToken": "0x8335...", "destToken": "0xPool...", "action": "add-liquidity", "pool": "0xPool..." }
    ],
    "slippage": 0.5
  }'
{
  "status": "success",
  "data": {
    "bundleId": "0xabc123...",
    "steps": [
      { "type": "bridge", "protocol": "across", "estimatedDuration": 90 },
      { "type": "zap", "protocol": "uniswap-v3", "estimatedDuration": 10 }
    ]
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.dzap.io/llms.txt

Use this file to discover all available pages before exploring further.

Submit a multi-step intent that settles as one signature. Solvers pick up the bundle and execute end-to-end.

Body

account
string
required
User account.
steps
object[]
required
Ordered list of bundle steps. See “Step shape” below.
signature
string
EIP-712 signature for gasless settlement (optional).
intent
object
Intent body, when submitting a signed intent.
slippage
number
Default 1%.
recipient
string
refundee
string

Step shape

Each entry in steps[]:
type
string
required
One of swap, bridge, zap.
srcChainId
integer
required
destChainId
integer
Required for bridge and cross-chain zap.
srcToken
string
required
destToken
string
required
amount
string
In wei. Inferred from the previous step’s output if omitted.
action
string
For zap: add-liquidity, remove-liquidity, deposit, mint.
pool
string
Pool address (for liquidity / deposit actions).

Response

status
string
data.bundleId
string
Use to poll /v1/status.
data.steps
object[]
Resolved per-step plan with selected protocols.

Examples

curl -X POST https://zap.dzap.io/v1/bundle \
  -H "Content-Type: application/json" \
  -d '{
    "account": "0xUser",
    "steps": [
      { "type": "bridge", "srcChainId": 42161, "destChainId": 8453, "srcToken": "0xaf88...", "destToken": "0x8335...", "amount": "100000000" },
      { "type": "zap", "srcChainId": 8453, "destChainId": 8453, "srcToken": "0x8335...", "destToken": "0xPool...", "action": "add-liquidity", "pool": "0xPool..." }
    ],
    "slippage": 0.5
  }'
{
  "status": "success",
  "data": {
    "bundleId": "0xabc123...",
    "steps": [
      { "type": "bridge", "protocol": "across", "estimatedDuration": 90 },
      { "type": "zap", "protocol": "uniswap-v3", "estimatedDuration": 10 }
    ]
  }
}