InTouch Hub · Blue Isle Software

Gong

Pull call recordings, transcripts, and deal-conversation analytics from Gong via the Gong v2 REST API.

Gong

Pull call recordings, transcripts, and deal-conversation analytics from Gong via the Gong v2 Public REST API.

The tool talks to https://api.gong.io using Python's standard library only (no requests), authenticating with HTTP Basic auth derived from your Gong Access Key and Access Key Secret. Response bodies are capped at ~5 MB.

Operations

operation HTTP Endpoint Purpose
list_calls GET /v2/calls List call metadata for a date range (recordings, durations, participants, URLs).
get_transcript POST /v2/calls/transcript Retrieve full transcripts for one or more calls.
get_extensive POST /v2/calls/extensive Pull extensive deal-conversation analytics (trackers, topics, brief, outline, highlights, speakers, comments).

apiKey setup

Gong's Public API uses HTTP Basic authentication. The Access Key is the username and the Access Key Secret is the password; they are joined with a colon, base64-encoded, and sent as Authorization: Basic <token>.

  1. In Gong, go to Company Settings → Ecosystem → API (admin required).
  2. Generate an API Access Key. Gong shows an Access Key and an Access Key Secret — copy both (the secret is shown only once).
  3. Pass them to this tool as a single apiKey value in the form:

accessKey:accessKeySecret

The tool base64-encodes the colon-joined pair for you.

Default rate limits are 3 calls/second and 10,000 calls/day; exceeding them returns HTTP 429 with a Retry-After header.

Inputs

input required description
apiKey yes accessKey:accessKeySecret.
operation yes One of list_calls, get_transcript, get_extensive.
fromDateTime for list_calls ISO-8601 start, e.g. 2026-01-01T00:00:00Z.
toDateTime for list_calls ISO-8601 end, e.g. 2026-01-31T23:59:59Z.
callIds for transcript/extensive Comma-separated Gong call IDs.
cursor no Pagination cursor from a prior response (records.cursor).

Outputs

output description
result The raw Gong JSON response body, as a string.
status The HTTP status code (e.g. 200, 401, 429).

Examples

List calls in a date range:

operation:     list_calls
apiKey:        ABC123KEY:zZ9secretSecret==
fromDateTime:  2026-01-01T00:00:00Z
toDateTime:    2026-01-31T23:59:59Z

Fetch transcripts for two calls:

operation: get_transcript
apiKey:    ABC123KEY:zZ9secretSecret==
callIds:   7782342274025937,9912345678901234

Pull extensive analytics for a single call:

operation: get_extensive
apiKey:    ABC123KEY:zZ9secretSecret==
callIds:   7782342274025937

Follow pagination by passing the records.cursor from a prior response back in as cursor.