Skip to main content

API Reference

Overview

The Atlas Auctioneer API provides JSON-RPC methods to start and manage Atlas auctions.

JSON RPC Methods

atlas_auction

Submits an Atlas user operation for auction.

Parameters

TypeDescription
AuctionRequestThe auction request details map (see below).

AuctionRequest

NameTypeDescription
userOperationWithHintsUserOperationWithHintsUserOperationWithHints map (see below), hex encoded.
onlyWhitelistedSolversbooleanOnly allow whitelisted solvers to participate in the auction (the whitelist is maintained by the auctioneer). Defaults to false.
auctionDurationInMillisintAuction duration. Defaults to 300ms.
maxSolutionsintMax solver operations allowed. Defaults to 10.
solverPrioritySlotsintNumber of solver operations slots reserved for whitelisted solvers. Defaults to 0.
disableSimulationsbooleanDisable auctioneer's simulations. Defaults to false.
disableTracingbooleanDisable tracing during auctioneer's simulations. Defaults to false.
earlyReturnbooleanReturns with the appropriate error if no solver available at the end of the auction. Defaults to false.
enableBundlingbooleanEnables the atlas bundler. If false, the call returns all generated operations for self-bundling. Defaults to false.
bundlerAddressstringEnforce the bundler address on the generated dApp operation. Only allowed when enableBundling is set to false. Defaults to address(0).
minSolverBidAmountstringEnforce minimum bid amount for solvers, hex encoded. Defaults to 0.
signaturestringSignature of the keccak256 of the user operation with hints + the full options map. This is only required when enableBundling is set to true. Only whitelisted signers are allowed to use the Fastlane Atlas bundler. Defaults to empty.

UserOperationWithHints

NameTypeDescription
chainIdstringChain ID, hex encoded.
userOperationUserOperationFull user operation map, all fields hex encoded.
hints[]stringAn array of hint addresses.

Returns

TypeDescription
string[] | BundleReturned value depends on the enableBundling option. If false, the generated bundle (type Bundle, see below) is returned. If true, an array of raw transactions is returned. The returned array (typically contains only 1 element) are hex encoded raw transactions that were generated and submitted to the blockchain by the Atlas bundler.

Bundle

NameTypeDescription
chainIdstringChain ID, hex encoded.
userOperationUserOperationFull user operation map, all fields hex encoded.
solverOperations[]SolverOperationAn array of full solver operation maps, all fields hex encoded.
dAppOperationDappOperationFull dApp operation map, all fields hex encoded.

Example Request

{
"jsonrpc": "2.0",
"id": 1,
"method": "atlas_auction",
"params": [{
"userOperationWithHints": "0x12345678901234567890123456789012345678901234567890",
"onlyWhitelistedSolvers": false,
"earlyReturn": true
}]
}

Example Response for bundled request

{
"jsonrpc": "2.0",
"id": 1,
"result": [
"0x1234567890123456789012345678901234567890123456789012345678901234"
]
}

Example Response for non-bundled request

{
"jsonrpc": "2.0",
"id": 1,
"result": {
"chainId": "0x1",
"userOperation": {...},
"solverOperations": [{...}, {...}],
"dAppOperation": {...}
}
}

atlas_permissionlessAuction

Triggers an Atlas auction for a particular dApp.

Parameters

TypeDescription
AuctionRequestThe auction request details map (see below).

AuctionRequest

NameTypeDescription
chainIdstringThe target chain ID, hex encoded.
dAppControlAddressstringThe dApp control address to trigger the auction for.
datastringHex encoded data needed for triggering tha auction (optional).
signaturestringSignature of the keccak of the concatenated chainId, dAppControlAddress and data fields. Only require for restricted dApp access (optional).

Returns

An empty result on success.

Example Request

{
"jsonrpc": "2.0",
"id": 1,
"method": "atlas_permissionlessAuction",
"params": [{
"chainId": "0x1",
"dAppControlAddress": "0x1234567890123456789012345678901234567890",
"data": "0x12345678901234567890"
}]
}

Example Response

{
"jsonrpc": "2.0",
"id": 1,
"result": "null"
}
info

Empty result is expected on successful submission.