Staff Contact & Email Visibility v3.0.0
By default, staff members see a masked version of a contact's phone number and email address. Only the tenant admin sees the real values. This feature gives you two ways to reveal real contact details to staff — globally for all staff, or only for the specific staff member assigned to that contact.
Admin only
Only the tenant admin can change these settings. Staff members cannot access this settings page.
What Masking Looks Like
When a staff member does not have permission to see the real value, they see a masked version:
| Field | Real Value | Masked Value |
|---|---|---|
| Phone Number | +91 98765 43210 | +91*******10 |
| Email Address | [email protected] | jo***@e******.com |
The masked value is read-only. Staff cannot saw unless they have permission to see the real value.
Where Masking Takes Effect
The masking or revealing applies consistently everywhere phone numbers and email addresses are shown to staff:
| Area | What is affected |
|---|---|
| Contacts List | Phone and email columns in the contacts table and kanban view |
| Contact Profile | The detail panel when viewing a single contact's full record |
| Chat Panel | Contact info in the right sidebar, including the WhatsApp number |
| Campaign Details | Phone numbers in campaign executed lists and detail reports |
| Activity Logs | Phone numbers in raw log and response data |
Option 1 — Show to All Staff (Global Toggle)
Step 1: Go to System Settings → Miscellaneous
From your WhatsMark dashboard, go to System Settings in the left sidebar and click Miscellaneous.

Step 2: Find the Staff Visibility Toggles
Scroll to the staff visibility section. You will see two independent toggle switches:
| Toggle | What it does |
|---|---|
| Show Client Email to Staff | When ON — all staff can see real email addresses for every contact |
| Show Client Phone to Staff | When ON — all staff can see real phone numbers for every contact |
Both toggles are OFF by default.
Independent control
Email and phone are separate toggles. You can reveal phone numbers to all staff (so they can call customers) while keeping email addresses hidden — or vice versa.
Step 3: Enable the Toggles and Save
Turn on whichever toggles you need, then click Save Changes at the bottom-right of the page. The new settings take effect immediately — staff members see real or masked values the next time they load a page.
Option 2 — Show Only to Assigned Staff (Per-Contact)
A more targeted option: reveal contact details only to the staff member who is directly assigned to that contact. All other staff still see masked values.
This is controlled by the config/assigned_staff.php file on the server:
// config/assigned_staff.php
return [
'phone' => [
'show_to_assigned_staff' => false, // set to true to enable
],
'email' => [
'show_to_assigned_staff' => false, // set to true to enable
],
];When show_to_assigned_staff is set to true:
- The staff member who is the assigned owner of a contact sees that contact's real phone/email
- Staff assigned to other contacts still see masked values for those contacts
- This works regardless of whether the Miscellaneous toggles are on or off
Developer action required
This setting is in a PHP config file on the server — it cannot be changed from the dashboard UI. Contact your developer or system administrator to update config/assigned_staff.php.
How contact assignment works
When creating or editing a contact, the admin can pick a staff member from the Assigned dropdown. That staff member becomes the owner of that contact. Staff with the View Own contacts permission can only see their own assigned contacts.
How the System Decides — Decision Rules
The system checks conditions in order. As soon as one passes, the real value is shown:
| # | Who | Condition | Result |
|---|---|---|---|
| 1 | Tenant Admin | Logged-in user is the tenant admin | Always visible |
| 2 | Assigned Staff | Staff is assigned to this contact AND show_to_assigned_staff: true in config | Visible if both met |
| 3 | All Staff | Show Client Email / Phone to Staff toggle is ON in Miscellaneous | Visible for everyone |
| — | All other staff | None of the above conditions are met | Masked |
Full Visibility Matrix
| User | Misc Toggle | Assigned Staff Config | Assigned to This Contact? | Sees Real Data? |
|---|---|---|---|---|
| Tenant Admin | Any | Any | Any | ✅ Yes |
| Staff | ON | Any | Any | ✅ Yes |
| Staff | OFF | true | Yes | ✅ Yes |
| Staff | OFF | true | No | ❌ Masked |
| Staff | OFF | false | Any | ❌ Masked |
Related — Contact View Permissions
The visibility of phone/email is separate from the question of which contacts a staff member can see at all. That is controlled by role permissions:
| Permission | What it allows |
|---|---|
| Contact: View All | Staff can see all contacts in the system regardless of assignment |
| Contact: View Own | Staff can only see contacts where they are the assigned staff member — all others are hidden entirely |
Strictest privacy setup
Combine View Own permission with show_to_assigned_staff: true in the config. Staff can only see their assigned contacts, and see real phone/email only for those contacts — ideal for sales teams with dedicated territories.
Tips & Best Practices
- Keep both toggles OFF by default. This is the safest starting point — reveal access gradually as needed.
- Phone and email are independent. Reveal phone numbers so staff can call customers while keeping emails hidden, or vice versa.
- Activity logs are also protected. Phone numbers in raw webhook/API log data are masked for staff who lack phone visibility permission — even in the technical log view.