Skip to main content
Both the RFQ API and Aggregation API support two execution modes, controlled by the gasless query parameter on the quote request.

Self-Execution (gasless=false)

You broadcast the settlement transaction yourself. The quote response includes a tx object with the complete calldata. Flow: Quote → Approve → Sign & Broadcast tx Best for: Solvers, aggregators, liquidators, and any integration that already manages its own transaction submission pipeline. Key properties:
  • You pay gas
  • No last look - once the solver/maker has provided the quote, the tx is ready to execute
  • Implies Standard approvals
  • No /order POST needed

Gasless (gasless=true, default)

Bebop submits the settlement transaction on your behalf. You sign an EIP-712 message and POST it to the /order endpoint. The user never pays gas. Flow: Quote → Approve → Sign EIP-712 → POST /order → Poll /order-status Best for: Wallets, super-apps, and consumer-facing products where users shouldn’t think about gas. Key properties:
  • Bebop pays gas
  • Supports both Standard and Permit2 approval types
  • Requires EIP-712 signature and /order submission

Comparison

Self-executionGasless (default)
gasless paramfalsetrue (default)
Who submits txYou broadcast via your RPCBebop submits on-chain
Gas costPaid by takerPaid by Bebop
Token approvalsStandard onlyStandard or Permit2
SigningStandard transaction signingEIP-712 signature required

API-Specific Behavior

While both APIs share the same execution modes, there are differences in how the modes work:

RFQ API

In gasless mode, market makers retain last look - they can reject a quote before settlement. This allows tighter pricing but means your integration should handle Failed statuses gracefully. In self-execution mode, quotes are firm once the tx object is returned. See the RFQ Gasless Execution guide for the full RFQ-specific gasless flow including last look handling.

Aggregation API

The solver auction determines pricing in both modes. In self-execution, the tx object contains the winning solver’s settlement calldata. In gasless mode, you sign a JamOrder EIP-712 message. See the Aggregation API Quickstart for both flows with complete code examples.