Skip to main content
POST
/
api
/
v1
/
solverRegistry
/
registerSolver
Register Solver
curl --request POST \
  --url https://quotes.eco.com/api/v1/solverRegistry/registerSolver \
  --header 'Content-Type: application/json' \
  --data '
{
  "intentExecutionTypes": [
    "SELF_PUBLISH",
    "GASLESS"
  ],
  "crossChainRoutes": {
    "crossChainRoutesConfig": {
      "1": {
        "137": [
          {
            "send": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
            "receive": [
              "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174"
            ]
          }
        ]
      },
      "137": {
        "1": [
          {
            "send": "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174",
            "receive": [
              "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"
            ]
          }
        ]
      }
    },
    "useTokenEnums": false
  },
  "quotesUrl": "https://solver.example.com/api/v1/quotes",
  "receiveSignedIntentUrl": "https://solver.example.com/api/v1/intents",
  "supportsNativeTransfers": true,
  "reverseQuotesUrl": "https://solver.example.com/api/v1/quotes/reverse",
  "quotesV2Url": "https://solver.example.com/api/v2/quotes",
  "reverseQuotesV2Url": "https://solver.example.com/api/v2/quotes/reverse",
  "receiveSignedIntentV2Url": "https://solver.example.com/api/v2/intents",
  "gaslessIntentTransactionDataUrl": "https://solver.example.com/api/v1/gasless/transaction-data",
  "useSolverDataFormat": true
}
'
{}

Headers

x-beam-sig
string

Request signature header

x-beam-sig-expire
string

Request signature expiry header

x-beam-sig-address
string

Request signature address header

Body

application/json
intentExecutionTypes
enum<string>[]
required

Array of intent execution types that this solver supports

Available options:
SELF_PUBLISH,
GASLESS
Example:
["SELF_PUBLISH", "GASLESS"]
crossChainRoutes
object
required

Configuration of cross-chain routes that this solver supports, organized by source and destination chains

quotesUrl
string
required

V1 endpoint URL for retrieving quotes from the solver

Example:

"https://solver.example.com/api/v1/quotes"

receiveSignedIntentUrl
string
required

V1 endpoint URL where the solver receives signed intents for execution

Example:

"https://solver.example.com/api/v1/intents"

supportsNativeTransfers
boolean

Whether the solver supports native token transfers (ETH, MATIC, etc.) without wrapping

Example:

true

reverseQuotesUrl
string

V1 endpoint URL for retrieving reverse quotes (specify output, get input quotes)

Example:

"https://solver.example.com/api/v1/quotes/reverse"

quotesV2Url
string

V2 endpoint URL for retrieving quotes from the solver with enhanced parameters

Example:

"https://solver.example.com/api/v2/quotes"

reverseQuotesV2Url
string

V2 endpoint URL for retrieving reverse quotes with enhanced parameters

Example:

"https://solver.example.com/api/v2/quotes/reverse"

receiveSignedIntentV2Url
string

V2 endpoint URL where the solver receives signed intents with enhanced parameters

Example:

"https://solver.example.com/api/v2/intents"

gaslessIntentTransactionDataUrl
string

Endpoint URL for retrieving transaction data for gasless intent execution

Example:

"https://solver.example.com/api/v1/gasless/transaction-data"

useSolverDataFormat
boolean
default:true

Whether to use solver-specific data format (true) or generic format (false)

Example:

true

Response

201 - application/json

Solver successfully registered

The response is of type object.