Azure Functions Setup Guide
Follow our setup guide to connect Azure Functions to Fivetran.
Prerequisites
To connect Azure Functions to Fivetran, you must have an Azure function.
Setup instructions
Select connection method
IMPORTANT: The Connection Method option is only available for Business Critical accounts.
First decide whether to connect Fivetran to your Azure Function App directly or using Azure Private Link.
Connect directly
Fivetran connects directly to your Azure Function App. This is the simplest connection method.
If you have a firewall enabled, create a firewall rule to allow access to Fivetran's IPs.
Connect using Private Link
IMPORTANT: You must have a Business Critical plan to use Azure Private Link.
Azure Private Link allows Virtual Networks (VNets) and Azure-hosted or on-premises services to communicate with one another without exposing traffic to the public internet. Learn more in Microsoft's Azure Private Link documentation.
Follow our Azure Private Link setup guide to configure Private Link for your function App.
Create Azure function
Create your Azure function. See Getting started with Azure Functions for instructions to create your function.
For more information about Azure Function implementation, see our Sample Azure Function.
Generate function key
Open the Microsoft Azure Portal.
On the navigation menu, click Function Apps.
Select the function for which you want to create the function key, and then click Manage.
Click Add new function key.
In the NAME field, enter a name for the new function key.
Click Save.
Select Click to show and make a note of the function key. You will need it to configure Fivetran.
Finish Fivetran configuration
In the connector setup form, enter your chosen Destination schema name.
Enter your Function App name.
Enter your Function Name.
Enter the Function Key you created in Step 2.
(Optional) Click + Add secrets to specify your secrets as key-value pairs.
- Enter your Secret Name. The secret name must be unique.
- Enter your Secret Key associated with the secret name.
For example, if you want to pass the
secrets
as{'apiKey': 'yourApiKey', 'consumerKey': 'test'}
, add a key-value pair for each entry in the JSON structure. Make sure that the key names are unique in the key-value pairs.TIP: For Azure Functions connectors created before August 9, 2023, enter your Secrets using the following JSON format:
{ "consumerKey": "", "consumerSecret": "", "apiKey": "yourApiKey" }
NOTE: For more information on
secrets
, see our Function request and response documentation.(Optional) Click + Add payload(s) to specify your custom payload(s) as key-value pair(s). Make sure that the key names are unique in the key-value pairs.
- Enter your Payload Name. The payload name must be unique.
- Enter your Payload Value associated with the payload name.
Connection Method: If you're on a Business Critical plan, choose how Fivetran should connect to your Azure Functions. You can choose to:
- Connect directly
- Connect via Private Link
Click Save & Test.
Fivetran tests and validates the Azure Functions connection. On successful completion of the setup tests, you can sync the data returned by the Azure function to your destination.
Setup tests
Fivetran performs the following Azure Functions connection tests:
- The Validate Secrets test checks if you have entered the secrets in a valid JSON format.
- The Validate Payloads test checks if you have entered the payloads in a valid JSON format.
- The Private Link connectivity test checks if we can connect to your Azure function using Private Link.
IMPORTANT: To connect to Azure Function using Private Link, you must be on the Business Critical plan. We skip this test if you are not on the Business Critical Plan.
- The Function Connection test checks if we can connect to your Azure Function and if the function’s response format is correct.
IMPORTANT: The setup tests may timeout if your function’s response size is more than 500 megabytes (MB). In the setup tests request, Fivetran passes the
setup_test
field astrue
; and your function must return a lightweight JSON object with thehasMore
field asfalse
, not exceeding 500 MB in size. The 500 MB size limitation is only applicable to the setup tests and not for your syncs.
Related articles
description Connector Overview
settings API Connector Configuration