# Zendesk

The tap-zendesk extractor pulls data from the Zendesk API.

To learn more about tap-zendesk, refer to the repository at https://github.com/singer-io/tap-zendesk.

# Getting Started

# Prerequisites

If you haven't already, follow the initial steps of the Getting Started guide:

  1. Install Meltano
  2. Create your Meltano project

# Installation and configuration

# Using the Command Line Interface

  1. Add the tap-zendesk extractor to your project using meltano add:

    meltano add extractor tap-zendesk
    
  2. Configure the settings below using meltano config.

# Using Meltano UI

  1. Start Meltano UI using meltano ui:

    meltano ui
    
  2. Open the Extractors interface at http://localhost:5000/extractors.

  3. Click the "Add to project" button for "Zendesk".

  4. Configure the settings below in the "Configuration" interface that opens automatically.

# Next steps

Follow the remaining steps of the Getting Started guide:

  1. Select entities and attributes to extract
  2. Add a loader to send data to a destination
  3. Run a data integration (EL) pipeline

# Settings

tap-zendesk requires the configuration of the following settings:

In case of API token authentication:

In case of OAuth authentication:

Always:

These and other supported settings are documented below. To quickly find the setting you're looking for, use the Table of Contents in the sidebar.

# Minimal configuration

A minimal configuration of tap-zendesk in your meltano.yml project file will look like this:






 
 
 
 

plugins:
  extractors:
  - name: tap-zendesk
    variant: singer-io
    pip_url: tap-zendesk
    config:
      email: user@example.com
      subdomain: my_subdomain
      start_date: '2020-10-01T00:00:00Z'

Sensitive values are most appropriately stored in the environment or your project's .env file:

export TAP_ZENDESK_API_TOKEN=my_api_token

# Email

This is the email you use to login to your Zendesk dashboard.

Not necessary when using OAuth authentication and setting Access Token.

# How to use

Manage this setting using Meltano UI, meltano config, or an environment variable:

meltano config tap-zendesk set email <email>

export TAP_ZENDESK_EMAIL=<email>

# API Token

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-.

# How to get

  1. Login to your Zendesk dashboard.

Screenshot of sample Zendesk dashboard

  1. On the left navigation, scroll down to the Channels section to click on the API link. If you don't see this, your account does not have adequate permissions.

Screenshot of left nav with API link

  1. Ensure that Token Access is enabled

  2. Click on the + button to create a new API token

Screenshot of new API token creation

  1. Add Meltano as the API Token Description

  2. Copy the API token since it will not be shown again

  3. Click Save button to complete API key creation

# How to use

Manage this setting using Meltano UI, meltano config, or an environment variable:

meltano config tap-zendesk set api_token <token>

export TAP_ZENDESK_API_TOKEN=<token>

# Access Token

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.

# How to use

Manage this setting using Meltano UI, meltano config, or an environment variable:

meltano config tap-zendesk set access_token <token>

export TAP_ZENDESK_ACCESS_TOKEN=<token>

# Subdomain

When visiting your Zendesk instance, the URL is structured as follows: SUBDOMAIN.zendesk.com.

You'll need this subdomain when configuring the extractor.

For example, if the URL is meltano.zendesk.com, then the subdomain is meltano.

# How to use

Manage this setting using Meltano UI, meltano config, or an environment variable:

meltano config tap-zendesk set subdomain <subdomain>

export TAP_ZENDESK_SUBDOMAIN=<subdomain>

# Start Date

This property determines how much historical data will be extracted.

Please be aware that the larger the time period and amount of data, the longer the initial extraction can be expected to take.

# How to use

Manage this setting using Meltano UI, meltano config, or an environment variable:

meltano config tap-zendesk set start_date YYYY-MM-DDTHH:MM:SSZ

export TAP_ZENDESK_START_DATE=YYYY-MM-DDTHH:MM:SSZ

# For example:
meltano config tap-zendesk set start_date 2020-10-01T00:00:00Z

export TAP_ZENDESK_START_DATE=2020-10-01T00:00:00Z