> ## Documentation Index
> Fetch the complete documentation index at: https://modem.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Gong

> Capture call transcripts and participants from Gong

export const Prompt = ({text, variant = 'accent'}) => {
  const [copied, setCopied] = useState(false);
  const handleCopy = async () => {
    try {
      await navigator.clipboard.writeText(text);
      setCopied(true);
      setTimeout(() => setCopied(false), 2000);
    } catch {}
  };
  const clipboardIcon = <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
            <title>Copy</title>
            <rect x="9" y="9" width="13" height="13" rx="2" ry="2" />
            <path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1" />
        </svg>;
  const checkIcon = <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
            <title>Copied</title>
            <polyline points="20 6 9 17 4 12" />
        </svg>;
  const promptIcon = <svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style={{
    flexShrink: 0,
    opacity: 0.4
  }}>
            <title>Prompt</title>
            <path d="M20 2H2v20h2V4h16v12H6v2H4v2h2v-2h16V2zM6 7h12v2H6zm8 4H6v2h8z" />
        </svg>;
  return <div className={`prompt prompt-${variant}`} style={{
    marginTop: '12px',
    marginBottom: '12px'
  }}>
            {promptIcon}
            <span className="prompt-text">{text}</span>
            <button className="prompt-copy" onClick={handleCopy} title="Copy to clipboard" type="button">
                {copied ? checkIcon : clipboardIcon}
            </button>
        </div>;
};

The Gong integration captures transcripts from your recorded Gong calls and feeds them into Modem for analysis. Each call becomes a conversation that's grouped into [topics](/docs/guides/topics), classified by type (bug, feature request, praise, complaint), and linked to the [people](/docs/guides/people) and companies who spoke on it.

<Warning>
  Gong is currently in **beta** and enabled per organization. If you don't see it under **Settings** → **Integrations**, email
  [support@modem.dev](mailto:support@modem.dev) to request access.
</Warning>

<Info>
  Gong is **capture-only** and read-only. Modem ingests **call transcripts** (as speaker turns), call metadata, and participant
  identities. It does not access audio or video recordings or your Gong account settings, and it never writes anything back to Gong.
  There's no way to talk to the Modem Agent from inside Gong; you query captured Gong data from the [Modem Agent on the
  web](/docs/features/agent).
</Info>

## How it works

Modem connects to your Gong account with OAuth, authorized once by a Gong technical admin. During that exchange Gong returns a per-customer API address, and Modem targets it for every request after that.

Every 15 minutes Modem polls Gong for new calls, fetches each call's transcript, and ingests it as a set of speaker turns threaded into a single conversation. A background job refreshes the connection's access token before it expires, so the poller normally stays authenticated without any action from you.

Capture is poll-based, so a call shows up in Modem a few minutes after Gong finishes processing it, not instantly. Modem only captures calls that start **after** you connect. There's no historical backfill of past calls.

<Note>
  Each poll looks back over a wide window (about 48 hours) so calls that Gong publishes late are still picked up. Calls already ingested
  are filtered out, and anything that slips through the overlap is de-duplicated downstream, so the same call isn't stored twice.
</Note>

## Prerequisites

* **Owner or admin** role in your Modem organization, to connect and manage the integration
* A **Gong technical administrator** to authorize Modem's API access. The authorization is account-wide and granted once.
* Beta access enabled for your Modem organization (see the note above)

## Setup

<Steps>
  <Step title="Start the connection">
    Go to **Settings** → **Integrations** → **Gong** in your Modem dashboard and click **Connect with Gong**. Only organization owners
    and admins can connect.
  </Step>

  <Step title="Authorize Modem in Gong">
    You'll be redirected to Gong to sign in and approve the access Modem requests. This step must be done by a **Gong technical admin**.
    See [Permissions](#permissions) below for the exact scopes.
  </Step>

  <Step title="Choose workspaces">
    Back in Modem, your Gong workspaces sync automatically. Every workspace is captured by default; toggle off any you don't want. See
    [Subscribing to Workspaces](#subscribing-to-workspaces) below.
  </Step>
</Steps>

## Permissions

During authorization, a Gong technical admin approves the following read-only Gong API scopes. Modem reads call content and participant identities; it does not send or modify anything in Gong.

| Scope                       | Why Modem needs it                                   |
| --------------------------- | ---------------------------------------------------- |
| `api:calls:read:basic`      | Read basic call metadata (title, time, participants) |
| `api:calls:read:extensive`  | List recorded calls to find new ones to ingest       |
| `api:calls:read:transcript` | Read call transcripts                                |
| `api:users:read`            | Resolve internal speakers to people                  |
| `api:workspaces:read`       | Discover the workspaces in your account              |

<Note>
  Gong authorization is account-wide, not per user. A technical admin approves it once for the whole Gong account, and Modem authenticates
  as the approved app rather than as an individual user.
</Note>

## Subscribing to Workspaces

Gong groups calls into **workspaces**. After connecting, the **Workspaces** card in **Settings** → **Integrations** → **Gong** lists each workspace with its own toggle. Modem only ingests calls from subscribed workspaces.

New workspaces are subscribed by default. Toggle one off to stop capturing its calls, which are then dropped before any transcript is fetched. If your account has a single workspace, there's just one row, subscribed by default, which you can still toggle off to pause capture entirely.

<Tip>
  Start with the workspaces where customer and prospect calls live, and leave internal-only workspaces unsubscribed to keep the noise
  down.
</Tip>

## What Gets Captured

For each call in a subscribed workspace, Modem captures:

### Transcript

The call transcript as ordered speaker turns, threaded into a single conversation per call so it groups into topics like any other source.

### Participants

Each speaker's name and email where Gong provides them, tagged **internal** or **external**, and resolved into [people and companies](/docs/guides/people).

Where Gong has already linked a participant to a record in your CRM, Modem also stores that link as a reference — the CRM system (for example Salesforce or HubSpot), the object type, and the object ID. Modem does not connect to your CRM or read the records themselves; it only keeps the identifiers Gong attaches to the call.

### Call metadata

The call title, start time, duration, and a link back to the call in Gong.

<Note>
  Modem does not capture audio or video recordings or your Gong account settings. Only the transcript, the participants (including any CRM
  record references Gong attaches to them), and the metadata above are ingested.
</Note>

## Analyzing Gong Conversations

Once transcripts are flowing, ask the [Modem Agent](/docs/features/agent) about them from the web dashboard like any other source.

<Prompt text="What are customers asking about in our Gong calls this week?" />

<Prompt text="Summarize the objections raised in sales calls over the last 7 days" />

<Prompt text="Create a Linear ticket for the recurring onboarding complaints from our Gong calls" />

## Troubleshooting

<AccordionGroup>
  <Accordion title="I don't see Gong in Integrations">
    The integration is in beta and enabled per organization. Email [support@modem.dev](mailto:support@modem.dev) to request access. Once
    enabled, the Gong card appears under **Settings** → **Integrations**.
  </Accordion>

  <Accordion title="New calls aren't showing up">
    A call appears a few minutes after Gong finishes processing it, plus up to the 15-minute poll interval, so allow some time. Modem
    only captures calls that started **after** you connected; there's no backfill of earlier calls. If a specific call is missing, check
    that its **workspace** is subscribed in the Workspaces card.
  </Accordion>

  <Accordion title="Authorization was rejected">
    The person approving the connection must be a **Gong technical admin** with rights to authorize API access for the account. A
    regular Gong user can't grant it.
  </Accordion>

  <Accordion title="Connection shows an error">
    Open **Settings** → **Integrations** → **Gong** to see the error detail and when it was last checked. Reconnecting requires a Gong
    technical admin. If the error persists, contact [support@modem.dev](mailto:support@modem.dev).
  </Accordion>

  <Accordion title="A workspace's calls aren't captured">
    Modem only ingests calls from subscribed workspaces. Open the **Workspaces** card and confirm the workspace is toggled **on**.
  </Accordion>
</AccordionGroup>

## Disconnecting

To disconnect Gong:

1. Go to **Settings** → **Integrations** → **Gong**
2. Click **Disconnect** and confirm

Disconnecting stops Modem from polling Gong for new calls. Historical data remains in Modem after disconnecting.

## Related

<CardGroup cols={2}>
  <Card title="The Modem Agent" icon="https://mintcdn.com/modem-844d7a4a/Wr2r4IRr97lNQiQb/icons/bot.svg?fit=max&auto=format&n=Wr2r4IRr97lNQiQb&q=85&s=2496f9106cb54fa9f4e27ad1f8f3a171" href="/docs/features/agent" width="22" height="22" data-path="icons/bot.svg">
    Query and act on your captured Gong conversations from the web.
  </Card>

  <Card title="Topics" icon="https://mintcdn.com/modem-844d7a4a/Wr2r4IRr97lNQiQb/icons/label-alt-multiple.svg?fit=max&auto=format&n=Wr2r4IRr97lNQiQb&q=85&s=e7fbaf23c28396ac670b89cf38e1e4a6" href="/docs/guides/topics" width="24" height="24" data-path="icons/label-alt-multiple.svg">
    See how calls are grouped into themes and classified.
  </Card>

  <Card title="Companies & People" icon="https://mintcdn.com/modem-844d7a4a/Wr2r4IRr97lNQiQb/icons/contact.svg?fit=max&auto=format&n=Wr2r4IRr97lNQiQb&q=85&s=727cb0ef6c8547993c6acfdaa30bd837" href="/docs/guides/people" width="24" height="24" data-path="icons/contact.svg">
    Understand how Modem links call participants into unified profiles.
  </Card>

  <Card title="All Integrations" icon="https://mintcdn.com/modem-844d7a4a/Wr2r4IRr97lNQiQb/icons/link.svg?fit=max&auto=format&n=Wr2r4IRr97lNQiQb&q=85&s=e774d33588635d44c6c935b78ed55f13" href="/docs/integrations/overview" width="24" height="24" data-path="icons/link.svg">
    Browse every data source and agent tool.
  </Card>
</CardGroup>
