API Reference
Client Automation Registration
POST /v1/automations/executor
This endpoint can be used by executors create an automation that users can subscribe to
Query Params
executorAddress
string
address of executor that is creating the automation
Request Body
config
Config
Configuration specifications for client automation. Check the format for the type below
executor
string
Address of executor that runs the automation
signature
string
Signature of the client configuration message signed by the executor. Check example & types here
chainId
integer
Chain ID to create client automation on
timestamp
integer
Current timestamp. Must match the timestamp that is signed by executor
executorMetadata
JSON
Arbitrary metadata JSON of data that the executor wishes to accept from users at time of subscription
Config
feeInBPS
integer
fees collected by the automation in BPS; MAX_BPS=4
feeReceiver
string
address of the automation client's fee receiver
limitPerExecution
bool
boolean denoting if the user should limit the input tokens being pulled by executor per execution or for a specific duration of time; true if the limit is per execution
feeToken
string
address of the token to collect fees in
inputTokens
string[]
list of addresses of input tokens for the automation
hopAddresses
string[]
list of whitelisted addresses through which the token is allowed to be transferred during the automations
Example
Response
The response contains all the config fields passed by the user in request, along with the ID of the successfully created client automation -
Query Automation Subscribers
GET /v1/automations/executor/:registryID/subscriptions
This endpoint can be used be executors to get a list of subscribers to a given registryID
Query Params
registryID
string
ID of the client's automation registry. (can be retrieved from response of automation registration)
Response
Response contains list of all subscribers and their subscription configuration & metadata-
Validate Executable Task
POST /v1/automations/tasks/validate/:chainId
This endpoint can be used by executors to pass an executable for a subscriber's account and validate if it complies with the policy
Query Params
chainId
string
Chain ID to validate the executable on
Request Body
subaccount
string
Address of the subscriber subAccount to validate the executable task on
executor
string
Address of the executor
executorSignature
string
Signature of executor, signing the ExecutionParams digest. Check example & types here
executable
Executable
Params of the executable task to validate. Check the format for the type below
Executable
Field nameTypeDescriptioncallType
integer
type of call to make; CALL(0), DELEGATECALL(1), or STATICCALL(2)
to
string
address of the target to execute on
value
integer
amount of ETH to transfer from subscriber to
to
data
string
calldata to execute on
to
Example
Response
Response contains the policy signature required for module execution of the automation on successful validation-
Validate & Execute an Executable Task
POST /v1/automations/tasks/execute/:chainId
This endpoint can be used by executors to pass an executable for a subscriber's account and execute it using Console Relayer, if it complies with the policy
Query Params
chainId
string
Chain ID to execute the executable on
Request Body
subaccount
string
Address of the subscriber subAccount to validate the executable task on
executor
string
Address of the executor
executorSignature
string
Signature of executor, signing the ExecutionParams digest. Check example & types here
executable
Executable
Params of the executable task to validate. Check the format for the type below
webhook (optional)
string
Webhook URL to get status updates on from relayer
Executable
callType
integer
type of call to make; CALL(0), DELEGATECALL(1), or STATICCALL(2)
to
string
address of the target to execute on
value
integer
amount of ETH to transfer from subscriber to to
data
string
calldata to execute on to
Example
Response
Response contains taskId
of the executed task, that can be used for polling of status-
Poll Executed Task Status
GET /v1/relayer/tasks/status/:taskId
Query Params
taskId
string
ID of the executed task. (can be retrieved from the response of the validate & execute endpoint)
Response
Response contains the task's metadata and it's current status-
Last updated