SCA Configuration - SecContacts.ServiceUrls

SecContacts.ServiceUrls

This setting is for adding service URLs of custom Dataverse data sources, e.g., Dynamics 365. It enables Secure Contacts App (SCA) to connect to D365 or Dataverse (DVRS) as data sources.

  • Name: SecContacts.ServiceUrls

  • Value: [{"name":"<service ID>", "value":"<service URL>"}]

The Value property is a JSON array of name-value pairs. Each entry represents one data source connection.

SCA treats each entry as an individual data source:

  • If there is only one entry of a given name (e.g., a single D365), it is used as the default data source and no numbering is applied.

  • If there are multiple entries of the same name, SCA assigns sequential IDs automatically, such as D3651, D3652, DVRS1, DVRS2, and so on.

Filters (apiFilter) can be used to split one data source into multiple logical subsets.

Configuration fields

Common fields (D365 & DVRS)

Field
Type
Required
Description
Notes

name

string

Yes

Must be either D365 or DVRS.

Multiple entries allowed if each has a distinct apiFilter.

value

string (URL)

Yes

Base service URL of the data source.

Must be a valid HTTPS Dynamics 365 or Dataverse URL.

apiFilter

string (OData filter)

Optional

Splits the data source into subsets or restricts records.

If omitted, all contacts are retrieved.

D365-only fields (for customized contact entities)

These optional mappings let you add additional custom fields if the Dynamics 365 contact entity has been customized. If the contacts use the standard schema, these fields are not required.

Field
Type
Required
Description

ccHomePhone

string

Optional

Name of the column that holds the home phone number.

ccBusinessPhone

string

Optional

Name of the column that holds the business phone number.

ccMobilePhone

string

Optional

Name of the column that holds the mobile phone number.

ccPrivateMobilePhone

string

Optional

Name of the column that holds the private mobile phone number.

ccEmailAddress

string

Optional

Name of the column that holds the email address.

Examples

Minimal configuration (required fields only)

[
  {
    "name": "D365",
    "value": "https://yourorg.crm.dynamics.com"
  }
]

Splitting one data source with filters

[
  {
    "name": "DVRS",
    "value": "https://yourorg.crm.dynamics.com",
    "apiFilter": "startswith(fullname,'A')"
  },
  {
    "name": "DVRS",
    "value": "https://yourorg.crm.dynamics.com",
    "apiFilter": "startswith(fullname,'M')"
  }
]

Auto-enumeration applies because there are multiple entries of the same type (DVRS):

  • First entry → DVRS1

  • Second entry → DVRS2

Each apiFilter defines the subset of contacts retrieved for that data source.

Using D365-specific custom fields

[
  {
    "name": "D365",
    "value": "https://yourorg.crm.dynamics.com",
    "ccMobilePhone": "MobilePhoneCustom",
    "ccPrivateMobilePhone": "PrivateMobileCustom",
    "ccEmailAddress": "EmailCustom"
  }
]

Replace each placeholder with the actual name of the corresponding column in the Dynamics 365 contact entity. For example, replace <MobilePhoneCustom> with the actual column name.

Single entry with optional D365-only fields. This will be treated as the default D365 data source.

Permissions & Security Considerations

  • Data access depends on the user’s role and privileges in Dynamics 365 or Dataverse.

  • Within D365/DVRS, users need a security role with at least read access to the contact entity (and any custom fields referenced, such as <MobilePhoneCustom>).

Last updated

Was this helpful?