# SCA Configuration - SecContacts.AzureBlobStorage

### **SecContacts.AzureBlobStorage** <a href="#seccontacts.azureblobstorage" id="seccontacts.azureblobstorage"></a>

This setting defines Azure Blob Storage (ABS) as an optional data source for contacts.\
It enables Secure Contacts App (SCA) to retrieve contact data from CSV or JSON files stored in Azure Blob Storage. These CSV or JSON files can be exported contacts from any application, including on-premises systems. Exports are parsed, encrypted, and uploaded to Azure Blob Storage using the [ABS Connector (ABScon)](#abs-connector-overview).

* Name: `SecContacts.AzureBlobStorage`
* Value: `[{"name":"<abs name>", "value":"<abs access key>"}]`

The Value property is a JSON array of `name`-`value` pairs.

* If there is only one entry, it becomes the default Azure Blob Storage data source.
* If there are multiple entries, SCA assigns sequential IDs automatically (e.g., `ABS1`, `ABS2`, `ABS3`), regardless of the `name` value.
* Each entry represents a separate CSV or JSON source file.

### **Configuration fields**

<table><thead><tr><th width="115">Field</th><th width="114.99993896484375">Type</th><th width="114.9998779296875">Required</th><th>Description</th></tr></thead><tbody><tr><td><code>name</code></td><td>string</td><td>Yes</td><td>Unique identifier for the Azure Blob Storage entry. Can be any value.</td></tr><tr><td><code>value</code></td><td>string</td><td>Yes</td><td><strong>ABS access key (generated by ABScon)</strong> for the Azure Blob Storage.</td></tr></tbody></table>

### Examples

**Single Azure Blob Storage entry**

```json
[
  {
    "name": "ABS1",
    "value": "Xt8TVki4+ndWtqSVTAXTNr(...)0UFWNuDo2du3wZ5w92a7w=="
  }
]
```

Single entry becomes the default Azure Blob Storage data source (`ABS`). No numbering is applied because it’s the only entry.

**Multiple Azure Blob Storage entries**

```json
[
  {
    "name": "ABS1",
    "value": "Xt8TVki4+ndWtqSVTAXTNr(...)0UFWNuDo2du3wZ5w92a7w=="
  },
  {
    "name": "ABS2",
    "value": "Qz1Vki5+abWtqXYTAXTNm(...)1XFWNuDo9du3wZ7x92b=="
  },
  {
    "name": "ABS-Extra",
    "value": "Abc123XyZ(...)7890=="
  }
]
```

Auto-enumeration applies because there are multiple entries:

* First entry → `ABS1`
* Second entry → `ABS2`
* Third entry → `ABS3`

Each entry represents a separate CSV or JSON source file uploaded via the ABS Connector.

### ABS Connector Overview

The Azure Blob Storage Connector (ABScon) is a command-line tool that allows an administrator to:

1. Parse pre-exported contacts from CSV or JSON files.
2. Map properties from any exported format into the SCA contact format.
3. Encrypt the files automatically.
4. Upload the encrypted files to Azure Blob Storage.

Download ABS Connector (ABScon): Contact us for details.

{% hint style="warning" %}
**Note**: The ABS access key must be generated manually for each `Azure Blob Storage entry`. This key can be generated using the ABS Connector (ABScon) during configuration.
{% endhint %}

Once the files are in Azure Blob Storage, SCA can retrieve them as a data source, **treating each file as a separate contact source**.

Each uploaded file can correspond to one entry in SecContacts.AzureBlobStorage. Multiple files can be configured, and SCA will auto-enumerate the data sources (e.g., `ABS1`, `ABS2`, …).

{% hint style="success" %}
**Automation note**: The process can be easily automated using scheduled tasks. For example:

1. Export contacts from the source application into CSV or JSON.
2. Call ABS Connector (ABScon) with parameters and the path to the exported file.
3. ABScon handles parsing, property mapping, encryption, and upload.

This scheduled task can run daily or at any frequency depending on how often the source data changes.
{% endhint %}
