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.