Introduction
In this article, find out how you may be able to sync data from a source that Fivetran does not currently have a connector for (e.g., a third-party application or vendor).
Before getting started, please check out Fivetran's Connector Directory to see whether the vendor is already listed as an option or Coming Soon.
Recommendation
Fivetran supports four main workarounds for connecting to non-native sources:
- Regular file exports from source to cloud storage.
Fivetran supported cloud-based storage services. - Connect to an underlying database.
Fivetran supported databases. - Custom cloud functions to pull data from source API.
Fivetran supported Cloud Functions. - Configure webhooks to push data.
Fivetran Webhooks.
Some common web searches to find if these options exist include:
- [ source name ] + data export
- [source name ] + API
- [source name ] + webhooks
If you’re not sure which of these options are available for you, we also recommend connecting directly with your source vendor, sharing these above options, and asking them which one(s) they support.
Considerations
Depending on your source application, one workaround might be more appropriate than another; the considerations section tries to illustrate the pros and cons of each respective approach.
File Exports
File exports can generate full file refreshes or delta files for each new file created and delivered to Fivetran. We advise that you pay careful attention when setting up file connectors in Fivetran to avoid unnecessary high MAR.
Database
This option has some added benefits because not only can you securely connect to the database—but depending on the database—you will also be able to track the changes that occur (e.g. binlogs in MySQL, logical replication in Postgres, CDC in SQL Server, etc.)
Custom Cloud Functions
If you desire custom cloud functions but do not have technical development resources, reach out to your Fivetran team to discuss the option of working with a consulting partner.
Webhooks
If an API that we support uses a webhook, we recommend using the API to connect because webhooks circumvent the transformation of the ETL process. We have not optimized our Webhooks connector for a specific source because we built it to be flexible to support and connect with as many APIs as possible.
We only store the events that we receive after you configure the webhook and cannot fetch historical event data from the web app.
If there's a service that we don't support (have a connector), but the service has a webhooks API, you can use the service's webhooks to send event data to the Fivetran URL endpoint and we will sync the data to your destination.