Scheduled work

Run backend work when the time is right.

Schedule the same actions your application already uses. Send a report tonight, sync a provider every hour, or perform a follow-up next week.

  • Recurring
  • Deferred
  • Action-based

No extra worker product

Keep scheduled work in the application model.

Task records describe which Daptin action should run, with which input, on what schedule, and under whose access context. The result is visible and manageable alongside the rest of the backend.

Reuse proven operations

Scheduled work invokes named actions, so validation and business behavior do not need a second implementation.

Run once or repeatedly

Use delayed execution for follow-ups and recurring schedules for syncs, cleanup, or reporting.

Retain the caller’s context

Associate work with a user when the action must obey that user’s permissions or connected credentials.

Manage schedules as data

Create and inspect task definitions through the same administrative environment as the application.

Work that belongs on the clock

Schedule product operations, not a second implementation.

Provider synchronization

Refresh remote data every few minutes using the same integration action available to an operator.

Reports and delivery

Generate a daily summary or scheduled export with explicit input and the permissions of its execution user.

Expiry and cleanup

Archive sessions, remove stale temporary records, or apply retention policy through a named, directly testable action.

Customer follow-up

Schedule reminders and lifecycle checks without placing timer logic inside a browser or mobile client.

Execution identity

A background task still acts as someone.

Each active task needs a valid action, parseable cron or interval schedule, serialized attributes, and an as_user_id relationship. The action runs with that user's groups and permissions inside a database transaction.

New or changed tasks load on server startup in the latest release. In multi-instance deployments, make external effects idempotent and verify that scheduling does not create unintended duplicates.

Configure a runnable task →

Schedule the action you already trust.