Prepare a builder registry wallet transaction
curl --request POST \
--url https://api.route.fun/api/v2/builders/transaction \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"code": "<string>",
"operation": "register",
"wallet": "<string>",
"args": {
"recipient": "<string>",
"defaultFeeBps": 25
}
}
'const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
code: '<string>',
operation: 'register',
wallet: '<string>',
args: {recipient: '<string>', defaultFeeBps: 25}
})
};
fetch('https://api.route.fun/api/v2/builders/transaction', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.route.fun/api/v2/builders/transaction"
payload = {
"code": "<string>",
"operation": "register",
"wallet": "<string>",
"args": {
"recipient": "<string>",
"defaultFeeBps": 25
}
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"transaction": {
"to": "<string>",
"from": "<string>",
"data": "<string>",
"value": "0",
"chainId": 4663
},
"code": "<string>",
"action": "register",
"simulation": {
"blockNumber": "<string>",
"blockHash": "<string>"
},
"review": "<string>"
}Builder registry
Prepare a builder registry wallet transaction
Requires swap scope and shares its quota. Simulates registration, payout/default-fee changes, ownership transfers or Route-admin policy changes as the supplied wallet. Returns unsigned transaction data. An API key grants no on-chain ownership or admin rights; the correct wallet must review and sign. No server submission or automatic retry.
POST
/
api
/
v2
/
builders
/
transaction
Prepare a builder registry wallet transaction
curl --request POST \
--url https://api.route.fun/api/v2/builders/transaction \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"code": "<string>",
"operation": "register",
"wallet": "<string>",
"args": {
"recipient": "<string>",
"defaultFeeBps": 25
}
}
'const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
code: '<string>',
operation: 'register',
wallet: '<string>',
args: {recipient: '<string>', defaultFeeBps: 25}
})
};
fetch('https://api.route.fun/api/v2/builders/transaction', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.route.fun/api/v2/builders/transaction"
payload = {
"code": "<string>",
"operation": "register",
"wallet": "<string>",
"args": {
"recipient": "<string>",
"defaultFeeBps": 25
}
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"transaction": {
"to": "<string>",
"from": "<string>",
"data": "<string>",
"value": "0",
"chainId": 4663
},
"code": "<string>",
"action": "register",
"simulation": {
"blockNumber": "<string>",
"blockHash": "<string>"
},
"review": "<string>"
}Prepare an unsigned update, then ask the authorized wallet to sign the returned transaction. Your API key cannot change registry settings by itself.
For
Replace the address placeholders with valid EVM addresses.
| Operation | Use | Signing wallet |
|---|---|---|
register | Register your generated builder ID and payout settings | Initial owner |
configure | Change payout wallet or default builder fee | Current owner |
proposeOwner | Start an ownership transfer | Current owner |
acceptOwnership | Complete an ownership transfer | Proposed owner |
policy | Set fee caps, Route fee overrides or enabled status | Route administrator |
configure, send:
{
"code": "YOUR_BUILDER_ID",
"operation": "configure",
"wallet": "0xYOUR_OWNER_ADDRESS",
"args": {
"recipient": "0xYOUR_PAYOUT_ADDRESS",
"defaultFeeBps": 25
}
}
25 bps is 0.25%; the maximum builder fee is 50 bps, subject to the registered cap. Wait for confirmation before relying on updated settings.
Authentication · Builder integrationAuthorizations
Server-side key created in an authenticated developer workspace. Builder codes are public attribution, not credentials.
Body
application/json
Response
Verified registry or finalized history result