Skip to content

n8sty/tap-kanbanize

Repository files navigation

tap-kanbanize

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

Quick start

  1. 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
  2. Get your Kanbanize apikey

  3. Create the configuration file

    Using the config.example.json file, fill in the apikey, subdomain, and boardid and then name it appropriately

    mv config.example.json config.json
  4. Use discovery mode to create a properties file

    tap-kanbanize --discover --config config.json > properties.json
  5. Select the streams to sync by adding "selected": true to a schema definition in the properties.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"
                ]
              },
    ...
    
  6. Run it!

    tap-kanbanize --config config.json --properties properties.json

Developer set-up additional steps

  1. Install additional dependencies that aid in development

    cd tap-kanbanize  # make sure you're in the project root
    pipenv install --dev '-e .[dev]'

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages