universal-mcp-applications 0.1.20__py3-none-any.whl → 0.1.22__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 (78) hide show
  1. universal_mcp/applications/BEST_PRACTICES.md +166 -0
  2. universal_mcp/applications/airtable/app.py +0 -1
  3. universal_mcp/applications/apollo/app.py +0 -1
  4. universal_mcp/applications/aws_s3/app.py +40 -39
  5. universal_mcp/applications/browser_use/README.md +1 -0
  6. universal_mcp/applications/browser_use/__init__.py +0 -0
  7. universal_mcp/applications/browser_use/app.py +76 -0
  8. universal_mcp/applications/calendly/app.py +125 -125
  9. universal_mcp/applications/canva/app.py +95 -99
  10. universal_mcp/applications/confluence/app.py +0 -1
  11. universal_mcp/applications/contentful/app.py +4 -5
  12. universal_mcp/applications/domain_checker/app.py +11 -15
  13. universal_mcp/applications/e2b/app.py +4 -4
  14. universal_mcp/applications/elevenlabs/app.py +18 -15
  15. universal_mcp/applications/exa/app.py +17 -17
  16. universal_mcp/applications/falai/app.py +28 -29
  17. universal_mcp/applications/file_system/app.py +9 -9
  18. universal_mcp/applications/firecrawl/app.py +36 -36
  19. universal_mcp/applications/fireflies/app.py +55 -56
  20. universal_mcp/applications/fpl/app.py +49 -50
  21. universal_mcp/applications/ghost_content/app.py +0 -1
  22. universal_mcp/applications/github/app.py +41 -43
  23. universal_mcp/applications/google_calendar/app.py +40 -39
  24. universal_mcp/applications/google_docs/app.py +56 -56
  25. universal_mcp/applications/google_drive/app.py +212 -215
  26. universal_mcp/applications/google_gemini/app.py +1 -5
  27. universal_mcp/applications/google_mail/app.py +91 -90
  28. universal_mcp/applications/google_searchconsole/app.py +29 -29
  29. universal_mcp/applications/google_sheet/app.py +115 -115
  30. universal_mcp/applications/hashnode/README.md +6 -3
  31. universal_mcp/applications/hashnode/app.py +174 -25
  32. universal_mcp/applications/http_tools/app.py +10 -11
  33. universal_mcp/applications/hubspot/__init__.py +1 -1
  34. universal_mcp/applications/hubspot/api_segments/api_segment_base.py +36 -7
  35. universal_mcp/applications/hubspot/api_segments/crm_api.py +368 -368
  36. universal_mcp/applications/hubspot/api_segments/marketing_api.py +115 -115
  37. universal_mcp/applications/hubspot/app.py +131 -72
  38. universal_mcp/applications/jira/app.py +0 -1
  39. universal_mcp/applications/linkedin/app.py +20 -20
  40. universal_mcp/applications/markitdown/app.py +10 -5
  41. universal_mcp/applications/ms_teams/app.py +123 -123
  42. universal_mcp/applications/openai/app.py +40 -39
  43. universal_mcp/applications/outlook/app.py +32 -32
  44. universal_mcp/applications/perplexity/app.py +4 -4
  45. universal_mcp/applications/reddit/app.py +69 -70
  46. universal_mcp/applications/resend/app.py +116 -117
  47. universal_mcp/applications/rocketlane/app.py +0 -1
  48. universal_mcp/applications/scraper/__init__.py +1 -1
  49. universal_mcp/applications/scraper/app.py +234 -16
  50. universal_mcp/applications/serpapi/app.py +14 -14
  51. universal_mcp/applications/sharepoint/app.py +19 -20
  52. universal_mcp/applications/shopify/app.py +0 -1
  53. universal_mcp/applications/slack/app.py +48 -48
  54. universal_mcp/applications/tavily/app.py +4 -4
  55. universal_mcp/applications/twitter/api_segments/compliance_api.py +13 -15
  56. universal_mcp/applications/twitter/api_segments/dm_conversations_api.py +20 -20
  57. universal_mcp/applications/twitter/api_segments/dm_events_api.py +12 -12
  58. universal_mcp/applications/twitter/api_segments/likes_api.py +12 -12
  59. universal_mcp/applications/twitter/api_segments/lists_api.py +37 -39
  60. universal_mcp/applications/twitter/api_segments/spaces_api.py +24 -24
  61. universal_mcp/applications/twitter/api_segments/trends_api.py +4 -4
  62. universal_mcp/applications/twitter/api_segments/tweets_api.py +105 -105
  63. universal_mcp/applications/twitter/api_segments/usage_api.py +4 -4
  64. universal_mcp/applications/twitter/api_segments/users_api.py +136 -136
  65. universal_mcp/applications/twitter/app.py +6 -2
  66. universal_mcp/applications/unipile/app.py +321 -71
  67. universal_mcp/applications/whatsapp/app.py +53 -54
  68. universal_mcp/applications/whatsapp/audio.py +39 -35
  69. universal_mcp/applications/whatsapp/whatsapp.py +176 -154
  70. universal_mcp/applications/whatsapp_business/app.py +92 -92
  71. universal_mcp/applications/yahoo_finance/app.py +105 -63
  72. universal_mcp/applications/youtube/app.py +206 -199
  73. universal_mcp/applications/zenquotes/__init__.py +2 -0
  74. universal_mcp/applications/zenquotes/app.py +3 -3
  75. {universal_mcp_applications-0.1.20.dist-info → universal_mcp_applications-0.1.22.dist-info}/METADATA +2 -1
  76. {universal_mcp_applications-0.1.20.dist-info → universal_mcp_applications-0.1.22.dist-info}/RECORD +78 -74
  77. {universal_mcp_applications-0.1.20.dist-info → universal_mcp_applications-0.1.22.dist-info}/WHEEL +0 -0
  78. {universal_mcp_applications-0.1.20.dist-info → universal_mcp_applications-0.1.22.dist-info}/licenses/LICENSE +0 -0
@@ -1,19 +1,19 @@
1
- from typing import Any, List, Optional
1
+ from typing import Any
2
+
2
3
  from .api_segment_base import APISegmentBase
3
4
 
4
5
 
5
6
  class CrmApi(APISegmentBase):
6
-
7
7
  def __init__(self, main_app_client: Any):
8
8
  super().__init__(main_app_client)
9
9
 
10
10
  def batch_read_emails(
11
11
  self,
12
- propertiesWithHistory: List[str],
13
- inputs: List[dict[str, Any]],
14
- properties: List[str],
15
- archived: Optional[bool] = None,
16
- idProperty: Optional[str] = None,
12
+ propertiesWithHistory: list[str],
13
+ inputs: list[dict[str, Any]],
14
+ properties: list[str],
15
+ archived: bool | None = None,
16
+ idProperty: str | None = None,
17
17
  ) -> dict[str, Any]:
18
18
  """
19
19
 
@@ -58,11 +58,11 @@ class CrmApi(APISegmentBase):
58
58
  def get_email_by_id(
59
59
  self,
60
60
  emailId: str,
61
- properties: Optional[List[str]] = None,
62
- propertiesWithHistory: Optional[List[str]] = None,
63
- associations: Optional[List[str]] = None,
64
- archived: Optional[bool] = None,
65
- idProperty: Optional[str] = None,
61
+ properties: list[str] | None = None,
62
+ propertiesWithHistory: list[str] | None = None,
63
+ associations: list[str] | None = None,
64
+ archived: bool | None = None,
65
+ idProperty: str | None = None,
66
66
  ) -> dict[str, Any]:
67
67
  """
68
68
 
@@ -127,7 +127,7 @@ class CrmApi(APISegmentBase):
127
127
  return self._handle_response(response)
128
128
 
129
129
  def update_email_by_id(
130
- self, emailId: str, properties: dict[str, str], idProperty: Optional[str] = None
130
+ self, emailId: str, properties: dict[str, str], idProperty: str | None = None
131
131
  ) -> dict[str, Any]:
132
132
  """
133
133
 
@@ -197,7 +197,7 @@ class CrmApi(APISegmentBase):
197
197
  )
198
198
  return self._handle_response(response)
199
199
 
200
- def archive_emails_batch(self, inputs: List[dict[str, Any]]) -> Any:
200
+ def archive_emails_batch(self, inputs: list[dict[str, Any]]) -> Any:
201
201
  """
202
202
 
203
203
  Archives a batch of emails by sending a POST request to the "/crm/v3/objects/emails/batch/archive" endpoint with a JSON payload containing the email IDs to be archived.
@@ -229,7 +229,7 @@ class CrmApi(APISegmentBase):
229
229
  )
230
230
  return self._handle_response(response)
231
231
 
232
- def create_emails_batch_post(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
232
+ def create_emails_batch_post(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
233
233
  """
234
234
 
235
235
  Creates a batch of email objects in the CRM using the POST method, requiring JSON content and authorization through OAuth2 or private apps.
@@ -261,7 +261,7 @@ class CrmApi(APISegmentBase):
261
261
  )
262
262
  return self._handle_response(response)
263
263
 
264
- def update_emails_batch(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
264
+ def update_emails_batch(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
265
265
  """
266
266
 
267
267
  Updates multiple email objects in a CRM system using a batch operation via the POST method, returning status messages for each update.
@@ -294,7 +294,7 @@ class CrmApi(APISegmentBase):
294
294
  return self._handle_response(response)
295
295
 
296
296
  def delete_email_gdpr_data(
297
- self, objectId: str, idProperty: Optional[str] = None
297
+ self, objectId: str, idProperty: str | None = None
298
298
  ) -> Any:
299
299
  """
300
300
 
@@ -330,12 +330,12 @@ class CrmApi(APISegmentBase):
330
330
 
331
331
  def list_emails_with_filters(
332
332
  self,
333
- limit: Optional[int] = None,
334
- after: Optional[str] = None,
335
- properties: Optional[List[str]] = None,
336
- propertiesWithHistory: Optional[List[str]] = None,
337
- associations: Optional[List[str]] = None,
338
- archived: Optional[bool] = None,
333
+ limit: int | None = None,
334
+ after: str | None = None,
335
+ properties: list[str] | None = None,
336
+ propertiesWithHistory: list[str] | None = None,
337
+ associations: list[str] | None = None,
338
+ archived: bool | None = None,
339
339
  ) -> dict[str, Any]:
340
340
  """
341
341
 
@@ -375,7 +375,7 @@ class CrmApi(APISegmentBase):
375
375
  return self._handle_response(response)
376
376
 
377
377
  def create_email(
378
- self, associations: List[dict[str, Any]], properties: dict[str, str]
378
+ self, associations: list[dict[str, Any]], properties: dict[str, str]
379
379
  ) -> dict[str, Any]:
380
380
  """
381
381
 
@@ -413,10 +413,10 @@ class CrmApi(APISegmentBase):
413
413
  self,
414
414
  limit: int,
415
415
  after: str,
416
- sorts: List[str],
417
- properties: List[str],
418
- filterGroups: List[dict[str, Any]],
419
- query: Optional[str] = None,
416
+ sorts: list[str],
417
+ properties: list[str],
418
+ filterGroups: list[dict[str, Any]],
419
+ query: str | None = None,
420
420
  ) -> dict[str, Any]:
421
421
  """
422
422
 
@@ -463,11 +463,11 @@ class CrmApi(APISegmentBase):
463
463
 
464
464
  def batch_read_products_post(
465
465
  self,
466
- propertiesWithHistory: List[str],
467
- inputs: List[dict[str, Any]],
468
- properties: List[str],
469
- archived: Optional[bool] = None,
470
- idProperty: Optional[str] = None,
466
+ propertiesWithHistory: list[str],
467
+ inputs: list[dict[str, Any]],
468
+ properties: list[str],
469
+ archived: bool | None = None,
470
+ idProperty: str | None = None,
471
471
  ) -> dict[str, Any]:
472
472
  """
473
473
 
@@ -512,11 +512,11 @@ class CrmApi(APISegmentBase):
512
512
  def get_product_by_id(
513
513
  self,
514
514
  productId: str,
515
- properties: Optional[List[str]] = None,
516
- propertiesWithHistory: Optional[List[str]] = None,
517
- associations: Optional[List[str]] = None,
518
- archived: Optional[bool] = None,
519
- idProperty: Optional[str] = None,
515
+ properties: list[str] | None = None,
516
+ propertiesWithHistory: list[str] | None = None,
517
+ associations: list[str] | None = None,
518
+ archived: bool | None = None,
519
+ idProperty: str | None = None,
520
520
  ) -> dict[str, Any]:
521
521
  """
522
522
 
@@ -584,7 +584,7 @@ class CrmApi(APISegmentBase):
584
584
  self,
585
585
  productId: str,
586
586
  properties: dict[str, str],
587
- idProperty: Optional[str] = None,
587
+ idProperty: str | None = None,
588
588
  ) -> dict[str, Any]:
589
589
  """
590
590
 
@@ -654,7 +654,7 @@ class CrmApi(APISegmentBase):
654
654
  )
655
655
  return self._handle_response(response)
656
656
 
657
- def archive_products_batch_post(self, inputs: List[dict[str, Any]]) -> Any:
657
+ def archive_products_batch_post(self, inputs: list[dict[str, Any]]) -> Any:
658
658
  """
659
659
 
660
660
  Archives a batch of products by ID using the POST method, accepting JSON-formatted request bodies and returning a 204 status upon successful execution.
@@ -686,7 +686,7 @@ class CrmApi(APISegmentBase):
686
686
  )
687
687
  return self._handle_response(response)
688
688
 
689
- def create_products_batch(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
689
+ def create_products_batch(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
690
690
  """
691
691
 
692
692
  Creates multiple product records in a single batch request within the CRM system.
@@ -718,7 +718,7 @@ class CrmApi(APISegmentBase):
718
718
  )
719
719
  return self._handle_response(response)
720
720
 
721
- def update_products_batch(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
721
+ def update_products_batch(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
722
722
  """
723
723
 
724
724
  Updates multiple product records in a batch using the HubSpot CRM v3 API and returns a status response indicating success or partial failure.
@@ -751,7 +751,7 @@ class CrmApi(APISegmentBase):
751
751
  return self._handle_response(response)
752
752
 
753
753
  def delete_product_gdpr_data(
754
- self, objectId: str, idProperty: Optional[str] = None
754
+ self, objectId: str, idProperty: str | None = None
755
755
  ) -> Any:
756
756
  """
757
757
 
@@ -787,12 +787,12 @@ class CrmApi(APISegmentBase):
787
787
 
788
788
  def list_products(
789
789
  self,
790
- limit: Optional[int] = None,
791
- after: Optional[str] = None,
792
- properties: Optional[List[str]] = None,
793
- propertiesWithHistory: Optional[List[str]] = None,
794
- associations: Optional[List[str]] = None,
795
- archived: Optional[bool] = None,
790
+ limit: int | None = None,
791
+ after: str | None = None,
792
+ properties: list[str] | None = None,
793
+ propertiesWithHistory: list[str] | None = None,
794
+ associations: list[str] | None = None,
795
+ archived: bool | None = None,
796
796
  ) -> dict[str, Any]:
797
797
  """
798
798
 
@@ -832,7 +832,7 @@ class CrmApi(APISegmentBase):
832
832
  return self._handle_response(response)
833
833
 
834
834
  def create_product(
835
- self, associations: List[dict[str, Any]], properties: dict[str, str]
835
+ self, associations: list[dict[str, Any]], properties: dict[str, str]
836
836
  ) -> dict[str, Any]:
837
837
  """
838
838
 
@@ -870,10 +870,10 @@ class CrmApi(APISegmentBase):
870
870
  self,
871
871
  limit: int,
872
872
  after: str,
873
- sorts: List[str],
874
- properties: List[str],
875
- filterGroups: List[dict[str, Any]],
876
- query: Optional[str] = None,
873
+ sorts: list[str],
874
+ properties: list[str],
875
+ filterGroups: list[dict[str, Any]],
876
+ query: str | None = None,
877
877
  ) -> dict[str, Any]:
878
878
  """
879
879
 
@@ -952,10 +952,10 @@ class CrmApi(APISegmentBase):
952
952
  objectType: str,
953
953
  pipelineId: str,
954
954
  displayOrder: int,
955
- stages: List[dict[str, Any]],
955
+ stages: list[dict[str, Any]],
956
956
  label: str,
957
- validateReferencesBeforeDelete: Optional[bool] = None,
958
- validateDealStageUsagesBeforeDelete: Optional[bool] = None,
957
+ validateReferencesBeforeDelete: bool | None = None,
958
+ validateDealStageUsagesBeforeDelete: bool | None = None,
959
959
  ) -> dict[str, Any]:
960
960
  """
961
961
 
@@ -1016,8 +1016,8 @@ class CrmApi(APISegmentBase):
1016
1016
  self,
1017
1017
  objectType: str,
1018
1018
  pipelineId: str,
1019
- validateReferencesBeforeDelete: Optional[bool] = None,
1020
- validateDealStageUsagesBeforeDelete: Optional[bool] = None,
1019
+ validateReferencesBeforeDelete: bool | None = None,
1020
+ validateDealStageUsagesBeforeDelete: bool | None = None,
1021
1021
  ) -> Any:
1022
1022
  """
1023
1023
 
@@ -1061,11 +1061,11 @@ class CrmApi(APISegmentBase):
1061
1061
  self,
1062
1062
  objectType: str,
1063
1063
  pipelineId: str,
1064
- validateReferencesBeforeDelete: Optional[bool] = None,
1065
- validateDealStageUsagesBeforeDelete: Optional[bool] = None,
1066
- archived: Optional[bool] = None,
1067
- displayOrder: Optional[int] = None,
1068
- label: Optional[str] = None,
1064
+ validateReferencesBeforeDelete: bool | None = None,
1065
+ validateDealStageUsagesBeforeDelete: bool | None = None,
1066
+ archived: bool | None = None,
1067
+ displayOrder: int | None = None,
1068
+ label: str | None = None,
1069
1069
  ) -> dict[str, Any]:
1070
1070
  """
1071
1071
 
@@ -1258,7 +1258,7 @@ class CrmApi(APISegmentBase):
1258
1258
  self,
1259
1259
  objectType: str,
1260
1260
  displayOrder: int,
1261
- stages: List[dict[str, Any]],
1261
+ stages: list[dict[str, Any]],
1262
1262
  label: str,
1263
1263
  ) -> dict[str, Any]:
1264
1264
  """
@@ -1430,9 +1430,9 @@ class CrmApi(APISegmentBase):
1430
1430
  pipelineId: str,
1431
1431
  stageId: str,
1432
1432
  metadata: dict[str, str],
1433
- archived: Optional[bool] = None,
1434
- displayOrder: Optional[int] = None,
1435
- label: Optional[str] = None,
1433
+ archived: bool | None = None,
1434
+ displayOrder: int | None = None,
1435
+ label: str | None = None,
1436
1436
  ) -> dict[str, Any]:
1437
1437
  """
1438
1438
 
@@ -1483,11 +1483,11 @@ class CrmApi(APISegmentBase):
1483
1483
 
1484
1484
  def batch_read_companies_post(
1485
1485
  self,
1486
- propertiesWithHistory: List[str],
1487
- inputs: List[dict[str, Any]],
1488
- properties: List[str],
1489
- archived: Optional[bool] = None,
1490
- idProperty: Optional[str] = None,
1486
+ propertiesWithHistory: list[str],
1487
+ inputs: list[dict[str, Any]],
1488
+ properties: list[str],
1489
+ archived: bool | None = None,
1490
+ idProperty: str | None = None,
1491
1491
  ) -> dict[str, Any]:
1492
1492
  """
1493
1493
 
@@ -1532,11 +1532,11 @@ class CrmApi(APISegmentBase):
1532
1532
  def get_company_by_id(
1533
1533
  self,
1534
1534
  companyId: str,
1535
- properties: Optional[List[str]] = None,
1536
- propertiesWithHistory: Optional[List[str]] = None,
1537
- associations: Optional[List[str]] = None,
1538
- archived: Optional[bool] = None,
1539
- idProperty: Optional[str] = None,
1535
+ properties: list[str] | None = None,
1536
+ propertiesWithHistory: list[str] | None = None,
1537
+ associations: list[str] | None = None,
1538
+ archived: bool | None = None,
1539
+ idProperty: str | None = None,
1540
1540
  ) -> dict[str, Any]:
1541
1541
  """
1542
1542
 
@@ -1604,7 +1604,7 @@ class CrmApi(APISegmentBase):
1604
1604
  self,
1605
1605
  companyId: str,
1606
1606
  properties: dict[str, str],
1607
- idProperty: Optional[str] = None,
1607
+ idProperty: str | None = None,
1608
1608
  ) -> dict[str, Any]:
1609
1609
  """
1610
1610
 
@@ -1674,7 +1674,7 @@ class CrmApi(APISegmentBase):
1674
1674
  )
1675
1675
  return self._handle_response(response)
1676
1676
 
1677
- def archive_companies_batch_post(self, inputs: List[dict[str, Any]]) -> Any:
1677
+ def archive_companies_batch_post(self, inputs: list[dict[str, Any]]) -> Any:
1678
1678
  """
1679
1679
 
1680
1680
  Archives a batch of companies using the HubSpot CRM API, requiring a JSON body and returning a 204 status on successful operation.
@@ -1706,7 +1706,7 @@ class CrmApi(APISegmentBase):
1706
1706
  )
1707
1707
  return self._handle_response(response)
1708
1708
 
1709
- def create_companies_batch(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
1709
+ def create_companies_batch(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
1710
1710
  """
1711
1711
 
1712
1712
  Creates multiple company records in batch using the HubSpot CRM API and returns a status message, requiring authorization via OAuth2 or private apps.
@@ -1738,7 +1738,7 @@ class CrmApi(APISegmentBase):
1738
1738
  )
1739
1739
  return self._handle_response(response)
1740
1740
 
1741
- def update_companies_batch(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
1741
+ def update_companies_batch(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
1742
1742
  """
1743
1743
 
1744
1744
  Updates multiple company records in a single request using the HubSpot CRM API.
@@ -1771,7 +1771,7 @@ class CrmApi(APISegmentBase):
1771
1771
  return self._handle_response(response)
1772
1772
 
1773
1773
  def delete_company_gdpr_data(
1774
- self, objectId: str, idProperty: Optional[str] = None
1774
+ self, objectId: str, idProperty: str | None = None
1775
1775
  ) -> Any:
1776
1776
  """
1777
1777
 
@@ -1807,12 +1807,12 @@ class CrmApi(APISegmentBase):
1807
1807
 
1808
1808
  def get_companies(
1809
1809
  self,
1810
- limit: Optional[int] = None,
1811
- after: Optional[str] = None,
1812
- properties: Optional[List[str]] = None,
1813
- propertiesWithHistory: Optional[List[str]] = None,
1814
- associations: Optional[List[str]] = None,
1815
- archived: Optional[bool] = None,
1810
+ limit: int | None = None,
1811
+ after: str | None = None,
1812
+ properties: list[str] | None = None,
1813
+ propertiesWithHistory: list[str] | None = None,
1814
+ associations: list[str] | None = None,
1815
+ archived: bool | None = None,
1816
1816
  ) -> dict[str, Any]:
1817
1817
  """
1818
1818
 
@@ -1852,7 +1852,7 @@ class CrmApi(APISegmentBase):
1852
1852
  return self._handle_response(response)
1853
1853
 
1854
1854
  def create_company(
1855
- self, associations: List[dict[str, Any]], properties: dict[str, str]
1855
+ self, associations: list[dict[str, Any]], properties: dict[str, str]
1856
1856
  ) -> dict[str, Any]:
1857
1857
  """
1858
1858
 
@@ -1890,10 +1890,10 @@ class CrmApi(APISegmentBase):
1890
1890
  self,
1891
1891
  limit: int,
1892
1892
  after: str,
1893
- sorts: List[str],
1894
- properties: List[str],
1895
- filterGroups: List[dict[str, Any]],
1896
- query: Optional[str] = None,
1893
+ sorts: list[str],
1894
+ properties: list[str],
1895
+ filterGroups: list[dict[str, Any]],
1896
+ query: str | None = None,
1897
1897
  ) -> dict[str, Any]:
1898
1898
  """
1899
1899
 
@@ -1967,10 +1967,10 @@ class CrmApi(APISegmentBase):
1967
1967
  appId: str,
1968
1968
  name: str,
1969
1969
  url: str,
1970
- supportsCustomObjects: Optional[bool] = None,
1971
- isReady: Optional[bool] = None,
1972
- width: Optional[int] = None,
1973
- height: Optional[int] = None,
1970
+ supportsCustomObjects: bool | None = None,
1971
+ isReady: bool | None = None,
1972
+ width: int | None = None,
1973
+ height: int | None = None,
1974
1974
  ) -> dict[str, Any]:
1975
1975
  """
1976
1976
 
@@ -2045,12 +2045,12 @@ class CrmApi(APISegmentBase):
2045
2045
  def update_calling_settings(
2046
2046
  self,
2047
2047
  appId: str,
2048
- supportsCustomObjects: Optional[bool] = None,
2049
- isReady: Optional[bool] = None,
2050
- name: Optional[str] = None,
2051
- width: Optional[int] = None,
2052
- url: Optional[str] = None,
2053
- height: Optional[int] = None,
2048
+ supportsCustomObjects: bool | None = None,
2049
+ isReady: bool | None = None,
2050
+ name: str | None = None,
2051
+ width: int | None = None,
2052
+ url: str | None = None,
2053
+ height: int | None = None,
2054
2054
  ) -> dict[str, Any]:
2055
2055
  """
2056
2056
 
@@ -2157,7 +2157,7 @@ class CrmApi(APISegmentBase):
2157
2157
  return self._handle_response(response)
2158
2158
 
2159
2159
  def update_recording_settings(
2160
- self, appId: str, urlToRetrieveAuthedRecording: Optional[str] = None
2160
+ self, appId: str, urlToRetrieveAuthedRecording: str | None = None
2161
2161
  ) -> dict[str, Any]:
2162
2162
  """
2163
2163
 
@@ -2192,11 +2192,11 @@ class CrmApi(APISegmentBase):
2192
2192
 
2193
2193
  def read_quotes_batch(
2194
2194
  self,
2195
- propertiesWithHistory: List[str],
2196
- inputs: List[dict[str, Any]],
2197
- properties: List[str],
2198
- archived: Optional[bool] = None,
2199
- idProperty: Optional[str] = None,
2195
+ propertiesWithHistory: list[str],
2196
+ inputs: list[dict[str, Any]],
2197
+ properties: list[str],
2198
+ archived: bool | None = None,
2199
+ idProperty: str | None = None,
2200
2200
  ) -> dict[str, Any]:
2201
2201
  """
2202
2202
 
@@ -2241,11 +2241,11 @@ class CrmApi(APISegmentBase):
2241
2241
  def get_quote_by_id(
2242
2242
  self,
2243
2243
  quoteId: str,
2244
- properties: Optional[List[str]] = None,
2245
- propertiesWithHistory: Optional[List[str]] = None,
2246
- associations: Optional[List[str]] = None,
2247
- archived: Optional[bool] = None,
2248
- idProperty: Optional[str] = None,
2244
+ properties: list[str] | None = None,
2245
+ propertiesWithHistory: list[str] | None = None,
2246
+ associations: list[str] | None = None,
2247
+ archived: bool | None = None,
2248
+ idProperty: str | None = None,
2249
2249
  ) -> dict[str, Any]:
2250
2250
  """
2251
2251
 
@@ -2310,7 +2310,7 @@ class CrmApi(APISegmentBase):
2310
2310
  return self._handle_response(response)
2311
2311
 
2312
2312
  def update_quote(
2313
- self, quoteId: str, properties: dict[str, str], idProperty: Optional[str] = None
2313
+ self, quoteId: str, properties: dict[str, str], idProperty: str | None = None
2314
2314
  ) -> dict[str, Any]:
2315
2315
  """
2316
2316
 
@@ -2380,7 +2380,7 @@ class CrmApi(APISegmentBase):
2380
2380
  )
2381
2381
  return self._handle_response(response)
2382
2382
 
2383
- def archive_quotes_batch(self, inputs: List[dict[str, Any]]) -> Any:
2383
+ def archive_quotes_batch(self, inputs: list[dict[str, Any]]) -> Any:
2384
2384
  """
2385
2385
 
2386
2386
  Archives a batch of quotes by sending a POST request to the "/crm/v3/objects/quotes/batch/archive" endpoint, requiring a JSON body and authentication via OAuth2 or private apps with the "crm.objects.quotes.write" permission.
@@ -2412,7 +2412,7 @@ class CrmApi(APISegmentBase):
2412
2412
  )
2413
2413
  return self._handle_response(response)
2414
2414
 
2415
- def create_quote_batch(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
2415
+ def create_quote_batch(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
2416
2416
  """
2417
2417
 
2418
2418
  Creates a batch of sales quotes using the HubSpot CRM API, requiring a JSON body and returning a status message upon successful creation.
@@ -2444,7 +2444,7 @@ class CrmApi(APISegmentBase):
2444
2444
  )
2445
2445
  return self._handle_response(response)
2446
2446
 
2447
- def update_quotes_batch(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
2447
+ def update_quotes_batch(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
2448
2448
  """
2449
2449
 
2450
2450
  Updates a batch of quote objects in the CRM system using a single POST request, returning a status code indicating success or partial failure.
@@ -2477,7 +2477,7 @@ class CrmApi(APISegmentBase):
2477
2477
  return self._handle_response(response)
2478
2478
 
2479
2479
  def delete_quote_gdpr_data(
2480
- self, objectId: str, idProperty: Optional[str] = None
2480
+ self, objectId: str, idProperty: str | None = None
2481
2481
  ) -> Any:
2482
2482
  """
2483
2483
 
@@ -2513,12 +2513,12 @@ class CrmApi(APISegmentBase):
2513
2513
 
2514
2514
  def get_quotes(
2515
2515
  self,
2516
- limit: Optional[int] = None,
2517
- after: Optional[str] = None,
2518
- properties: Optional[List[str]] = None,
2519
- propertiesWithHistory: Optional[List[str]] = None,
2520
- associations: Optional[List[str]] = None,
2521
- archived: Optional[bool] = None,
2516
+ limit: int | None = None,
2517
+ after: str | None = None,
2518
+ properties: list[str] | None = None,
2519
+ propertiesWithHistory: list[str] | None = None,
2520
+ associations: list[str] | None = None,
2521
+ archived: bool | None = None,
2522
2522
  ) -> dict[str, Any]:
2523
2523
  """
2524
2524
 
@@ -2558,7 +2558,7 @@ class CrmApi(APISegmentBase):
2558
2558
  return self._handle_response(response)
2559
2559
 
2560
2560
  def create_quote(
2561
- self, associations: List[dict[str, Any]], properties: dict[str, str]
2561
+ self, associations: list[dict[str, Any]], properties: dict[str, str]
2562
2562
  ) -> dict[str, Any]:
2563
2563
  """
2564
2564
 
@@ -2596,10 +2596,10 @@ class CrmApi(APISegmentBase):
2596
2596
  self,
2597
2597
  limit: int,
2598
2598
  after: str,
2599
- sorts: List[str],
2600
- properties: List[str],
2601
- filterGroups: List[dict[str, Any]],
2602
- query: Optional[str] = None,
2599
+ sorts: list[str],
2600
+ properties: list[str],
2601
+ filterGroups: list[dict[str, Any]],
2602
+ query: str | None = None,
2603
2603
  ) -> dict[str, Any]:
2604
2604
  """
2605
2605
 
@@ -2646,11 +2646,11 @@ class CrmApi(APISegmentBase):
2646
2646
 
2647
2647
  def batch_read_deals_post(
2648
2648
  self,
2649
- propertiesWithHistory: List[str],
2650
- inputs: List[dict[str, Any]],
2651
- properties: List[str],
2652
- archived: Optional[bool] = None,
2653
- idProperty: Optional[str] = None,
2649
+ propertiesWithHistory: list[str],
2650
+ inputs: list[dict[str, Any]],
2651
+ properties: list[str],
2652
+ archived: bool | None = None,
2653
+ idProperty: str | None = None,
2654
2654
  ) -> dict[str, Any]:
2655
2655
  """
2656
2656
 
@@ -2695,11 +2695,11 @@ class CrmApi(APISegmentBase):
2695
2695
  def get_deal_by_id(
2696
2696
  self,
2697
2697
  dealId: str,
2698
- properties: Optional[List[str]] = None,
2699
- propertiesWithHistory: Optional[List[str]] = None,
2700
- associations: Optional[List[str]] = None,
2701
- archived: Optional[bool] = None,
2702
- idProperty: Optional[str] = None,
2698
+ properties: list[str] | None = None,
2699
+ propertiesWithHistory: list[str] | None = None,
2700
+ associations: list[str] | None = None,
2701
+ archived: bool | None = None,
2702
+ idProperty: str | None = None,
2703
2703
  ) -> dict[str, Any]:
2704
2704
  """
2705
2705
 
@@ -2764,7 +2764,7 @@ class CrmApi(APISegmentBase):
2764
2764
  return self._handle_response(response)
2765
2765
 
2766
2766
  def update_deal_by_id(
2767
- self, dealId: str, properties: dict[str, str], idProperty: Optional[str] = None
2767
+ self, dealId: str, properties: dict[str, str], idProperty: str | None = None
2768
2768
  ) -> dict[str, Any]:
2769
2769
  """
2770
2770
 
@@ -2832,7 +2832,7 @@ class CrmApi(APISegmentBase):
2832
2832
  )
2833
2833
  return self._handle_response(response)
2834
2834
 
2835
- def archive_deals_batch_post(self, inputs: List[dict[str, Any]]) -> Any:
2835
+ def archive_deals_batch_post(self, inputs: list[dict[str, Any]]) -> Any:
2836
2836
  """
2837
2837
 
2838
2838
  Archives a batch of deal records in the CRM by their IDs using the POST method.
@@ -2864,7 +2864,7 @@ class CrmApi(APISegmentBase):
2864
2864
  )
2865
2865
  return self._handle_response(response)
2866
2866
 
2867
- def create_deals_batch(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
2867
+ def create_deals_batch(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
2868
2868
  """
2869
2869
 
2870
2870
  Creates multiple deals in a CRM using a batch operation via the POST method, requiring a JSON body with deal data and appropriate permissions for writing deals.
@@ -2896,7 +2896,7 @@ class CrmApi(APISegmentBase):
2896
2896
  )
2897
2897
  return self._handle_response(response)
2898
2898
 
2899
- def batch_update_deals(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
2899
+ def batch_update_deals(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
2900
2900
  """
2901
2901
 
2902
2902
  Updates multiple deals in HubSpot CRM in a single operation using a POST request to "/crm/v3/objects/deals/batch/update", requiring a JSON body with deal identifiers and updates, and supports OAuth2 and private app authentication for the "crm.objects.deals.write" scope.
@@ -2929,7 +2929,7 @@ class CrmApi(APISegmentBase):
2929
2929
  return self._handle_response(response)
2930
2930
 
2931
2931
  def post_deal_gdpr_delete(
2932
- self, objectId: str, idProperty: Optional[str] = None
2932
+ self, objectId: str, idProperty: str | None = None
2933
2933
  ) -> Any:
2934
2934
  """
2935
2935
 
@@ -2965,12 +2965,12 @@ class CrmApi(APISegmentBase):
2965
2965
 
2966
2966
  def list_deals(
2967
2967
  self,
2968
- limit: Optional[int] = None,
2969
- after: Optional[str] = None,
2970
- properties: Optional[List[str]] = None,
2971
- propertiesWithHistory: Optional[List[str]] = None,
2972
- associations: Optional[List[str]] = None,
2973
- archived: Optional[bool] = None,
2968
+ limit: int | None = None,
2969
+ after: str | None = None,
2970
+ properties: list[str] | None = None,
2971
+ propertiesWithHistory: list[str] | None = None,
2972
+ associations: list[str] | None = None,
2973
+ archived: bool | None = None,
2974
2974
  ) -> dict[str, Any]:
2975
2975
  """
2976
2976
 
@@ -3010,7 +3010,7 @@ class CrmApi(APISegmentBase):
3010
3010
  return self._handle_response(response)
3011
3011
 
3012
3012
  def create_deal(
3013
- self, associations: List[dict[str, Any]], properties: dict[str, str]
3013
+ self, associations: list[dict[str, Any]], properties: dict[str, str]
3014
3014
  ) -> dict[str, Any]:
3015
3015
  """
3016
3016
 
@@ -3048,10 +3048,10 @@ class CrmApi(APISegmentBase):
3048
3048
  self,
3049
3049
  limit: int,
3050
3050
  after: str,
3051
- sorts: List[str],
3052
- properties: List[str],
3053
- filterGroups: List[dict[str, Any]],
3054
- query: Optional[str] = None,
3051
+ sorts: list[str],
3052
+ properties: list[str],
3053
+ filterGroups: list[dict[str, Any]],
3054
+ query: str | None = None,
3055
3055
  ) -> dict[str, Any]:
3056
3056
  """
3057
3057
 
@@ -3151,7 +3151,7 @@ class CrmApi(APISegmentBase):
3151
3151
  return self._handle_response(response)
3152
3152
 
3153
3153
  def get_import_errors_by_id(
3154
- self, importId: str, after: Optional[str] = None, limit: Optional[int] = None
3154
+ self, importId: str, after: str | None = None, limit: int | None = None
3155
3155
  ) -> dict[str, Any]:
3156
3156
  """
3157
3157
 
@@ -3205,7 +3205,7 @@ class CrmApi(APISegmentBase):
3205
3205
  return self._handle_response(response)
3206
3206
 
3207
3207
  def delete_schema_by_type(
3208
- self, objectType: str, archived: Optional[bool] = None
3208
+ self, objectType: str, archived: bool | None = None
3209
3209
  ) -> Any:
3210
3210
  """
3211
3211
 
@@ -3234,13 +3234,13 @@ class CrmApi(APISegmentBase):
3234
3234
  def patch_crm_schema_by_object_type(
3235
3235
  self,
3236
3236
  objectType: str,
3237
- description: Optional[str] = None,
3238
- secondaryDisplayProperties: Optional[List[str]] = None,
3239
- requiredProperties: Optional[List[str]] = None,
3240
- searchableProperties: Optional[List[str]] = None,
3241
- primaryDisplayProperty: Optional[str] = None,
3242
- restorable: Optional[bool] = None,
3243
- labels: Optional[dict[str, Any]] = None,
3237
+ description: str | None = None,
3238
+ secondaryDisplayProperties: list[str] | None = None,
3239
+ requiredProperties: list[str] | None = None,
3240
+ searchableProperties: list[str] | None = None,
3241
+ primaryDisplayProperty: str | None = None,
3242
+ restorable: bool | None = None,
3243
+ labels: dict[str, Any] | None = None,
3244
3244
  ) -> dict[str, Any]:
3245
3245
  """
3246
3246
 
@@ -3290,7 +3290,7 @@ class CrmApi(APISegmentBase):
3290
3290
  objectType: str,
3291
3291
  fromObjectTypeId: str,
3292
3292
  toObjectTypeId: str,
3293
- name: Optional[str] = None,
3293
+ name: str | None = None,
3294
3294
  ) -> dict[str, Any]:
3295
3295
  """
3296
3296
 
@@ -3387,7 +3387,7 @@ class CrmApi(APISegmentBase):
3387
3387
  response = self._delete(url, params=query_params)
3388
3388
  return self._handle_response(response)
3389
3389
 
3390
- def list_schemas(self, archived: Optional[bool] = None) -> dict[str, Any]:
3390
+ def list_schemas(self, archived: bool | None = None) -> dict[str, Any]:
3391
3391
  """
3392
3392
 
3393
3393
  Retrieves a list of custom object schemas in the CRM, optionally filtering by archived status, using either legacy private apps or OAuth2 credentials for authentication.
@@ -3411,15 +3411,15 @@ class CrmApi(APISegmentBase):
3411
3411
 
3412
3412
  def create_crm_schema(
3413
3413
  self,
3414
- requiredProperties: List[str],
3414
+ requiredProperties: list[str],
3415
3415
  name: str,
3416
- associatedObjects: List[str],
3417
- properties: List[dict[str, Any]],
3416
+ associatedObjects: list[str],
3417
+ properties: list[dict[str, Any]],
3418
3418
  labels: dict[str, Any],
3419
- description: Optional[str] = None,
3420
- secondaryDisplayProperties: Optional[List[str]] = None,
3421
- searchableProperties: Optional[List[str]] = None,
3422
- primaryDisplayProperty: Optional[str] = None,
3419
+ description: str | None = None,
3420
+ secondaryDisplayProperties: list[str] | None = None,
3421
+ searchableProperties: list[str] | None = None,
3422
+ primaryDisplayProperty: str | None = None,
3423
3423
  ) -> dict[str, Any]:
3424
3424
  """
3425
3425
 
@@ -3471,7 +3471,7 @@ class CrmApi(APISegmentBase):
3471
3471
  return self._handle_response(response)
3472
3472
 
3473
3473
  def archive_properties_batch_post(
3474
- self, objectType: str, inputs: List[dict[str, Any]]
3474
+ self, objectType: str, inputs: list[dict[str, Any]]
3475
3475
  ) -> Any:
3476
3476
  """
3477
3477
 
@@ -3565,8 +3565,8 @@ class CrmApi(APISegmentBase):
3565
3565
  self,
3566
3566
  objectType: str,
3567
3567
  groupName: str,
3568
- displayOrder: Optional[int] = None,
3569
- label: Optional[str] = None,
3568
+ displayOrder: int | None = None,
3569
+ label: str | None = None,
3570
3570
  ) -> dict[str, Any]:
3571
3571
  """
3572
3572
 
@@ -3605,8 +3605,8 @@ class CrmApi(APISegmentBase):
3605
3605
  self,
3606
3606
  objectType: str,
3607
3607
  propertyName: str,
3608
- archived: Optional[bool] = None,
3609
- properties: Optional[str] = None,
3608
+ archived: bool | None = None,
3609
+ properties: str | None = None,
3610
3610
  ) -> dict[str, Any]:
3611
3611
  """
3612
3612
 
@@ -3671,16 +3671,16 @@ class CrmApi(APISegmentBase):
3671
3671
  self,
3672
3672
  objectType: str,
3673
3673
  propertyName: str,
3674
- description: Optional[str] = None,
3675
- groupName: Optional[str] = None,
3676
- hidden: Optional[bool] = None,
3677
- options: Optional[List[dict[str, Any]]] = None,
3678
- displayOrder: Optional[int] = None,
3679
- calculationFormula: Optional[str] = None,
3680
- label: Optional[str] = None,
3681
- type: Optional[str] = None,
3682
- fieldType: Optional[str] = None,
3683
- formField: Optional[bool] = None,
3674
+ description: str | None = None,
3675
+ groupName: str | None = None,
3676
+ hidden: bool | None = None,
3677
+ options: list[dict[str, Any]] | None = None,
3678
+ displayOrder: int | None = None,
3679
+ calculationFormula: str | None = None,
3680
+ label: str | None = None,
3681
+ type: str | None = None,
3682
+ fieldType: str | None = None,
3683
+ formField: bool | None = None,
3684
3684
  ) -> dict[str, Any]:
3685
3685
  """
3686
3686
 
@@ -3735,7 +3735,7 @@ class CrmApi(APISegmentBase):
3735
3735
  return self._handle_response(response)
3736
3736
 
3737
3737
  def batch_read_properties_by_object_type(
3738
- self, objectType: str, archived: bool, inputs: List[dict[str, Any]]
3738
+ self, objectType: str, archived: bool, inputs: list[dict[str, Any]]
3739
3739
  ) -> dict[str, Any]:
3740
3740
  """
3741
3741
 
@@ -3775,7 +3775,7 @@ class CrmApi(APISegmentBase):
3775
3775
  return self._handle_response(response)
3776
3776
 
3777
3777
  def create_batch_properties(
3778
- self, objectType: str, inputs: List[dict[str, Any]]
3778
+ self, objectType: str, inputs: list[dict[str, Any]]
3779
3779
  ) -> dict[str, Any]:
3780
3780
  """
3781
3781
 
@@ -3814,8 +3814,8 @@ class CrmApi(APISegmentBase):
3814
3814
  def get_properties_by_object_type(
3815
3815
  self,
3816
3816
  objectType: str,
3817
- archived: Optional[bool] = None,
3818
- properties: Optional[str] = None,
3817
+ archived: bool | None = None,
3818
+ properties: str | None = None,
3819
3819
  ) -> dict[str, Any]:
3820
3820
  """
3821
3821
 
@@ -3854,15 +3854,15 @@ class CrmApi(APISegmentBase):
3854
3854
  groupName: str,
3855
3855
  name: str,
3856
3856
  fieldType: str,
3857
- description: Optional[str] = None,
3858
- hidden: Optional[bool] = None,
3859
- displayOrder: Optional[int] = None,
3860
- formField: Optional[bool] = None,
3861
- referencedObjectType: Optional[str] = None,
3862
- options: Optional[List[dict[str, Any]]] = None,
3863
- calculationFormula: Optional[str] = None,
3864
- hasUniqueValue: Optional[bool] = None,
3865
- externalOptions: Optional[bool] = None,
3857
+ description: str | None = None,
3858
+ hidden: bool | None = None,
3859
+ displayOrder: int | None = None,
3860
+ formField: bool | None = None,
3861
+ referencedObjectType: str | None = None,
3862
+ options: list[dict[str, Any]] | None = None,
3863
+ calculationFormula: str | None = None,
3864
+ hasUniqueValue: bool | None = None,
3865
+ externalOptions: bool | None = None,
3866
3866
  ) -> dict[str, Any]:
3867
3867
  """
3868
3868
 
@@ -3951,7 +3951,7 @@ class CrmApi(APISegmentBase):
3951
3951
  return self._handle_response(response)
3952
3952
 
3953
3953
  def create_property_group(
3954
- self, objectType: str, name: str, label: str, displayOrder: Optional[int] = None
3954
+ self, objectType: str, name: str, label: str, displayOrder: int | None = None
3955
3955
  ) -> dict[str, Any]:
3956
3956
  """
3957
3957
 
@@ -3992,8 +3992,8 @@ class CrmApi(APISegmentBase):
3992
3992
  def get_owner_by_id(
3993
3993
  self,
3994
3994
  ownerId: str,
3995
- idProperty: Optional[str] = None,
3996
- archived: Optional[bool] = None,
3995
+ idProperty: str | None = None,
3996
+ archived: bool | None = None,
3997
3997
  ) -> dict[str, Any]:
3998
3998
  """
3999
3999
 
@@ -4025,7 +4025,7 @@ class CrmApi(APISegmentBase):
4025
4025
  return self._handle_response(response)
4026
4026
 
4027
4027
  def batch_create_timeline_events(
4028
- self, inputs: List[dict[str, Any]]
4028
+ self, inputs: list[dict[str, Any]]
4029
4029
  ) -> dict[str, Any]:
4030
4030
  """
4031
4031
 
@@ -4092,10 +4092,10 @@ class CrmApi(APISegmentBase):
4092
4092
  appId: str,
4093
4093
  eventTemplateId: str,
4094
4094
  name: str,
4095
- tokens: List[dict[str, Any]],
4095
+ tokens: list[dict[str, Any]],
4096
4096
  id: str,
4097
- detailTemplate: Optional[str] = None,
4098
- headerTemplate: Optional[str] = None,
4097
+ detailTemplate: str | None = None,
4098
+ headerTemplate: str | None = None,
4099
4099
  ) -> dict[str, Any]:
4100
4100
  """
4101
4101
 
@@ -4182,14 +4182,14 @@ class CrmApi(APISegmentBase):
4182
4182
  self,
4183
4183
  eventTemplateId: str,
4184
4184
  tokens: dict[str, str],
4185
- extraData: Optional[dict[str, Any]] = None,
4186
- timelineIFrame: Optional[dict[str, Any]] = None,
4187
- domain: Optional[str] = None,
4188
- id: Optional[str] = None,
4189
- utk: Optional[str] = None,
4190
- email: Optional[str] = None,
4191
- objectId: Optional[str] = None,
4192
- timestamp: Optional[str] = None,
4185
+ extraData: dict[str, Any] | None = None,
4186
+ timelineIFrame: dict[str, Any] | None = None,
4187
+ domain: str | None = None,
4188
+ id: str | None = None,
4189
+ utk: str | None = None,
4190
+ email: str | None = None,
4191
+ objectId: str | None = None,
4192
+ timestamp: str | None = None,
4193
4193
  ) -> dict[str, Any]:
4194
4194
  """
4195
4195
 
@@ -4249,10 +4249,10 @@ class CrmApi(APISegmentBase):
4249
4249
  name: str,
4250
4250
  label: str,
4251
4251
  type: str,
4252
- createdAt: Optional[str] = None,
4253
- options: Optional[List[dict[str, Any]]] = None,
4254
- objectPropertyName: Optional[str] = None,
4255
- updatedAt: Optional[str] = None,
4252
+ createdAt: str | None = None,
4253
+ options: list[dict[str, Any]] | None = None,
4254
+ objectPropertyName: str | None = None,
4255
+ updatedAt: str | None = None,
4256
4256
  ) -> dict[str, Any]:
4257
4257
  """
4258
4258
 
@@ -4311,8 +4311,8 @@ class CrmApi(APISegmentBase):
4311
4311
  eventTemplateId: str,
4312
4312
  tokenName: str,
4313
4313
  label: str,
4314
- options: Optional[List[dict[str, Any]]] = None,
4315
- objectPropertyName: Optional[str] = None,
4314
+ options: list[dict[str, Any]] | None = None,
4315
+ objectPropertyName: str | None = None,
4316
4316
  ) -> dict[str, Any]:
4317
4317
  """
4318
4318
 
@@ -4478,10 +4478,10 @@ class CrmApi(APISegmentBase):
4478
4478
  self,
4479
4479
  appId: str,
4480
4480
  name: str,
4481
- tokens: List[dict[str, Any]],
4481
+ tokens: list[dict[str, Any]],
4482
4482
  objectType: str,
4483
- detailTemplate: Optional[str] = None,
4484
- headerTemplate: Optional[str] = None,
4483
+ detailTemplate: str | None = None,
4484
+ headerTemplate: str | None = None,
4485
4485
  ) -> dict[str, Any]:
4486
4486
  """
4487
4487
 
@@ -4533,7 +4533,7 @@ class CrmApi(APISegmentBase):
4533
4533
  return self._handle_response(response)
4534
4534
 
4535
4535
  def get_timeline_event_render(
4536
- self, eventTemplateId: str, eventId: str, detail: Optional[bool] = None
4536
+ self, eventTemplateId: str, eventId: str, detail: bool | None = None
4537
4537
  ) -> Any:
4538
4538
  """
4539
4539
 
@@ -4564,11 +4564,11 @@ class CrmApi(APISegmentBase):
4564
4564
 
4565
4565
  def batch_read_contacts_post(
4566
4566
  self,
4567
- propertiesWithHistory: List[str],
4568
- inputs: List[dict[str, Any]],
4569
- properties: List[str],
4570
- archived: Optional[bool] = None,
4571
- idProperty: Optional[str] = None,
4567
+ propertiesWithHistory: list[str],
4568
+ inputs: list[dict[str, Any]],
4569
+ properties: list[str],
4570
+ archived: bool | None = None,
4571
+ idProperty: str | None = None,
4572
4572
  ) -> dict[str, Any]:
4573
4573
  """
4574
4574
 
@@ -4613,10 +4613,10 @@ class CrmApi(APISegmentBase):
4613
4613
  def get_contact_by_id(
4614
4614
  self,
4615
4615
  contactId: str,
4616
- properties: Optional[List[str]] = None,
4617
- propertiesWithHistory: Optional[List[str]] = None,
4618
- associations: Optional[List[str]] = None,
4619
- archived: Optional[bool] = None,
4616
+ properties: list[str] | None = None,
4617
+ propertiesWithHistory: list[str] | None = None,
4618
+ associations: list[str] | None = None,
4619
+ archived: bool | None = None,
4620
4620
  ) -> dict[str, Any]:
4621
4621
  """
4622
4622
 
@@ -4748,7 +4748,7 @@ class CrmApi(APISegmentBase):
4748
4748
  )
4749
4749
  return self._handle_response(response)
4750
4750
 
4751
- def archive_contacts_batch_post(self, inputs: List[dict[str, Any]]) -> Any:
4751
+ def archive_contacts_batch_post(self, inputs: list[dict[str, Any]]) -> Any:
4752
4752
  """
4753
4753
 
4754
4754
  Archives a batch of contacts by ID using the HubSpot CRM API, returning a "204 No Content" response upon success.
@@ -4780,7 +4780,7 @@ class CrmApi(APISegmentBase):
4780
4780
  )
4781
4781
  return self._handle_response(response)
4782
4782
 
4783
- def create_contacts_batch(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
4783
+ def create_contacts_batch(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
4784
4784
  """
4785
4785
 
4786
4786
  Creates a batch of contacts in HubSpot using the CRM API, requiring a JSON payload and OAuth2 or private app authentication.
@@ -4812,7 +4812,7 @@ class CrmApi(APISegmentBase):
4812
4812
  )
4813
4813
  return self._handle_response(response)
4814
4814
 
4815
- def batch_update_contacts(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
4815
+ def batch_update_contacts(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
4816
4816
  """
4817
4817
 
4818
4818
  Updates multiple contact records in a single request by providing their IDs or unique property values, overwriting specified properties in batch.
@@ -4845,7 +4845,7 @@ class CrmApi(APISegmentBase):
4845
4845
  return self._handle_response(response)
4846
4846
 
4847
4847
  def delete_contact_gdpr_data(
4848
- self, objectId: str, idProperty: Optional[str] = None
4848
+ self, objectId: str, idProperty: str | None = None
4849
4849
  ) -> Any:
4850
4850
  """
4851
4851
 
@@ -4881,12 +4881,12 @@ class CrmApi(APISegmentBase):
4881
4881
 
4882
4882
  def get_contacts(
4883
4883
  self,
4884
- limit: Optional[int] = None,
4885
- after: Optional[str] = None,
4886
- properties: Optional[List[str]] = None,
4887
- propertiesWithHistory: Optional[List[str]] = None,
4888
- associations: Optional[List[str]] = None,
4889
- archived: Optional[bool] = None,
4884
+ limit: int | None = None,
4885
+ after: str | None = None,
4886
+ properties: list[str] | None = None,
4887
+ propertiesWithHistory: list[str] | None = None,
4888
+ associations: list[str] | None = None,
4889
+ archived: bool | None = None,
4890
4890
  ) -> dict[str, Any]:
4891
4891
  """
4892
4892
 
@@ -4926,7 +4926,7 @@ class CrmApi(APISegmentBase):
4926
4926
  return self._handle_response(response)
4927
4927
 
4928
4928
  def create_contact(
4929
- self, associations: List[dict[str, Any]], properties: dict[str, str]
4929
+ self, associations: list[dict[str, Any]], properties: dict[str, str]
4930
4930
  ) -> dict[str, Any]:
4931
4931
  """
4932
4932
 
@@ -4964,10 +4964,10 @@ class CrmApi(APISegmentBase):
4964
4964
  self,
4965
4965
  limit: int,
4966
4966
  after: str,
4967
- sorts: List[str],
4968
- properties: List[str],
4969
- filterGroups: List[dict[str, Any]],
4970
- query: Optional[str] = None,
4967
+ sorts: list[str],
4968
+ properties: list[str],
4969
+ filterGroups: list[dict[str, Any]],
4970
+ query: str | None = None,
4971
4971
  ) -> dict[str, Any]:
4972
4972
  """
4973
4973
 
@@ -5014,11 +5014,11 @@ class CrmApi(APISegmentBase):
5014
5014
 
5015
5015
  def batch_read_feedback_submissions(
5016
5016
  self,
5017
- propertiesWithHistory: List[str],
5018
- inputs: List[dict[str, Any]],
5019
- properties: List[str],
5020
- archived: Optional[bool] = None,
5021
- idProperty: Optional[str] = None,
5017
+ propertiesWithHistory: list[str],
5018
+ inputs: list[dict[str, Any]],
5019
+ properties: list[str],
5020
+ archived: bool | None = None,
5021
+ idProperty: str | None = None,
5022
5022
  ) -> dict[str, Any]:
5023
5023
  """
5024
5024
 
@@ -5063,11 +5063,11 @@ class CrmApi(APISegmentBase):
5063
5063
  def get_feedback_submission_by_id(
5064
5064
  self,
5065
5065
  feedbackSubmissionId: str,
5066
- properties: Optional[List[str]] = None,
5067
- propertiesWithHistory: Optional[List[str]] = None,
5068
- associations: Optional[List[str]] = None,
5069
- archived: Optional[bool] = None,
5070
- idProperty: Optional[str] = None,
5066
+ properties: list[str] | None = None,
5067
+ propertiesWithHistory: list[str] | None = None,
5068
+ associations: list[str] | None = None,
5069
+ archived: bool | None = None,
5070
+ idProperty: str | None = None,
5071
5071
  ) -> dict[str, Any]:
5072
5072
  """
5073
5073
 
@@ -5135,7 +5135,7 @@ class CrmApi(APISegmentBase):
5135
5135
  self,
5136
5136
  feedbackSubmissionId: str,
5137
5137
  properties: dict[str, str],
5138
- idProperty: Optional[str] = None,
5138
+ idProperty: str | None = None,
5139
5139
  ) -> dict[str, Any]:
5140
5140
  """
5141
5141
 
@@ -5207,7 +5207,7 @@ class CrmApi(APISegmentBase):
5207
5207
  )
5208
5208
  return self._handle_response(response)
5209
5209
 
5210
- def archive_feedback_submissions_batch(self, inputs: List[dict[str, Any]]) -> Any:
5210
+ def archive_feedback_submissions_batch(self, inputs: list[dict[str, Any]]) -> Any:
5211
5211
  """
5212
5212
 
5213
5213
  Archives a batch of feedback submissions by ID using the HubSpot API and returns a status response with a 204 status code upon successful completion.
@@ -5240,7 +5240,7 @@ class CrmApi(APISegmentBase):
5240
5240
  return self._handle_response(response)
5241
5241
 
5242
5242
  def create_feedback_submissions_batch(
5243
- self, inputs: List[dict[str, Any]]
5243
+ self, inputs: list[dict[str, Any]]
5244
5244
  ) -> dict[str, Any]:
5245
5245
  """
5246
5246
 
@@ -5274,7 +5274,7 @@ class CrmApi(APISegmentBase):
5274
5274
  return self._handle_response(response)
5275
5275
 
5276
5276
  def update_feedback_submissions_batch(
5277
- self, inputs: List[dict[str, Any]]
5277
+ self, inputs: list[dict[str, Any]]
5278
5278
  ) -> dict[str, Any]:
5279
5279
  """
5280
5280
 
@@ -5308,7 +5308,7 @@ class CrmApi(APISegmentBase):
5308
5308
  return self._handle_response(response)
5309
5309
 
5310
5310
  def post_feedback_submissions_gdpr_delete(
5311
- self, objectId: str, idProperty: Optional[str] = None
5311
+ self, objectId: str, idProperty: str | None = None
5312
5312
  ) -> Any:
5313
5313
  """
5314
5314
 
@@ -5344,12 +5344,12 @@ class CrmApi(APISegmentBase):
5344
5344
 
5345
5345
  def get_feedback_submissions(
5346
5346
  self,
5347
- limit: Optional[int] = None,
5348
- after: Optional[str] = None,
5349
- properties: Optional[List[str]] = None,
5350
- propertiesWithHistory: Optional[List[str]] = None,
5351
- associations: Optional[List[str]] = None,
5352
- archived: Optional[bool] = None,
5347
+ limit: int | None = None,
5348
+ after: str | None = None,
5349
+ properties: list[str] | None = None,
5350
+ propertiesWithHistory: list[str] | None = None,
5351
+ associations: list[str] | None = None,
5352
+ archived: bool | None = None,
5353
5353
  ) -> dict[str, Any]:
5354
5354
  """
5355
5355
 
@@ -5389,7 +5389,7 @@ class CrmApi(APISegmentBase):
5389
5389
  return self._handle_response(response)
5390
5390
 
5391
5391
  def create_feedback_submission(
5392
- self, associations: List[dict[str, Any]], properties: dict[str, str]
5392
+ self, associations: list[dict[str, Any]], properties: dict[str, str]
5393
5393
  ) -> dict[str, Any]:
5394
5394
  """
5395
5395
 
@@ -5427,10 +5427,10 @@ class CrmApi(APISegmentBase):
5427
5427
  self,
5428
5428
  limit: int,
5429
5429
  after: str,
5430
- sorts: List[str],
5431
- properties: List[str],
5432
- filterGroups: List[dict[str, Any]],
5433
- query: Optional[str] = None,
5430
+ sorts: list[str],
5431
+ properties: list[str],
5432
+ filterGroups: list[dict[str, Any]],
5433
+ query: str | None = None,
5434
5434
  ) -> dict[str, Any]:
5435
5435
  """
5436
5436
 
@@ -5478,11 +5478,11 @@ class CrmApi(APISegmentBase):
5478
5478
  def read_batch_objects(
5479
5479
  self,
5480
5480
  objectType: str,
5481
- propertiesWithHistory: List[str],
5482
- inputs: List[dict[str, Any]],
5483
- properties: List[str],
5484
- archived: Optional[bool] = None,
5485
- idProperty: Optional[str] = None,
5481
+ propertiesWithHistory: list[str],
5482
+ inputs: list[dict[str, Any]],
5483
+ properties: list[str],
5484
+ archived: bool | None = None,
5485
+ idProperty: str | None = None,
5486
5486
  ) -> dict[str, Any]:
5487
5487
  """
5488
5488
 
@@ -5531,11 +5531,11 @@ class CrmApi(APISegmentBase):
5531
5531
  self,
5532
5532
  objectType: str,
5533
5533
  objectId: str,
5534
- properties: Optional[List[str]] = None,
5535
- propertiesWithHistory: Optional[List[str]] = None,
5536
- associations: Optional[List[str]] = None,
5537
- archived: Optional[bool] = None,
5538
- idProperty: Optional[str] = None,
5534
+ properties: list[str] | None = None,
5535
+ propertiesWithHistory: list[str] | None = None,
5536
+ associations: list[str] | None = None,
5537
+ archived: bool | None = None,
5538
+ idProperty: str | None = None,
5539
5539
  ) -> dict[str, Any]:
5540
5540
  """
5541
5541
 
@@ -5610,7 +5610,7 @@ class CrmApi(APISegmentBase):
5610
5610
  objectType: str,
5611
5611
  objectId: str,
5612
5612
  properties: dict[str, str],
5613
- idProperty: Optional[str] = None,
5613
+ idProperty: str | None = None,
5614
5614
  ) -> dict[str, Any]:
5615
5615
  """
5616
5616
 
@@ -5687,7 +5687,7 @@ class CrmApi(APISegmentBase):
5687
5687
  return self._handle_response(response)
5688
5688
 
5689
5689
  def archive_batch_objects_by_type(
5690
- self, objectType: str, inputs: List[dict[str, Any]]
5690
+ self, objectType: str, inputs: list[dict[str, Any]]
5691
5691
  ) -> Any:
5692
5692
  """
5693
5693
 
@@ -5726,7 +5726,7 @@ class CrmApi(APISegmentBase):
5726
5726
  return self._handle_response(response)
5727
5727
 
5728
5728
  def batch_create_object_records(
5729
- self, objectType: str, inputs: List[dict[str, Any]]
5729
+ self, objectType: str, inputs: list[dict[str, Any]]
5730
5730
  ) -> dict[str, Any]:
5731
5731
  """
5732
5732
 
@@ -5765,7 +5765,7 @@ class CrmApi(APISegmentBase):
5765
5765
  return self._handle_response(response)
5766
5766
 
5767
5767
  def update_batch_object(
5768
- self, objectType: str, inputs: List[dict[str, Any]]
5768
+ self, objectType: str, inputs: list[dict[str, Any]]
5769
5769
  ) -> dict[str, Any]:
5770
5770
  """
5771
5771
 
@@ -5804,7 +5804,7 @@ class CrmApi(APISegmentBase):
5804
5804
  return self._handle_response(response)
5805
5805
 
5806
5806
  def gdpr_delete_object(
5807
- self, objectType: str, objectId: str, idProperty: Optional[str] = None
5807
+ self, objectType: str, objectId: str, idProperty: str | None = None
5808
5808
  ) -> Any:
5809
5809
  """
5810
5810
 
@@ -5844,12 +5844,12 @@ class CrmApi(APISegmentBase):
5844
5844
  def list_objects_by_type(
5845
5845
  self,
5846
5846
  objectType: str,
5847
- limit: Optional[int] = None,
5848
- after: Optional[str] = None,
5849
- properties: Optional[List[str]] = None,
5850
- propertiesWithHistory: Optional[List[str]] = None,
5851
- associations: Optional[List[str]] = None,
5852
- archived: Optional[bool] = None,
5847
+ limit: int | None = None,
5848
+ after: str | None = None,
5849
+ properties: list[str] | None = None,
5850
+ propertiesWithHistory: list[str] | None = None,
5851
+ associations: list[str] | None = None,
5852
+ archived: bool | None = None,
5853
5853
  ) -> dict[str, Any]:
5854
5854
  """
5855
5855
 
@@ -5894,7 +5894,7 @@ class CrmApi(APISegmentBase):
5894
5894
  def create_object_by_type(
5895
5895
  self,
5896
5896
  objectType: str,
5897
- associations: List[dict[str, Any]],
5897
+ associations: list[dict[str, Any]],
5898
5898
  properties: dict[str, str],
5899
5899
  ) -> dict[str, Any]:
5900
5900
  """
@@ -5937,10 +5937,10 @@ class CrmApi(APISegmentBase):
5937
5937
  objectType: str,
5938
5938
  limit: int,
5939
5939
  after: str,
5940
- sorts: List[str],
5941
- properties: List[str],
5942
- filterGroups: List[dict[str, Any]],
5943
- query: Optional[str] = None,
5940
+ sorts: list[str],
5941
+ properties: list[str],
5942
+ filterGroups: list[dict[str, Any]],
5943
+ query: str | None = None,
5944
5944
  ) -> dict[str, Any]:
5945
5945
  """
5946
5946
 
@@ -6016,10 +6016,10 @@ class CrmApi(APISegmentBase):
6016
6016
  self,
6017
6017
  appId: str,
6018
6018
  createMeetingUrl: str,
6019
- userVerifyUrl: Optional[str] = None,
6020
- fetchAccountsUri: Optional[str] = None,
6021
- updateMeetingUrl: Optional[str] = None,
6022
- deleteMeetingUrl: Optional[str] = None,
6019
+ userVerifyUrl: str | None = None,
6020
+ fetchAccountsUri: str | None = None,
6021
+ updateMeetingUrl: str | None = None,
6022
+ deleteMeetingUrl: str | None = None,
6023
6023
  ) -> dict[str, Any]:
6024
6024
  """
6025
6025
 
@@ -6091,11 +6091,11 @@ class CrmApi(APISegmentBase):
6091
6091
 
6092
6092
  def batch_read_tickets_post(
6093
6093
  self,
6094
- propertiesWithHistory: List[str],
6095
- inputs: List[dict[str, Any]],
6096
- properties: List[str],
6097
- archived: Optional[bool] = None,
6098
- idProperty: Optional[str] = None,
6094
+ propertiesWithHistory: list[str],
6095
+ inputs: list[dict[str, Any]],
6096
+ properties: list[str],
6097
+ archived: bool | None = None,
6098
+ idProperty: str | None = None,
6099
6099
  ) -> dict[str, Any]:
6100
6100
  """
6101
6101
 
@@ -6140,11 +6140,11 @@ class CrmApi(APISegmentBase):
6140
6140
  def get_ticket_by_id(
6141
6141
  self,
6142
6142
  ticketId: str,
6143
- properties: Optional[List[str]] = None,
6144
- propertiesWithHistory: Optional[List[str]] = None,
6145
- associations: Optional[List[str]] = None,
6146
- archived: Optional[bool] = None,
6147
- idProperty: Optional[str] = None,
6143
+ properties: list[str] | None = None,
6144
+ propertiesWithHistory: list[str] | None = None,
6145
+ associations: list[str] | None = None,
6146
+ archived: bool | None = None,
6147
+ idProperty: str | None = None,
6148
6148
  ) -> dict[str, Any]:
6149
6149
  """
6150
6150
 
@@ -6212,7 +6212,7 @@ class CrmApi(APISegmentBase):
6212
6212
  self,
6213
6213
  ticketId: str,
6214
6214
  properties: dict[str, str],
6215
- idProperty: Optional[str] = None,
6215
+ idProperty: str | None = None,
6216
6216
  ) -> dict[str, Any]:
6217
6217
  """
6218
6218
 
@@ -6282,7 +6282,7 @@ class CrmApi(APISegmentBase):
6282
6282
  )
6283
6283
  return self._handle_response(response)
6284
6284
 
6285
- def archive_tickets_batch_post(self, inputs: List[dict[str, Any]]) -> Any:
6285
+ def archive_tickets_batch_post(self, inputs: list[dict[str, Any]]) -> Any:
6286
6286
  """
6287
6287
 
6288
6288
  Archives a batch of tickets by ID using the HubSpot API and returns a status message.
@@ -6314,7 +6314,7 @@ class CrmApi(APISegmentBase):
6314
6314
  )
6315
6315
  return self._handle_response(response)
6316
6316
 
6317
- def create_tickets_batch(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
6317
+ def create_tickets_batch(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
6318
6318
  """
6319
6319
 
6320
6320
  Creates a batch of tickets in the CRM using the HubSpot API and returns a status message.
@@ -6346,7 +6346,7 @@ class CrmApi(APISegmentBase):
6346
6346
  )
6347
6347
  return self._handle_response(response)
6348
6348
 
6349
- def update_tickets_batch(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
6349
+ def update_tickets_batch(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
6350
6350
  """
6351
6351
 
6352
6352
  Updates multiple tickets in a single request using the HubSpot CRM API, returning a status message indicating the success or partial success of the operation.
@@ -6379,7 +6379,7 @@ class CrmApi(APISegmentBase):
6379
6379
  return self._handle_response(response)
6380
6380
 
6381
6381
  def delete_ticket_gdpr(
6382
- self, objectId: str, idProperty: Optional[str] = None
6382
+ self, objectId: str, idProperty: str | None = None
6383
6383
  ) -> Any:
6384
6384
  """
6385
6385
 
@@ -6415,12 +6415,12 @@ class CrmApi(APISegmentBase):
6415
6415
 
6416
6416
  def get_tickets(
6417
6417
  self,
6418
- limit: Optional[int] = None,
6419
- after: Optional[str] = None,
6420
- properties: Optional[List[str]] = None,
6421
- propertiesWithHistory: Optional[List[str]] = None,
6422
- associations: Optional[List[str]] = None,
6423
- archived: Optional[bool] = None,
6418
+ limit: int | None = None,
6419
+ after: str | None = None,
6420
+ properties: list[str] | None = None,
6421
+ propertiesWithHistory: list[str] | None = None,
6422
+ associations: list[str] | None = None,
6423
+ archived: bool | None = None,
6424
6424
  ) -> dict[str, Any]:
6425
6425
  """
6426
6426
 
@@ -6460,7 +6460,7 @@ class CrmApi(APISegmentBase):
6460
6460
  return self._handle_response(response)
6461
6461
 
6462
6462
  def create_ticket(
6463
- self, associations: List[dict[str, Any]], properties: dict[str, str]
6463
+ self, associations: list[dict[str, Any]], properties: dict[str, str]
6464
6464
  ) -> dict[str, Any]:
6465
6465
  """
6466
6466
 
@@ -6498,10 +6498,10 @@ class CrmApi(APISegmentBase):
6498
6498
  self,
6499
6499
  limit: int,
6500
6500
  after: str,
6501
- sorts: List[str],
6502
- properties: List[str],
6503
- filterGroups: List[dict[str, Any]],
6504
- query: Optional[str] = None,
6501
+ sorts: list[str],
6502
+ properties: list[str],
6503
+ filterGroups: list[dict[str, Any]],
6504
+ query: str | None = None,
6505
6505
  ) -> dict[str, Any]:
6506
6506
  """
6507
6507
 
@@ -6548,11 +6548,11 @@ class CrmApi(APISegmentBase):
6548
6548
 
6549
6549
  def batch_read_line_items_post(
6550
6550
  self,
6551
- propertiesWithHistory: List[str],
6552
- inputs: List[dict[str, Any]],
6553
- properties: List[str],
6554
- archived: Optional[bool] = None,
6555
- idProperty: Optional[str] = None,
6551
+ propertiesWithHistory: list[str],
6552
+ inputs: list[dict[str, Any]],
6553
+ properties: list[str],
6554
+ archived: bool | None = None,
6555
+ idProperty: str | None = None,
6556
6556
  ) -> dict[str, Any]:
6557
6557
  """
6558
6558
 
@@ -6597,11 +6597,11 @@ class CrmApi(APISegmentBase):
6597
6597
  def get_line_item_by_id(
6598
6598
  self,
6599
6599
  lineItemId: str,
6600
- properties: Optional[List[str]] = None,
6601
- propertiesWithHistory: Optional[List[str]] = None,
6602
- associations: Optional[List[str]] = None,
6603
- archived: Optional[bool] = None,
6604
- idProperty: Optional[str] = None,
6600
+ properties: list[str] | None = None,
6601
+ propertiesWithHistory: list[str] | None = None,
6602
+ associations: list[str] | None = None,
6603
+ archived: bool | None = None,
6604
+ idProperty: str | None = None,
6605
6605
  ) -> dict[str, Any]:
6606
6606
  """
6607
6607
 
@@ -6669,7 +6669,7 @@ class CrmApi(APISegmentBase):
6669
6669
  self,
6670
6670
  lineItemId: str,
6671
6671
  properties: dict[str, str],
6672
- idProperty: Optional[str] = None,
6672
+ idProperty: str | None = None,
6673
6673
  ) -> dict[str, Any]:
6674
6674
  """
6675
6675
 
@@ -6739,7 +6739,7 @@ class CrmApi(APISegmentBase):
6739
6739
  )
6740
6740
  return self._handle_response(response)
6741
6741
 
6742
- def archive_line_items_batch_post(self, inputs: List[dict[str, Any]]) -> Any:
6742
+ def archive_line_items_batch_post(self, inputs: list[dict[str, Any]]) -> Any:
6743
6743
  """
6744
6744
 
6745
6745
  Archives a batch of line items by their IDs in the CRM using a POST request.
@@ -6771,7 +6771,7 @@ class CrmApi(APISegmentBase):
6771
6771
  )
6772
6772
  return self._handle_response(response)
6773
6773
 
6774
- def create_line_items_batch(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
6774
+ def create_line_items_batch(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
6775
6775
  """
6776
6776
 
6777
6777
  Creates a batch of line items using the HubSpot API and returns a status message upon successful creation.
@@ -6803,7 +6803,7 @@ class CrmApi(APISegmentBase):
6803
6803
  )
6804
6804
  return self._handle_response(response)
6805
6805
 
6806
- def batch_update_line_items(self, inputs: List[dict[str, Any]]) -> dict[str, Any]:
6806
+ def batch_update_line_items(self, inputs: list[dict[str, Any]]) -> dict[str, Any]:
6807
6807
  """
6808
6808
 
6809
6809
  Updates a batch of line items using their internal IDs or unique property values via the POST method, requiring authentication with the "crm.objects.line_items.write" scope.
@@ -6836,7 +6836,7 @@ class CrmApi(APISegmentBase):
6836
6836
  return self._handle_response(response)
6837
6837
 
6838
6838
  def gdpr_delete_line_items(
6839
- self, objectId: str, idProperty: Optional[str] = None
6839
+ self, objectId: str, idProperty: str | None = None
6840
6840
  ) -> Any:
6841
6841
  """
6842
6842
 
@@ -6872,12 +6872,12 @@ class CrmApi(APISegmentBase):
6872
6872
 
6873
6873
  def list_line_items(
6874
6874
  self,
6875
- limit: Optional[int] = None,
6876
- after: Optional[str] = None,
6877
- properties: Optional[List[str]] = None,
6878
- propertiesWithHistory: Optional[List[str]] = None,
6879
- associations: Optional[List[str]] = None,
6880
- archived: Optional[bool] = None,
6875
+ limit: int | None = None,
6876
+ after: str | None = None,
6877
+ properties: list[str] | None = None,
6878
+ propertiesWithHistory: list[str] | None = None,
6879
+ associations: list[str] | None = None,
6880
+ archived: bool | None = None,
6881
6881
  ) -> dict[str, Any]:
6882
6882
  """
6883
6883
 
@@ -6917,7 +6917,7 @@ class CrmApi(APISegmentBase):
6917
6917
  return self._handle_response(response)
6918
6918
 
6919
6919
  def create_line_item(
6920
- self, associations: List[dict[str, Any]], properties: dict[str, str]
6920
+ self, associations: list[dict[str, Any]], properties: dict[str, str]
6921
6921
  ) -> dict[str, Any]:
6922
6922
  """
6923
6923
 
@@ -6955,10 +6955,10 @@ class CrmApi(APISegmentBase):
6955
6955
  self,
6956
6956
  limit: int,
6957
6957
  after: str,
6958
- sorts: List[str],
6959
- properties: List[str],
6960
- filterGroups: List[dict[str, Any]],
6961
- query: Optional[str] = None,
6958
+ sorts: list[str],
6959
+ properties: list[str],
6960
+ filterGroups: list[dict[str, Any]],
6961
+ query: str | None = None,
6962
6962
  ) -> dict[str, Any]:
6963
6963
  """
6964
6964
 
@@ -7005,9 +7005,9 @@ class CrmApi(APISegmentBase):
7005
7005
 
7006
7006
  def get_crm_imports(
7007
7007
  self,
7008
- after: Optional[str] = None,
7009
- before: Optional[str] = None,
7010
- limit: Optional[int] = None,
7008
+ after: str | None = None,
7009
+ before: str | None = None,
7010
+ limit: int | None = None,
7011
7011
  ) -> dict[str, Any]:
7012
7012
  """
7013
7013
 
@@ -7037,7 +7037,7 @@ class CrmApi(APISegmentBase):
7037
7037
  return self._handle_response(response)
7038
7038
 
7039
7039
  def create_crm_import(
7040
- self, files: Optional[bytes] = None, importRequest: Optional[str] = None
7040
+ self, files: bytes | None = None, importRequest: str | None = None
7041
7041
  ) -> dict[str, Any]:
7042
7042
  """
7043
7043
 
@@ -7080,10 +7080,10 @@ class CrmApi(APISegmentBase):
7080
7080
 
7081
7081
  def get_owners_list(
7082
7082
  self,
7083
- email: Optional[str] = None,
7084
- after: Optional[str] = None,
7085
- limit: Optional[int] = None,
7086
- archived: Optional[bool] = None,
7083
+ email: str | None = None,
7084
+ after: str | None = None,
7085
+ limit: int | None = None,
7086
+ archived: bool | None = None,
7087
7087
  ) -> dict[str, Any]:
7088
7088
  """
7089
7089