---
url: >-
  https://docs.corbitaltech.dev/products/whatsmark-saas/tenant/staff-contact-visibility.md
description: >-
  Control whether staff members can see real client phone numbers and email
  addresses, or only masked versions. Covers global toggles and per-contact
  assigned-staff config.
---

# Staff Contact & Email Visibility&#x20;

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.

::: warning 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** | `john.doe@example.com` | `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**.

![Miscellaneous settings page showing staff visibility toggles](../images/tenant-system-settings/staff-visibility.png)

### 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**.

::: tip 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:

```php
// 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

::: warning 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`.
:::

::: info 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 |

::: tip 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.
