Docs / Contact / connectors/azure-blob-storage

Azure Blob Storage

Provider: azure | Service: storage | Direction: Write

Azure Blob Storage connector for writing (uploading) data to a blob container.

Required Permissions

If using Azure RBAC (recommended with role auth), the Contact service principal must have:

Operation Required Azure Role
Upload Storage Blob Data Contributor
Tip: Assign the role at the storage account or container level for least privilege. If using an account key (api_key auth), all operations are implicitly authorized.

Operation

When a message reaches this connector, it writes a blob to the configured container. The payload must supply:

Payload field Required Description
path Yes Blob name/path within the container
content Yes Blob content to upload

Connector Configuration

The connector is created with type: "cloud", provider: "azure", service_type: "storage", plus:

Field (config) Required Description
auth_type No api_key (default) or role. See below.
account_name Yes Azure storage account name
account_key Conditional Storage account access key (use ${secrets.azure_storage_key}). Required when auth_type is api_key.
container Yes Blob container name
Role-based (cross-tenant) authentication

Set auth_type: "role" to authenticate as the Contact Azure AD application registered in your tenant. Provide tenant_id (required) and account_name; no account_key is needed.

Output

json

{
  "status": "completed",
  "data": {
    "status": "uploaded",
    "path": "events/abc123.json"
  }
}

Example

Connector config (account key):

json

{
  "type": "cloud",
  "provider": "azure",
  "service_type": "storage",
  "account_name": "mystorageaccount",
  "account_key": "${secrets.azure_storage_key}",
  "container": "device-data"
}

Connector config (cross-tenant role):

json

{
  "type": "cloud",
  "provider": "azure",
  "service_type": "storage",
  "auth_type": "role",
  "tenant_id": "00000000-0000-0000-0000-000000000000",
  "account_name": "mystorageaccount",
  "container": "device-data"
}