This is a Singer tap that produces JSON-formatted data following the Singer spec.
This tap:
- Pulls raw data from Kanbanize
- Extracts the following resources:
- Outputs the schema for each resource
- Incrementally pulls data based on the input state
-
Install
I suggest you use
pipenv
for virtual environment generation and management.pipenv --three # create a Python 3 virtualenv pipenv install git+https://github.com/n8sty/tap-kanbanize@0.1.1#egg=tap-kanbanize # make sure that the version specified is correct (ie: the latest) pipenv shell # activate the virtualenv
-
Get your Kanbanize
apikey
-
Create the configuration file
Using the
config.example.json
file, fill in theapikey
,subdomain
, andboardid
and then name it appropriatelymv config.example.json config.json
-
Use discovery mode to create a properties file
tap-kanbanize --discover --config config.json > properties.json
-
Select the streams to sync by adding
"selected": true
to a schema definition in theproperties.json
file created in the previous step. The below syncs the tasks stream:{ "streams": [ { "stream": "tasks", "key_properties": "taskid", "tap_stream_id": "tasks", "schema": { "selected": true, "additionalProperties": false, "properties": { "lanename": { "type": [ "null", "string" ] }, ...
-
Run it!
tap-kanbanize --config config.json --properties properties.json
-
Install additional dependencies that aid in development
cd tap-kanbanize # make sure you're in the project root pipenv install --dev '-e .[dev]'