Background tasks
For Admins

Background tasks

What the platform does on a schedule and in the background, how often, and where to see it.

Celery does the background work: the celery-beat service starts tasks on a schedule, celery-worker runs them, and the task queue lives in Redis. All schedule times are UTC.

Scheduled tasks

TaskHow often
Tickets
SLA checkevery 5 min
Ticket auto-assignmentevery 2 min
Ticket rulesevery 2 min
Auto-closing stale ticketsevery 15 min
Waking snoozed ticketsevery 5 min
Auto-reply when operators are slowevery minute
Scheduled messagesevery minute
Channels
IMAP mail fetchevery 2 min
BILLmanager ticket fetchevery 30 s
Retrying replies to BILLmanagerevery 3 min
Waiting time on Telegram cardsevery minute
Removing old Telegram cardsevery 5 min
Deleting temporary Telegram messagesevery minute
Widget visitors gone offlineevery 2 min
Scheduled widget publishingevery minute
Billing
Plan renewalshourly at :05
Payment remindersdaily at 09:00 UTC
Housekeeping
Old attachments cleanupdaily at 03:00 UTC
Resuming interrupted file operationsevery 5 min
Lifting expired contact blocksevery 10 min
Analytics reportsdaily at 09:00 UTC
  • For how SLA and auto-close behave, see SLA & business hours and Auto-close tickets.
  • Attachment cleanup deletes files older than the Retention (days) in “Settings → Project & access → Media Storage” (90 by default; 0 keeps them forever; doesn't apply to S3). Attachments of knowledge base articles and templates are kept. The countdown can be restarted — see Media storage.
  • Cards of closed tickets are removed from the Telegram group four hours after closing. Telegram lets a bot delete its message only within 48 hours, so a card nearing 48 hours is removed sooner, and a card older than 48 hours is shortened by an edit to a single line — “Ticket #… closed”.

Tasks triggered by events

  • Sending project broadcasts and emails to platform users, and sending announcements to customers.
  • Delivering API webhooks, with retries on errors.
  • Indexing knowledge base articles and closed tickets for AI.
  • Moving files between local storage and S3, cleaning up and compressing images from the Media storage page. They run in portions of a few minutes; if the worker restarts, the operation carries on by itself.

CSV, XLSX and JSONL exports don't run in the background — the file is returned right away (see Data export).

Where to look

The platform admin sees PostgreSQL and Redis status, containers, disk and the list of scheduled tasks under “Admin panel → Platform → System”. Individual runs aren't tracked there.

If SLA notifications, auto-close or mail fetching stop, check that celery-beat and celery-worker are running. To see whether the worker is alive: celery -A app.tasks.celery_app inspect ping. An unhealthy mark on the worker container doesn't always mean it has stopped: it may be busy with a long task — check the ping and the logs.
Was this page helpful?