/tap-gong

Singer tap for Gong.io built with the Meltano SDK for Singer

Primary LanguagePython

tap-gong

tap-gong is a Singer tap for Gong.io. It is built with the Meltano SDK for Singer Taps.

Configuration

Accepted Config Options

The Gong tap accepts the following configuration options:

  • access_key(required): An API access key generated in Gong.
  • access_key_secret(required): The secret for the access key.
  • start_date(required): The beginning date from which to start searching calls. Default is python min date.
  • end_date(required): The end date for searching calls. Default is current date.

** NOTE **

start_date and end_date are required and used in filter clause to make gong API calls. As of today, different API endpoints have different requirements for filter dates. For example,

Calls endpoints: for calls endpoints, filter dates are optional and uses date-time format (e.g., '2018-02-18T02:30:00-07:00' or '2018-02-18T08:00:00Z', where Z stands for UTC).

Stats endpoints: for stats endpoints filter dates are mandatory and accepts date format (YYYY-MM-DD). start_date must be less than end_date and end_date cannot be greater than current date for stats endpoints. tap-gong uses python min date for start_date and current date for end_date if filter dates are not provided. It also adjusts start_date by reducing one day if same date is provided for start_date and end_date.

Please refer to the Gong API documentation for more details.

A full list of supported settings and capabilities for this tap is available by running:

tap-gong --about

Source Authentication and Authorization

Gong API currently supports authentication Basic and OAuth authentication mechanism. This version of tap-gong currently supports only Basic authentication mechanism.

Credentials can be generated by following the instructions in the Gong API documentation.

Usage

You can easily run tap-gong by itself or in a pipeline using, for example, Meltano.

Executing the Tap Directly

tap-gong --version
tap-gong --help
tap-gong --config CONFIG --discover > ./catalog.json

Developer Resources

Initialize your Development Environment

This project uses a pyproject.toml to define its requirements. To install a new virtual environment with Poetry, run:

poetry install

Create and Run Tests

Create tests within the tap_gong/tests subfolder and then run:

poetry run pytest

You can also test the tap-gong CLI interface directly using poetry run:

poetry run tap-gong --help

SDK Dev Guide

See the dev guide for more instructions on how to use the SDK to develop your own taps and targets.