Data & Automation
Import and manage CRM data, and automate workflows across your team.
Created April 1, 2026
Updated: September 17, 2026
Overview
Data & Automation gives you the tools to move data in and out of the CRM at scale, build automated workflows, run email campaigns, and monitor email health across your team.
Open it from CRM → Admin and scroll to the Data & Automation section (subtitle: Import, manage CRM data and automate workflows). Each card opens in a slide-up panel over the admin grid — close it with the round X in the corner. The Search settings... box above the grid filters cards by title and description.
?panel= and the panel name to the admin URL — for example /crm/admin?panel=import-contacts. Valid names are workflows, email-campaigns, reports, email-reports, import-contacts, bulk-assign, bulk-delete, unsubscribe, website-visitors, and dnc-registry.Who Can Use These Cards
Organization admins and owners can use every card. Everyone else needs the matching permission, granted per member in Team Settings → CRM Team. Read lets a member open the card; Write lets them change something.
| Card | Permission name | Write permission controls |
|---|---|---|
| Workflows | Workflows | The New Workflow button |
| Email Campaigns | Email Campaigns | The New Campaign button |
| Reports | Reports | — |
| Email Reports | Email Reports | — |
| Import Contacts | Import Contacts | The Choose CSV File button |
| Bulk Assign | Bulk Assign | The whole panel, including the contact list |
| Bulk Delete | Bulk Delete | The whole panel, including the contact list |
| Business Card | Business Card | — |
| Unsubscribe Management | Unsubscribe Management | The Add Unsubscribe button |
| Website Visitors | None — visible to anyone who can open the section | — |
| Do Not Call Registry | None — visible to anyone who can open the section | — |
The whole section is also behind a parent Data Automation permission. If a member can't see the section at all, that's the one to grant first.
Workflows
Build drag-and-drop automations triggered by contact, deal, and order events. A workflow watches for one event in the CRM, optionally checks a few conditions, and then does things for you — change a lead status, assign an owner, send an email or SMS, open a ticket, create an activity, and so on. Use it to stop asking people to remember manual follow-up steps.
Workflows is the only card that takes over the full admin screen instead of opening a slide-up panel. The list screen is titled CRM Workflow Automator (Create automations that trigger when contacts, deals, or orders change) and has a Back to CRM Admin link at the top left.
Create a Workflow
- Open CRM → Admin → Data & Automation → Workflows.
- Click New Workflow. If you don't see the button, ask an admin for write access to Workflows. On an empty list you'll see: No workflows yet. Create one to automate CRM actions like assigning owners, changing statuses, and sending emails.
- In the New CRM Workflow window, type a Workflow Name (required) — the placeholder suggests e.g. Auto-assign new leads.
- Pick a Trigger Source: Native CRM or Custom Objects. Custom Objects is greyed out until your organization has at least one custom object (see CRM Configuration).
- Choose the Entity (Contact, Company, Deal, Order, or AI Phone Agent — or one of your custom objects) and then the Event. The events offered depend on the entity; see the Triggers table.
- Optionally add a Description (What does this workflow do?) so other admins know what it's for.
- Click Create Workflow. You'll see Workflow created and drop straight into the builder. Leaving out the name or trigger shows Name and trigger are required.
Build the Flow
The builder has three parts: the Nodes palette on the left (collapsible with the chevron), the canvas in the middle, and a Configure Node panel that slides in on the right when you select a node.
- Drag the trigger from the Triggers group onto the canvas. Only the trigger you chose at creation is listed, and once it's placed it gets a tick and can't be dragged again. Dropping a second trigger shows Only one trigger node allowed per workflow.
- Drag in the Conditions and Actions you need, plus an End node if you want the branch to stop explicitly.
- Connect nodes by dragging from a node's right-hand handle to the next node's left-hand handle. Condition nodes have two outputs — YES (green, upper) and NO (red, lower). Each output can feed only one connection; a second attempt shows This output is already connected. Hover a connection and click the red ✕ to remove it.
- Click a node to open Configure Node. Every node has a Title and an optional Description (Optional note), followed by settings specific to that node type. Delete Node at the bottom removes it and its connections.
- Use Fit View in the header (Fit all nodes in view) to re-centre a large diagram.
- Click Save. You'll see Workflow saved; a failure shows Failed to save.
Triggers
Every workflow has exactly one trigger, chosen when you create it and fixed afterwards. To change a trigger you create a new workflow.
| Entity | Event | Fires when |
|---|---|---|
| Contact | Record is created | A new contact is created. |
| Contact | Record is updated | A contact is edited — but only when no more specific event applies. A lead-status or disposition change fires that event instead, not this one. |
| Contact | Lead status changes | The contact's lead status moves to a different value. |
| Contact | Disposition changes | The contact's call disposition changes. |
| Contact | Custom field changes | A custom field on the contact gets a new value. |
| Company | Custom field changes | A custom field on the company gets a new value. This is the only company event available. |
| Deal | Record is created | A new deal is created. |
| Deal | Stage changes | A deal moves to a different pipeline stage. |
| Order | Record is created | A new order (engagement) is created. |
| AI Phone Agent | After call | An AI phone agent call has ended and its results are available. |
| Custom object | Record is created / Record is updated | A record of that custom object is created or updated. |
The trigger node itself has no settings beyond Title and Description — there is nothing to configure on it.
Conditions
A condition checks one field and splits the flow into a YES branch and a NO branch. The palette only offers the conditions that make sense for your trigger, so the list you see is shorter than the full set below.
| Condition node | Checks | Shown for |
|---|---|---|
| Check Lead Status | Lead status | Contact, deal, order and call triggers |
| Check Contact Type | Contact type | Contact, deal, order and call triggers |
| Check Source | Contact source | Contact, deal, order and call triggers |
| Check Disposition | Contact disposition | Contact, deal, order and call triggers |
| Check Company | Company name | Contact, deal, order and call triggers |
| Check Field | Any one contact field you pick | Contact, deal, order and call triggers |
| Check Deal Stage | Deal stage | Contact, deal and order triggers |
| Check Deal Amount | Deal value | Contact, deal and order triggers |
| Check Pipeline | Pipeline | Contact, deal and order triggers |
| Check Call Disposition | The disposition the AI agent set on the call | AI Phone Agent trigger only |
| Check Call Summary | Text of the call summary | AI Phone Agent trigger only |
| Check Transferred To | Where the call was transferred | AI Phone Agent trigger only |
| Check Custom Field | A custom field on the contact or company | The two custom field changes triggers only |
| Check Object Field | A field on the custom object record | Custom object triggers only |
Each condition has three settings:
| Setting | Details |
|---|---|
| Field | Locked to the node type and shown greyed out, except on Check Field, where you choose from Lead Status, Contact Type, Source, Disposition, Deal Stage, Deal Amount, Pipeline, Company, Email, Phone, or Industry. Check Custom Field and Check Object Field add their own field picker instead (Select custom field... / Select field...). |
| Operator | Defaults to equals. Options: equals, does not equal, contains, does not contain, is empty, is not empty. greater than and less than appear only when the field is Deal Amount. Text comparisons ignore upper/lower case. |
| Value | Hidden for is empty and is not empty. Becomes a dropdown of your configured options for Lead Status, Source, Disposition, Pipeline and Industry; a Pipeline → Stage list for Deal Stage; lead / customer / partner / vendor / other for Contact Type; and a free-text or number box otherwise. Call Disposition lists the dispositions defined on your AI agents, or shows No dispositions found. |
Actions
Actions are the work the workflow does. Drag them from the Actions group.
| Action | Settings |
|---|---|
| Set Lead Status | Lead Status — one of your configured lead statuses. |
| Set Disposition | Disposition — one of your configured dispositions. |
| Set Contact Type | Contact Type — lead, customer, partner, vendor, or other. |
| Assign Owner | Team Member — pick from Select member... and the member list. |
| Set Deal Stage | Deal Stage — listed as Pipeline → Stage. |
| Create Deal | Deal Name (placeholder Use {{contact_name}} for dynamic), Pipeline, and Amount (number, placeholder 0.00). |
| Send Email | Email Template (or Custom (no template)), To (only without a template — accepts contact, owner, or an address), Subject, and Body in a rich editor. Choosing a template sends to the contact and keeps using the template's latest content. |
| Send SMS | SMS Template (or Custom), From Phone Number, To — Phone (Primary), Phone 2, or Phone 3 — and Message. Supports {{name}}, {{email}}, and {{phone}}. |
| Make Phone Call | AI Agent (required) — one of your phone agents — Call To (contact, the default, dials the contact's primary number; anything else is dialled as typed), and Call Purpose, which is passed to the agent as context. The call is placed as soon as the workflow reaches this node. |
| Wait | Delay (a number) and Unit (minutes, hours, or days). Everything after this node is put on hold and picked up once the delay is over — see the note below. |
| Add Note | Note Content — free text added to the contact. |
| Create Ticket | Subject (required), Description, Priority (Low, Medium — default, High, Urgent), Type (Incident — default, Request, Question, Problem), Assign To (default Unassigned, which means whoever triggered the workflow), and Due In (days) (No due date — default, 1, 2, 3, 5, 7, 14, 30, 60, 90). |
| Create Activity | Same fields as Create Ticket, plus two dynamic assignees: Lead Owner (whoever the contact is assigned to) and Workflow Trigger User (whoever triggered it). Left unassigned, the activity stays unassigned. |
| Set Object Field | Custom-object triggers only. Pick the Object Field and its New Value. On other triggers it shows This workflow trigger is not linked to a custom object. |
| End | No settings. Marks the end of a branch. |
Placeholders accepted in ticket and activity subjects and descriptions: {{contact_name}}, {{first_name}}, {{last_name}}, {{email}}, {{company}}, {{lead_status}}, {{deal_name}}, and {{deal_stage}}. SMS templates are managed in CRM Configuration → SMS Templates, email templates in Email Templates.
Activate, Rename, Delete
| Task | How |
|---|---|
| Turn a workflow on or off | Flip the switch on the workflow's row in the list, or click Activate / Deactivate in the builder header. The pill next to the name reads Active or Inactive. You'll see Workflow activated or Workflow deactivated. |
| Rename | Open the workflow and click the pencil next to its name (Rename workflow). Press Enter to save, Escape to cancel. Confirms with Workflow renamed. |
| Delete | Click the trash icon on the row, or Delete in the builder header. The Delete Workflow window asks Delete this workflow? and warns This cannot be undone. Any automations will stop running. Confirm with Delete. |
| See how often it runs | The list row shows the trigger, the node and connection counts, a run count once it has fired at least once, and the created date. Deactivated workflows lose the coloured bar on the left of the row. |
Workflow Gotchas
- No test mode. There is no simulate or dry-run button. To check a workflow, activate it and perform the real action on a throwaway record.
- No run log. Only the run counter on the list row tells you anything, and it only counts runs that actually performed at least one action. A workflow whose conditions never match shows nothing.
- Nothing warns you about a half-built flow. A trigger with no connected actions saves and activates happily.
- One trigger, one edge per output. Branch by using a condition's YES and NO outputs, not by dragging two connections off the same handle.
- Each node runs at most once per trigger. If two branches converge on the same node, that node fires on whichever branch reaches it first.
- Contact updates are specific. If you want to catch a lead-status change, use the Lead status changes trigger — Record is updated will not fire for it.
- Rich HTML templates are preview-only. If an email template contains tables or inline styles, the Body field in the builder shows a read-only (Template Preview) instead of an editor. Edit the template itself in Email Templates.
- A Wait pauses only its own branch. Everything after the Wait node is stored and resumed once the delay is over; other branches keep running immediately. If the workflow is switched off before the delay elapses, the paused steps are dropped.
- Send Email and Send SMS need delivery set up. Email uses your SMTP settings in Team Settings → Email Settings; SMS needs a phone number your organization owns.
Email Campaigns
Send bulk emails using CSV or CRM contacts with email verification and send rate controls. Use this for one-off blasts and nurture sends to a list, as opposed to the one-to-one email you send from a contact record.
- Open Data & Automation → Email Campaigns. The card opens on Campaign History, not the wizard.
- Click New Campaign at the bottom of the panel to start the wizard. The button is hidden while you are inside the wizard, and hidden entirely without write access.
- Use Campaign History to come back to the list from any step of the wizard.
- Click Refresh to re-poll a campaign that is still sending.
Every campaign in the history list carries a status and a set of actions:
| Status | Meaning |
|---|---|
| Scheduled | Queued for a future date and time. |
| Verifying | Addresses are being checked before the first email goes out. |
| Pending | Accepted and waiting for the sender to pick it up. |
| Sending | Emails are going out at your configured rate. |
| Paused | Stopped by you. Two variants appear on their own: Paused — high bounce and Paused — worker down. |
| Completed | Every recipient has been processed. |
| Cancelled | Stopped before finishing and not resumable. |
| Error | The campaign failed. Check your SMTP settings first. |
| Action | What it does |
|---|---|
| Live View | Opens the progress view for a campaign that is sending. |
| Pause / Resume | Stops and restarts sending. Confirms with Campaign paused / Campaign resumed. |
| Reactivate | Asks Restart sending for this campaign? then reports Campaign reactivated — sending will resume shortly. |
| Cancel Campaign | Asks Are you sure you want to cancel this campaign? Cancelling cannot be undone. |
| Edit | Reopens the campaign in the wizard. |
| Duplicate | Offers Duplicate with same recipients or Duplicate — choose new recipients. |
| Delete | Titled Delete Campaign with the warning This cannot be undone. |
Each row also reports Recipients, Sent, Failed, Skipped, Opened, Clicked, Bounced, and Unopened. Click into the numbers to see which addresses were affected and why a recipient was skipped — reasons include Unsubscribed, Already sent in last 24h, Duplicate in list, No mail server (bad/typo domain), and Bounced in a recent campaign.
Reports
View 20+ CRM reports with charts across contacts, deals, orders, calls and more. This is the read-only analytics view over your whole CRM — use it for pipeline reviews, activity checks, and per-rep performance. The full catalogue of charts is listed on the Admin Reports page.
- Open Data & Automation → Reports. The screen is titled CRM Reports and has a ← Back to CRM Admin link.
- Narrow to one person with the team-member list, which defaults to All Team Members.
- Pick a date range, then click Refresh if you want to re-pull the numbers.
- Click any summary tile or chart segment to drill into the underlying records.
- In a drill-down, click Export CSV to download those rows.
| Control | Options and defaults |
|---|---|
| Team member | All Team Members (default), or one member. |
| Date range | Today, Last 7 Days, Last 30 Days, Last 90 Days, This Year, All Time, Custom. |
| Custom range | Choose Date Range (from and to) or Specific Date. The end date can't be earlier than the start date. |
| Summary tiles | Total Contacts, Total Companies, Total Deals, Deal Value, Total Engagements, Revenue, Appointments, Total Calls. All clickable. |
| Sections | Team Member Performance, Calls, Contacts, Companies, Deals, Engagements. |
| Export | Export CSV, available inside a drill-down only. |
Email Reports
View email sending analytics, volume trends, and delivery insights. Email Reports is the health check on your sending reputation: it shows how much mail your team sends, how much of it lands, and who is getting hit repeatedly. Watch it if you care about not being blocked by the big mailbox providers.
- Open Data & Automation → Email Reports. The panel is titled Email Reports (Email sending analytics and delivery insights).
- Choose a period from the date-range list. It opens on Last 30 days.
- Read the KPI cards across the top, then the charts and lists below them.
- Click View details → on any KPI card, or a bar or slice on a chart, to see the individual emails behind that number.
- In a drill-down, use Back to Reports to return.
| Control or metric | Details |
|---|---|
| Date range | Today, Last 7 days, Last 30 days (default), Last 90 days, Last year. |
| Total Sent | All emails sent in the period, with a daily average underneath. |
| This Week | Current week against the previous week, as a percentage. |
| Open Rate | Percentage opened, with the raw x of y opened count. |
| Click Rate | Percentage clicked, with the raw x of y clicked count. |
| Bounce Rate | Percentage that failed to deliver, plus the bounced count. The number to watch. |
| Unique Recipients | Distinct contacts mailed, shown against your total contact count. |
| Unsubscribed | Opt-outs in the period plus an all-time figure. |
| Charts | Daily Email Volume, Emails by Source, Sending Activity by Hour. |
| Lists | Top Recipients, Top Senders (Team), and Recent Emails with a View All Emails link. |
| Drill-down columns | Subject, To, Source, Sent By, Status, Date. Status badges are Delivered, Opened, and Bounced. |
Import Contacts
Bulk import leads from a CSV file and assign them to team members. The wizard runs in six stages: Upload → Map Columns → Enrich → Assign → Importing → Done.
- Open Data & Automation → Import Contacts and click Choose CSV File, or click Download sample template first to get a correctly-headed file. The file must have a header row and at least one data row, otherwise you'll see CSV must have at least a header row and one data row.
- On Map Columns, check the automatic mapping. Each CRM field has a dropdown over your CSV headers; set anything you don't want to bring across to — Skip this field —. Use Preview (first 3 rows) to confirm the columns line up, and Start Over if the file was wrong.
- Tick Skip Enrichment if you want your CSV used exactly as written (no lookups, no fallback fill). Then click Next: Enrich — or Next: Assign if you skipped enrichment.
- On Enrich, VINSI looks your company names up on Google (Looking up companies on Google...) and reports Found N of M companies on Google. Toggle which ones to enrich. Turn off any match you don't trust, then click Next: Assign.
- On Assign & Defaults, set the owner, the default lead status and source, and the Duplicate check. Read the warning box — its text changes with the duplicate rule you pick. Confirm the count in the Ready to import tile.
- Click Start Import and leave the panel open. Progress shows as N of M processed.
- On Import Complete, review Contacts Imported, Companies Created, Skipped and Errors. Click the imported count to list the new contacts. Finish with Import Another File or Back to CRM Admin.
| Field or option | Details |
|---|---|
| CSV columns | First Name, Last Name, Title, Email, Phone, Phone Ext, Phone 2, Phone 2 Ext, Phone 3, Phone 3 Ext, Company, Source, Lead Status, Notes, Street, City, State, Zip, Review Rating, Review Count, Website, Industry. Only Email is expected; every column is mapped by hand in step 2. |
| File type | .csv only. |
| Skip Enrichment | Off by default. When on, the Enrich stage is skipped entirely. |
| Assign to Team Member | Defaults to — Unassigned —. Applies to every row in the batch. |
| Default Lead Status | Your configured lead statuses. Used only where the CSV row has no status of its own. |
| Default Source | Your configured sources. Used only where the CSV row has no source of its own. |
| Duplicate check | By Email (default) · By Name (first + last) · By Company name · By Phone · Skip duplicate check. Matching rows are skipped, not merged. |
| Imported record type | Every imported contact is created as a lead. |
Do not map a combined "Full Name" column to First Name.
If your CSV has a single column containing both first and last name together, do not map it to the First Name field — the whole name will be stored as the first name. You have two options:
- Use the VINSI CSV Formatter Tool to split the column into First Name and Last Name before importing.
- Contact VINSI Sales for help preparing the file.
Bulk Assign
Reassign multiple contacts to a different team member at once. Use it when someone leaves, when you rebalance territories, or to hand a freshly imported batch to a rep. The panel is titled Bulk Assign Contacts.
- Open Data & Automation → Bulk Assign. Contacts load automatically — you'll see Loading N of M contacts… while that happens.
- Narrow the list with the filter bar. Changing any filter clears your current selection, so filter first and select second.
- Select contacts: click rows, use the header checkbox, or pick a preset from Select Amount.
- At the bottom, open the — Select team member — list and choose the new owner.
- Click Assign. The button shows the count, for example Assign (37).
- Watch the progress bar. When it finishes you'll see a N contacts reassigned confirmation, the selection clears, and the list reloads.
| Control | Options and defaults |
|---|---|
| Search | Placeholder Name, email, company... — matches name, email address, or company. |
| Lead Status | All (default), plus your configured lead statuses. |
| Type | All (default), Lead, Customer, Archived. |
| Disposition | All (default), plus your configured dispositions. |
| Assigned To | All members (default), Unassigned, or a specific member. |
| Select Amount | None (default), 10, 50, 100, 200, 400, 1000, All (count), or Custom with a number box (minimum 1). |
| Rows per page | 50, fixed. |
| Maximum contacts loaded | 50,000 per organization. |
Bulk Delete
Select and permanently remove multiple contacts at once. The panel is titled Bulk Delete Contacts and warns in red: This action cannot be undone. Use it to clear out a bad import or a stale list — not as a general tidy-up tool.
- Open Data & Automation → Bulk Delete. Contacts load automatically.
- Filter and select exactly as in Bulk Assign — the filter bar, Select Amount list, and 50-row pages are identical.
- Click the red Delete button at the bottom; it shows the count, for example Delete (37).
- A confirmation banner appears in the panel asking Permanently delete N contacts?. Click Yes, delete to go ahead, or Cancel to back out. Nothing needs to be typed — it is two clicks in total.
- Read the result. It reports what happened in one line, for example 120 contacts deleted · 4 skipped (3 with deals, 1 from client companies). If nothing could be deleted you get a warning instead of a success message.
| Point | Details |
|---|---|
| Reversible? | No. Deleted contacts are gone, along with their activities, emails, and tags. |
| Contacts with a deal | Skipped, and counted as with deals in the result. |
| Contacts on a client company | Skipped, and counted as from client companies in the result. |
| Confirmation | An in-panel banner with Yes, delete and Cancel. No typed confirmation. |
| Maximum contacts loaded | 50,000 per organization, same as Bulk Assign. |
Business Card
Scan a business card image to create a contact and company. Photograph a card at an event, upload it, and VINSI reads the details for you to check before saving. Unlike the other cards this one opens a window titled Create from Business Card rather than a panel.
- Open Data & Automation → Business Card.
- Under Upload a photo of the business card (We'll read the contact and company details for you to review.), choose an image. A preview appears once it is loaded.
- Click Scan Card. The button changes to Reading… while the card is processed.
- Check the Contact and Company sections and correct anything that was misread. If VINSI finds matching businesses it offers them under Found on Google — pick one to fill verified details:; clicking one overwrites the company fields with the verified data.
- Click Create. On success you'll see Contact and company created, or a contact-only confirmation if the company already existed.
| Field or limit | Details |
|---|---|
| Contact fields | First Name (required), Last Name, Job Title, Email, Phone, Ext. |
| Company fields | Company Name, Website, Industry, Company Email, Company Phone, Address, City, State, Zip, Country. |
| Accepted image types | PNG, JPG, WEBP, HEIC. One file at a time. |
| Maximum file size | 10 MB. Large photos are automatically shrunk to 1600 px on the long edge before upload. |
| New contact defaults | Lead status New, type lead, source Business Card, owned by you. |
| New company defaults | Type prospect, owned by you. The new contact becomes its primary contact. |
Unsubscribe Management
View unsubscribed contacts and re-subscribe contacts. This is the suppression list your campaigns and workflow emails check before every send. It holds both people who opted out and addresses that bounced recently, so it is the first place to look when someone says "I never got your email".
The list header reads Suppressed recipients (count) and explains what qualifies: addresses skipped on send — unsubscribed contacts, and anything that bounced in the last six months, including CSV-only recipients that aren't CRM contacts.
Find someone
- Open Data & Automation → Unsubscribe Management. Page 1 loads automatically.
- Type into the box (placeholder Search name, email, company...) and press Enter or click Search.
- Page through with « First, ‹ Prev, Next ›, and Last ».
Put someone back on the list
- Find the person and click the green Re-subscribe button on their row.
- The Re-subscribe Contact window asks Re-subscribe [name]? They will start receiving emails again. Confirm with Re-subscribe.
- You'll see Contact re-subscribed and the row disappears from the list. This clears both the opt-out and any bounce record.
Suppress an address by hand
- Click Add Unsubscribe at the bottom of the panel.
- Type the address into Contact email address (placeholder name@example.com) and press Enter or click Add Unsubscribe.
- If the address belongs to an existing contact it is flagged. If it is unknown, a stub record is created so campaigns still honour it. Already-suppressed addresses report This contact is already unsubscribed.
Clear a bounce without changing the opt-out
- Click Re-enable a bounced email in the panel header.
- Enter the address under Email address and click Re-enable.
- The result reports how many bounces were cleared, or tells you there was no recent bounce or unsubscribe on record for that address.
| Row element | Details |
|---|---|
| Name | The contact's full name, or a dash when it isn't known — common for CSV-only recipients. |
| Email · Company | Address and company on the second line. |
| Unsubscribed [date] | Red badge. The person clicked the unsubscribe link, or an admin added them. |
| Bounced [date] | Warning badge marked Hard (red) or Soft (amber), with the bounce reason on hover. |
| Rows per page | 25, fixed. Pagination appears once there are more than 25 entries. |
| Empty states | No contacts have unsubscribed. or No unsubscribed contacts match "[search]". |
Website Visitors
Track anonymous visitors on your marketing site — city, ISP, pages viewed. See who's browsing and reach out. A small script on your site reports each session back to VINSI, so you can spot companies researching you before they ever fill in a form. Anyone who can open Data & Automation can use this card.
Set up tracking
- Open Data & Automation → Website Visitors and expand Tracking snippet.
- Fill in Allowed domains — comma or space separated, for example
vinsi.ai, www.vinsi.ai. Leave it blank to accept any origin. - Click Save & generate key. You'll see Tracking key generated and a green Active chip.
- Click Copy snippet and paste it just before the closing
</body>tag on every page of your marketing site. - Visit your own site once, then come back and click the refresh button — the session should appear.
Work the list
- Pick a period and search for a city, ISP, IP address, page URL, referrer, or UTM value.
- Click Details on a row to see the page history and user agent; click Hide to collapse it.
- Click Edit to open Identify this visitor and record what you know — business name, contact name, city, state, and notes. Click Save. Your entry applies to every session from that IP address and always overrides the automatic guess.
- Click Add to CRM to create a company record from the row. Once linked the button becomes a green In CRM link that opens the company.
- Use the trash button to remove a row. It asks Delete this visitor record? and cannot be undone.
| Control or field | Options and defaults |
|---|---|
| Allowed domains | Comma or space separated. Blank accepts any origin. |
| Tracking key button | Save & generate key the first time, Save & rotate key afterwards. |
| Date filter | Last 24 hours, Last 7 days, Last 30 days (default), Last 90 days, All time. |
| Rows per page | 10 (default), 25, 50, 100. |
| Visitor name | Your manual entry first, then the Google match, then the ISP or organization, then the raw IP, then Unknown visitor. |
| Row chips | Page count, Manual when you identified it by hand, and the industry when known. |
| Details panel | Entry page, referrer, UTM values, page history (last 20 pages with times), and user agent. |
| Identify fields | Business name, Contact name, City, State, Notes — all free text. |
Do Not Call Registry
Numbers blocked from all outbound batch and manual dialing. "Do Not Call" dispositions and the AI's mid-call add feed this list automatically. Anyone who can open Data & Automation can use this card.
Add a number
- Open Data & Automation → Do Not Call Registry.
- Under Add a number, type the Phone number (placeholder (555) 555-1234) and optional Notes.
- Click Add. You'll see Added to DNC list, or Already on the DNC list if it was already blocked. Fewer than ten digits gives Enter at least 10 digits.
Import a list
- Expand Bulk import from CSV.
- Paste one phone number per line, or CSV rows whose first column is the phone number — extra columns are ignored.
- Click Import. The result is reported as a summary, for example 240 added · 12 already listed · 3 invalid.
Unblock a number
- Find it with the search box (Search by number or notes…).
- Click the red trash button (Remove from DNC list).
- Confirm the prompt: Remove [number] from the DNC list? This number will be dialable again on future batches. There is no undo.
| Field, column or limit | Details |
|---|---|
| Phone number | Required. Minimum 10 digits. Formatting is ignored — spaces, dashes, brackets and a leading +1 all match. |
| Notes | Optional, up to 500 characters. |
| CSV import | Paste-only — there is no file picker. Duplicates and numbers under 10 digits are skipped. |
| Phone column | Shown as +1 (555) 555-1234 or (555) 555-1234. |
| Source column | Manual (added here), CSV Import, Disposition, AI Agent, or API. |
| Notes column | Your note, the originating call reference, or a dash. |
| Added column | Local date and time. |
| Rows per page | 25, 50 (default), 100, 250. |
Numbers arrive on this list from four places:
- Manual — added in this panel.
- CSV Import — pasted into the bulk import box.
- Disposition — saving a call with a disposition of do not call, dnc, remove me, or do not contact adds the number automatically.
- AI Agent — an AI phone agent adds the number mid-call when the person asks not to be contacted again.