Skip to main content

Hightouch Provider for Airflow

Project description

Apache Airflow Provider for Hightouch

Provides an Airflow Operator and Hook for Hightouch. This allows the user to initiate a run for a sync from Airflow.

Installation

Pre-requisites: An environment running apache-airflow >= 1.10, including >= 2.

pip install airflow-provider-hightouch

Configuration

In the Airflow Connections UI, create a new connection for Hightouch.

  • Conn ID: hightouch_default
  • Conn Type: HTTP
  • Host: https://app.hightouch.io
  • Password: enter the API key for your workspace. You can generate an API key from your Workspace Settings

The Operator uses the hightouch_default connection id by default, but if needed, you can create additional Airflow Connections and reference them in the operator

Modules

HightouchTriggerSyncOperator

Starts a Hightouch Sync Run. Requires the sync_id for the sync you wish to run. You can find the sync_id in the browser url: https://app.hightouch.io/syncs/[your-sync-id]

The run is asynchronous, and the task will be marked complete if the request was successfully sent to the Hightouch API.

If the API key is not authorized or if the request is invalid the task will fail. If a run is already in progress, a new run will be triggered following the completion of the existing run.

Examples

Creating a run is as simple as importing the operator and providing it with a sync_id. An example dag is available as well.

from airflow_provider_hightouch.operators.hightouch import HightouchTriggerSyncOperator

with DAG(....) as dag:
...
    my_task = HightouchTriggerSyncOperator(task_id="run_my_sync", sync_id=1)

Issues

Please submit issues and pull requests in our official repo: https://github.com/hightouchio/airflow-provider-hightouch

We are happy to hear from you, for any feedback please email the authors at pedram@hightouch.io.

Acknowledgements

Special thanks to Fivetran for their provider and Marcos Marx's Airbyte contribution in the core Airflow repo for doing this before we had to so we could generously learn from their hard work.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

airflow-provider-hightouch-0.1.0.tar.gz (4.2 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file airflow-provider-hightouch-0.1.0.tar.gz.

File metadata

  • Download URL: airflow-provider-hightouch-0.1.0.tar.gz
  • Upload date:
  • Size: 4.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.23.0 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.1

File hashes

Hashes for airflow-provider-hightouch-0.1.0.tar.gz
Algorithm Hash digest
SHA256 90ce40a8b138bdd3d9fc5b4e70a9e0c6efc1ab13c0b6c6eaa595398f79af578d
MD5 5944ab7a52dc4a3475564673fd2210d2
BLAKE2b-256 52594af5ccbc7ba5257f99aefbdf98cbdb0dcd71b1d1250e7aac824bbdea7110

See more details on using hashes here.

File details

Details for the file airflow_provider_hightouch-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: airflow_provider_hightouch-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.23.0 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.1

File hashes

Hashes for airflow_provider_hightouch-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f9801f34898c655c8301c4b928ee37e397d81e3a42f954ca5d9637078ec4bb23
MD5 b9265eb48c22691fcfd2bb8e913e481b
BLAKE2b-256 d20be0c6b5f35d653742b68805f74fccdddcd9f305ab28b9d79ae722fb531c50

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page