Skip to content

leighton-tracksuit/fivetran_sdk

 
 

Repository files navigation

Fivetran Partner SDK

A way for partners to create connectors and destinations that run on Fivetran’s platform. Read more in our product docs.

Repo Structure

This repo consists of example connectors and destinations along with a local testing environment. Connectors and destinations are written in a gRPC supported language that can generate a statically linked binary. We recommend Java, Golang, or Rust.

Development

You can follow the SDK Development Guide for guidance on how to develop your code.

Once you have your code ready to run:

  1. Start up your connector running on port 50051 (for destination code, use port 50052).
  2. Run the local test environment.

Our READMEs for connectors and destinations will take you through setting up the local test environment.

To run an example connector or destination from examples directory, follow the README specific to the example.

Other Examples

You can look at the following public repos to see how other partners have built their connectors:

Connectors

Destinations

Partner Process

How does it work?

You build a connector or destination using our SDK in this repo. We’ll deploy it to our platform, and customers can discover it via the Fivetran website, dashboard, and product documentation. We’ll tag it with a partner-built designation and explain the support process to customers.

How do we deploy?

Right now, we are employing manual processes before getting into automation. You put your code in a public GitHub repo, we pull the code, inspect it, and build the executable binary to deploy to our platform.

How do we test?

We expect testing to ensure your connector or destination is working as expected, either with test data or with a customer who is eager to adopt. We provide testers in this repo you can use locally without connecting to Fivetran platform. We also recommend you think through typical scenarios for testing:

  • Handle all data type mappings (between Fivetran data types and source/destination data types)
  • Big data loads
  • Big incremental updates
  • Narrow event tables
  • Wide fact tables

How do we collaborate on support?

Once we get customers using your connector or destination, they can reach out to either Fivetran or you via support portals. Whoever receives a support ticket triages it and either fixes the issue and emails the customer back or passes it to the other side for handling.

Our response times are articulated in our Fivetran Support Policy documentation. Bear in mind customers may expect your support response times to be similar. We recommend linking to your own SLAs/Support policies from the documentation you create for Fivetran.

How do we create product documentation?

All Fivetran connectors have public documentation. For the SDK, we will need you to produce the following:

We’ll consume these docs and our tech-writing team will edit for grammar and style, sending back to your team (TBD on automation) to keep in sync.

How do we go-to-market?

Fivetran will market through multiple methods:

  • Connector release blogs
  • Monthly email updates

Your connector will appear in the following places:

  • On our website in our connector directory
  • In our dashboard connector list/search
  • In our public documentation

I am sold! How do I get started?

Reach out to us via this intake form and we'll go from there. The process typically looks like this:

  1. Explore this repo.
  2. Meet with us to go over the Partnership Agreement.
  3. Build the connector (source, destination, or both).
  4. Test it locally.
  5. Create product documentation (Overview and Setup Guide pages as Markdown files)
  6. Deploy to production on our platform.
  7. Test in production.
  8. Move to Private Preview.
  9. Handle support:
    • Share an email address we can send customer related issues to
    • Share a link to your SLAs
  10. Go-to-market with us.

How do I get help?

After you meet with us, we will create a shared Slack channel where we can assist you.

About

Houses the proto files and examples for Fivetran's Partner SDK

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published