Skip to content

singer-io/tap-iterable

 
 

Repository files navigation

tap-iterable

This is a Singer tap that produces JSON-formatted data following the Singer spec.

This tap:

  • Pulls raw data from iterable
  • Extracts the following resources:
    • campaigns
    • channels
    • email_bounce
    • email_click
    • email_complaint
    • email_open
    • email_send_skip
    • email_send
    • email_subscribe
    • email_unsubscribe
    • list_users
    • lists
    • message_types
    • metadata
    • templates
    • users
  • Outputs the schema for each resource
  • Incrementally pulls data based on the input state

Quick Start

  1. Install
$ pip install tap-iterable
  1. Create the config file

    Create a JSON file called config.json. Its contents should look like:

{
  "api_key": "xx",
  "start_date" : "2018-02-22T02:06:58.147Z",
  "api_window_in_days" : "10"       # optional field with default value "30"
}

NOTE : In the config file, "api_window_in_days" parameter should be set to an optimum value to improve historical sync performance. Setting this value too low will take longer to complete historical sync and setting it larger may result in request timeouts or memory overflow issues.

  1. Run the Tap in Discovery Mode

    tap-iterable -c config.json -d

    See the Singer docs on discovery mode here.

  2. Run the Tap in Sync Mode

    tap-iterable -c config.json --catalog catalog-file.json

Development

First, clone this repo. Then, in the directory:

$ python -m venv tap-iterable
$ make dev

Copyright © 2019 Stitch

About

Singer.io tap for extracting data from the Iterable API.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.6%
  • Makefile 0.4%