> ## Documentation Index
> Fetch the complete documentation index at: https://major-5cc5eebc-docs-bot-mr2qm9w6-typctx.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Gong

> Access Gong revenue intelligence platform data.

The `GongResourceClient` allows you to connect to Gong and access revenue intelligence data, including call recordings, transcripts, and user information.

## Usage

```typescript theme={null}
import { myGongClient } from "./clients";

const result = await myGongClient.invoke(
  "GET",
  "/v2/calls",
  "list-calls",
  {
    query: { limit: "50" },
  }
);

if (result.ok && result.result.body.kind === "json") {
  console.log("Calls:", result.result.body.value);
}
```

## Authentication

When creating a Gong connector, choose your OAuth scope:

* **Read-only** — access call data, transcripts, and user lists
* **Read-write** — read-only access plus ability to update Gong data
* **Custom** — configure specific permissions manually

The OAuth flow redirects to Gong to authenticate your account. Major securely stores the token and handles authentication for all API requests.

## Inputs

The `invoke` method accepts the following arguments:

<ParamField path="method" type="string" required>
  The HTTP method to use: `"GET"`, `"POST"`, `"PUT"`, `"PATCH"`, or `"DELETE"`.
</ParamField>

<ParamField path="path" type="string" required>
  The Gong API path (e.g., `/v2/calls`, `/v2/users`).
</ParamField>

<ParamField path="invocationKey" type="string" required>
  A unique identifier for this operation.
</ParamField>

<ParamField path="options" type="object">
  Optional configuration object.

  <Expandable title="properties">
    <ParamField path="query" type="Record<string, string | string[]>">
      Query parameters.
    </ParamField>

    <ParamField path="body" type="object">
      The request body. Only JSON is supported.

      <Expandable title="properties">
        <ParamField path="type" type="&#x22;json&#x22;" required />

        <ParamField path="value" type="unknown" required>
          The JSON payload.
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField path="timeoutMs" type="number">
      Timeout in milliseconds (default: 30000).
    </ParamField>
  </Expandable>
</ParamField>

## Outputs

The output format is the same as the [Custom API](/connectors/custom-api#outputs) client.

<ResponseField name="kind" type="&#x22;api&#x22;">
  Discriminator for the response type.
</ResponseField>

<ResponseField name="status" type="number">
  The HTTP status code.
</ResponseField>

<ResponseField name="body" type="ResponseBody">
  The response body (typically JSON).
</ResponseField>
