Types in the Automations SDK
Glossary of types in the Automations SDK.
Action
The Action
object is used for the actions to be executed when the automation is triggered.
Definition
type StaticAction = {
type: 'static'
target: Address
value: number
callData: Hex
}
type DynamicAction = {
type: 'dynamic'
target: Address
value: number
callDataBuilderUrl: string
functionSelector: Hex
params?: {
static?: Record<string, any>
dynamic?: Record<string, any>
}
}
type Action = StaticAction | DynamicAction
Properties
type
- Type:
static | dynamic
The type of the action.
target
The address of the target contract.
value
- Type:
number
The value to send with the call.
callData (for StaticAction)
- Type:
Hex
(opens in a new tab)
The data to send with the call.
callDataBuilderUrl (for DynamicAction)
- Type:
string
The URL of the calldata builder.
functionSelector (for DynamicAction)
- Type:
Hex
(opens in a new tab)
The function selector of the calldata. This is used as a security measure to prevent the calldata builder from injecting arbitrary calldata.
params (for DynamicAction)
- Type:
Record<string, any>
The parameters to be used in the calldata builder.
Automation
The Automation
object is used to create an automation.
Definition
type CreateTimeBasedTriggerParams = {
trigger: TimeBasedTrigger
actions: Action[]
maxNumberOfExecutions: number
}
type CreateEventBasedTriggerParams = {
trigger: EventBasedTrigger
actions: Action[]
maxNumberOfExecutions: number
}
type Automation =
| {
type: 'time-based'
data: CreateTimeBasedTriggerParams
}
| {
type: 'event-based'
data: CreateEventBasedTriggerParams
}
Properties
trigger
- Type:
TimeBasedTrigger | EventBasedTrigger
The trigger for the automation.
actions
- Type:
Action[]
The actions to be executed when the automation is triggered.
maxNumberOfExecutions
- Type:
number
The maximum number of executions for the automation.
CreateEventBasedTriggerParams
The CreateEventBasedTriggerParams
struct is used to create an event based trigger.
Definition
type CreateEventBasedTriggerParams = {
trigger: EventBasedTrigger
actions: Action[]
maxNumberOfExecutions: number
}
Properties
trigger
- Type:
EventBasedTrigger
The trigger for the automation.
actions
- Type:
Action[]
The actions to be executed when the automation is triggered.
maxNumberOfExecutions
- Type:
number
The maximum number of executions for the automation.
CreateTimeBasedTriggerParams
The CreateTimeBasedTriggerParams
struct is used to create a time based trigger.
Definition
type CreateTimeBasedTriggerParams = {
trigger: TimeBasedTrigger
actions: Action[]
maxNumberOfExecutions: number
}
Properties
trigger
- Type:
TimeBasedTrigger
The trigger for the automation.
actions
- Type:
Action[]
The actions to be executed when the automation is triggered.
maxNumberOfExecutions
- Type:
number
The maximum number of executions for the automation.
EventBasedTrigger
The EventBasedTrigger
object is used to create an event based trigger.
Definition
type EventBasedTrigger = {
triggerData: {
query: string
}
}
Properties
triggerData.query
- Type:
string
The query to be used for the event based trigger, in graphQL format.
TimeBasedTrigger
The TimeBasedTrigger
object is used to create a time based trigger.
Definition
type TimeBasedTrigger = {
triggerData: {
cronExpression: string
startDate: number
}
}
Properties
triggerData.cronExpression
- Type:
string
The cron expression for the time based trigger.
triggerData.startDate
- Type:
number
The start date for the time based trigger.