universal-mcp-applications 0.1.13__py3-none-any.whl → 0.1.14__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.

Potentially problematic release.


This version of universal-mcp-applications might be problematic. Click here for more details.

Files changed (54) hide show
  1. universal_mcp/applications/aws_s3/app.py +71 -71
  2. universal_mcp/applications/calendly/app.py +199 -199
  3. universal_mcp/applications/canva/app.py +189 -189
  4. universal_mcp/applications/domain_checker/app.py +31 -24
  5. universal_mcp/applications/e2b/app.py +6 -7
  6. universal_mcp/applications/elevenlabs/app.py +24 -20
  7. universal_mcp/applications/exa/app.py +25 -20
  8. universal_mcp/applications/falai/app.py +44 -41
  9. universal_mcp/applications/file_system/app.py +20 -12
  10. universal_mcp/applications/firecrawl/app.py +46 -47
  11. universal_mcp/applications/fireflies/app.py +79 -79
  12. universal_mcp/applications/fpl/app.py +83 -74
  13. universal_mcp/applications/github/README.md +0 -1028
  14. universal_mcp/applications/github/app.py +55 -50227
  15. universal_mcp/applications/google_calendar/app.py +63 -65
  16. universal_mcp/applications/google_docs/app.py +78 -78
  17. universal_mcp/applications/google_drive/app.py +361 -440
  18. universal_mcp/applications/google_gemini/app.py +34 -17
  19. universal_mcp/applications/google_mail/app.py +117 -117
  20. universal_mcp/applications/google_searchconsole/app.py +41 -47
  21. universal_mcp/applications/google_sheet/app.py +157 -164
  22. universal_mcp/applications/http_tools/app.py +16 -16
  23. universal_mcp/applications/linkedin/app.py +26 -31
  24. universal_mcp/applications/ms_teams/app.py +190 -190
  25. universal_mcp/applications/openai/app.py +55 -56
  26. universal_mcp/applications/outlook/app.py +57 -57
  27. universal_mcp/applications/perplexity/app.py +17 -17
  28. universal_mcp/applications/reddit/app.py +225 -4053
  29. universal_mcp/applications/replicate/app.py +40 -42
  30. universal_mcp/applications/resend/app.py +157 -154
  31. universal_mcp/applications/scraper/app.py +24 -24
  32. universal_mcp/applications/serpapi/app.py +18 -20
  33. universal_mcp/applications/sharepoint/app.py +46 -36
  34. universal_mcp/applications/slack/app.py +66 -66
  35. universal_mcp/applications/tavily/app.py +7 -7
  36. universal_mcp/applications/twitter/api_segments/compliance_api.py +17 -20
  37. universal_mcp/applications/twitter/api_segments/dm_conversations_api.py +35 -40
  38. universal_mcp/applications/twitter/api_segments/dm_events_api.py +18 -21
  39. universal_mcp/applications/twitter/api_segments/likes_api.py +19 -22
  40. universal_mcp/applications/twitter/api_segments/lists_api.py +59 -68
  41. universal_mcp/applications/twitter/api_segments/spaces_api.py +36 -42
  42. universal_mcp/applications/twitter/api_segments/trends_api.py +7 -8
  43. universal_mcp/applications/twitter/api_segments/tweets_api.py +159 -185
  44. universal_mcp/applications/twitter/api_segments/usage_api.py +5 -6
  45. universal_mcp/applications/twitter/api_segments/users_api.py +230 -264
  46. universal_mcp/applications/unipile/app.py +99 -105
  47. universal_mcp/applications/whatsapp/app.py +86 -82
  48. universal_mcp/applications/whatsapp_business/app.py +147 -147
  49. universal_mcp/applications/youtube/app.py +290 -290
  50. universal_mcp/applications/zenquotes/app.py +6 -6
  51. {universal_mcp_applications-0.1.13.dist-info → universal_mcp_applications-0.1.14.dist-info}/METADATA +1 -1
  52. {universal_mcp_applications-0.1.13.dist-info → universal_mcp_applications-0.1.14.dist-info}/RECORD +54 -54
  53. {universal_mcp_applications-0.1.13.dist-info → universal_mcp_applications-0.1.14.dist-info}/WHEEL +0 -0
  54. {universal_mcp_applications-0.1.13.dist-info → universal_mcp_applications-0.1.14.dist-info}/licenses/LICENSE +0 -0
@@ -16,19 +16,19 @@ class SlackApp(APIApplication):
16
16
  ts: float | None = None,
17
17
  ) -> dict[str, Any]:
18
18
  """
19
- Deletes a message from a Slack channel using the provided token and returns a status message.
20
-
19
+ Deletes a specific message from a Slack channel. It identifies the message using its channel ID and timestamp (`ts`). This function is distinct from `chat_update` which modifies a message, and `chat_post_message` which sends a new one.
20
+
21
21
  Args:
22
22
  as_user (boolean): Pass true to delete the message as the authed user with `chat:write:user` scope. [Bot users](https://slack.dev) in this context are considered authed users. If unused or false, the message will be deleted with `chat:write:bot` scope.
23
23
  channel (string): Channel containing the message to be deleted.
24
24
  ts (number): Timestamp of the message to be deleted.
25
-
25
+
26
26
  Returns:
27
27
  dict[str, Any]: Typical success response
28
-
28
+
29
29
  Raises:
30
30
  HTTPStatusError: Raised when the API request fails with detailed error information including status code and response body.
31
-
31
+
32
32
  Tags:
33
33
  chat
34
34
  """
@@ -70,8 +70,8 @@ class SlackApp(APIApplication):
70
70
  username: str | None = None,
71
71
  ) -> dict[str, Any]:
72
72
  """
73
- Sends a message to a Slack channel using the `chat.postMessage` method, which requires a valid authentication token and supports various message formats, including text, attachments, and blocks.
74
-
73
+ Posts a new message to a specified Slack channel. It supports rich content formats like text, attachments, and blocks, along with options for threading and authorship. This function creates new messages, unlike `chat_update` which modifies existing ones or `chat_delete` which removes them.
74
+
75
75
  Args:
76
76
  as_user (boolean): Pass true to post the message as the authed user, instead of as a bot. Defaults to false. See [authorship](https://slack.dev) below.
77
77
  attachments (string): A JSON-based array of structured attachments, presented as a URL-encoded string.
@@ -88,13 +88,13 @@ class SlackApp(APIApplication):
88
88
  unfurl_links (boolean): Pass true to enable unfurling of primarily text-based content.
89
89
  unfurl_media (boolean): Pass false to disable unfurling of media content.
90
90
  username (string): Set your bot's user name. Must be used in conjunction with `as_user` set to false, otherwise ignored. See [authorship](https://slack.dev) below.
91
-
91
+
92
92
  Returns:
93
93
  dict[str, Any]: Typical success response
94
-
94
+
95
95
  Raises:
96
96
  HTTPStatusError: Raised when the API request fails with detailed error information including status code and response body.
97
-
97
+
98
98
  Tags:
99
99
  chat
100
100
  """
@@ -141,8 +141,8 @@ class SlackApp(APIApplication):
141
141
  ts: str | None = None,
142
142
  ) -> dict[str, Any]:
143
143
  """
144
- Updates a message in a Slack channel using the "chat.update" API method, requiring a valid authentication token and supporting modifications to message content through parameters like "text," "blocks," or "attachments."
145
-
144
+ Updates a specific, existing message in a Slack channel, identified by its timestamp. It modifies content such as text, blocks, or attachments by calling the `chat.update` API endpoint, distinguishing it from functions that create (`chat_post_message`) or delete (`chat_delete`) messages.
145
+
146
146
  Args:
147
147
  as_user (string): Pass true to update the message as the authed user. [Bot users](https://slack.dev) in this context are considered authed users.
148
148
  attachments (string): A JSON-based array of structured attachments, presented as a URL-encoded string. This field is required when not presenting `text`. If you don't include this field, the message's previous `attachments` will be retained. To remove previous `attachments`, include an empty array for this field.
@@ -152,13 +152,13 @@ class SlackApp(APIApplication):
152
152
  parse (string): Change how messages are treated. Defaults to `client`, unlike `chat.postMessage`. Accepts either `none` or `full`. If you do not specify a value for this field, the original value set for the message will be overwritten with the default, `client`.
153
153
  text (string): New text for the message, using the [default formatting rules](https://slack.dev). It's not required when presenting `blocks` or `attachments`.
154
154
  ts (string): Timestamp of the message to be updated.
155
-
155
+
156
156
  Returns:
157
157
  dict[str, Any]: Typical success response
158
-
158
+
159
159
  Raises:
160
160
  HTTPStatusError: Raised when the API request fails with detailed error information including status code and response body.
161
-
161
+
162
162
  Tags:
163
163
  chat, important
164
164
  """
@@ -197,8 +197,8 @@ class SlackApp(APIApplication):
197
197
  cursor: str | None = None,
198
198
  ) -> dict[str, Any]:
199
199
  """
200
- Retrieves a portion of message events from a specified Slack conversation using the `conversations.history` method, allowing for pagination and filtering by timestamp.
201
-
200
+ Fetches the message history for a specific Slack conversation or channel. Supports filtering messages by timestamp and pagination using a cursor. This method retrieves messages *within* a conversation, unlike `conversations_list` which retrieves a list of available conversations.
201
+
202
202
  Args:
203
203
  token (string): Authentication token used to access conversation history.
204
204
  channel (string): The ID of the channel to retrieve the conversation history from.
@@ -207,13 +207,13 @@ class SlackApp(APIApplication):
207
207
  inclusive (boolean): Determines whether to include the messages at the end of the history range in the response.
208
208
  limit (integer): Specifies the maximum number of conversation history entries to retrieve in a single API call.
209
209
  cursor (string): A string token used for cursor-based pagination to fetch the next set of conversation history results starting from a specific point.
210
-
210
+
211
211
  Returns:
212
212
  dict[str, Any]: Typical success response containing a channel's messages
213
-
213
+
214
214
  Raises:
215
215
  HTTPStatusError: Raised when the API request fails with detailed error information including status code and response body.
216
-
216
+
217
217
  Tags:
218
218
  conversations
219
219
  """
@@ -243,21 +243,21 @@ class SlackApp(APIApplication):
243
243
  cursor: str | None = None,
244
244
  ) -> dict[str, Any]:
245
245
  """
246
- Retrieves a list of all channel-like conversations in a Slack workspace, optionally excluding archived channels and supporting pagination using a cursor[1][2][3].
247
-
246
+ Fetches a paginated list of channel-like conversations in a workspace. Allows filtering by type and excluding archived channels. This function lists available conversations, unlike `conversations_history` which retrieves the message history from within a specific conversation.
247
+
248
248
  Args:
249
249
  token (string): The token parameter in the query string is a string used for authentication to authorize and identify the client making the GET request to the /conversations.list endpoint.
250
250
  exclude_archived (boolean): Exclude archived conversations from the list of results.
251
251
  types (string): Specifies the types of conversations to include in the list, as a string query parameter.
252
252
  limit (integer): Specifies the maximum number of conversations to return in the response, with a default value of 1.
253
253
  cursor (string): A cursor string used for pagination to specify the position from which to continue retrieving the next set of conversation results.
254
-
254
+
255
255
  Returns:
256
256
  dict[str, Any]: Typical success response with only public channels
257
-
257
+
258
258
  Raises:
259
259
  HTTPStatusError: Raised when the API request fails with detailed error information including status code and response body.
260
-
260
+
261
261
  Tags:
262
262
  conversations
263
263
  """
@@ -278,19 +278,19 @@ class SlackApp(APIApplication):
278
278
 
279
279
  def reactions_add(self, channel: str, name: str, timestamp: str) -> dict[str, Any]:
280
280
  """
281
- Adds a reaction to an item in Slack using a POST request with an authorization token and required form data.
282
-
281
+ Adds a specific emoji reaction to a message in a Slack channel, identifying the message by its channel ID and timestamp. This method creates a new reaction, unlike `reactions_get` or `reactions_list` which retrieve existing reaction data for items or users.
282
+
283
283
  Args:
284
284
  channel (string): Channel where the message to add reaction to was posted.
285
285
  name (string): Reaction (emoji) name.
286
286
  timestamp (string): Timestamp of the message to add reaction to.
287
-
287
+
288
288
  Returns:
289
289
  dict[str, Any]: Typical success response
290
-
290
+
291
291
  Raises:
292
292
  HTTPStatusError: Raised when the API request fails with detailed error information including status code and response body.
293
-
293
+
294
294
  Tags:
295
295
  reactions
296
296
  """
@@ -313,7 +313,7 @@ class SlackApp(APIApplication):
313
313
  )
314
314
  return self._handle_response(response)
315
315
 
316
- def reactions_get(
316
+ def get_reactions_for_item(
317
317
  self,
318
318
  token: str,
319
319
  channel: str | None = None,
@@ -323,8 +323,8 @@ class SlackApp(APIApplication):
323
323
  timestamp: str | None = None,
324
324
  ) -> dict[str, Any]:
325
325
  """
326
- Retrieves reaction information for a Slack message or file based on specified parameters such as channel, file, file comment, or timestamp, requiring a valid token with "reactions:read" scope.
327
-
326
+ Retrieves all reactions for a single item, such as a message, file, or file comment. This function targets reactions *on* a specific item, unlike `reactions_list` which gets reactions created *by* a user.
327
+
328
328
  Args:
329
329
  token (string): The "token" parameter is a required string that must be provided in the query string for authentication purposes when using the GET operation at "/reactions.get" to authorize access to reaction data.
330
330
  channel (string): The channel identifier to filter reactions by, specified as a string.
@@ -332,13 +332,13 @@ class SlackApp(APIApplication):
332
332
  file_comment (string): A query parameter to filter reactions by a specific file comment.
333
333
  full (boolean): Whether to return full reaction details or only basic reaction information.
334
334
  timestamp (string): The timestamp parameter filters results based on a specific date and time value, expected in an ISO 8601 format string.
335
-
335
+
336
336
  Returns:
337
337
  dict[str, Any]: Typical success response
338
-
338
+
339
339
  Raises:
340
340
  HTTPStatusError: Raised when the API request fails with detailed error information including status code and response body.
341
-
341
+
342
342
  Tags:
343
343
  reactions
344
344
  """
@@ -358,7 +358,7 @@ class SlackApp(APIApplication):
358
358
  response = self._get(url, params=query_params)
359
359
  return self._handle_response(response)
360
360
 
361
- def reactions_list(
361
+ def get_user_reactions(
362
362
  self,
363
363
  token: str,
364
364
  user: str | None = None,
@@ -369,8 +369,8 @@ class SlackApp(APIApplication):
369
369
  limit: int | None = None,
370
370
  ) -> dict[str, Any]:
371
371
  """
372
- Retrieves a paginated list of reactions, supporting filtering by user and additional query parameters for granular results.
373
-
372
+ Retrieves a paginated list of items (e.g., messages, files) that a specific user has reacted to. Unlike `reactions_get`, which fetches all reactions for a single item, this function lists all items a given user has reacted to across Slack.
373
+
374
374
  Args:
375
375
  token (string): Required authentication token passed as a query parameter to authenticate the request for listing reactions.
376
376
  user (string): Filter reactions by specifying the user, which can be a username or identifier.
@@ -379,13 +379,13 @@ class SlackApp(APIApplication):
379
379
  page (integer): The "page" parameter is an integer query parameter used to specify the page number for pagination in the list of reactions.
380
380
  cursor (string): A string used to specify the position in the list of reactions for pagination, allowing retrieval of additional items after or before the specified cursor.
381
381
  limit (integer): The `limit` parameter specifies the maximum number of reactions to return in the response.
382
-
382
+
383
383
  Returns:
384
384
  dict[str, Any]: Typical success response
385
-
385
+
386
386
  Raises:
387
387
  HTTPStatusError: Raised when the API request fails with detailed error information including status code and response body.
388
-
388
+
389
389
  Tags:
390
390
  reactions
391
391
  """
@@ -417,8 +417,8 @@ class SlackApp(APIApplication):
417
417
  sort_dir: str | None = None,
418
418
  ) -> dict[str, Any]:
419
419
  """
420
- Searches for and retrieves Slack messages matching a specified query, with options for pagination, sorting, and query highlighting[1][2].
421
-
420
+ Searches a Slack workspace for messages matching a specific query. It supports advanced control over results through pagination, sorting by relevance or timestamp, and an option to highlight search terms within the returned message content.
421
+
422
422
  Args:
423
423
  token (string): A required string parameter named "token" passed as a query parameter to authenticate the request for retrieving search messages.
424
424
  query (string): The search query string to specify the text or keywords to search for in messages.
@@ -427,13 +427,13 @@ class SlackApp(APIApplication):
427
427
  page (integer): The page query parameter specifies the page number of search results to retrieve in the GET /search.messages operation.
428
428
  sort (string): Sorts the search results by a specified field, allowing clients to customize the order of returned messages.
429
429
  sort_dir (string): The "sort_dir" query parameter specifies the direction of sorting for the search results, typically accepting values like "asc" for ascending or "desc" for descending order.
430
-
430
+
431
431
  Returns:
432
432
  dict[str, Any]: Typical success response
433
-
433
+
434
434
  Raises:
435
435
  HTTPStatusError: Raised when the API request fails with detailed error information including status code and response body.
436
-
436
+
437
437
  Tags:
438
438
  search, important
439
439
  """
@@ -456,18 +456,18 @@ class SlackApp(APIApplication):
456
456
 
457
457
  def team_info(self, token: str, team: str | None = None) -> dict[str, Any]:
458
458
  """
459
- Retrieves information about a Slack team, including its custom icon and basic details, using a provided authentication token[1][3][4].
460
-
459
+ Fetches details for a Slack team, such as name and domain, by calling the `team.info` API endpoint. This function requires an authentication token and can optionally target a specific team by its ID, distinguishing it from user or channel-specific functions.
460
+
461
461
  Args:
462
462
  token (string): Mandatory authentication token passed as a query parameter to authenticate the request for retrieving team information.
463
463
  team (string): The "team" parameter is a query string parameter of type string, used to specify the team for which information is requested in the GET operation at the "/team.info" path.
464
-
464
+
465
465
  Returns:
466
466
  dict[str, Any]: Typical success response
467
-
467
+
468
468
  Raises:
469
469
  HTTPStatusError: Raised when the API request fails with detailed error information including status code and response body.
470
-
470
+
471
471
  Tags:
472
472
  team
473
473
  """
@@ -478,26 +478,26 @@ class SlackApp(APIApplication):
478
478
  response = self._get(url, params=query_params)
479
479
  return self._handle_response(response)
480
480
 
481
- def users_info(
481
+ def get_user_info(
482
482
  self,
483
483
  token: str,
484
484
  include_locale: bool | None = None,
485
485
  user: str | None = None,
486
486
  ) -> dict[str, Any]:
487
487
  """
488
- Retrieves information about a specific Slack workspace member using the `users.info` method, returning a user object that includes profile details such as name and display name.
489
-
488
+ Fetches detailed profile information for a single Slack user, identified by their user ID. Unlike `users_list`, which retrieves all workspace members, this function targets an individual and can optionally include their locale information. It directly calls the `users.info` Slack API endpoint.
489
+
490
490
  Args:
491
491
  token (string): The token query parameter is a required string used to authenticate and authorize the API request to access user information in the GET /users.info operation.
492
492
  include_locale (boolean): Indicates whether to include locale information in the response, with a value of true or false.
493
493
  user (string): A string parameter used to identify or specify a user in the request.
494
-
494
+
495
495
  Returns:
496
496
  dict[str, Any]: Typical success response
497
-
497
+
498
498
  Raises:
499
499
  HTTPStatusError: Raised when the API request fails with detailed error information including status code and response body.
500
-
500
+
501
501
  Tags:
502
502
  users, important
503
503
  """
@@ -522,20 +522,20 @@ class SlackApp(APIApplication):
522
522
  include_locale: bool | None = None,
523
523
  ) -> dict[str, Any]:
524
524
  """
525
- Retrieves a list of all users in a Slack workspace, using the "GET" method, including both invited and deactivated users, with optional parameters for limiting results and pagination.
526
-
525
+ Fetches a paginated list of all users in a Slack workspace, including deactivated members. Unlike `users_info` which retrieves a single user's details, this function returns a collection and supports limiting results or including locale data through optional parameters.
526
+
527
527
  Args:
528
528
  token (string): Required authentication token for accessing the list of users.
529
529
  limit (integer): Specifies the maximum number of users to return in the response, defaults to 1.
530
530
  cursor (string): A unique string identifier used for cursor-based pagination, indicating the starting point for retrieving the next set of users in the list.
531
531
  include_locale (boolean): A boolean query parameter to optionally include locale information in the response.
532
-
532
+
533
533
  Returns:
534
534
  dict[str, Any]: Typical success response
535
-
535
+
536
536
  Raises:
537
537
  HTTPStatusError: Raised when the API request fails with detailed error information including status code and response body.
538
-
538
+
539
539
  Tags:
540
540
  users
541
541
  """
@@ -561,10 +561,10 @@ class SlackApp(APIApplication):
561
561
  self.conversations_history,
562
562
  self.conversations_list,
563
563
  self.reactions_add,
564
- self.reactions_get,
565
- self.reactions_list,
564
+ self.get_reactions_for_item,
565
+ self.get_user_reactions,
566
566
  self.search_messages,
567
567
  self.team_info,
568
- self.users_info,
568
+ self.get_user_info,
569
569
  self.users_list,
570
570
  ]
@@ -8,20 +8,20 @@ class TavilyApp(APIApplication):
8
8
  super().__init__(name=name, integration=integration)
9
9
  self.base_url = "https://api.tavily.com"
10
10
 
11
- def search(self, query: str) -> str:
11
+ def search_and_summarize(self, query: str) -> str:
12
12
  """
13
- Performs a web search using Tavily's search API and returns either a direct answer or a summary of top results.
14
-
13
+ Queries the Tavily API to perform a web search. It returns a direct AI-generated answer if available; otherwise, it provides a formatted summary of the top three search results, including their titles and snippets.
14
+
15
15
  Args:
16
16
  query: The search query string to be processed by Tavily's search engine
17
-
17
+
18
18
  Returns:
19
19
  A string containing either a direct answer from Tavily's AI or a formatted summary of the top 3 search results, with each result containing the title and snippet
20
-
20
+
21
21
  Raises:
22
22
  ValueError: When authentication credentials are invalid or missing (via validate() method)
23
23
  HTTPError: When the API request fails or returns an error response
24
-
24
+
25
25
  Tags:
26
26
  search, ai, web, query, important, api-client, text-processing
27
27
  """
@@ -48,4 +48,4 @@ class TavilyApp(APIApplication):
48
48
  return "\n".join(summaries)
49
49
 
50
50
  def list_tools(self):
51
- return [self.search]
51
+ return [self.search_and_summarize]
@@ -11,21 +11,20 @@ class ComplianceApi(APISegmentBase):
11
11
  self, type, status=None, compliance_job_fields=None
12
12
  ) -> dict[str, Any]:
13
13
  """
14
-
15
- Retrieves a list of compliance jobs based on the specified job type, with optional filtering by status.
16
-
14
+ Retrieves a list of compliance jobs, requiring a job `type` ('tweets' or 'users') and allowing optional filtering by `status`. This function fetches multiple jobs, distinguishing it from `get_batch_compliance_job` which retrieves a single job by its unique ID.
15
+
17
16
  Args:
18
17
  type (string): The type parameter specifies the compliance job type and must be either "tweets" or "users".
19
18
  status (string): Filters compliance jobs by their current status, which can be one of: created, in_progress, failed, or complete.
20
19
  compliance_job_fields (array): A comma separated list of ComplianceJob fields to display. Example: "['created_at', 'download_expires_at', 'download_url', 'id', 'name', 'resumable', 'status', 'type', 'upload_expires_at', 'upload_url']".
21
-
20
+
22
21
  Returns:
23
22
  dict[str, Any]: The request has succeeded.
24
-
23
+
25
24
  Raises:
26
25
  HTTPError: Raised when the API request fails (e.g., non-2XX status code).
27
26
  JSONDecodeError: Raised if the response body cannot be parsed as JSON.
28
-
27
+
29
28
  Tags:
30
29
  Compliance
31
30
  """
@@ -47,21 +46,20 @@ class ComplianceApi(APISegmentBase):
47
46
  self, type, name=None, resumable=None
48
47
  ) -> dict[str, Any]:
49
48
  """
50
-
51
- Creates a new compliance job using JSON data in the request body and authenticates the request using a Bearer token.
52
-
49
+ Creates a new batch compliance job for a specified type ('tweets' or 'users'). A custom name can be provided, and resumable uploads can be enabled. This initiates the job creation process, differing from functions that list or retrieve existing jobs.
50
+
53
51
  Args:
54
52
  type (string): Type of compliance job to list.
55
53
  name (string): User-provided name for a compliance job. Example: 'my-job'.
56
54
  resumable (boolean): If true, this endpoint will return a pre-signed URL with resumable uploads enabled.
57
-
55
+
58
56
  Returns:
59
57
  dict[str, Any]: The request has succeeded.
60
-
58
+
61
59
  Raises:
62
60
  HTTPError: Raised when the API request fails (e.g., non-2XX status code).
63
61
  JSONDecodeError: Raised if the response body cannot be parsed as JSON.
64
-
62
+
65
63
  Tags:
66
64
  Compliance
67
65
  """
@@ -81,24 +79,23 @@ class ComplianceApi(APISegmentBase):
81
79
  response.raise_for_status()
82
80
  return response.json()
83
81
 
84
- def get_batch_compliance_job(
82
+ def get_compliance_job(
85
83
  self, id, compliance_job_fields=None
86
84
  ) -> dict[str, Any]:
87
85
  """
88
-
89
- Retrieves information about a compliance job by its ID using the BearerToken for authentication.
90
-
86
+ Retrieves a single batch compliance job by its unique ID. Unlike `list_batch_compliance_jobs`, which fetches a list, this function returns details for one specific job. Optional parameters can customize which data fields are returned in the response.
87
+
91
88
  Args:
92
89
  id (string): id
93
90
  compliance_job_fields (array): A comma separated list of ComplianceJob fields to display. Example: "['created_at', 'download_expires_at', 'download_url', 'id', 'name', 'resumable', 'status', 'type', 'upload_expires_at', 'upload_url']".
94
-
91
+
95
92
  Returns:
96
93
  dict[str, Any]: The request has succeeded.
97
-
94
+
98
95
  Raises:
99
96
  HTTPError: Raised when the API request fails (e.g., non-2XX status code).
100
97
  JSONDecodeError: Raised if the response body cannot be parsed as JSON.
101
-
98
+
102
99
  Tags:
103
100
  Compliance
104
101
  """
@@ -118,5 +115,5 @@ class ComplianceApi(APISegmentBase):
118
115
  return [
119
116
  self.list_batch_compliance_jobs,
120
117
  self.create_batch_compliance_job,
121
- self.get_batch_compliance_job,
118
+ self.get_compliance_job,
122
119
  ]