universal-mcp-applications 0.1.32__py3-none-any.whl → 0.1.36rc2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- universal_mcp/applications/ahrefs/app.py +52 -198
- universal_mcp/applications/airtable/app.py +23 -122
- universal_mcp/applications/apollo/app.py +111 -464
- universal_mcp/applications/asana/app.py +417 -1567
- universal_mcp/applications/aws_s3/app.py +36 -103
- universal_mcp/applications/bill/app.py +546 -1957
- universal_mcp/applications/box/app.py +1068 -3981
- universal_mcp/applications/braze/app.py +364 -1430
- universal_mcp/applications/browser_use/app.py +2 -8
- universal_mcp/applications/cal_com_v2/app.py +207 -625
- universal_mcp/applications/calendly/app.py +61 -200
- universal_mcp/applications/canva/app.py +45 -110
- universal_mcp/applications/clickup/app.py +207 -674
- universal_mcp/applications/coda/app.py +146 -426
- universal_mcp/applications/confluence/app.py +310 -1098
- universal_mcp/applications/contentful/app.py +36 -151
- universal_mcp/applications/crustdata/app.py +28 -107
- universal_mcp/applications/dialpad/app.py +283 -756
- universal_mcp/applications/digitalocean/app.py +1766 -5777
- universal_mcp/applications/domain_checker/app.py +3 -54
- universal_mcp/applications/e2b/app.py +14 -64
- universal_mcp/applications/elevenlabs/app.py +9 -47
- universal_mcp/applications/exa/app.py +6 -17
- universal_mcp/applications/falai/app.py +24 -101
- universal_mcp/applications/figma/app.py +53 -137
- universal_mcp/applications/file_system/app.py +2 -13
- universal_mcp/applications/firecrawl/app.py +51 -152
- universal_mcp/applications/fireflies/app.py +59 -281
- universal_mcp/applications/fpl/app.py +91 -528
- universal_mcp/applications/fpl/utils/fixtures.py +15 -49
- universal_mcp/applications/fpl/utils/helper.py +25 -89
- universal_mcp/applications/fpl/utils/league_utils.py +20 -64
- universal_mcp/applications/ghost_content/app.py +52 -161
- universal_mcp/applications/github/app.py +19 -56
- universal_mcp/applications/gong/app.py +88 -248
- universal_mcp/applications/google_calendar/app.py +16 -68
- universal_mcp/applications/google_docs/app.py +85 -189
- universal_mcp/applications/google_drive/app.py +141 -463
- universal_mcp/applications/google_gemini/app.py +12 -64
- universal_mcp/applications/google_mail/app.py +28 -157
- universal_mcp/applications/google_searchconsole/app.py +15 -48
- universal_mcp/applications/google_sheet/app.py +100 -581
- universal_mcp/applications/google_sheet/helper.py +10 -37
- universal_mcp/applications/hashnode/app.py +57 -269
- universal_mcp/applications/heygen/app.py +44 -122
- universal_mcp/applications/http_tools/app.py +10 -32
- universal_mcp/applications/hubspot/api_segments/crm_api.py +460 -1573
- universal_mcp/applications/hubspot/api_segments/marketing_api.py +74 -262
- universal_mcp/applications/hubspot/app.py +23 -87
- universal_mcp/applications/jira/app.py +2071 -7986
- universal_mcp/applications/klaviyo/app.py +494 -1376
- universal_mcp/applications/linkedin/README.md +9 -2
- universal_mcp/applications/linkedin/app.py +240 -181
- universal_mcp/applications/mailchimp/app.py +450 -1605
- universal_mcp/applications/markitdown/app.py +8 -20
- universal_mcp/applications/miro/app.py +217 -699
- universal_mcp/applications/ms_teams/app.py +64 -186
- universal_mcp/applications/neon/app.py +86 -192
- universal_mcp/applications/notion/app.py +21 -36
- universal_mcp/applications/onedrive/app.py +16 -38
- universal_mcp/applications/openai/app.py +42 -165
- universal_mcp/applications/outlook/app.py +24 -84
- universal_mcp/applications/perplexity/app.py +4 -19
- universal_mcp/applications/pipedrive/app.py +832 -3142
- universal_mcp/applications/posthog/app.py +163 -432
- universal_mcp/applications/reddit/app.py +40 -139
- universal_mcp/applications/resend/app.py +41 -107
- universal_mcp/applications/retell/app.py +14 -41
- universal_mcp/applications/rocketlane/app.py +221 -934
- universal_mcp/applications/scraper/README.md +7 -4
- universal_mcp/applications/scraper/app.py +50 -109
- universal_mcp/applications/semanticscholar/app.py +22 -64
- universal_mcp/applications/semrush/app.py +43 -77
- universal_mcp/applications/sendgrid/app.py +512 -1262
- universal_mcp/applications/sentry/app.py +271 -906
- universal_mcp/applications/serpapi/app.py +40 -143
- universal_mcp/applications/sharepoint/app.py +17 -39
- universal_mcp/applications/shopify/app.py +1551 -4287
- universal_mcp/applications/shortcut/app.py +155 -417
- universal_mcp/applications/slack/app.py +33 -115
- universal_mcp/applications/spotify/app.py +126 -325
- universal_mcp/applications/supabase/app.py +104 -213
- universal_mcp/applications/tavily/app.py +1 -1
- universal_mcp/applications/trello/app.py +693 -2656
- universal_mcp/applications/twilio/app.py +14 -50
- universal_mcp/applications/twitter/api_segments/compliance_api.py +4 -14
- universal_mcp/applications/twitter/api_segments/dm_conversations_api.py +6 -18
- universal_mcp/applications/twitter/api_segments/likes_api.py +1 -3
- universal_mcp/applications/twitter/api_segments/lists_api.py +5 -15
- universal_mcp/applications/twitter/api_segments/trends_api.py +1 -3
- universal_mcp/applications/twitter/api_segments/tweets_api.py +9 -31
- universal_mcp/applications/twitter/api_segments/usage_api.py +1 -5
- universal_mcp/applications/twitter/api_segments/users_api.py +14 -42
- universal_mcp/applications/whatsapp/app.py +35 -186
- universal_mcp/applications/whatsapp/audio.py +2 -6
- universal_mcp/applications/whatsapp/whatsapp.py +17 -51
- universal_mcp/applications/whatsapp_business/app.py +70 -283
- universal_mcp/applications/wrike/app.py +45 -118
- universal_mcp/applications/yahoo_finance/app.py +19 -65
- universal_mcp/applications/youtube/app.py +75 -261
- universal_mcp/applications/zenquotes/app.py +2 -2
- {universal_mcp_applications-0.1.32.dist-info → universal_mcp_applications-0.1.36rc2.dist-info}/METADATA +2 -2
- {universal_mcp_applications-0.1.32.dist-info → universal_mcp_applications-0.1.36rc2.dist-info}/RECORD +105 -105
- {universal_mcp_applications-0.1.32.dist-info → universal_mcp_applications-0.1.36rc2.dist-info}/WHEEL +0 -0
- {universal_mcp_applications-0.1.32.dist-info → universal_mcp_applications-0.1.36rc2.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
from base64 import b64encode
|
|
2
2
|
from typing import Any
|
|
3
|
-
|
|
4
3
|
from universal_mcp.applications.application import APIApplication
|
|
5
4
|
from universal_mcp.integrations import Integration
|
|
6
5
|
|
|
@@ -15,15 +14,9 @@ class GongApp(APIApplication):
|
|
|
15
14
|
api_key = credentials.get("api_key")
|
|
16
15
|
secret = credentials.get("secret")
|
|
17
16
|
api_key_b64 = b64encode(f"{api_key}:{secret}".encode()).decode()
|
|
18
|
-
return {
|
|
19
|
-
"Authorization": f"Basic {api_key_b64}",
|
|
20
|
-
"Content-Type": "application/json",
|
|
21
|
-
"Accept": "application/json",
|
|
22
|
-
}
|
|
17
|
+
return {"Authorization": f"Basic {api_key_b64}", "Content-Type": "application/json", "Accept": "application/json"}
|
|
23
18
|
|
|
24
|
-
def list_calls(
|
|
25
|
-
self, fromDateTime, toDateTime, cursor=None, workspaceId=None
|
|
26
|
-
) -> dict[str, Any]:
|
|
19
|
+
async def list_calls(self, fromDateTime, toDateTime, cursor=None, workspaceId=None) -> dict[str, Any]:
|
|
27
20
|
"""
|
|
28
21
|
Retrieves a list of call records within the specified date range, with optional pagination and workspace filtering.
|
|
29
22
|
|
|
@@ -49,19 +42,13 @@ class GongApp(APIApplication):
|
|
|
49
42
|
raise ValueError("Missing required parameter 'toDateTime'")
|
|
50
43
|
url = f"{self.base_url}/v2/calls"
|
|
51
44
|
query_params = {
|
|
52
|
-
k: v
|
|
53
|
-
for k, v in [
|
|
54
|
-
("fromDateTime", fromDateTime),
|
|
55
|
-
("toDateTime", toDateTime),
|
|
56
|
-
("workspaceId", workspaceId),
|
|
57
|
-
]
|
|
58
|
-
if v is not None
|
|
45
|
+
k: v for k, v in [("fromDateTime", fromDateTime), ("toDateTime", toDateTime), ("workspaceId", workspaceId)] if v is not None
|
|
59
46
|
}
|
|
60
47
|
response = self._get(url, params=query_params)
|
|
61
48
|
response.raise_for_status()
|
|
62
49
|
return response.json()
|
|
63
50
|
|
|
64
|
-
def add_call(
|
|
51
|
+
async def add_call(
|
|
65
52
|
self,
|
|
66
53
|
clientUniqueId,
|
|
67
54
|
actualStart,
|
|
@@ -155,7 +142,7 @@ class GongApp(APIApplication):
|
|
|
155
142
|
response.raise_for_status()
|
|
156
143
|
return response.json()
|
|
157
144
|
|
|
158
|
-
def get_call(self, id) -> dict[str, Any]:
|
|
145
|
+
async def get_call(self, id) -> dict[str, Any]:
|
|
159
146
|
"""
|
|
160
147
|
Retrieves details for a specific call by its identifier.
|
|
161
148
|
|
|
@@ -180,9 +167,7 @@ class GongApp(APIApplication):
|
|
|
180
167
|
response.raise_for_status()
|
|
181
168
|
return response.json()
|
|
182
169
|
|
|
183
|
-
def list_calls_extensive(
|
|
184
|
-
self, filter, cursor=None, contentSelector=None
|
|
185
|
-
) -> dict[str, Any]:
|
|
170
|
+
async def list_calls_extensive(self, filter, cursor=None, contentSelector=None) -> dict[str, Any]:
|
|
186
171
|
"""
|
|
187
172
|
Retrieves a list of extensive call records matching the specified filter criteria, with optional pagination and content selection.
|
|
188
173
|
|
|
@@ -203,11 +188,7 @@ class GongApp(APIApplication):
|
|
|
203
188
|
"""
|
|
204
189
|
if filter is None:
|
|
205
190
|
raise ValueError("Missing required parameter 'filter'")
|
|
206
|
-
request_body = {
|
|
207
|
-
"cursor": cursor,
|
|
208
|
-
"filter": filter,
|
|
209
|
-
"contentSelector": contentSelector,
|
|
210
|
-
}
|
|
191
|
+
request_body = {"cursor": cursor, "filter": filter, "contentSelector": contentSelector}
|
|
211
192
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
212
193
|
url = f"{self.base_url}/v2/calls/extensive"
|
|
213
194
|
query_params = {}
|
|
@@ -215,7 +196,7 @@ class GongApp(APIApplication):
|
|
|
215
196
|
response.raise_for_status()
|
|
216
197
|
return response.json()
|
|
217
198
|
|
|
218
|
-
def get_permission_profile(self, profileId) -> dict[str, Any]:
|
|
199
|
+
async def get_permission_profile(self, profileId) -> dict[str, Any]:
|
|
219
200
|
"""
|
|
220
201
|
Retrieve the details of a permission profile by its profile ID.
|
|
221
202
|
|
|
@@ -240,7 +221,7 @@ class GongApp(APIApplication):
|
|
|
240
221
|
response.raise_for_status()
|
|
241
222
|
return response.json()
|
|
242
223
|
|
|
243
|
-
def update_permission_profile(
|
|
224
|
+
async def update_permission_profile(
|
|
244
225
|
self,
|
|
245
226
|
profileId,
|
|
246
227
|
id=None,
|
|
@@ -418,7 +399,7 @@ class GongApp(APIApplication):
|
|
|
418
399
|
response.raise_for_status()
|
|
419
400
|
return response.json()
|
|
420
401
|
|
|
421
|
-
def create_permission_profile(
|
|
402
|
+
async def create_permission_profile(
|
|
422
403
|
self,
|
|
423
404
|
workspaceId,
|
|
424
405
|
id=None,
|
|
@@ -591,23 +572,12 @@ class GongApp(APIApplication):
|
|
|
591
572
|
}
|
|
592
573
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
593
574
|
url = f"{self.base_url}/v2/permission-profile"
|
|
594
|
-
query_params = {
|
|
595
|
-
k: v for k, v in [("workspaceId", workspaceId)] if v is not None
|
|
596
|
-
}
|
|
575
|
+
query_params = {k: v for k, v in [("workspaceId", workspaceId)] if v is not None}
|
|
597
576
|
response = self._post(url, data=request_body, params=query_params)
|
|
598
577
|
response.raise_for_status()
|
|
599
578
|
return response.json()
|
|
600
579
|
|
|
601
|
-
def update_meeting(
|
|
602
|
-
self,
|
|
603
|
-
meetingId,
|
|
604
|
-
startTime,
|
|
605
|
-
endTime,
|
|
606
|
-
invitees,
|
|
607
|
-
organizerEmail,
|
|
608
|
-
title=None,
|
|
609
|
-
externalId=None,
|
|
610
|
-
) -> dict[str, Any]:
|
|
580
|
+
async def update_meeting(self, meetingId, startTime, endTime, invitees, organizerEmail, title=None, externalId=None) -> dict[str, Any]:
|
|
611
581
|
"""
|
|
612
582
|
Updates the details of an existing meeting with new information such as time, invitees, and title.
|
|
613
583
|
|
|
@@ -654,7 +624,7 @@ class GongApp(APIApplication):
|
|
|
654
624
|
response.raise_for_status()
|
|
655
625
|
return response.json()
|
|
656
626
|
|
|
657
|
-
def delete_meeting(self, meetingId, organizerEmail=None) -> dict[str, Any]:
|
|
627
|
+
async def delete_meeting(self, meetingId, organizerEmail=None) -> dict[str, Any]:
|
|
658
628
|
"""
|
|
659
629
|
Deletes a meeting by its ID, optionally specifying the organizer's email.
|
|
660
630
|
|
|
@@ -674,9 +644,7 @@ class GongApp(APIApplication):
|
|
|
674
644
|
"""
|
|
675
645
|
if meetingId is None:
|
|
676
646
|
raise ValueError("Missing required parameter 'meetingId'")
|
|
677
|
-
request_body = {
|
|
678
|
-
"organizerEmail": organizerEmail,
|
|
679
|
-
}
|
|
647
|
+
request_body = {"organizerEmail": organizerEmail}
|
|
680
648
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
681
649
|
url = f"{self.base_url}/v2/meetings/{meetingId}"
|
|
682
650
|
query_params = {}
|
|
@@ -684,7 +652,7 @@ class GongApp(APIApplication):
|
|
|
684
652
|
response.raise_for_status()
|
|
685
653
|
return response.json()
|
|
686
654
|
|
|
687
|
-
def content_viewed(
|
|
655
|
+
async def content_viewed(
|
|
688
656
|
self,
|
|
689
657
|
reportingSystem,
|
|
690
658
|
eventTimestamp,
|
|
@@ -793,7 +761,7 @@ class GongApp(APIApplication):
|
|
|
793
761
|
response.raise_for_status()
|
|
794
762
|
return response.json()
|
|
795
763
|
|
|
796
|
-
def content_shared(
|
|
764
|
+
async def content_shared(
|
|
797
765
|
self,
|
|
798
766
|
reportingSystem,
|
|
799
767
|
eventTimestamp,
|
|
@@ -899,7 +867,7 @@ class GongApp(APIApplication):
|
|
|
899
867
|
response.raise_for_status()
|
|
900
868
|
return response.json()
|
|
901
869
|
|
|
902
|
-
def custom_action(
|
|
870
|
+
async def custom_action(
|
|
903
871
|
self,
|
|
904
872
|
reportingSystem,
|
|
905
873
|
eventTimestamp,
|
|
@@ -999,9 +967,7 @@ class GongApp(APIApplication):
|
|
|
999
967
|
response.raise_for_status()
|
|
1000
968
|
return response.json()
|
|
1001
969
|
|
|
1002
|
-
def list_generic_crm_integration(
|
|
1003
|
-
self,
|
|
1004
|
-
) -> dict[str, Any]:
|
|
970
|
+
async def list_generic_crm_integration(self) -> dict[str, Any]:
|
|
1005
971
|
"""
|
|
1006
972
|
Retrieves a list of generic CRM integrations from the API.
|
|
1007
973
|
|
|
@@ -1023,7 +989,7 @@ class GongApp(APIApplication):
|
|
|
1023
989
|
response.raise_for_status()
|
|
1024
990
|
return response.json()
|
|
1025
991
|
|
|
1026
|
-
def register_generic_crm_integration(self, ownerEmail, name) -> dict[str, Any]:
|
|
992
|
+
async def register_generic_crm_integration(self, ownerEmail, name) -> dict[str, Any]:
|
|
1027
993
|
"""
|
|
1028
994
|
Registers a generic CRM integration for a given owner email and integration name.
|
|
1029
995
|
|
|
@@ -1045,10 +1011,7 @@ class GongApp(APIApplication):
|
|
|
1045
1011
|
raise ValueError("Missing required parameter 'ownerEmail'")
|
|
1046
1012
|
if name is None:
|
|
1047
1013
|
raise ValueError("Missing required parameter 'name'")
|
|
1048
|
-
request_body = {
|
|
1049
|
-
"ownerEmail": ownerEmail,
|
|
1050
|
-
"name": name,
|
|
1051
|
-
}
|
|
1014
|
+
request_body = {"ownerEmail": ownerEmail, "name": name}
|
|
1052
1015
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
1053
1016
|
url = f"{self.base_url}/v2/crm/integrations"
|
|
1054
1017
|
query_params = {}
|
|
@@ -1056,9 +1019,7 @@ class GongApp(APIApplication):
|
|
|
1056
1019
|
response.raise_for_status()
|
|
1057
1020
|
return response.json()
|
|
1058
1021
|
|
|
1059
|
-
def delete_generic_crm_integration(
|
|
1060
|
-
self, integrationId, clientRequestId
|
|
1061
|
-
) -> dict[str, Any]:
|
|
1022
|
+
async def delete_generic_crm_integration(self, integrationId, clientRequestId) -> dict[str, Any]:
|
|
1062
1023
|
"""
|
|
1063
1024
|
Deletes a generic CRM integration using the provided integration and client request IDs.
|
|
1064
1025
|
|
|
@@ -1081,19 +1042,12 @@ class GongApp(APIApplication):
|
|
|
1081
1042
|
if clientRequestId is None:
|
|
1082
1043
|
raise ValueError("Missing required parameter 'clientRequestId'")
|
|
1083
1044
|
url = f"{self.base_url}/v2/crm/integrations"
|
|
1084
|
-
query_params = {
|
|
1085
|
-
k: v
|
|
1086
|
-
for k, v in [
|
|
1087
|
-
("integrationId", integrationId),
|
|
1088
|
-
("clientRequestId", clientRequestId),
|
|
1089
|
-
]
|
|
1090
|
-
if v is not None
|
|
1091
|
-
}
|
|
1045
|
+
query_params = {k: v for k, v in [("integrationId", integrationId), ("clientRequestId", clientRequestId)] if v is not None}
|
|
1092
1046
|
response = self._delete(url, params=query_params)
|
|
1093
1047
|
response.raise_for_status()
|
|
1094
1048
|
return response.json()
|
|
1095
1049
|
|
|
1096
|
-
def add_users_access_to_calls(self, callAccessList=None) -> dict[str, Any]:
|
|
1050
|
+
async def add_users_access_to_calls(self, callAccessList=None) -> dict[str, Any]:
|
|
1097
1051
|
"""
|
|
1098
1052
|
Updates user access permissions for calls by sending a PUT request with the specified access list.
|
|
1099
1053
|
|
|
@@ -1109,9 +1063,7 @@ class GongApp(APIApplication):
|
|
|
1109
1063
|
Tags:
|
|
1110
1064
|
update, calls, users-access, api, management
|
|
1111
1065
|
"""
|
|
1112
|
-
request_body = {
|
|
1113
|
-
"callAccessList": callAccessList,
|
|
1114
|
-
}
|
|
1066
|
+
request_body = {"callAccessList": callAccessList}
|
|
1115
1067
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
1116
1068
|
url = f"{self.base_url}/v2/calls/users-access"
|
|
1117
1069
|
query_params = {}
|
|
@@ -1119,7 +1071,7 @@ class GongApp(APIApplication):
|
|
|
1119
1071
|
response.raise_for_status()
|
|
1120
1072
|
return response.json()
|
|
1121
1073
|
|
|
1122
|
-
def get_users_access_to_calls(self, filter) -> dict[str, Any]:
|
|
1074
|
+
async def get_users_access_to_calls(self, filter) -> dict[str, Any]:
|
|
1123
1075
|
"""
|
|
1124
1076
|
Retrieves user access information for calls based on the provided filter criteria.
|
|
1125
1077
|
|
|
@@ -1138,9 +1090,7 @@ class GongApp(APIApplication):
|
|
|
1138
1090
|
"""
|
|
1139
1091
|
if filter is None:
|
|
1140
1092
|
raise ValueError("Missing required parameter 'filter'")
|
|
1141
|
-
request_body = {
|
|
1142
|
-
"filter": filter,
|
|
1143
|
-
}
|
|
1093
|
+
request_body = {"filter": filter}
|
|
1144
1094
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
1145
1095
|
url = f"{self.base_url}/v2/calls/users-access"
|
|
1146
1096
|
query_params = {}
|
|
@@ -1148,7 +1098,7 @@ class GongApp(APIApplication):
|
|
|
1148
1098
|
response.raise_for_status()
|
|
1149
1099
|
return response.json()
|
|
1150
1100
|
|
|
1151
|
-
def delete_users_access_to_calls(self, callAccessList=None) -> dict[str, Any]:
|
|
1101
|
+
async def delete_users_access_to_calls(self, callAccessList=None) -> dict[str, Any]:
|
|
1152
1102
|
"""
|
|
1153
1103
|
Deletes a list of users' access permissions to calls.
|
|
1154
1104
|
|
|
@@ -1164,9 +1114,7 @@ class GongApp(APIApplication):
|
|
|
1164
1114
|
Tags:
|
|
1165
1115
|
delete, access-management, calls
|
|
1166
1116
|
"""
|
|
1167
|
-
request_body = {
|
|
1168
|
-
"callAccessList": callAccessList,
|
|
1169
|
-
}
|
|
1117
|
+
request_body = {"callAccessList": callAccessList}
|
|
1170
1118
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
1171
1119
|
url = f"{self.base_url}/v2/calls/users-access"
|
|
1172
1120
|
query_params = {}
|
|
@@ -1174,7 +1122,7 @@ class GongApp(APIApplication):
|
|
|
1174
1122
|
response.raise_for_status()
|
|
1175
1123
|
return response.json()
|
|
1176
1124
|
|
|
1177
|
-
def list_multiple_users(self, filter, cursor=None) -> dict[str, Any]:
|
|
1125
|
+
async def list_multiple_users(self, filter, cursor=None) -> dict[str, Any]:
|
|
1178
1126
|
"""
|
|
1179
1127
|
Retrieves a list of users based on a provided filter and optional pagination cursor.
|
|
1180
1128
|
|
|
@@ -1194,10 +1142,7 @@ class GongApp(APIApplication):
|
|
|
1194
1142
|
"""
|
|
1195
1143
|
if filter is None:
|
|
1196
1144
|
raise ValueError("Missing required parameter 'filter'")
|
|
1197
|
-
request_body = {
|
|
1198
|
-
"cursor": cursor,
|
|
1199
|
-
"filter": filter,
|
|
1200
|
-
}
|
|
1145
|
+
request_body = {"cursor": cursor, "filter": filter}
|
|
1201
1146
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
1202
1147
|
url = f"{self.base_url}/v2/users/extensive"
|
|
1203
1148
|
query_params = {}
|
|
@@ -1205,7 +1150,7 @@ class GongApp(APIApplication):
|
|
|
1205
1150
|
response.raise_for_status()
|
|
1206
1151
|
return response.json()
|
|
1207
1152
|
|
|
1208
|
-
def list_interaction_stats(self, filter, cursor=None) -> dict[str, Any]:
|
|
1153
|
+
async def list_interaction_stats(self, filter, cursor=None) -> dict[str, Any]:
|
|
1209
1154
|
"""
|
|
1210
1155
|
Retrieves interaction statistics based on specified filter criteria, with optional pagination support.
|
|
1211
1156
|
|
|
@@ -1225,10 +1170,7 @@ class GongApp(APIApplication):
|
|
|
1225
1170
|
"""
|
|
1226
1171
|
if filter is None:
|
|
1227
1172
|
raise ValueError("Missing required parameter 'filter'")
|
|
1228
|
-
request_body = {
|
|
1229
|
-
"cursor": cursor,
|
|
1230
|
-
"filter": filter,
|
|
1231
|
-
}
|
|
1173
|
+
request_body = {"cursor": cursor, "filter": filter}
|
|
1232
1174
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
1233
1175
|
url = f"{self.base_url}/v2/stats/interaction"
|
|
1234
1176
|
query_params = {}
|
|
@@ -1236,7 +1178,7 @@ class GongApp(APIApplication):
|
|
|
1236
1178
|
response.raise_for_status()
|
|
1237
1179
|
return response.json()
|
|
1238
1180
|
|
|
1239
|
-
def list_answered_scorecards(self, filter, cursor=None) -> dict[str, Any]:
|
|
1181
|
+
async def list_answered_scorecards(self, filter, cursor=None) -> dict[str, Any]:
|
|
1240
1182
|
"""
|
|
1241
1183
|
Retrieves a paginated list of answered scorecards based on the provided filter criteria.
|
|
1242
1184
|
|
|
@@ -1256,10 +1198,7 @@ class GongApp(APIApplication):
|
|
|
1256
1198
|
"""
|
|
1257
1199
|
if filter is None:
|
|
1258
1200
|
raise ValueError("Missing required parameter 'filter'")
|
|
1259
|
-
request_body = {
|
|
1260
|
-
"cursor": cursor,
|
|
1261
|
-
"filter": filter,
|
|
1262
|
-
}
|
|
1201
|
+
request_body = {"cursor": cursor, "filter": filter}
|
|
1263
1202
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
1264
1203
|
url = f"{self.base_url}/v2/stats/activity/scorecards"
|
|
1265
1204
|
query_params = {}
|
|
@@ -1267,9 +1206,7 @@ class GongApp(APIApplication):
|
|
|
1267
1206
|
response.raise_for_status()
|
|
1268
1207
|
return response.json()
|
|
1269
1208
|
|
|
1270
|
-
def list_multiple_users_day_by_day_activity(
|
|
1271
|
-
self, filter, cursor=None
|
|
1272
|
-
) -> dict[str, Any]:
|
|
1209
|
+
async def list_multiple_users_day_by_day_activity(self, filter, cursor=None) -> dict[str, Any]:
|
|
1273
1210
|
"""
|
|
1274
1211
|
Retrieves day-by-day activity statistics for multiple users based on a provided filter.
|
|
1275
1212
|
|
|
@@ -1289,10 +1226,7 @@ class GongApp(APIApplication):
|
|
|
1289
1226
|
"""
|
|
1290
1227
|
if filter is None:
|
|
1291
1228
|
raise ValueError("Missing required parameter 'filter'")
|
|
1292
|
-
request_body = {
|
|
1293
|
-
"cursor": cursor,
|
|
1294
|
-
"filter": filter,
|
|
1295
|
-
}
|
|
1229
|
+
request_body = {"cursor": cursor, "filter": filter}
|
|
1296
1230
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
1297
1231
|
url = f"{self.base_url}/v2/stats/activity/day-by-day"
|
|
1298
1232
|
query_params = {}
|
|
@@ -1300,9 +1234,7 @@ class GongApp(APIApplication):
|
|
|
1300
1234
|
response.raise_for_status()
|
|
1301
1235
|
return response.json()
|
|
1302
1236
|
|
|
1303
|
-
def list_multiple_users_aggregate_activity(
|
|
1304
|
-
self, filter, cursor=None
|
|
1305
|
-
) -> dict[str, Any]:
|
|
1237
|
+
async def list_multiple_users_aggregate_activity(self, filter, cursor=None) -> dict[str, Any]:
|
|
1306
1238
|
"""
|
|
1307
1239
|
Aggregates and returns activity statistics for multiple users based on specified filters.
|
|
1308
1240
|
|
|
@@ -1322,10 +1254,7 @@ class GongApp(APIApplication):
|
|
|
1322
1254
|
"""
|
|
1323
1255
|
if filter is None:
|
|
1324
1256
|
raise ValueError("Missing required parameter 'filter'")
|
|
1325
|
-
request_body = {
|
|
1326
|
-
"cursor": cursor,
|
|
1327
|
-
"filter": filter,
|
|
1328
|
-
}
|
|
1257
|
+
request_body = {"cursor": cursor, "filter": filter}
|
|
1329
1258
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
1330
1259
|
url = f"{self.base_url}/v2/stats/activity/aggregate"
|
|
1331
1260
|
query_params = {}
|
|
@@ -1333,9 +1262,7 @@ class GongApp(APIApplication):
|
|
|
1333
1262
|
response.raise_for_status()
|
|
1334
1263
|
return response.json()
|
|
1335
1264
|
|
|
1336
|
-
def list_multiple_users_aggregate_by_period(
|
|
1337
|
-
self, filter, aggregationPeriod, cursor=None
|
|
1338
|
-
) -> dict[str, Any]:
|
|
1265
|
+
async def list_multiple_users_aggregate_by_period(self, filter, aggregationPeriod, cursor=None) -> dict[str, Any]:
|
|
1339
1266
|
"""
|
|
1340
1267
|
Aggregates activity statistics for multiple users over a specified period using given filter criteria.
|
|
1341
1268
|
|
|
@@ -1358,11 +1285,7 @@ class GongApp(APIApplication):
|
|
|
1358
1285
|
raise ValueError("Missing required parameter 'filter'")
|
|
1359
1286
|
if aggregationPeriod is None:
|
|
1360
1287
|
raise ValueError("Missing required parameter 'aggregationPeriod'")
|
|
1361
|
-
request_body = {
|
|
1362
|
-
"cursor": cursor,
|
|
1363
|
-
"filter": filter,
|
|
1364
|
-
"aggregationPeriod": aggregationPeriod,
|
|
1365
|
-
}
|
|
1288
|
+
request_body = {"cursor": cursor, "filter": filter, "aggregationPeriod": aggregationPeriod}
|
|
1366
1289
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
1367
1290
|
url = f"{self.base_url}/v2/stats/activity/aggregate-by-period"
|
|
1368
1291
|
query_params = {}
|
|
@@ -1370,9 +1293,7 @@ class GongApp(APIApplication):
|
|
|
1370
1293
|
response.raise_for_status()
|
|
1371
1294
|
return response.json()
|
|
1372
1295
|
|
|
1373
|
-
def add_meeting(
|
|
1374
|
-
self, startTime, endTime, invitees, organizerEmail, title=None, externalId=None
|
|
1375
|
-
) -> dict[str, Any]:
|
|
1296
|
+
async def add_meeting(self, startTime, endTime, invitees, organizerEmail, title=None, externalId=None) -> dict[str, Any]:
|
|
1376
1297
|
"""
|
|
1377
1298
|
Creates a new meeting with the specified details and returns the server's response as a dictionary.
|
|
1378
1299
|
|
|
@@ -1417,7 +1338,7 @@ class GongApp(APIApplication):
|
|
|
1417
1338
|
response.raise_for_status()
|
|
1418
1339
|
return response.json()
|
|
1419
1340
|
|
|
1420
|
-
def integration_status(self, emails=None) -> dict[str, Any]:
|
|
1341
|
+
async def integration_status(self, emails=None) -> dict[str, Any]:
|
|
1421
1342
|
"""
|
|
1422
1343
|
Retrieves the integration status for specified email addresses via the meetings API.
|
|
1423
1344
|
|
|
@@ -1433,9 +1354,7 @@ class GongApp(APIApplication):
|
|
|
1433
1354
|
Tags:
|
|
1434
1355
|
integration-status, status, check, api, async-job
|
|
1435
1356
|
"""
|
|
1436
|
-
request_body = {
|
|
1437
|
-
"emails": emails,
|
|
1438
|
-
}
|
|
1357
|
+
request_body = {"emails": emails}
|
|
1439
1358
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
1440
1359
|
url = f"{self.base_url}/v2/meetings/integration/status"
|
|
1441
1360
|
query_params = {}
|
|
@@ -1443,7 +1362,7 @@ class GongApp(APIApplication):
|
|
|
1443
1362
|
response.raise_for_status()
|
|
1444
1363
|
return response.json()
|
|
1445
1364
|
|
|
1446
|
-
def integration_settings(self, integrationTypeSettings) -> dict[str, Any]:
|
|
1365
|
+
async def integration_settings(self, integrationTypeSettings) -> dict[str, Any]:
|
|
1447
1366
|
"""
|
|
1448
1367
|
Sends integration type settings to the integration settings API endpoint and returns the server's response as a dictionary.
|
|
1449
1368
|
|
|
@@ -1462,9 +1381,7 @@ class GongApp(APIApplication):
|
|
|
1462
1381
|
"""
|
|
1463
1382
|
if integrationTypeSettings is None:
|
|
1464
1383
|
raise ValueError("Missing required parameter 'integrationTypeSettings'")
|
|
1465
|
-
request_body = {
|
|
1466
|
-
"integrationTypeSettings": integrationTypeSettings,
|
|
1467
|
-
}
|
|
1384
|
+
request_body = {"integrationTypeSettings": integrationTypeSettings}
|
|
1468
1385
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
1469
1386
|
url = f"{self.base_url}/v2/integration-settings"
|
|
1470
1387
|
query_params = {}
|
|
@@ -1472,7 +1389,7 @@ class GongApp(APIApplication):
|
|
|
1472
1389
|
response.raise_for_status()
|
|
1473
1390
|
return response.json()
|
|
1474
1391
|
|
|
1475
|
-
def get_flows_for_prospects(self, crmProspectsIds) -> dict[str, Any]:
|
|
1392
|
+
async def get_flows_for_prospects(self, crmProspectsIds) -> dict[str, Any]:
|
|
1476
1393
|
"""
|
|
1477
1394
|
Fetches flow data for the specified CRM prospect IDs from the API.
|
|
1478
1395
|
|
|
@@ -1491,9 +1408,7 @@ class GongApp(APIApplication):
|
|
|
1491
1408
|
"""
|
|
1492
1409
|
if crmProspectsIds is None:
|
|
1493
1410
|
raise ValueError("Missing required parameter 'crmProspectsIds'")
|
|
1494
|
-
request_body = {
|
|
1495
|
-
"crmProspectsIds": crmProspectsIds,
|
|
1496
|
-
}
|
|
1411
|
+
request_body = {"crmProspectsIds": crmProspectsIds}
|
|
1497
1412
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
1498
1413
|
url = f"{self.base_url}/v2/flows/prospects"
|
|
1499
1414
|
query_params = {}
|
|
@@ -1501,9 +1416,7 @@ class GongApp(APIApplication):
|
|
|
1501
1416
|
response.raise_for_status()
|
|
1502
1417
|
return response.json()
|
|
1503
1418
|
|
|
1504
|
-
def assign_prospects(
|
|
1505
|
-
self, crmProspectsIds, flowId, flowInstanceOwnerEmail
|
|
1506
|
-
) -> dict[str, Any]:
|
|
1419
|
+
async def assign_prospects(self, crmProspectsIds, flowId, flowInstanceOwnerEmail) -> dict[str, Any]:
|
|
1507
1420
|
"""
|
|
1508
1421
|
Assigns a list of CRM prospect IDs to a specified flow instance and owner via an API POST request.
|
|
1509
1422
|
|
|
@@ -1528,11 +1441,7 @@ class GongApp(APIApplication):
|
|
|
1528
1441
|
raise ValueError("Missing required parameter 'flowId'")
|
|
1529
1442
|
if flowInstanceOwnerEmail is None:
|
|
1530
1443
|
raise ValueError("Missing required parameter 'flowInstanceOwnerEmail'")
|
|
1531
|
-
request_body = {
|
|
1532
|
-
"crmProspectsIds": crmProspectsIds,
|
|
1533
|
-
"flowId": flowId,
|
|
1534
|
-
"flowInstanceOwnerEmail": flowInstanceOwnerEmail,
|
|
1535
|
-
}
|
|
1444
|
+
request_body = {"crmProspectsIds": crmProspectsIds, "flowId": flowId, "flowInstanceOwnerEmail": flowInstanceOwnerEmail}
|
|
1536
1445
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
1537
1446
|
url = f"{self.base_url}/v2/flows/prospects/assign"
|
|
1538
1447
|
query_params = {}
|
|
@@ -1540,7 +1449,7 @@ class GongApp(APIApplication):
|
|
|
1540
1449
|
response.raise_for_status()
|
|
1541
1450
|
return response.json()
|
|
1542
1451
|
|
|
1543
|
-
def add_digital_interaction(
|
|
1452
|
+
async def add_digital_interaction(
|
|
1544
1453
|
self,
|
|
1545
1454
|
eventId,
|
|
1546
1455
|
timestamp,
|
|
@@ -1605,7 +1514,7 @@ class GongApp(APIApplication):
|
|
|
1605
1514
|
response.raise_for_status()
|
|
1606
1515
|
return response.json()
|
|
1607
1516
|
|
|
1608
|
-
def purge_phone_number(self, phoneNumber) -> dict[str, Any]:
|
|
1517
|
+
async def purge_phone_number(self, phoneNumber) -> dict[str, Any]:
|
|
1609
1518
|
"""
|
|
1610
1519
|
Erases all data associated with the specified phone number via the data privacy API.
|
|
1611
1520
|
|
|
@@ -1625,14 +1534,12 @@ class GongApp(APIApplication):
|
|
|
1625
1534
|
if phoneNumber is None:
|
|
1626
1535
|
raise ValueError("Missing required parameter 'phoneNumber'")
|
|
1627
1536
|
url = f"{self.base_url}/v2/data-privacy/erase-data-for-phone-number"
|
|
1628
|
-
query_params = {
|
|
1629
|
-
k: v for k, v in [("phoneNumber", phoneNumber)] if v is not None
|
|
1630
|
-
}
|
|
1537
|
+
query_params = {k: v for k, v in [("phoneNumber", phoneNumber)] if v is not None}
|
|
1631
1538
|
response = self._post(url, data={}, params=query_params)
|
|
1632
1539
|
response.raise_for_status()
|
|
1633
1540
|
return response.json()
|
|
1634
1541
|
|
|
1635
|
-
def purge_email_address(self, emailAddress) -> dict[str, Any]:
|
|
1542
|
+
async def purge_email_address(self, emailAddress) -> dict[str, Any]:
|
|
1636
1543
|
"""
|
|
1637
1544
|
Permanently erases all data associated with the specified email address from the system.
|
|
1638
1545
|
|
|
@@ -1652,14 +1559,12 @@ class GongApp(APIApplication):
|
|
|
1652
1559
|
if emailAddress is None:
|
|
1653
1560
|
raise ValueError("Missing required parameter 'emailAddress'")
|
|
1654
1561
|
url = f"{self.base_url}/v2/data-privacy/erase-data-for-email-address"
|
|
1655
|
-
query_params = {
|
|
1656
|
-
k: v for k, v in [("emailAddress", emailAddress)] if v is not None
|
|
1657
|
-
}
|
|
1562
|
+
query_params = {k: v for k, v in [("emailAddress", emailAddress)] if v is not None}
|
|
1658
1563
|
response = self._post(url, data={}, params=query_params)
|
|
1659
1564
|
response.raise_for_status()
|
|
1660
1565
|
return response.json()
|
|
1661
1566
|
|
|
1662
|
-
def list_crm_schema_fields(self, integrationId, objectType) -> dict[str, Any]:
|
|
1567
|
+
async def list_crm_schema_fields(self, integrationId, objectType) -> dict[str, Any]:
|
|
1663
1568
|
"""
|
|
1664
1569
|
Retrieves the schema fields for a specified CRM object type associated with a given integration.
|
|
1665
1570
|
|
|
@@ -1682,18 +1587,12 @@ class GongApp(APIApplication):
|
|
|
1682
1587
|
if objectType is None:
|
|
1683
1588
|
raise ValueError("Missing required parameter 'objectType'")
|
|
1684
1589
|
url = f"{self.base_url}/v2/crm/entity-schema"
|
|
1685
|
-
query_params = {
|
|
1686
|
-
k: v
|
|
1687
|
-
for k, v in [("integrationId", integrationId), ("objectType", objectType)]
|
|
1688
|
-
if v is not None
|
|
1689
|
-
}
|
|
1590
|
+
query_params = {k: v for k, v in [("integrationId", integrationId), ("objectType", objectType)] if v is not None}
|
|
1690
1591
|
response = self._get(url, params=query_params)
|
|
1691
1592
|
response.raise_for_status()
|
|
1692
1593
|
return response.json()
|
|
1693
1594
|
|
|
1694
|
-
def upload_crm_schema_field(
|
|
1695
|
-
self, integrationId, objectType, items
|
|
1696
|
-
) -> dict[str, Any]:
|
|
1595
|
+
async def upload_crm_schema_field(self, integrationId, objectType, items) -> dict[str, Any]:
|
|
1697
1596
|
"""
|
|
1698
1597
|
Uploads CRM entity schema fields to the integration service for the specified CRM object type.
|
|
1699
1598
|
|
|
@@ -1720,18 +1619,12 @@ class GongApp(APIApplication):
|
|
|
1720
1619
|
raise ValueError("Missing required parameter 'items'")
|
|
1721
1620
|
request_body = items
|
|
1722
1621
|
url = f"{self.base_url}/v2/crm/entity-schema"
|
|
1723
|
-
query_params = {
|
|
1724
|
-
k: v
|
|
1725
|
-
for k, v in [("integrationId", integrationId), ("objectType", objectType)]
|
|
1726
|
-
if v is not None
|
|
1727
|
-
}
|
|
1622
|
+
query_params = {k: v for k, v in [("integrationId", integrationId), ("objectType", objectType)] if v is not None}
|
|
1728
1623
|
response = self._post(url, data=request_body, params=query_params)
|
|
1729
1624
|
response.raise_for_status()
|
|
1730
1625
|
return response.json()
|
|
1731
1626
|
|
|
1732
|
-
def get_crm_objects(
|
|
1733
|
-
self, integrationId, objectType, objectsCrmIds
|
|
1734
|
-
) -> dict[str, Any]:
|
|
1627
|
+
async def get_crm_objects(self, integrationId, objectType, objectsCrmIds) -> dict[str, Any]:
|
|
1735
1628
|
"""
|
|
1736
1629
|
Retrieves CRM objects by their CRM IDs from a specified integration and object type.
|
|
1737
1630
|
|
|
@@ -1758,18 +1651,14 @@ class GongApp(APIApplication):
|
|
|
1758
1651
|
url = f"{self.base_url}/v2/crm/entities"
|
|
1759
1652
|
query_params = {
|
|
1760
1653
|
k: v
|
|
1761
|
-
for k, v in [
|
|
1762
|
-
("integrationId", integrationId),
|
|
1763
|
-
("objectType", objectType),
|
|
1764
|
-
("objectsCrmIds", objectsCrmIds),
|
|
1765
|
-
]
|
|
1654
|
+
for k, v in [("integrationId", integrationId), ("objectType", objectType), ("objectsCrmIds", objectsCrmIds)]
|
|
1766
1655
|
if v is not None
|
|
1767
1656
|
}
|
|
1768
1657
|
response = self._get(url, params=query_params)
|
|
1769
1658
|
response.raise_for_status()
|
|
1770
1659
|
return response.json()
|
|
1771
1660
|
|
|
1772
|
-
def get_call_transcripts(self, filter, cursor=None) -> dict[str, Any]:
|
|
1661
|
+
async def get_call_transcripts(self, filter, cursor=None) -> dict[str, Any]:
|
|
1773
1662
|
"""
|
|
1774
1663
|
Retrieves call transcripts based on the specified filter and optional pagination cursor.
|
|
1775
1664
|
|
|
@@ -1789,10 +1678,7 @@ class GongApp(APIApplication):
|
|
|
1789
1678
|
"""
|
|
1790
1679
|
if filter is None:
|
|
1791
1680
|
raise ValueError("Missing required parameter 'filter'")
|
|
1792
|
-
request_body = {
|
|
1793
|
-
"cursor": cursor,
|
|
1794
|
-
"filter": filter,
|
|
1795
|
-
}
|
|
1681
|
+
request_body = {"cursor": cursor, "filter": filter}
|
|
1796
1682
|
request_body = {k: v for k, v in request_body.items() if v is not None}
|
|
1797
1683
|
url = f"{self.base_url}/v2/calls/transcript"
|
|
1798
1684
|
query_params = {}
|
|
@@ -1800,9 +1686,7 @@ class GongApp(APIApplication):
|
|
|
1800
1686
|
response.raise_for_status()
|
|
1801
1687
|
return response.json()
|
|
1802
1688
|
|
|
1803
|
-
def list_workspaces(
|
|
1804
|
-
self,
|
|
1805
|
-
) -> dict[str, Any]:
|
|
1689
|
+
async def list_workspaces(self) -> dict[str, Any]:
|
|
1806
1690
|
"""
|
|
1807
1691
|
Retrieves a list of all available workspaces from the API.
|
|
1808
1692
|
|
|
@@ -1821,7 +1705,7 @@ class GongApp(APIApplication):
|
|
|
1821
1705
|
response.raise_for_status()
|
|
1822
1706
|
return response.json()
|
|
1823
1707
|
|
|
1824
|
-
def list_users(self, cursor=None, includeAvatars=None) -> dict[str, Any]:
|
|
1708
|
+
async def list_users(self, cursor=None, includeAvatars=None) -> dict[str, Any]:
|
|
1825
1709
|
"""
|
|
1826
1710
|
Retrieves a paginated list of users from the API, with optional filtering by cursor and inclusion of avatar data.
|
|
1827
1711
|
|
|
@@ -1839,16 +1723,12 @@ class GongApp(APIApplication):
|
|
|
1839
1723
|
list, users, api, management
|
|
1840
1724
|
"""
|
|
1841
1725
|
url = f"{self.base_url}/v2/users"
|
|
1842
|
-
query_params = {
|
|
1843
|
-
k: v
|
|
1844
|
-
for k, v in [("cursor", cursor), ("includeAvatars", includeAvatars)]
|
|
1845
|
-
if v is not None
|
|
1846
|
-
}
|
|
1726
|
+
query_params = {k: v for k, v in [("cursor", cursor), ("includeAvatars", includeAvatars)] if v is not None}
|
|
1847
1727
|
response = self._get(url, params=query_params)
|
|
1848
1728
|
response.raise_for_status()
|
|
1849
1729
|
return response.json()
|
|
1850
1730
|
|
|
1851
|
-
def get_user(self, id) -> dict[str, Any]:
|
|
1731
|
+
async def get_user(self, id) -> dict[str, Any]:
|
|
1852
1732
|
"""
|
|
1853
1733
|
Retrieves user information by user ID from the API.
|
|
1854
1734
|
|
|
@@ -1873,7 +1753,7 @@ class GongApp(APIApplication):
|
|
|
1873
1753
|
response.raise_for_status()
|
|
1874
1754
|
return response.json()
|
|
1875
1755
|
|
|
1876
|
-
def get_user_history(self, id) -> dict[str, Any]:
|
|
1756
|
+
async def get_user_history(self, id) -> dict[str, Any]:
|
|
1877
1757
|
"""
|
|
1878
1758
|
Retrieves the settings history for a specific user by user ID.
|
|
1879
1759
|
|
|
@@ -1898,7 +1778,7 @@ class GongApp(APIApplication):
|
|
|
1898
1778
|
response.raise_for_status()
|
|
1899
1779
|
return response.json()
|
|
1900
1780
|
|
|
1901
|
-
def list_trackers(self, workspaceId=None) -> dict[str, Any]:
|
|
1781
|
+
async def list_trackers(self, workspaceId=None) -> dict[str, Any]:
|
|
1902
1782
|
"""
|
|
1903
1783
|
Retrieves a list of trackers for the specified workspace from the API.
|
|
1904
1784
|
|
|
@@ -1915,16 +1795,12 @@ class GongApp(APIApplication):
|
|
|
1915
1795
|
list, trackers, management, api
|
|
1916
1796
|
"""
|
|
1917
1797
|
url = f"{self.base_url}/v2/settings/trackers"
|
|
1918
|
-
query_params = {
|
|
1919
|
-
k: v for k, v in [("workspaceId", workspaceId)] if v is not None
|
|
1920
|
-
}
|
|
1798
|
+
query_params = {k: v for k, v in [("workspaceId", workspaceId)] if v is not None}
|
|
1921
1799
|
response = self._get(url, params=query_params)
|
|
1922
1800
|
response.raise_for_status()
|
|
1923
1801
|
return response.json()
|
|
1924
1802
|
|
|
1925
|
-
def list_scorecards(
|
|
1926
|
-
self,
|
|
1927
|
-
) -> dict[str, Any]:
|
|
1803
|
+
async def list_scorecards(self) -> dict[str, Any]:
|
|
1928
1804
|
"""
|
|
1929
1805
|
Retrieves a list of scorecard settings from the API.
|
|
1930
1806
|
|
|
@@ -1946,7 +1822,7 @@ class GongApp(APIApplication):
|
|
|
1946
1822
|
response.raise_for_status()
|
|
1947
1823
|
return response.json()
|
|
1948
1824
|
|
|
1949
|
-
def list_permission_profile_users(self, profileId) -> dict[str, Any]:
|
|
1825
|
+
async def list_permission_profile_users(self, profileId) -> dict[str, Any]:
|
|
1950
1826
|
"""
|
|
1951
1827
|
Retrieves a list of users associated with a specified permission profile.
|
|
1952
1828
|
|
|
@@ -1971,9 +1847,7 @@ class GongApp(APIApplication):
|
|
|
1971
1847
|
response.raise_for_status()
|
|
1972
1848
|
return response.json()
|
|
1973
1849
|
|
|
1974
|
-
def list_logs(
|
|
1975
|
-
self, logType, fromDateTime, toDateTime=None, cursor=None
|
|
1976
|
-
) -> dict[str, Any]:
|
|
1850
|
+
async def list_logs(self, logType, fromDateTime, toDateTime=None, cursor=None) -> dict[str, Any]:
|
|
1977
1851
|
"""
|
|
1978
1852
|
Retrieves a list of logs for the specified log type and time range, with optional cursor-based pagination.
|
|
1979
1853
|
|
|
@@ -2000,19 +1874,14 @@ class GongApp(APIApplication):
|
|
|
2000
1874
|
url = f"{self.base_url}/v2/logs"
|
|
2001
1875
|
query_params = {
|
|
2002
1876
|
k: v
|
|
2003
|
-
for k, v in [
|
|
2004
|
-
("logType", logType),
|
|
2005
|
-
("fromDateTime", fromDateTime),
|
|
2006
|
-
("toDateTime", toDateTime),
|
|
2007
|
-
("cursor", cursor),
|
|
2008
|
-
]
|
|
1877
|
+
for k, v in [("logType", logType), ("fromDateTime", fromDateTime), ("toDateTime", toDateTime), ("cursor", cursor)]
|
|
2009
1878
|
if v is not None
|
|
2010
1879
|
}
|
|
2011
1880
|
response = self._get(url, params=query_params)
|
|
2012
1881
|
response.raise_for_status()
|
|
2013
1882
|
return response.json()
|
|
2014
1883
|
|
|
2015
|
-
def get_library_structure(self, workspaceId=None) -> dict[str, Any]:
|
|
1884
|
+
async def get_library_structure(self, workspaceId=None) -> dict[str, Any]:
|
|
2016
1885
|
"""
|
|
2017
1886
|
Retrieves the hierarchical structure of library folders, optionally filtered by workspace ID.
|
|
2018
1887
|
|
|
@@ -2029,14 +1898,12 @@ class GongApp(APIApplication):
|
|
|
2029
1898
|
get, library, structure, folders, management
|
|
2030
1899
|
"""
|
|
2031
1900
|
url = f"{self.base_url}/v2/library/folders"
|
|
2032
|
-
query_params = {
|
|
2033
|
-
k: v for k, v in [("workspaceId", workspaceId)] if v is not None
|
|
2034
|
-
}
|
|
1901
|
+
query_params = {k: v for k, v in [("workspaceId", workspaceId)] if v is not None}
|
|
2035
1902
|
response = self._get(url, params=query_params)
|
|
2036
1903
|
response.raise_for_status()
|
|
2037
1904
|
return response.json()
|
|
2038
1905
|
|
|
2039
|
-
def get_calls_in_specific_folder(self, folderId=None) -> dict[str, Any]:
|
|
1906
|
+
async def get_calls_in_specific_folder(self, folderId=None) -> dict[str, Any]:
|
|
2040
1907
|
"""
|
|
2041
1908
|
Retrieves the list of calls contained within a specified folder from the remote library API.
|
|
2042
1909
|
|
|
@@ -2058,9 +1925,7 @@ class GongApp(APIApplication):
|
|
|
2058
1925
|
response.raise_for_status()
|
|
2059
1926
|
return response.json()
|
|
2060
1927
|
|
|
2061
|
-
def list_flows(
|
|
2062
|
-
self, flowOwnerEmail, cursor=None, workspaceId=None
|
|
2063
|
-
) -> dict[str, Any]:
|
|
1928
|
+
async def list_flows(self, flowOwnerEmail, cursor=None, workspaceId=None) -> dict[str, Any]:
|
|
2064
1929
|
"""
|
|
2065
1930
|
Retrieves a list of flows owned by the specified user, with optional pagination and workspace filtering.
|
|
2066
1931
|
|
|
@@ -2083,19 +1948,13 @@ class GongApp(APIApplication):
|
|
|
2083
1948
|
raise ValueError("Missing required parameter 'flowOwnerEmail'")
|
|
2084
1949
|
url = f"{self.base_url}/v2/flows"
|
|
2085
1950
|
query_params = {
|
|
2086
|
-
k: v
|
|
2087
|
-
for k, v in [
|
|
2088
|
-
("flowOwnerEmail", flowOwnerEmail),
|
|
2089
|
-
("cursor", cursor),
|
|
2090
|
-
("workspaceId", workspaceId),
|
|
2091
|
-
]
|
|
2092
|
-
if v is not None
|
|
1951
|
+
k: v for k, v in [("flowOwnerEmail", flowOwnerEmail), ("cursor", cursor), ("workspaceId", workspaceId)] if v is not None
|
|
2093
1952
|
}
|
|
2094
1953
|
response = self._get(url, params=query_params)
|
|
2095
1954
|
response.raise_for_status()
|
|
2096
1955
|
return response.json()
|
|
2097
1956
|
|
|
2098
|
-
def find_all_references_to_phone_number(self, phoneNumber) -> dict[str, Any]:
|
|
1957
|
+
async def find_all_references_to_phone_number(self, phoneNumber) -> dict[str, Any]:
|
|
2099
1958
|
"""
|
|
2100
1959
|
Fetches all references to a specified phone number from the data privacy API.
|
|
2101
1960
|
|
|
@@ -2115,14 +1974,12 @@ class GongApp(APIApplication):
|
|
|
2115
1974
|
if phoneNumber is None:
|
|
2116
1975
|
raise ValueError("Missing required parameter 'phoneNumber'")
|
|
2117
1976
|
url = f"{self.base_url}/v2/data-privacy/data-for-phone-number"
|
|
2118
|
-
query_params = {
|
|
2119
|
-
k: v for k, v in [("phoneNumber", phoneNumber)] if v is not None
|
|
2120
|
-
}
|
|
1977
|
+
query_params = {k: v for k, v in [("phoneNumber", phoneNumber)] if v is not None}
|
|
2121
1978
|
response = self._get(url, params=query_params)
|
|
2122
1979
|
response.raise_for_status()
|
|
2123
1980
|
return response.json()
|
|
2124
1981
|
|
|
2125
|
-
def find_all_references_to_email_address(self, emailAddress) -> dict[str, Any]:
|
|
1982
|
+
async def find_all_references_to_email_address(self, emailAddress) -> dict[str, Any]:
|
|
2126
1983
|
"""
|
|
2127
1984
|
Finds and returns all data references associated with a given email address.
|
|
2128
1985
|
|
|
@@ -2142,14 +1999,12 @@ class GongApp(APIApplication):
|
|
|
2142
1999
|
if emailAddress is None:
|
|
2143
2000
|
raise ValueError("Missing required parameter 'emailAddress'")
|
|
2144
2001
|
url = f"{self.base_url}/v2/data-privacy/data-for-email-address"
|
|
2145
|
-
query_params = {
|
|
2146
|
-
k: v for k, v in [("emailAddress", emailAddress)] if v is not None
|
|
2147
|
-
}
|
|
2002
|
+
query_params = {k: v for k, v in [("emailAddress", emailAddress)] if v is not None}
|
|
2148
2003
|
response = self._get(url, params=query_params)
|
|
2149
2004
|
response.raise_for_status()
|
|
2150
2005
|
return response.json()
|
|
2151
2006
|
|
|
2152
|
-
def get_request_status(self, integrationId, clientRequestId) -> dict[str, Any]:
|
|
2007
|
+
async def get_request_status(self, integrationId, clientRequestId) -> dict[str, Any]:
|
|
2153
2008
|
"""
|
|
2154
2009
|
Retrieves the status of a CRM request using the provided integration and client request IDs.
|
|
2155
2010
|
|
|
@@ -2172,21 +2027,12 @@ class GongApp(APIApplication):
|
|
|
2172
2027
|
if clientRequestId is None:
|
|
2173
2028
|
raise ValueError("Missing required parameter 'clientRequestId'")
|
|
2174
2029
|
url = f"{self.base_url}/v2/crm/request-status"
|
|
2175
|
-
query_params = {
|
|
2176
|
-
k: v
|
|
2177
|
-
for k, v in [
|
|
2178
|
-
("integrationId", integrationId),
|
|
2179
|
-
("clientRequestId", clientRequestId),
|
|
2180
|
-
]
|
|
2181
|
-
if v is not None
|
|
2182
|
-
}
|
|
2030
|
+
query_params = {k: v for k, v in [("integrationId", integrationId), ("clientRequestId", clientRequestId)] if v is not None}
|
|
2183
2031
|
response = self._get(url, params=query_params)
|
|
2184
2032
|
response.raise_for_status()
|
|
2185
2033
|
return response.json()
|
|
2186
2034
|
|
|
2187
|
-
def list_crmcalls_manual_association(
|
|
2188
|
-
self, fromDateTime=None, cursor=None
|
|
2189
|
-
) -> dict[str, Any]:
|
|
2035
|
+
async def list_crmcalls_manual_association(self, fromDateTime=None, cursor=None) -> dict[str, Any]:
|
|
2190
2036
|
"""
|
|
2191
2037
|
Retrieves a list of manually associated CRM call records, with optional filtering by date and pagination.
|
|
2192
2038
|
|
|
@@ -2204,16 +2050,12 @@ class GongApp(APIApplication):
|
|
|
2204
2050
|
list, crmcalls, management, async_job
|
|
2205
2051
|
"""
|
|
2206
2052
|
url = f"{self.base_url}/v2/calls/manual-crm-associations"
|
|
2207
|
-
query_params = {
|
|
2208
|
-
k: v
|
|
2209
|
-
for k, v in [("fromDateTime", fromDateTime), ("cursor", cursor)]
|
|
2210
|
-
if v is not None
|
|
2211
|
-
}
|
|
2053
|
+
query_params = {k: v for k, v in [("fromDateTime", fromDateTime), ("cursor", cursor)] if v is not None}
|
|
2212
2054
|
response = self._get(url, params=query_params)
|
|
2213
2055
|
response.raise_for_status()
|
|
2214
2056
|
return response.json()
|
|
2215
2057
|
|
|
2216
|
-
def list_permission_profile(self, workspaceId) -> dict[str, Any]:
|
|
2058
|
+
async def list_permission_profile(self, workspaceId) -> dict[str, Any]:
|
|
2217
2059
|
"""
|
|
2218
2060
|
Retrieves the list of permission profiles for the specified workspace.
|
|
2219
2061
|
|
|
@@ -2233,9 +2075,7 @@ class GongApp(APIApplication):
|
|
|
2233
2075
|
if workspaceId is None:
|
|
2234
2076
|
raise ValueError("Missing required parameter 'workspaceId'")
|
|
2235
2077
|
url = f"{self.base_url}/v2/all-permission-profiles"
|
|
2236
|
-
query_params = {
|
|
2237
|
-
k: v for k, v in [("workspaceId", workspaceId)] if v is not None
|
|
2238
|
-
}
|
|
2078
|
+
query_params = {k: v for k, v in [("workspaceId", workspaceId)] if v is not None}
|
|
2239
2079
|
response = self._get(url, params=query_params)
|
|
2240
2080
|
response.raise_for_status()
|
|
2241
2081
|
return response.json()
|