VICIfast
Operations

What 'Purge called records' does in Callbacks Bulk Move

Learn what the Purge called records checkbox removes from the callbacks table, why it matters for cleanup, and when to use it with caution.

VICIfast Support
··3 min read
What 'Purge called records' does in Callbacks Bulk Move

When you open Callbacks Bulk Move in VICIdial, one of the first options you see is a checkbox labeled "Purge called records." It looks like a minor housekeeping toggle, but it triggers a destructive cleanup step that runs across the entire callbacks table before your move even starts. Understanding exactly what it deletes — and what it leaves alone — is the difference between a tidy system and an accidental data loss event. Every Scheduled callback that has already been worked ends up in one of two states: sitting in the callbacks table as an INACTIVE record, or lingered as a LIVE entry whose Called status in vicidial_list has moved on because the lead was dialed, called in, or had its Disposition changed. Purge called records sweeps both categories away in one pass.

What it removes

Checking this box tells VICIdial to scan the entire callbacks table — not just the records matching your campaign, list, or Agent filters — and delete two categories of rows. First, any callback row whose status is INACTIVE. These are entries that VICIdial has already marked as finished; they linger in the table because no automated process pruned them after the callback was completed. Second, any row that is still marked LIVE in the callbacks table but whose corresponding record in vicidial_list no longer carries a callback disposition. That second category is subtler: it catches leads that were called and dispositioned by an agent, or leads that called back in and were handled, or leads whose dispo was manually updated to a non-callback code — but where the entry in the callbacks table was never cleaned up afterward. The page calculates how many rows fall into both categories and displays that total before you do anything. Nothing is deleted until you read that number and explicitly confirm.

flowchart TD
  A[Purge called records checked] --> B[Scan full callbacks table]
  B --> C{Record status = INACTIVE?}
  C -->|Yes| D[Mark for deletion]
  C -->|No| E{Status = LIVE in callbacks?}
  E -->|No| F[Skip — not in scope]
  E -->|Yes| G{vicidial_list status still a callback?}
  G -->|No| D
  G -->|Yes| F
  D --> H[Show total purge count to admin]
  H --> I{Admin confirms?}
  I -->|Yes| J[Rows deleted permanently]
  I -->|No| K[Abort — no changes made]

How to use it

  1. Navigate to Admin > Callbacks Bulk Move.
  2. Select the campaign, list, user group, or agent scope you want to work with for the main move operation.
  3. Check the "Purge called records" box. Leave "Purge uncalled records" unchecked unless you also want to remove still-pending callbacks.
  4. Read the count the page displays carefully. It tells you how many rows will be removed across the entire callbacks table, not just inside your filtered set.
  5. Confirm to proceed. The purge runs first, then your move operation applies to whatever remains in the table.

When to use it — and when to hold off

Purge called records is the right move after a Campaign winds down and you want the callbacks table compact and fast to query. It is also appropriate before a large bulk move, because removing stale rows first means the move query runs against a smaller, cleaner dataset and is less likely to time out on a busy system. Over months of active dialing, the callbacks table accumulates thousands of INACTIVE rows that do nothing except slow down scans; a periodic purge keeps the table lean. Many teams schedule this operation quarterly or after each major campaign cycle ends.

The caution to keep in mind is that the purge scope is global. It does not respect the campaign, list, or agent filters you set for the move itself — those filters only determine which callbacks get moved afterward. The purge sweeps the whole table. If another admin is running a separate bulk operation on a different campaign at the same moment, rows from their operation could be caught in the purge too. Always coordinate with your team before triggering this on a shared, multi-team system. And if you need a record of what was in the table before you run the purge, download an export first. For the full picture of how all VICIdial bulk operations relate to each other, read the VICIdial admin bulk tools guide. You can also find a detailed walkthrough of the export step in our post on how to export scheduled callbacks in VICIdial.

Want a hosted dialer where this just works? See VICIfast pricing - you can be live in under 40 seconds.

About VICIfast LLC

VICIfast LLC operates a managed VICIdial hosting + BYOI service for outbound and inbound call centers. We run the dialers, the carriers, the recordings pipeline, and the compliance plumbing so operators don’t have to.

Citing this article

VICIfast Engineering. “What 'Purge called records' does in Callbacks Bulk Move”. VICIfast LLC, June 29, 2026. Retrieved from https://vicifast.com/blog/vicidial-purge-called-callback-records

Have questions?

Related posts

You might be interested in

VICIfast newsletter

Liked this? Get the next one in your inbox.

We ship the kind of stuff you just read — concrete, numbers-first, no drip. One email when a new post goes live. Unsubscribe in one click.

Comments

Comments are reviewed before they appear. We never publish your email.

No comments yet — be the first.