This is the full reference documentation for the Gong agent connector.
Supported entities and actions
The Gong connector supports the following entities and actions.
| Entity | Actions |
|---|
| Users | List, Get, Context Store Search, Context Store SQL Query |
| Calls | List, Get, Context Store Search, Context Store SQL Query |
| Calls Extensive | List, Context Store Search, Context Store SQL Query |
| Call Audio | Download |
| Call Video | Download |
| Workspaces | List |
| Call Transcripts | List, Context Store Search, Context Store SQL Query, Semantic Search |
| Stats Activity Aggregate | List |
| Stats Activity Day By Day | List |
| Stats Interaction | List |
| Settings Scorecards | List, Context Store Search, Context Store SQL Query |
| Settings Trackers | List |
| Library Folders | List |
| Library Folder Content | List |
| Coaching | List |
| Stats Activity Scorecards | List, Context Store Search, Context Store SQL Query |
Users
Users List
Returns a list of all users in the Gong account
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "users",
"action": "list"
}'
Python SDK
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "users",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
cursor | string | No | Cursor for pagination |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | string | |
emailAddress | string | |
created | string | |
active | boolean | |
emailAliases | array<string> | |
trustedEmailAddress | string | null | |
firstName | string | |
lastName | string | |
title | string | null | |
phoneNumber | string | null | |
extension | string | null | |
personalMeetingUrls | array<string> | |
settings | object | |
managerId | string | null | |
meetingConsentPageUrl | string | null | |
spokenLanguages | array<object> | |
| Field Name | Type | Description |
|---|
cursor | string | null | |
total_records | integer | |
current_page_number | integer | |
Users Get
Get a single user by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "users",
"action": "get",
"params": {
"id": "<str>"
}
}'
Python SDK
await gong.users.get(
id="<str>"
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "users",
"action": "get",
"params": {
"id": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
id | string | Yes | User ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | string | |
emailAddress | string | |
created | string | |
active | boolean | |
emailAliases | array<string> | |
trustedEmailAddress | string | null | |
firstName | string | |
lastName | string | |
title | string | null | |
phoneNumber | string | null | |
extension | string | null | |
personalMeetingUrls | array<string> | |
settings | object | |
managerId | string | null | |
meetingConsentPageUrl | string | null | |
spokenLanguages | array<object> | |
Users Context Store Search
Search and filter users records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "users",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"active": true
}
}
}
}
}'
Python SDK
await gong.users.context_store_search(
query={"filter": {"eq": {"active": True}}}
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "users",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"active": True}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
active | boolean | Indicates if the user is currently active or not |
created | string | The timestamp denoting when the user account was created |
emailAddress | string | The primary email address associated with the user |
emailAliases | array | Additional email addresses that can be used to reach the user |
extension | string | The phone extension number for the user |
firstName | string | The first name of the user |
id | string | Unique identifier for the user |
lastName | string | The last name of the user |
managerId | string | The ID of the user's manager |
meetingConsentPageUrl | string | URL for the consent page related to meetings |
personalMeetingUrls | array | URLs for personal meeting rooms assigned to the user |
phoneNumber | string | The phone number associated with the user |
settings | object | User-specific settings and configurations |
spokenLanguages | array | Languages spoken by the user |
title | string | The job title or position of the user |
trustedEmailAddress | string | An email address that is considered trusted for the user |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].active | boolean | Indicates if the user is currently active or not |
data[].created | string | The timestamp denoting when the user account was created |
data[].emailAddress | string | The primary email address associated with the user |
data[].emailAliases | array | Additional email addresses that can be used to reach the user |
data[].extension | string | The phone extension number for the user |
data[].firstName | string | The first name of the user |
data[].id | string | Unique identifier for the user |
data[].lastName | string | The last name of the user |
data[].managerId | string | The ID of the user's manager |
data[].meetingConsentPageUrl | string | URL for the consent page related to meetings |
data[].personalMeetingUrls | array | URLs for personal meeting rooms assigned to the user |
data[].phoneNumber | string | The phone number associated with the user |
data[].settings | object | User-specific settings and configurations |
data[].spokenLanguages | array | Languages spoken by the user |
data[].title | string | The job title or position of the user |
data[].trustedEmailAddress | string | An email address that is considered trusted for the user |
Users Context Store SQL Query
Run a SQL query against users records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "users",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await gong.users.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "users",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Calls
Calls List
Retrieve calls data by date range
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "calls",
"action": "list"
}'
Python SDK
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "calls",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
fromDateTime | string | No | Start date in ISO 8601 format |
toDateTime | string | No | End date in ISO 8601 format |
cursor | string | No | Cursor for pagination |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | string | |
url | string | |
title | string | |
scheduled | string | |
started | string | |
duration | integer | |
primaryUserId | string | |
direction | string | |
system | string | |
scope | string | |
media | string | |
language | string | |
workspaceId | string | |
sdrDisposition | string | null | |
clientUniqueId | string | null | |
customData | string | null | |
purpose | string | null | |
meetingUrl | string | |
isPrivate | boolean | |
calendarEventId | string | null | |
| Field Name | Type | Description |
|---|
cursor | string | null | |
total_records | integer | |
current_page_number | integer | |
Calls Get
Get specific call data by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "calls",
"action": "get",
"params": {
"id": "<str>"
}
}'
Python SDK
await gong.calls.get(
id="<str>"
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "calls",
"action": "get",
"params": {
"id": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
id | string | Yes | Call ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | string | |
url | string | |
title | string | |
scheduled | string | |
started | string | |
duration | integer | |
primaryUserId | string | |
direction | string | |
system | string | |
scope | string | |
media | string | |
language | string | |
workspaceId | string | |
sdrDisposition | string | null | |
clientUniqueId | string | null | |
customData | string | null | |
purpose | string | null | |
meetingUrl | string | |
isPrivate | boolean | |
calendarEventId | string | null | |
Calls Context Store Search
Search and filter calls records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "calls",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"calendarEventId": "<str>"
}
}
}
}
}'
Python SDK
await gong.calls.context_store_search(
query={"filter": {"eq": {"calendarEventId": "<str>"}}}
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "calls",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"calendarEventId": "<str>"}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
calendarEventId | string | Unique identifier for the calendar event associated with the call. |
clientUniqueId | string | Unique identifier for the client related to the call. |
customData | string | Custom data associated with the call. |
direction | string | Direction of the call (inbound/outbound). |
duration | integer | Duration of the call in seconds. |
id | string | Unique identifier for the call. |
isPrivate | boolean | Indicates if the call is private or not. |
language | string | Language used in the call. |
media | string | Media type used for communication (voice, video, etc.). |
meetingUrl | string | URL for accessing the meeting associated with the call. |
primaryUserId | string | Unique identifier for the primary user involved in the call. |
purpose | string | Purpose or topic of the call. |
scheduled | string | Scheduled date and time of the call. |
scope | string | Scope or extent of the call. |
sdrDisposition | string | Disposition set by the sales development representative. |
started | string | Start date and time of the call. |
system | string | System information related to the call. |
title | string | Title or headline of the call. |
url | string | URL associated with the call. |
workspaceId | string | Identifier for the workspace to which the call belongs. |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].calendarEventId | string | Unique identifier for the calendar event associated with the call. |
data[].clientUniqueId | string | Unique identifier for the client related to the call. |
data[].customData | string | Custom data associated with the call. |
data[].direction | string | Direction of the call (inbound/outbound). |
data[].duration | integer | Duration of the call in seconds. |
data[].id | string | Unique identifier for the call. |
data[].isPrivate | boolean | Indicates if the call is private or not. |
data[].language | string | Language used in the call. |
data[].media | string | Media type used for communication (voice, video, etc.). |
data[].meetingUrl | string | URL for accessing the meeting associated with the call. |
data[].primaryUserId | string | Unique identifier for the primary user involved in the call. |
data[].purpose | string | Purpose or topic of the call. |
data[].scheduled | string | Scheduled date and time of the call. |
data[].scope | string | Scope or extent of the call. |
data[].sdrDisposition | string | Disposition set by the sales development representative. |
data[].started | string | Start date and time of the call. |
data[].system | string | System information related to the call. |
data[].title | string | Title or headline of the call. |
data[].url | string | URL associated with the call. |
data[].workspaceId | string | Identifier for the workspace to which the call belongs. |
Calls Context Store SQL Query
Run a SQL query against calls records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "calls",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await gong.calls.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "calls",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Calls Extensive
Calls Extensive List
Retrieve detailed call data including participants, interaction stats, and content
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "calls_extensive",
"action": "list",
"params": {
"filter": {}
}
}'
Python SDK
await gong.calls_extensive.list(
filter={}
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "calls_extensive",
"action": "list",
"params": {
"filter": {}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
filter | object | Yes | |
filter.fromDateTime | string | No | Start date in ISO 8601 format. Recommended for scoping results to a manageable date range. |
filter.toDateTime | string | No | End date in ISO 8601 format. Recommended for scoping results to a manageable date range. |
filter.callIds | array<string> | No | List of specific call IDs to retrieve. Alternative to date range filtering. |
filter.workspaceId | string | No | Filter by workspace ID |
contentSelector | object | No | Select which content to include in the response |
contentSelector.context | "Extended" | No | Context level for the data |
contentSelector.contextTiming | array<"Now" | "TimeOfCall"> | No | Context timing options |
contentSelector.exposedFields | object | No | Specify which fields to include in the response |
contentSelector.exposedFields.collaboration | object | No | |
contentSelector.exposedFields.collaboration.publicComments | boolean | No | Include public comments |
contentSelector.exposedFields.content | object | No | |
contentSelector.exposedFields.content.pointsOfInterest | boolean | No | Include points of interest (deprecated, use highlights) |
contentSelector.exposedFields.content.structure | boolean | No | Include call structure |
contentSelector.exposedFields.content.topics | boolean | No | Include topics discussed |
contentSelector.exposedFields.content.trackers | boolean | No | Include trackers |
contentSelector.exposedFields.content.trackerOccurrences | boolean | No | Include tracker occurrences |
contentSelector.exposedFields.content.brief | boolean | No | Include call brief |
contentSelector.exposedFields.content.outline | boolean | No | Include call outline |
contentSelector.exposedFields.content.highlights | boolean | No | Include call highlights |
contentSelector.exposedFields.content.callOutcome | boolean | No | Include call outcome |
contentSelector.exposedFields.content.keyPoints | boolean | No | Include key points |
contentSelector.exposedFields.interaction | object | No | |
contentSelector.exposedFields.interaction.personInteractionStats | boolean | No | Include person interaction statistics |
contentSelector.exposedFields.interaction.questions | boolean | No | Include questions asked |
contentSelector.exposedFields.interaction.speakers | boolean | No | Include speaker information |
contentSelector.exposedFields.interaction.video | boolean | No | Include video interaction data |
contentSelector.exposedFields.media | boolean | No | Include media URLs (audio/video) |
contentSelector.exposedFields.parties | boolean | No | Include participant information |
cursor | string | No | Cursor for pagination |
Response Schema
Records
| Field Name | Type | Description |
|---|
metaData | object | |
parties | array<object> | |
interaction | object | |
collaboration | object | |
content | object | |
media | object | |
| Field Name | Type | Description |
|---|
cursor | string | null | |
total_records | integer | |
current_page_number | integer | |
Calls Extensive Context Store Search
Search and filter calls extensive records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "calls_extensive",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await gong.calls_extensive.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "calls_extensive",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the call (from metaData.id). |
startdatetime | string | Datetime for extensive calls. |
collaboration | object | Collaboration information added to the call |
content | object | Analysis of the interaction content. |
context | object | A list of the agenda of each part of the call. |
interaction | object | Metrics collected around the interaction during the call. |
media | object | The media urls of the call. |
metaData | object | call's metadata. |
parties | array | A list of the call's participants |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the call (from metaData.id). |
data[].startdatetime | string | Datetime for extensive calls. |
data[].collaboration | object | Collaboration information added to the call |
data[].content | object | Analysis of the interaction content. |
data[].context | object | A list of the agenda of each part of the call. |
data[].interaction | object | Metrics collected around the interaction during the call. |
data[].media | object | The media urls of the call. |
data[].metaData | object | call's metadata. |
data[].parties | array | A list of the call's participants |
Calls Extensive Context Store SQL Query
Run a SQL query against calls extensive records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "calls_extensive",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await gong.calls_extensive.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "calls_extensive",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Call Audio
Call Audio Download
ALWAYS configure the request with the exposedFields: {"media": true}. If you don't the call won't work.
Downloads the audio media file for a call. Temporarily, the request body must be configured with:
{"filter": {"callIds": [CALL_ID]}, "contentSelector": {"exposedFields": {"media": true}}}
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "call_audio",
"action": "download"
}'
Python SDK
async for chunk in gong.call_audio.download():
file.write(chunk)
Note: Download operations return an async iterator of bytes chunks for memory-efficient streaming. Use async for to process chunks as they arrive.
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "call_audio",
"action": "download"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
filter | object | No | |
filter.callIds | array<string> | No | List containing the single call ID |
contentSelector | object | No | |
contentSelector.exposedFields | object | No | |
contentSelector.exposedFields.media | boolean | No | Must be true to get media URLs |
range_header | string | No | Optional Range header for partial downloads (e.g., 'bytes=0-99') |
Call Video
Call Video Download
ALWAYS configure the request with the exposedFields: {"media": true}. If you don't the call won't work.
Downloads the video media file for a call. Temporarily, the request body must be configured with:
{"filter": {"callIds": [CALL_ID]}, "contentSelector": {"exposedFields": {"media": true}}}
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "call_video",
"action": "download"
}'
Python SDK
async for chunk in gong.call_video.download():
file.write(chunk)
Note: Download operations return an async iterator of bytes chunks for memory-efficient streaming. Use async for to process chunks as they arrive.
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "call_video",
"action": "download"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
filter | object | No | |
filter.callIds | array<string> | No | List containing the single call ID |
contentSelector | object | No | |
contentSelector.exposedFields | object | No | |
contentSelector.exposedFields.media | boolean | No | Must be true to get media URLs |
range_header | string | No | Optional Range header for partial downloads (e.g., 'bytes=0-99') |
Workspaces
Workspaces List
List all company workspaces
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "workspaces",
"action": "list"
}'
Python SDK
await gong.workspaces.list()
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "workspaces",
"action": "list"
}'
Response Schema
Records
| Field Name | Type | Description |
|---|
id | string | |
workspaceId | string | |
name | string | |
description | string | |
Call Transcripts
Call Transcripts List
Returns transcripts for calls in a specified date range or specific call IDs
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "call_transcripts",
"action": "list",
"params": {
"filter": {}
}
}'
Python SDK
await gong.call_transcripts.list(
filter={}
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "call_transcripts",
"action": "list",
"params": {
"filter": {}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
filter | object | Yes | |
filter.fromDateTime | string | No | Start date in ISO 8601 format. Recommended for scoping results to a manageable date range. |
filter.toDateTime | string | No | End date in ISO 8601 format. Recommended for scoping results to a manageable date range. |
filter.callIds | array<string> | No | List of specific call IDs to retrieve transcripts for. Alternative to date range filtering. |
cursor | string | No | Cursor for pagination |
Response Schema
Records
| Field Name | Type | Description |
|---|
callId | string | |
transcript | array<object> | |
| Field Name | Type | Description |
|---|
cursor | string | null | |
total_records | integer | |
current_page_number | integer | |
Call Transcripts Context Store Search
Search and filter call transcripts records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "call_transcripts",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"callId": "<str>"
}
}
}
}
}'
Python SDK
await gong.call_transcripts.context_store_search(
query={"filter": {"eq": {"callId": "<str>"}}}
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "call_transcripts",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"callId": "<str>"}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
callId | string | Unique identifier for the call. |
started | string | Timestamp the call started. Filterable for narrowing transcript search by call time. |
transcript | array | Gong transcript speaker turns. |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].callId | string | Unique identifier for the call. |
data[].started | string | Timestamp the call started. Filterable for narrowing transcript search by call time. |
data[].transcript | array | Gong transcript speaker turns. |
Call Transcripts Context Store SQL Query
Run a SQL query against call transcripts records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "call_transcripts",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await gong.call_transcripts.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "call_transcripts",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Call Transcripts Semantic Search
Search call transcripts records by meaning rather than by exact or fuzzy field values. Semantic search embeds a natural-language prompt and returns the most similar passages, ranked by relevance. Pass semantic={field, prompt, filter?, context_size?, min_similarity?, dedup?} to context_store_search instead of query. Only available in hosted mode.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "call_transcripts",
"action": "context_store_search",
"params": {
"semantic": {"field": "transcript", "prompt": "<your natural-language query>"}
}
}'
Python SDK
Semantic search is passed through the generic execute method — the typed call_transcripts.context_store_search helper only accepts query.
await gong.execute(
"call_transcripts",
"context_store_search",
{"semantic": {"field": "transcript", "prompt": "<your natural-language query>"}},
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "call_transcripts",
"action": "context_store_search",
"params": {
"semantic": {"field": "transcript", "prompt": "<your natural-language query>"}
}
}'
Semantic Parameters
| Parameter Name | Type | Required | Description |
|---|
semantic.field | string | Yes | Field to search semantically. Mutually exclusive with query. |
semantic.prompt | string | Yes | Natural-language query that is embedded and compared against stored passages. |
semantic.filter | object | No | Filter conditions (same shape/operators as query.filter). sort is not supported — results are ranked by similarity. |
semantic.context_size | integer | No | Characters of surrounding context to return per hit, up to the field's configured window. Omit to return the full configured window. |
semantic.min_similarity | number | No | Minimum similarity score in [-1.0, 1.0]. Omit for 0.25; scores below the threshold are discarded before deduplication and top-k selection. Use -1.0 to disable the cutoff. |
semantic.dedup | string | No | max (default) returns the single best-scoring passage per record; none returns multiple passages per record, still ranked by similarity and capped by limit. |
fields | array | No | Field paths to include in results (dot notation for nested fields). Applied to each hit's entity. |
limit | integer | No | Maximum results to return (default 10, maximum 100). |
Semantically Searchable Fields
| Field Name | Max Context (chars) | Description |
|---|
transcript | 2048 | Gong transcript speaker turns. |
Each result is also enriched with the following related fields (returned only; not filterable): speakerName, speakerTitle, speakerAffiliation.
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching passages |
data[].entity | object | The matched source record |
data[].entity.callId | string | Source record field |
data[].entity.started | string | Source record field |
data[].metadata | object | Match metadata |
data[].metadata.score | number | Similarity score |
data[].metadata.context | string | The matched passage text |
data[].metadata.speakerId | string | Per-unit attribution for the matched passage |
data[].metadata.topic | string | Per-unit attribution for the matched passage |
data[].metadata.speakerName | string | Enriched from a related entity at read time (returned only; not filterable) |
data[].metadata.speakerTitle | string | Enriched from a related entity at read time (returned only; not filterable) |
data[].metadata.speakerAffiliation | string | Enriched from a related entity at read time (returned only; not filterable) |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
Stats Activity Aggregate
Stats Activity Aggregate List
Provides aggregated user activity metrics across a specified period
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "stats_activity_aggregate",
"action": "list",
"params": {
"filter": {
"fromDate": "<str>",
"toDate": "<str>"
}
}
}'
Python SDK
await gong.stats_activity_aggregate.list(
filter={
"fromDate": "<str>",
"toDate": "<str>"
}
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "stats_activity_aggregate",
"action": "list",
"params": {
"filter": {
"fromDate": "<str>",
"toDate": "<str>"
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
filter | object | Yes | |
filter.fromDate | string | Yes | Start date (YYYY-MM-DD). Required by the Gong API for activity stats. |
filter.toDate | string | Yes | End date (YYYY-MM-DD). Required by the Gong API for activity stats. |
filter.userIds | array<string> | No | List of user IDs to retrieve stats for |
Response Schema
Records
| Field Name | Type | Description |
|---|
userId | string | |
userEmailAddress | string | |
userAggregateActivityStats | object | |
userAggregateActivityStats.callsAsHost | integer | |
userAggregateActivityStats.callsGaveFeedback | integer | |
userAggregateActivityStats.callsRequestedFeedback | integer | |
userAggregateActivityStats.callsReceivedFeedback | integer | |
userAggregateActivityStats.ownCallsListenedTo | integer | |
userAggregateActivityStats.othersCallsListenedTo | integer | |
userAggregateActivityStats.callsSharedInternally | integer | |
userAggregateActivityStats.callsSharedExternally | integer | |
userAggregateActivityStats.callsScorecardsFilled | integer | |
userAggregateActivityStats.callsScorecardsReceived | integer | |
userAggregateActivityStats.callsAttended | integer | |
userAggregateActivityStats.callsCommentsGiven | integer | |
userAggregateActivityStats.callsCommentsReceived | integer | |
userAggregateActivityStats.callsMarkedAsFeedbackGiven | integer | |
userAggregateActivityStats.callsMarkedAsFeedbackReceived | integer | |
| Field Name | Type | Description |
|---|
cursor | string | null | |
total_records | integer | |
current_page_number | integer | |
Stats Activity Day By Day
Stats Activity Day By Day List
Delivers daily user activity metrics across a specified date range
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "stats_activity_day_by_day",
"action": "list",
"params": {
"filter": {
"fromDate": "<str>",
"toDate": "<str>"
}
}
}'
Python SDK
await gong.stats_activity_day_by_day.list(
filter={
"fromDate": "<str>",
"toDate": "<str>"
}
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "stats_activity_day_by_day",
"action": "list",
"params": {
"filter": {
"fromDate": "<str>",
"toDate": "<str>"
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
filter | object | Yes | |
filter.fromDate | string | Yes | Start date (YYYY-MM-DD). Required by the Gong API for activity stats. |
filter.toDate | string | Yes | End date (YYYY-MM-DD). Required by the Gong API for activity stats. |
filter.userIds | array<string> | No | List of user IDs to retrieve stats for |
Response Schema
Records
| Field Name | Type | Description |
|---|
userId | string | |
userEmailAddress | string | |
userDailyActivityStats | array<object> | |
userDailyActivityStats[].callsAsHost | array<string> | |
userDailyActivityStats[].callsGaveFeedback | array<string> | |
userDailyActivityStats[].callsRequestedFeedback | array<string> | |
userDailyActivityStats[].callsReceivedFeedback | array<string> | |
userDailyActivityStats[].ownCallsListenedTo | array<string> | |
userDailyActivityStats[].othersCallsListenedTo | array<string> | |
userDailyActivityStats[].callsSharedInternally | array<string> | |
userDailyActivityStats[].callsSharedExternally | array<string> | |
userDailyActivityStats[].callsAttended | array<string> | |
userDailyActivityStats[].callsCommentsGiven | array<string> | |
userDailyActivityStats[].callsCommentsReceived | array<string> | |
userDailyActivityStats[].callsMarkedAsFeedbackGiven | array<string> | |
userDailyActivityStats[].callsMarkedAsFeedbackReceived | array<string> | |
userDailyActivityStats[].callsScorecardsFilled | array<string> | |
userDailyActivityStats[].callsScorecardsReceived | array<string> | |
userDailyActivityStats[].fromDate | string | |
userDailyActivityStats[].toDate | string | |
| Field Name | Type | Description |
|---|
cursor | string | null | |
total_records | integer | |
current_page_number | integer | |
Stats Interaction
Stats Interaction List
Returns interaction stats for users based on calls that have Whisper turned on
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "stats_interaction",
"action": "list",
"params": {
"filter": {
"fromDate": "<str>",
"toDate": "<str>"
}
}
}'
Python SDK
await gong.stats_interaction.list(
filter={
"fromDate": "<str>",
"toDate": "<str>"
}
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "stats_interaction",
"action": "list",
"params": {
"filter": {
"fromDate": "<str>",
"toDate": "<str>"
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
filter | object | Yes | |
filter.fromDate | string | Yes | Start date (YYYY-MM-DD). Required by the Gong API for interaction stats. |
filter.toDate | string | Yes | End date (YYYY-MM-DD). Required by the Gong API for interaction stats. |
filter.userIds | array<string> | No | List of user IDs to retrieve stats for |
Response Schema
Records
| Field Name | Type | Description |
|---|
userId | string | |
userEmailAddress | string | |
personInteractionStats | array<object> | |
personInteractionStats[].name | string | |
personInteractionStats[].value | number | |
| Field Name | Type | Description |
|---|
cursor | string | null | |
total_records | integer | |
current_page_number | integer | |
Settings Scorecards
Settings Scorecards List
Retrieve all scorecard configurations in the company
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "settings_scorecards",
"action": "list"
}'
Python SDK
await gong.settings_scorecards.list()
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "settings_scorecards",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
workspaceId | string | No | Filter scorecards by workspace ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
scorecardId | string | |
scorecardName | string | |
workspaceId | string | null | |
enabled | boolean | |
updaterUserId | string | |
created | string | |
updated | string | |
reviewMethod | string | |
questions | array<object> | |
questions[].questionId | string | |
questions[].questionRevisionId | string | |
questions[].questionText | string | |
questions[].questionType | string | |
questions[].isRequired | boolean | |
questions[].isOverall | boolean | |
questions[].updaterUserId | string | |
questions[].answerGuide | string | null | |
questions[].minRange | string | null | |
questions[].maxRange | string | null | |
questions[].created | string | |
questions[].updated | string | |
questions[].answerOptions | array<object> | |
Settings Scorecards Context Store Search
Search and filter settings scorecards records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "settings_scorecards",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"created": "<str>"
}
}
}
}
}'
Python SDK
await gong.settings_scorecards.context_store_search(
query={"filter": {"eq": {"created": "<str>"}}}
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "settings_scorecards",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"created": "<str>"}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
created | string | The timestamp when the scorecard was created |
enabled | boolean | Indicates if the scorecard is enabled or disabled |
questions | array | An array of questions related to the scorecard |
scorecardId | string | The unique identifier of the scorecard |
scorecardName | string | The name of the scorecard |
updated | string | The timestamp when the scorecard was last updated |
updaterUserId | string | The user ID of the person who last updated the scorecard |
workspaceId | string | The unique identifier of the workspace associated with the scorecard |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].created | string | The timestamp when the scorecard was created |
data[].enabled | boolean | Indicates if the scorecard is enabled or disabled |
data[].questions | array | An array of questions related to the scorecard |
data[].scorecardId | string | The unique identifier of the scorecard |
data[].scorecardName | string | The name of the scorecard |
data[].updated | string | The timestamp when the scorecard was last updated |
data[].updaterUserId | string | The user ID of the person who last updated the scorecard |
data[].workspaceId | string | The unique identifier of the workspace associated with the scorecard |
Settings Scorecards Context Store SQL Query
Run a SQL query against settings scorecards records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "settings_scorecards",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await gong.settings_scorecards.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "settings_scorecards",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Settings Trackers
Settings Trackers List
Retrieve all keyword tracker configurations in the company
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "settings_trackers",
"action": "list"
}'
Python SDK
await gong.settings_trackers.list()
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "settings_trackers",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
workspaceId | string | No | Filter trackers by workspace ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
trackerId | string | |
trackerName | string | |
workspaceId | string | null | |
languageKeywords | array<object> | |
affiliation | string | |
partOfQuestion | boolean | |
saidAt | string | |
saidAtInterval | string | null | |
saidAtUnit | string | null | |
saidInTopics | array<string> | |
filterQuery | string | |
created | string | |
creatorUserId | string | null | |
updated | string | |
updaterUserId | string | null | |
Library Folders
Library Folders List
Retrieve the folder structure of the call library
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "library_folders",
"action": "list",
"params": {
"workspaceId": "<str>"
}
}'
Python SDK
await gong.library_folders.list(
workspace_id="<str>"
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "library_folders",
"action": "list",
"params": {
"workspaceId": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
workspaceId | string | Yes | Workspace ID to retrieve folders from |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | string | |
name | string | |
parentFolderId | string | null | |
createdBy | string | null | |
updated | string | |
Library Folder Content
Library Folder Content List
Retrieve calls in a specific library folder
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "library_folder_content",
"action": "list",
"params": {
"folderId": "<str>"
}
}'
Python SDK
await gong.library_folder_content.list(
folder_id="<str>"
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "library_folder_content",
"action": "list",
"params": {
"folderId": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
folderId | string | Yes | Folder ID to retrieve content from |
cursor | string | No | Cursor for pagination |
Response Schema
Records
| Field Name | Type | Description |
|---|
callId | string | |
title | string | |
started | string | |
duration | integer | |
primaryUserId | string | |
url | string | |
| Field Name | Type | Description |
|---|
cursor | string | null | |
total_records | integer | |
current_page_number | integer | |
Coaching
Coaching List
Retrieve coaching metrics for a manager and their direct reports
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "coaching",
"action": "list",
"params": {
"workspace-id": "<str>",
"manager-id": "<str>",
"from": "2025-01-01T00:00:00Z",
"to": "2025-01-01T00:00:00Z"
}
}'
Python SDK
await gong.coaching.list(
workspace_id="<str>",
manager_id="<str>",
from_="2025-01-01T00:00:00Z",
to="2025-01-01T00:00:00Z"
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "coaching",
"action": "list",
"params": {
"workspace-id": "<str>",
"manager-id": "<str>",
"from": "2025-01-01T00:00:00Z",
"to": "2025-01-01T00:00:00Z"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
workspace-id | string | Yes | Workspace ID |
manager-id | string | Yes | Manager user ID |
from | string | Yes | Start date in ISO 8601 format |
to | string | Yes | End date in ISO 8601 format |
Response Schema
Records
| Field Name | Type | Description |
|---|
userId | string | |
userEmailAddress | string | |
userName | string | |
isManager | boolean | |
coachingMetrics | object | |
coachingMetrics.callsListened | integer | |
coachingMetrics.callsAttended | integer | |
coachingMetrics.callsWithFeedback | integer | |
coachingMetrics.callsWithComments | integer | |
coachingMetrics.scorecardsFilled | integer | |
Stats Activity Scorecards
Stats Activity Scorecards List
Retrieve answered scorecards for applicable reviewed users or scorecards for a date range
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "stats_activity_scorecards",
"action": "list",
"params": {
"filter": {
"fromDateTime": "2025-01-01T00:00:00Z",
"toDateTime": "2025-01-01T00:00:00Z"
}
}
}'
Python SDK
await gong.stats_activity_scorecards.list(
filter={
"fromDateTime": "2025-01-01T00:00:00Z",
"toDateTime": "2025-01-01T00:00:00Z"
}
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "stats_activity_scorecards",
"action": "list",
"params": {
"filter": {
"fromDateTime": "2025-01-01T00:00:00Z",
"toDateTime": "2025-01-01T00:00:00Z"
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
filter | object | Yes | |
filter.fromDateTime | string | Yes | Start date in ISO 8601 format. Required by the Gong API for scorecard stats. |
filter.toDateTime | string | Yes | End date in ISO 8601 format. Required by the Gong API for scorecard stats. |
filter.scorecardIds | array<string> | No | List of scorecard IDs to filter by |
filter.reviewedUserIds | array<string> | No | List of reviewed user IDs to filter by |
filter.reviewerUserIds | array<string> | No | List of reviewer user IDs to filter by |
filter.callIds | array<string> | No | List of call IDs to filter by |
cursor | string | No | Cursor for pagination |
Response Schema
Records
| Field Name | Type | Description |
|---|
answeredScorecardId | string | |
scorecardId | string | |
scorecardName | string | |
callId | string | |
callStartTime | string | |
reviewedUserId | string | |
reviewerUserId | string | |
reviewMethod | string | |
editorUserId | string | null | |
answeredDateTime | string | |
reviewTime | string | |
visibilityType | string | |
answers | array<object> | |
answers[].questionId | string | |
answers[].questionRevisionId | string | |
answers[].isOverall | boolean | |
answers[].answer | string | |
answers[].answerText | string | null | |
answers[].score | number | |
answers[].notApplicable | boolean | |
answers[].selectedOptions | array | null | |
overallScore | number | |
visibility | string | |
| Field Name | Type | Description |
|---|
cursor | string | null | |
total_records | integer | |
current_page_number | integer | |
Stats Activity Scorecards Context Store Search
Search and filter stats activity scorecards records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "stats_activity_scorecards",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"answeredScorecardId": "<str>"
}
}
}
}
}'
Python SDK
await gong.stats_activity_scorecards.context_store_search(
query={"filter": {"eq": {"answeredScorecardId": "<str>"}}}
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "stats_activity_scorecards",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"answeredScorecardId": "<str>"}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
answeredScorecardId | string | Unique identifier for the answered scorecard instance. |
answers | array | Contains the answered questions in the scorecards |
callId | string | Unique identifier for the call associated with the answered scorecard. |
callStartTime | string | Timestamp indicating the start time of the call. |
reviewTime | string | Timestamp indicating when the review of the answered scorecard was completed. |
reviewedUserId | string | Unique identifier for the user whose performance was reviewed. |
reviewerUserId | string | Unique identifier for the user who performed the review. |
scorecardId | string | Unique identifier for the scorecard template used. |
scorecardName | string | Name or title of the scorecard template used. |
visibilityType | string | Type indicating the visibility permissions for the answered scorecard. |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].answeredScorecardId | string | Unique identifier for the answered scorecard instance. |
data[].answers | array | Contains the answered questions in the scorecards |
data[].callId | string | Unique identifier for the call associated with the answered scorecard. |
data[].callStartTime | string | Timestamp indicating the start time of the call. |
data[].reviewTime | string | Timestamp indicating when the review of the answered scorecard was completed. |
data[].reviewedUserId | string | Unique identifier for the user whose performance was reviewed. |
data[].reviewerUserId | string | Unique identifier for the user who performed the review. |
data[].scorecardId | string | Unique identifier for the scorecard template used. |
data[].scorecardName | string | Name or title of the scorecard template used. |
data[].visibilityType | string | Type indicating the visibility permissions for the answered scorecard. |
Stats Activity Scorecards Context Store SQL Query
Run a SQL query against stats activity scorecards records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "gong",
"entity": "stats_activity_scorecards",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await gong.stats_activity_scorecards.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "stats_activity_scorecards",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |