Connect Azure Synapse to Digital Tap AI

⏱️ Estimated time: 5 minutes 📋 Difficulty: Easy 📅 Last updated: March 2026

1 Prerequisites

  • Azure Synapse workspace URL — e.g., https://your-workspace.dev.azuresynapse.net
  • Azure Service Principal — with tenant ID, client ID, and client secret
  • Azure subscription ID
  • Digital Tap AI accountsign up free

Creating a Service Principal

# Create the service principal
az ad sp create-for-rbac \
  --name "DigitalTapAI" \
  --role "Contributor" \
  --scopes "/subscriptions/YOUR_SUBSCRIPTION_ID/resourceGroups/YOUR_RG/providers/Microsoft.Synapse/workspaces/YOUR_WORKSPACE"

# Output:
# {
#   "appId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",      ← Client ID
#   "displayName": "DigitalTapAI",
#   "password": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",    ← Client Secret
#   "tenant": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"       ← Tenant ID
# }

2 Required Azure Roles

Assign these roles to the service principal:

  • Synapse Contributor — on the Synapse workspace (manage Spark pools, SQL pools)
  • Reader — on the resource group (discover resources)
  • Monitoring Reader — on the subscription (read Azure Monitor metrics)
# Assign Synapse Contributor
az role assignment create \
  --assignee "CLIENT_ID" \
  --role "Synapse Contributor" \
  --scope "/subscriptions/SUB_ID/resourceGroups/RG/providers/Microsoft.Synapse/workspaces/WORKSPACE"

# Assign Monitoring Reader
az role assignment create \
  --assignee "CLIENT_ID" \
  --role "Monitoring Reader" \
  --scope "/subscriptions/SUB_ID"

3 Install the Agent

Option A: Docker

docker run -d \
  --name digitaltap-agent \
  --restart unless-stopped \
  -e DT_API_KEY="your-digital-tap-api-key" \
  -e DT_PLATFORM="synapse" \
  -e AZURE_TENANT_ID="your-tenant-id" \
  -e AZURE_CLIENT_ID="your-client-id" \
  -e AZURE_CLIENT_SECRET="your-client-secret" \
  -e AZURE_SUBSCRIPTION_ID="your-subscription-id" \
  -e SYNAPSE_WORKSPACE_URL="https://your-workspace.dev.azuresynapse.net" \
  ghcr.io/digital-tap/agent:latest

Option B: Helm

helm repo add digitaltap https://charts.digitaltap.ai
helm repo update

helm install digitaltap-agent digitaltap/agent \
  --set apiKey="your-digital-tap-api-key" \
  --set platform="synapse" \
  --set azure.tenantId="your-tenant-id" \
  --set azure.clientId="your-client-id" \
  --set azure.clientSecret="your-client-secret" \
  --set azure.subscriptionId="your-subscription-id" \
  --set synapse.workspaceUrl="https://your-workspace.dev.azuresynapse.net" \
  --namespace digitaltap --create-namespace

4 Verify Connection

  1. Open your Digital Tap AI dashboard
  2. Navigate to IntegrationsConnected Platforms
  3. Your Synapse workspace should appear with discovered Spark and SQL pools

5 Synapse-Specific Optimization

  • Spark Pool Management — Detects idle Apache Spark pools and auto-pauses them
  • SQL Pool Optimization — Monitors dedicated SQL pool utilization and recommends pause/scale
  • Auto-Pause Enhancement — Tunes Synapse's built-in auto-pause settings for faster idle detection
  • Serverless SQL Optimization — Analyzes serverless SQL queries for cost-efficient patterns
  • Pipeline Optimization — Monitors Synapse pipeline runs and flags inefficient data flows
  • Storage Tiering — Optimizes ADLS Gen2 storage tiers for Synapse-linked data
  • Cost Attribution — Breaks down Synapse costs by pool, pipeline, and user

6 Troubleshooting

Authentication errors

  • Verify tenant ID, client ID, and secret are correct
  • Check the service principal hasn't expired: az ad sp show --id CLIENT_ID

No pools discovered

  • Confirm the service principal has Synapse Contributor role on the workspace
  • Verify workspace URL format: https://WORKSPACE.dev.azuresynapse.net
← Back to Quickstart Full API Docs →