Working with Connectors — SQL, Blob Storage, Outlook
What Are Connectors?
Connectors are pre-built interfaces that allow Azure Logic Apps to communicate with external services, APIs, and data sources without writing custom integration code. They handle authentication, connection management, and data serialization.
Types of Connectors
| Feature | Built-in Connectors | Managed Connectors | Custom Connectors |
|---|---|---|---|
| Hosting | Run directly in the Logic Apps runtime | Hosted and managed by Microsoft | Created and managed by you |
| Latency | Lower (in-process) | Higher (external API call) | Varies |
| Cost | Included in base price | Per-execution billing | Per-execution billing |
| Examples | HTTP, Schedule, Inline Code | SQL Server, Outlook, Blob Storage | Your own REST/SOAP APIs |
| Availability | Standard & Consumption | Standard & Consumption | Standard & Consumption |
| Scalability | Scales with workflow | Throttled by Microsoft | Subject to your API limits |
Step-by-Step: Add a SQL Connector to Read Data
1. Open the Logic Apps Designer
Navigate to your Logic App in the Azure Portal and open the designer view.

2. Add a New Step
Click + New step after your trigger and search for "SQL Server".

3. Select the Action
Choose Get rows (V2) to read data from a SQL table.

4. Configure the Connection
Provide your SQL Server connection details:
- Server name: your-server.database.windows.net
- Database name: your-database
- Authentication: SQL Server Authentication or Managed Identity

5. Configure the Query
Select the table name and optionally add a filter query (OData format) and row count limit.

6. Test the Step
Run the workflow and verify the SQL data appears in the output.

Step-by-Step: Add Blob Storage Connector to Upload a File
1. Add a New Step
Click + New step and search for "Azure Blob Storage".

2. Select the Action
Choose Create blob (V2) to upload a file.

3. Configure the Connection
Provide your storage account details:
- Storage account name: your-storage-account
- Authentication: Access Key, Managed Identity, or Azure AD

4. Set Blob Parameters
Configure:
- Container: select or type the target container
- Blob name: define the file path/name (can use dynamic content)
- Blob content: provide the file content from a previous step

5. Test the Upload
Run the workflow and verify the blob appears in your storage container.

Step-by-Step: Add Outlook Connector to Send Email
1. Add a New Step
Click + New step and search for "Office 365 Outlook".

2. Select the Action
Choose Send an email (V2).

3. Authenticate
Sign in with your Microsoft 365 account when prompted. This creates an OAuth connection.

4. Compose the Email
Configure:
- To: recipient email address (can use dynamic content)
- Subject: email subject line
- Body: email body (supports HTML)

5. Test the Email
Run the workflow and verify the email arrives in the recipient's inbox.

Authentication Options
| Method | Use Case | Connectors |
|---|---|---|
| Connection String | Quick setup for development/testing | SQL Server, Blob Storage |
| Managed Identity | Production workloads, no secrets to manage | SQL Server, Blob Storage, Key Vault |
| OAuth 2.0 | User-delegated access to Microsoft 365 services | Outlook, SharePoint, Teams |
| Service Principal | App-level access without user context | Blob Storage, SQL Server |
| Access Key | Simple storage account access | Blob Storage |
Recommendations
- Use Managed Identity for production to avoid storing credentials
- Use OAuth for connectors that act on behalf of a user
- Rotate connection strings and access keys regularly
- Store secrets in Azure Key Vault and reference them in your connections
Common Issues
| Issue | Cause | Solution |
|---|---|---|
| "Forbidden" error on SQL connector | Firewall blocking Logic App IP | Add Logic App outbound IPs to SQL Server firewall rules |
| Blob upload fails with 404 | Container does not exist | Create the container before running the workflow |
| Outlook connector expires | OAuth token refresh failed | Re-authorize the connection in API Connections |
| "Gateway timeout" on SQL | Query takes too long | Add filters to reduce result set or increase timeout |
| Managed Identity not working | Identity not assigned RBAC role | Assign the appropriate role (e.g., Storage Blob Data Contributor) |
| Connection shows "Invalid" | Credentials rotated or expired | Update the API connection with new credentials |
Previous: Logic Apps Triggers
Next: Data Operations