# Best-Practice Guide for SCA

This guide provides administrators with recommended practices for configuring and managing the Secure Contacts App (SCA) to ensure optimal performance and user experience.

### 1. Data Sources Hint

SCA can integrate contacts from multiple sources, each with different capabilities. Administrators should consider which sources are relevant for their organization.

**Available data sources include:**

* **Azure Active Directory (AAD)** – Primary source for company-wide contacts.
* **Global Address List / OrgContacts (GAL)** – External contacts integrated into the directory.
* **Personal Outlook Contacts (APC)** – User-managed personal contacts.
* **Dynamics 365 (D365)** – Contacts stored in Dynamics 365 entities.
* **Dataverse (DVRS)** – Contacts from apps built on Microsoft Dataverse.
* **Azure Blob Storage (ABS)** – Contacts exported via CSV/JSON from any app.
* **Shared Mailbox Contacts (SMC)** – Contacts from Exchange Online shared mailboxes.

**Tip:** Administrators can **rename, hide, or customize** any data source using App Config parameters. For details, see the [Data Sources documentation](/documentation/data-sources.md).

### 2. Phone Number Formatting

Ensure all phone numbers are stored in **international format** to enable accurate caller identification and cross-region compatibility.

#### Optional Configuration Parameters

SCA provides several optional configuration parameters to manage phone number handling:

* **`PhoneNumberParseCountryCode_Option`** → Automatically parse and add missing country codes.
* **`PhoneNumberIgnoreInvalid_Option`** → Filter out invalid phone numbers.
* **`PhoneNumberExtensionInfix_Option`** → Customize the extension marker to match your organization’s format.

For more details, see the [Valid Phone Numbers documentation](/documentation/valid-phone-numbers-for-sca.md).

### 3. Group-Based Assignment (Data Sources & Features)

Do you need to assign different data sources and SCA features to user groups?

* Use **multiple App Configuration Policies** and assign them to different Azure AD user groups.
* Each policy can provide **different SCA features and different data sources**, tailored to the needs of that group.

**Example:**

* The **Sales group** can be assigned Dynamics 365 contacts.
* The **Support group** can be assigned Shared Mailbox Contacts.
* The **Management group** can be assigned all available data sources and advanced features.

**Hint:** Group-based assignments let you control both **which data sources** and **which features** are available to each group, ensuring users only see what’s relevant to their role.

### 4. Customization and Branding

For Enterprise Edition users, customize the app’s appearance to align with corporate branding:

* [**Whitelabel / Customize the CI**](/documentation/app-configuration-policy-name-values-for-sca/sca-configuration-ci-customization.md) → Modify highlight/button colors and the flyout menu to match your corporate identity.

### 5. Service Menu Access

For security, [change the **default PIN**](/documentation/app-configuration-policy-name-values-for-sca/sca-configuration-seccontacts.defaults.md#service-menu-access) for accessing the hidden Service Menu.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.secure-contacts.com/quickstart-guide/best-practice-guide-for-sca.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
