Skip to main content

Singer.io tap for extracting data from the Zendesk API

Project description

Pipelinewise-tap-zendesk

PyPI version PyPI - Python Version License: MIT

Singer tap that extracts data from a Zendesk API and produces JSON-formatted data following the Singer spec.

This is a PipelineWise compatible tap connector.

How to use it

The recommended method of running this tap is to use it from PipelineWise. When running it from PipelineWise you don't need to configure this tap with JSON files and most of things are automated. Please check the related documentation at Kafka

If you want to run this Singer Tap independently please read further.

Install and Run

First, make sure Python 3 is installed on your system or follow these installation instructions for Mac or Ubuntu.

It's recommended to use a virtualenv:

  python3 -m venv venv
  pip install pipelinewise-tap-zendesk

or

  python3 -m venv venv
  . venv/bin/activate
  pip install --upgrade pip
  pip install -e .[test]

Configuration

Authentication

Using OAuth

OAuth is the default authentication method for tap-zendesk. To use OAuth, you will need to fetch an access_token from a configured Zendesk integration. See https://support.zendesk.com/hc/en-us/articles/203663836 for more details on how to integrate your application with Zendesk.

config.json

{
  "access_token": "AVERYLONGOAUTHTOKEN",
  "subdomain": "acme",
  "start_date": "2000-01-01T00:00:00Z"
}

Using API Tokens

For a simplified, but less granular setup, you can use the API Token authentication which can be generated from the Zendesk Admin page. See https://support.zendesk.com/hc/en-us/articles/226022787-Generating-a-new-API-token- for more details about generating an API Token. You'll then be able to use the admins's email and the generated api_token to authenticate.

config.json

{
  "email": "user@domain.com",
  "api_token": "THISISAVERYLONGTOKEN",
  "subdomain": "acme",
  "start_date": "2000-01-01T00:00:00Z"
}

Run the tap in Discovery Mode

tap-zendesk --config config.json --discover                # Should dump a Catalog to stdout
tap-zendesk --config config.json --discover > catalog.json # Capture the Catalog

Run the tap in Sync Mode

tap-zendesk --config config.json --catalog catalog.json

The tap will write bookmarks to stdout which can be captured and passed as an optional --state state.json parameter to the tap for the next sync.

To run tests:

  1. Install python test dependencies in a virtual env and run nose unit and integration tests
  python3 -m venv venv
  . venv/bin/activate
  pip install --upgrade pip
  pip install .[test]
  1. To run tests:
  nosetests test

To run pylint:

  1. Install python dependencies and run python linter
  python3 -m venv venv
  . venv/bin/activate
  pip install --upgrade pip
  pip install .[test]
  pylint --rcfile .pylintrc tap_zendesk

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

pipelinewise-tap-zendesk-1.2.0.tar.gz (30.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pipelinewise_tap_zendesk-1.2.0-py3-none-any.whl (34.8 kB view details)

Uploaded Python 3

File details

Details for the file pipelinewise-tap-zendesk-1.2.0.tar.gz.

File metadata

  • Download URL: pipelinewise-tap-zendesk-1.2.0.tar.gz
  • Upload date:
  • Size: 30.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.3

File hashes

Hashes for pipelinewise-tap-zendesk-1.2.0.tar.gz
Algorithm Hash digest
SHA256 32e9e414aecf66d557210c0651f51f6df5de1751d33acfcbd5bd2986b06d6640
MD5 4522855c43f9865e218e26091be3043b
BLAKE2b-256 b38d74a41e796da8912792b7c80ecb6b6a41a9a0a45e57db7a9e4a1614461547

See more details on using hashes here.

File details

Details for the file pipelinewise_tap_zendesk-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: pipelinewise_tap_zendesk-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 34.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.3

File hashes

Hashes for pipelinewise_tap_zendesk-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e645e722b402c851e239231923b8191136a316c0a3ff38dbe94f168f01081b3f
MD5 fac93ed92d7947cd14e2a5caed06c018
BLAKE2b-256 2b85c4f5d5cf38c0bfde6c65c3bc00d4409273d1e905e6b6dec24c2379a6783c

See more details on using hashes here.

Supported by

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