Ultimate
Connect Azure Synapse Analytics to Experience Platform using the Flow Service API
- Topics:
- Sources
CREATED FOR:
- Developer
Read this guide to learn how to connect your Azure Synapse Analytics account to Adobe Experience Platform using the Flow Service API.
Get started
This guide requires a working understanding of the following components of Experience Platform:
- Sources: Experience Platform allows data to be ingested from various sources while providing you with the ability to structure, label, and enhance incoming data using Experience Platform services.
- Sandboxes: Experience Platform provides virtual sandboxes which partition a single Experience Platform instance into separate virtual environments to help develop and evolve digital experience applications.
The following sections provide additional information that you will need to know in order to successfully connect to Azure Synapse Analytics using the Flow Service API.
Gather required credentials
Read the Azure Synapse Analytics overview for information on authentication.
Using Experience Platform APIs
For information on how to successfully make calls to Experience Platform APIs, see the guide on getting started with Experience Platform APIs.
Connect Azure Synapse Analytics to Experience Platform
Read the following to learn how to create a base connection and connection your Azure Synapse Analytics account to Experience Platform.
Create a base connection
A base connection stores key information that links your source system to Adobe Experience Platform. This includes:
- Your source’s authentication credentials
- The current status of the connection
- A unique base connection ID
The base connection ID allows you to browse and explore files from your source, helping you identify which items to ingest, along with their data types and formats.
To create a base connection ID, send a POST request to the /connections
endpoint, including your Azure Synapse Analytics authentication credentials in the request parameters.
API format
POST /connections
Request
The following request creates a base connection for Azure Synapse Analytics using connection string based authentication.
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/connections' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"name": "Connection for Azure Synapse Analytics",
"description": "Connection for Azure Synapse Analytics",
"auth": {
"specName": "Connection String Based Authentication",
"params": {
"connectionString": "Server=tcp:{SERVER_NAME}.database.windows.net,1433;Database={DATABASE};User ID={USERNAME}@{SERVER_NAME};Password={PASSWORD};Trusted_Connection=False;Encrypt=True;Connection Timeout=30"
}
},
"connectionSpec": {
"id": "a49bcc7d-8038-43af-b1e4-5a7a089a7d79",
"version": "1.0"
}
}'
auth.params.connectionString
Server=tcp:{SERVER_NAME}.database.windows.net,1433;Database={DATABASE};User ID={USERNAME}@{SERVER_NAME};Password={PASSWORD};Trusted_Connection=False;Encrypt=True;Connection Timeout=30
.connectionSpec.id
a49bcc7d-8038-43af-b1e4-5a7a089a7d79
.Response
A successful response returns details of the newly created base connection, including its unique identifier (id
).
{
"id": "6bc13a3b-3546-455f-813a-3b3546a55fb1",
"etag": "\"3500866c-0000-0200-0000-5e83afa30000\""
}
The following request creates a base connection for Azure Synapse Analytics using service principal key based authentication.
Request
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/connections' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"name": "Connection for Azure Synapse Analytics",
"description": "Connection for Azure Synapse Analytics",
"auth": {
"specName": "Service Principal Key Based Authentication",
"params": {
"server": "yourworkspace.sql.azuresynapse.net",
"database": "SalesDW",
"tenant": "72f988bf-86f1-41af-91ab-2d7cd011db47",
"servicePrincipalId": "e7b8c1f2-1234-4c9a-9f3e-abcdef123456",
"servicePrincipalKey": "~XyZ1234abcDEF5678..."
}
},
"connectionSpec": {
"id": "a49bcc7d-8038-43af-b1e4-5a7a089a7d79",
"version": "1.0"
}
}'
auth.params.server
auth.params.database
auth.params.tenant
auth.params.servicePrincipalId
auth.params.servicePrincipalKey
connectSpec.id
Response
A successful response returns details of the newly created base connection, including its unique identifier (id
).
{
"id": "6bc13a3b-3546-455f-813a-3b3546a55fb1",
"etag": "\"3500866c-0000-0200-0000-5e83afa30000\""
}
Next steps
By following this tutorial, you have created a Azure Synapse Analytics base connection using the Flow Service API. You can use this base connection ID in the following tutorials: