function.jsonc file. Automations are deployed atomically with the function code when you run deploy or functions deploy.
Automation types
Base44 supports 3 types of automations:- Scheduled automations with cron: Use cron expressions for precise scheduling control.
- Scheduled automations with simple schedules: Configure recurring tasks by interval without cron expressions.
- Entity event automations: Trigger functions when database records are created, updated, or deleted.
Common fields
Common fields for all automations
All automation types share the following fields:| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | The automation type. Possible values: "scheduled" or "entity". |
name | string | Yes | Unique identifier for the automation. |
description | string | No | Human-readable description. |
function_args | object | No | Arguments passed to the function when triggered. See Function arguments. |
is_active | boolean | No | Whether the automation is enabled. Default: true. |
Common fields for scheduled automations
Both cron and simple scheduled automations share these additional fields:| Field | Type | Required | Description |
|---|---|---|---|
schedule_mode | string | Yes | Whether the schedule repeats. Possible values: "recurring" or "one-time". |
schedule_type | string | Yes | Scheduling method to use. Possible values: "cron" or "simple". |
ends_type | string | No | When the recurring schedule should stop. Possible values: "never", "on", or "after". Default: "never". |
ends_on_date | string | Conditional | Date when the recurring schedule ends, inclusive, in UTC. Required when ends_type is "on". Format: YYYY-MM-DDTHH:MM:SSZ. For example, "2026-12-31T23:59:59Z". |
ends_after_count | number | Conditional | Number of executions after which the recurring schedule stops. Required when ends_type is "after". |
Automation configuration
Configure automations in yourfunction.jsonc file using one of the following approaches. All automations use the common fields for all automations listed above, plus the fields specific to each type.
Cron
Use common fields for all automations and common fields for scheduled automations along with the cron-specific fields listed here. Settype to "scheduled" and schedule_type to "cron" to use cron expressions for precise scheduling control.
Cron automations use standard 5-field syntax: minute hour day-of-month month day-of-week. See crontab.guru for an interactive cron expression editor and syntax reference.
| Field | Type | Required | Description |
|---|---|---|---|
cron_expression | string | Yes | 5-field cron expression. |
Example
This example runs a function every day at midnight UTC:Simple schedule
Use common fields for all automations and common fields for scheduled automations along with the simple schedule fields listed here. Settype to "scheduled" and schedule_type to "simple" for straightforward scheduling needs.
Configure recurring tasks by interval such as minutes, hours, days, weeks, or months without writing cron expressions.
| Field | Type | Required | Description |
|---|---|---|---|
one_time_date | string | Conditional | Date and time when the automation runs once, in UTC. Required when schedule_mode is "one-time". Format: YYYY-MM-DDTHH:MM:SSZ. For example, "2026-02-15T10:00:00Z". |
repeat_unit | string | Conditional | Time unit for recurring automations. Required when schedule_mode is "recurring". Possible values: "minutes", "hours", "days", "weeks", or "months". |
repeat_interval | number | Conditional | Interval between executions. Required when repeat_unit is "minutes", "hours", or "days". |
start_time | string | Conditional | Time of day when the automation runs, in UTC. Required when repeat_unit is "days", "weeks", or "months". Format: HH:MM. |
repeat_on_days | number[] | Conditional | Days of the week when the automation runs. Required when repeat_unit is "weeks". Array of weekday numbers, where 0 is Sunday and 6 is Saturday. |
repeat_on_day_of_month | number | Conditional | Day of the month when the automation runs. Required when repeat_unit is "months". Valid values: 1-31. |
Examples
The following examples show different ways to schedule automations with simple schedules:Entity events
Use common fields for all automations along with the entity event fields listed here. Settype to "entity" to trigger functions automatically when database records are created, updated, or deleted.
Entity automations can listen to 1 or more event types on a specific entity.
| Field | Type | Required | Description |
|---|---|---|---|
entity_name | string | Yes | Name of the entity to monitor. |
event_types | string[] | Yes | Database events to listen for. Possible values: "create", "update", "delete". At least 1 required. |
Examples
The following examples show how to trigger functions based on entity events:Function arguments
Pass data to your function when it’s triggered by including thefunction_args field in your automation configuration. This is useful when one function handles multiple automations with different behaviors, such as a sync function that runs incrementally every 15 minutes but does a full sync daily.
Access these arguments in your function code through the request body.
Example
This example shows a function that handles both incremental and full sync modes based on the automation config:Deploy automations
Deploy backend functions with their automations using the CLIfunctions deploy command or the unified deploy command.
The deployment is atomic per function. A function is only considered deployed if both the Deno deployment and all its automations succeed. If any automation fails to deploy, the entire function deployment is rolled back.
After deploying, the CLI shows which functions were successfully deployed, deleted, or had errors. Functions missing locally but existing on Base44 are removed.
Manage automations in the dashboard
View and manage your automations in the Base44 dashboard under the Automations tab. From the dashboard, you can:- View execution logs and history
- Run automations manually for testing
- Monitor automation status
See also
- Backend Functions - Learn about backend functions
- functions deploy - Deploy functions with automations
- deploy - Deploy all resources at once

