Gong Calls API

Operations for managing and retrieving call data

OpenAPI Specification

gong-calls-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Gong Auditing Audit Logs Calls API
  description: The Gong Auditing API enables retrieval of audit log data by type and time range, providing visibility into user actions and system events for compliance and security monitoring.
  version: 2.0.0
  contact:
    name: Gong
    url: https://www.gong.io
    email: support@gong.io
  license:
    name: Proprietary
    url: https://www.gong.io/terms-of-service/
  termsOfService: https://www.gong.io/terms-of-service/
servers:
- url: https://api.gong.io/v2
  description: Gong API v2 Production Server
security:
- basicAuth: []
- bearerAuth: []
tags:
- name: Calls
  description: Operations for managing and retrieving call data
paths:
  /calls:
    get:
      operationId: listCalls
      summary: Gong List calls
      description: Retrieves a list of calls that took place during a specified date range. Results are paginated and can be filtered by workspace.
      tags:
      - Calls
      parameters:
      - name: fromDateTime
        in: query
        required: true
        description: The start date and time for the calls filter in ISO-8601 format (e.g., 2021-01-01T00:00:00Z).
        schema:
          type: string
          format: date-time
      - name: toDateTime
        in: query
        required: true
        description: The end date and time for the calls filter in ISO-8601 format (e.g., 2021-12-31T23:59:59Z).
        schema:
          type: string
          format: date-time
      - name: cursor
        in: query
        required: false
        description: A cursor for pagination. Pass the cursor from the previous response to retrieve the next page of results.
        schema:
          type: string
      - name: workspaceId
        in: query
        required: false
        description: Optional workspace identifier to filter calls by workspace.
        schema:
          type: string
      responses:
        '200':
          description: Successful response containing a list of calls.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CallsResponse'
        '400':
          description: Bad request due to invalid parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized - invalid or missing authentication credentials.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    post:
      operationId: addCall
      summary: Gong Add a new call
      description: Adds a new call record to Gong. Either provide a downloadMediaUrl in the request body or use the returned callId in a follow-up request to /v2/calls/{id}/media to upload the media file.
      tags:
      - Calls
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NewCallAddingRequest'
      responses:
        '201':
          description: Call successfully created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NewCallAddingResponse'
        '400':
          description: Bad request due to invalid parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized - invalid or missing authentication credentials.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /calls/{id}:
    get:
      operationId: getCall
      summary: Gong Retrieve a specific call
      description: Retrieves detailed information about a specific call identified by its unique numeric identifier.
      tags:
      - Calls
      parameters:
      - name: id
        in: path
        required: true
        description: Gong's unique numeric identifier for the call (up to 20 digits).
        schema:
          type: string
      responses:
        '200':
          description: Successful response containing the call details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SpecificCallResponse'
        '401':
          description: Unauthorized - invalid or missing authentication credentials.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Call not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /calls/extensive:
    post:
      operationId: listCallsExtensive
      summary: Gong Retrieve detailed call data
      description: Retrieves extensive call data including participants, topics, trackers, comments, scorecards, and other analytics. Supports filtering by date range, call IDs, or hosting users. Requires the scope api:calls:read:extensive.
      tags:
      - Calls
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExtensiveCallsRequest'
      responses:
        '200':
          description: Successful response containing detailed call data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExtensiveCallsResponse'
        '400':
          description: Bad request due to invalid parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized - invalid or missing authentication credentials.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /calls/manual-crm-associations:
    get:
      operationId: listManualCrmAssociations
      summary: Gong List calls manually associated with CRM
      description: Retrieves a list of calls that were manually associated with CRM objects by users. This endpoint is in beta phase. Results can be filtered by association time.
      tags:
      - Calls
      parameters:
      - name: fromDateTime
        in: query
        required: false
        description: Filter by the time the manual association was created, in ISO-8601 format.
        schema:
          type: string
          format: date-time
      - name: cursor
        in: query
        required: false
        description: A cursor for pagination. Pass the cursor from the previous response to retrieve the next page of results.
        schema:
          type: string
      responses:
        '200':
          description: Successful response containing a list of manually associated calls.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManualAssociationResponse'
        '401':
          description: Unauthorized - invalid or missing authentication credentials.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /calls/users-access:
    post:
      operationId: retrieveUserCallAccess
      summary: Gong Retrieve user call access
      description: Retrieves the list of users who have access to specified calls and their access levels.
      tags:
      - Calls
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserCallAccessRequest'
      responses:
        '200':
          description: Successful response containing user call access data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserCallAccessResponse'
        '401':
          description: Unauthorized - invalid or missing authentication credentials.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    put:
      operationId: giveUserCallAccess
      summary: Gong Give user call access
      description: Grants specified users access to specified calls within the Gong platform.
      tags:
      - Calls
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserCallAccessUpdateRequest'
      responses:
        '200':
          description: Call access successfully granted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponse'
        '401':
          description: Unauthorized - invalid or missing authentication credentials.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    delete:
      operationId: removeUserCallAccess
      summary: Gong Remove user call access
      description: Removes specified users' access to specified calls within the Gong platform.
      tags:
      - Calls
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserCallAccessUpdateRequest'
      responses:
        '200':
          description: Call access successfully removed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponse'
        '401':
          description: Unauthorized - invalid or missing authentication credentials.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    ExtensiveCallsRequest:
      type: object
      properties:
        cursor:
          type: string
          description: Cursor for pagination.
        filter:
          type: object
          properties:
            fromDateTime:
              type: string
              format: date-time
              description: Start of the date range filter.
            toDateTime:
              type: string
              format: date-time
              description: End of the date range filter.
            callIds:
              type: array
              items:
                type: string
              description: Specific call IDs to retrieve.
            workspaceId:
              type: string
              description: Filter by workspace.
          description: Filter criteria for calls.
        contentSelector:
          type: object
          properties:
            context:
              type: string
              enum:
              - None
              - Extended
              - Full
              description: Level of context to include.
            exposedFields:
              type: object
              properties:
                collaboration:
                  type: boolean
                  description: Include collaboration data.
                content:
                  type: boolean
                  description: Include content data.
                currentSpeakerUserIds:
                  type: boolean
                  description: Include speaker user IDs.
                media:
                  type: boolean
                  description: Include media URLs (requires api:calls:read:media-url scope).
                parties:
                  type: boolean
                  description: Include party information.
                publicComments:
                  type: boolean
                  description: Include public comments.
              description: Fields to include in the response.
          description: Selector for what content to include in the response.
    CallParty:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the party.
        emailAddress:
          type: string
          format: email
          description: Email address of the party.
        name:
          type: string
          description: Display name of the party.
        title:
          type: string
          description: Job title of the party.
        userId:
          type: string
          description: Gong user ID if the party is a Gong user.
        speakerId:
          type: string
          description: Speaker identifier within the call.
        affiliation:
          type: string
          enum:
          - Internal
          - External
          - Unknown
          description: Whether the party is internal or external.
        phoneNumber:
          type: string
          description: Phone number of the party.
        methods:
          type: array
          items:
            type: string
          description: Communication methods used by the party.
    BaseResponse:
      type: object
      properties:
        requestId:
          type: string
          description: A unique identifier for the request.
    UserCallAccessRequest:
      type: object
      properties:
        callIds:
          type: array
          items:
            type: string
          description: List of call IDs to check access for.
    Call:
      type: object
      properties:
        id:
          type: string
          description: Unique numeric identifier for the call.
        title:
          type: string
          description: The title or subject of the call.
        url:
          type: string
          format: uri
          description: URL to the call in the Gong web application.
        scheduled:
          type: string
          format: date-time
          description: Scheduled start time of the call in ISO-8601 format.
        started:
          type: string
          format: date-time
          description: Actual start time of the call in ISO-8601 format.
        duration:
          type: number
          description: Duration of the call in seconds.
        direction:
          type: string
          enum:
          - Inbound
          - Outbound
          - Conference
          - Unknown
          description: The direction of the call.
        scope:
          type: string
          enum:
          - Internal
          - External
          - Unknown
          description: Whether the call was internal or external.
        media:
          type: string
          enum:
          - Video
          - Audio
          description: The type of media recorded.
        language:
          type: string
          description: The detected language of the call.
        workspaceId:
          type: string
          description: The workspace identifier the call belongs to.
        primaryUserId:
          type: string
          description: The Gong user ID of the primary user on the call.
        parties:
          type: array
          items:
            $ref: '#/components/schemas/CallParty'
          description: The participants in the call.
    SpecificCallResponse:
      type: object
      properties:
        requestId:
          type: string
          description: A unique identifier for the request.
        call:
          $ref: '#/components/schemas/Call'
    CallsResponse:
      type: object
      properties:
        requestId:
          type: string
          description: A unique identifier for the request.
        records:
          type: object
          properties:
            totalRecords:
              type: integer
              description: Total number of call records matching the filter.
            currentPageSize:
              type: integer
              description: Number of records in the current page.
            currentPageNumber:
              type: integer
              description: The current page number.
            cursor:
              type: string
              description: Cursor value for retrieving the next page of results.
        calls:
          type: array
          items:
            $ref: '#/components/schemas/Call'
          description: List of call objects.
    ErrorResponse:
      type: object
      properties:
        requestId:
          type: string
          description: A unique identifier for the request.
        errors:
          type: array
          items:
            type: string
          description: List of error messages.
    NewCallAddingRequest:
      type: object
      required:
      - actualStart
      - clientUniqueId
      - direction
      - parties
      - primaryUser
      properties:
        actualStart:
          type: string
          format: date-time
          description: The actual start time of the call in ISO-8601 format.
        clientUniqueId:
          type: string
          description: A unique identifier for the call provided by the client to prevent duplicates.
        direction:
          type: string
          enum:
          - Inbound
          - Outbound
          - Conference
          - Unknown
          description: The direction of the call.
        downloadMediaUrl:
          type: string
          format: uri
          description: Optional URL from which Gong can download the call recording media. If not provided, use /v2/calls/{id}/media to upload.
        duration:
          type: number
          description: Duration of the call in seconds.
        languageCode:
          type: string
          description: Language code of the call for transcription.
        meetingUrl:
          type: string
          format: uri
          description: URL of the meeting (if applicable).
        parties:
          type: array
          items:
            $ref: '#/components/schemas/NewCallParty'
          description: List of call participants.
        primaryUser:
          type: string
          description: Email address of the primary Gong user on the call.
        purpose:
          type: string
          description: The purpose or subject of the call.
        scheduledEnd:
          type: string
          format: date-time
          description: The scheduled end time of the call.
        scheduledStart:
          type: string
          format: date-time
          description: The scheduled start time of the call.
        title:
          type: string
          description: The title of the call.
        workspaceId:
          type: string
          description: The workspace to associate the call with.
    DetailedCall:
      allOf:
      - $ref: '#/components/schemas/Call'
      - type: object
        properties:
          content:
            type: object
            properties:
              topics:
                type: array
                items:
                  type: object
                  properties:
                    name:
                      type: string
                    duration:
                      type: number
                description: Topics discussed during the call.
              trackers:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                    name:
                      type: string
                    count:
                      type: integer
                    occurrences:
                      type: array
                      items:
                        type: object
                        properties:
                          startTime:
                            type: number
                          speakerId:
                            type: string
                description: Tracked keywords and phrases.
              pointsOfInterest:
                type: object
                properties:
                  actionItems:
                    type: array
                    items:
                      type: object
                      properties:
                        snippet:
                          type: string
                        speakerId:
                          type: string
                description: Key points and action items.
            description: Content analysis data.
          collaboration:
            type: object
            properties:
              publicComments:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                    commenterUserId:
                      type: string
                    comment:
                      type: string
                    audioStartTime:
                      type: number
                    posted:
                      type: string
                      format: date-time
                description: Public comments on the call.
            description: Collaboration data.
          interaction:
            type: object
            properties:
              speakers:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                    userId:
                      type: string
                    talkTime:
                      type: number
                description: Speaker statistics.
              interactivity:
                type: number
                description: Interactivity score.
            description: Interaction statistics.
          media:
            type: object
            properties:
              audioUrl:
                type: string
                format: uri
                description: URL for the audio recording.
              videoUrl:
                type: string
                format: uri
                description: URL for the video recording.
            description: Media URLs for the call recording.
    ManualAssociationResponse:
      type: object
      properties:
        requestId:
          type: string
          description: A unique identifier for the request.
        records:
          type: object
          properties:
            totalRecords:
              type: integer
            currentPageSize:
              type: integer
            cursor:
              type: string
        calls:
          type: array
          items:
            type: object
            properties:
              callId:
                type: string
                description: The call ID.
              crmAssociations:
                type: array
                items:
                  type: object
                  properties:
                    objectType:
                      type: string
                    objectId:
                      type: string
                    associatedAt:
                      type: string
                      format: date-time
          description: Calls with their manual CRM associations.
    NewCallParty:
      type: object
      properties:
        emailAddress:
          type: string
          format: email
          description: Email address of the participant.
        name:
          type: string
          description: Display name of the participant.
        phoneNumber:
          type: string
          description: Phone number of the participant.
        userId:
          type: string
          description: Gong user ID of the participant (if applicable).
    NewCallAddingResponse:
      type: object
      properties:
        requestId:
          type: string
          description: A unique identifier for the request.
        callId:
          type: string
          description: The Gong-assigned unique identifier for the newly created call.
    UserCallAccessUpdateRequest:
      type: object
      properties:
        callIds:
          type: array
          items:
            type: string
          description: List of call IDs to update access for.
        userIds:
          type: array
          items:
            type: string
          description: List of user IDs to grant or revoke access.
    ExtensiveCallsResponse:
      type: object
      properties:
        requestId:
          type: string
          description: A unique identifier for the request.
        records:
          type: object
          properties:
            totalRecords:
              type: integer
              description: Total number of matching records.
            currentPageSize:
              type: integer
              description: Number of records in the current page.
            cursor:
              type: string
              description: Cursor for retrieving the next page.
        calls:
          type: array
          items:
            $ref: '#/components/schemas/DetailedCall'
          description: List of detailed call objects.
    UserCallAccessResponse:
      type: object
      properties:
        requestId:
          type: string
          description: A unique identifier for the request.
        callAccessDetails:
          type: array
          items:
            type: object
            properties:
              callId:
                type: string
              userIds:
                type: array
                items:
                  type: string
          description: Access details for each call.
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: 'Basic authentication using your Gong API access key and secret. Format: base64(access_key:access_secret).'
    bearerAuth:
      type: http
      scheme: bearer
      description: OAuth 2.0 Bearer token authentication.