dub 0.32.0__py3-none-any.whl → 0.33.0__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.
Files changed (45) hide show
  1. dub/_version.py +3 -3
  2. dub/analytics.py +4 -4
  3. dub/commissions.py +8 -8
  4. dub/customers.py +16 -313
  5. dub/domains.py +22 -26
  6. dub/embed_tokens.py +4 -4
  7. dub/events.py +4 -4
  8. dub/folders.py +16 -20
  9. dub/links.py +38 -54
  10. dub/models/components/__init__.py +32 -0
  11. dub/models/components/analyticstopurls.py +2 -2
  12. dub/models/components/clickevent.py +7 -6
  13. dub/models/components/leadcreatedevent.py +7 -6
  14. dub/models/components/leadevent.py +7 -6
  15. dub/models/components/linkclickedevent.py +7 -6
  16. dub/models/components/linkschema.py +6 -0
  17. dub/models/components/linkwebhookevent.py +7 -6
  18. dub/models/components/partnerapplicationsubmittedevent.py +269 -0
  19. dub/models/components/partnerenrolledevent.py +64 -4
  20. dub/models/components/salecreatedevent.py +7 -6
  21. dub/models/components/saleevent.py +7 -6
  22. dub/models/components/webhookevent.py +6 -0
  23. dub/models/components/workspaceschema.py +6 -0
  24. dub/models/operations/__init__.py +17 -35
  25. dub/models/operations/banpartner.py +83 -0
  26. dub/models/operations/createpartner.py +64 -4
  27. dub/models/operations/listcommissions.py +13 -2
  28. dub/models/operations/listevents.py +10 -0
  29. dub/models/operations/listpartners.py +71 -4
  30. dub/models/operations/retrieveanalytics.py +12 -0
  31. dub/models/operations/retrievelinks.py +42 -7
  32. dub/models/operations/retrievepartneranalytics.py +51 -11
  33. dub/models/operations/updatecommission.py +7 -2
  34. dub/partners.py +298 -24
  35. dub/qr_codes.py +2 -2
  36. dub/tags.py +16 -24
  37. dub/track.py +8 -16
  38. dub/utils/retries.py +69 -5
  39. dub/utils/unmarshal_json_response.py +15 -1
  40. dub/workspaces.py +8 -16
  41. {dub-0.32.0.dist-info → dub-0.33.0.dist-info}/METADATA +2 -20
  42. {dub-0.32.0.dist-info → dub-0.33.0.dist-info}/RECORD +44 -43
  43. dub/models/operations/createcustomer.py +0 -382
  44. {dub-0.32.0.dist-info → dub-0.33.0.dist-info}/WHEEL +0 -0
  45. {dub-0.32.0.dist-info → dub-0.33.0.dist-info}/licenses/LICENSE +0 -0
dub/links.py CHANGED
@@ -24,7 +24,7 @@ class Links(BaseSDK):
24
24
  server_url: Optional[str] = None,
25
25
  timeout_ms: Optional[int] = None,
26
26
  http_headers: Optional[Mapping[str, str]] = None,
27
- ) -> Optional[components.LinkSchema]:
27
+ ) -> components.LinkSchema:
28
28
  r"""Create a link
29
29
 
30
30
  Create a link for the authenticated workspace.
@@ -105,7 +105,7 @@ class Links(BaseSDK):
105
105
 
106
106
  response_data: Any = None
107
107
  if utils.match_response(http_res, "200", "application/json"):
108
- return unmarshal_json_response(Optional[components.LinkSchema], http_res)
108
+ return unmarshal_json_response(components.LinkSchema, http_res)
109
109
  if utils.match_response(http_res, "400", "application/json"):
110
110
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
111
111
  raise errors.BadRequest(response_data, http_res)
@@ -161,7 +161,7 @@ class Links(BaseSDK):
161
161
  server_url: Optional[str] = None,
162
162
  timeout_ms: Optional[int] = None,
163
163
  http_headers: Optional[Mapping[str, str]] = None,
164
- ) -> Optional[components.LinkSchema]:
164
+ ) -> components.LinkSchema:
165
165
  r"""Create a link
166
166
 
167
167
  Create a link for the authenticated workspace.
@@ -242,7 +242,7 @@ class Links(BaseSDK):
242
242
 
243
243
  response_data: Any = None
244
244
  if utils.match_response(http_res, "200", "application/json"):
245
- return unmarshal_json_response(Optional[components.LinkSchema], http_res)
245
+ return unmarshal_json_response(components.LinkSchema, http_res)
246
246
  if utils.match_response(http_res, "400", "application/json"):
247
247
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
248
248
  raise errors.BadRequest(response_data, http_res)
@@ -405,9 +405,7 @@ class Links(BaseSDK):
405
405
  response_data: Any = None
406
406
  if utils.match_response(http_res, "200", "application/json"):
407
407
  return operations.GetLinksResponse(
408
- result=unmarshal_json_response(
409
- Optional[List[components.LinkSchema]], http_res
410
- ),
408
+ result=unmarshal_json_response(List[components.LinkSchema], http_res),
411
409
  next=next_func,
412
410
  )
413
411
  if utils.match_response(http_res, "400", "application/json"):
@@ -572,9 +570,7 @@ class Links(BaseSDK):
572
570
  response_data: Any = None
573
571
  if utils.match_response(http_res, "200", "application/json"):
574
572
  return operations.GetLinksResponse(
575
- result=unmarshal_json_response(
576
- Optional[List[components.LinkSchema]], http_res
577
- ),
573
+ result=unmarshal_json_response(List[components.LinkSchema], http_res),
578
574
  next=next_func,
579
575
  )
580
576
  if utils.match_response(http_res, "400", "application/json"):
@@ -629,7 +625,7 @@ class Links(BaseSDK):
629
625
  server_url: Optional[str] = None,
630
626
  timeout_ms: Optional[int] = None,
631
627
  http_headers: Optional[Mapping[str, str]] = None,
632
- ) -> Optional[float]:
628
+ ) -> float:
633
629
  r"""Retrieve links count
634
630
 
635
631
  Retrieve the number of links for the authenticated workspace.
@@ -705,7 +701,7 @@ class Links(BaseSDK):
705
701
 
706
702
  response_data: Any = None
707
703
  if utils.match_response(http_res, "200", "application/json"):
708
- return unmarshal_json_response(Optional[float], http_res)
704
+ return unmarshal_json_response(float, http_res)
709
705
  if utils.match_response(http_res, "400", "application/json"):
710
706
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
711
707
  raise errors.BadRequest(response_data, http_res)
@@ -758,7 +754,7 @@ class Links(BaseSDK):
758
754
  server_url: Optional[str] = None,
759
755
  timeout_ms: Optional[int] = None,
760
756
  http_headers: Optional[Mapping[str, str]] = None,
761
- ) -> Optional[float]:
757
+ ) -> float:
762
758
  r"""Retrieve links count
763
759
 
764
760
  Retrieve the number of links for the authenticated workspace.
@@ -834,7 +830,7 @@ class Links(BaseSDK):
834
830
 
835
831
  response_data: Any = None
836
832
  if utils.match_response(http_res, "200", "application/json"):
837
- return unmarshal_json_response(Optional[float], http_res)
833
+ return unmarshal_json_response(float, http_res)
838
834
  if utils.match_response(http_res, "400", "application/json"):
839
835
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
840
836
  raise errors.BadRequest(response_data, http_res)
@@ -887,7 +883,7 @@ class Links(BaseSDK):
887
883
  server_url: Optional[str] = None,
888
884
  timeout_ms: Optional[int] = None,
889
885
  http_headers: Optional[Mapping[str, str]] = None,
890
- ) -> Optional[components.LinkSchema]:
886
+ ) -> components.LinkSchema:
891
887
  r"""Retrieve a link
892
888
 
893
889
  Retrieve the info for a link.
@@ -963,7 +959,7 @@ class Links(BaseSDK):
963
959
 
964
960
  response_data: Any = None
965
961
  if utils.match_response(http_res, "200", "application/json"):
966
- return unmarshal_json_response(Optional[components.LinkSchema], http_res)
962
+ return unmarshal_json_response(components.LinkSchema, http_res)
967
963
  if utils.match_response(http_res, "400", "application/json"):
968
964
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
969
965
  raise errors.BadRequest(response_data, http_res)
@@ -1016,7 +1012,7 @@ class Links(BaseSDK):
1016
1012
  server_url: Optional[str] = None,
1017
1013
  timeout_ms: Optional[int] = None,
1018
1014
  http_headers: Optional[Mapping[str, str]] = None,
1019
- ) -> Optional[components.LinkSchema]:
1015
+ ) -> components.LinkSchema:
1020
1016
  r"""Retrieve a link
1021
1017
 
1022
1018
  Retrieve the info for a link.
@@ -1092,7 +1088,7 @@ class Links(BaseSDK):
1092
1088
 
1093
1089
  response_data: Any = None
1094
1090
  if utils.match_response(http_res, "200", "application/json"):
1095
- return unmarshal_json_response(Optional[components.LinkSchema], http_res)
1091
+ return unmarshal_json_response(components.LinkSchema, http_res)
1096
1092
  if utils.match_response(http_res, "400", "application/json"):
1097
1093
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
1098
1094
  raise errors.BadRequest(response_data, http_res)
@@ -1149,7 +1145,7 @@ class Links(BaseSDK):
1149
1145
  server_url: Optional[str] = None,
1150
1146
  timeout_ms: Optional[int] = None,
1151
1147
  http_headers: Optional[Mapping[str, str]] = None,
1152
- ) -> Optional[components.LinkSchema]:
1148
+ ) -> components.LinkSchema:
1153
1149
  r"""Update a link
1154
1150
 
1155
1151
  Update a link for the authenticated workspace. If there's no change, returns it as it is.
@@ -1236,7 +1232,7 @@ class Links(BaseSDK):
1236
1232
 
1237
1233
  response_data: Any = None
1238
1234
  if utils.match_response(http_res, "200", "application/json"):
1239
- return unmarshal_json_response(Optional[components.LinkSchema], http_res)
1235
+ return unmarshal_json_response(components.LinkSchema, http_res)
1240
1236
  if utils.match_response(http_res, "400", "application/json"):
1241
1237
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
1242
1238
  raise errors.BadRequest(response_data, http_res)
@@ -1293,7 +1289,7 @@ class Links(BaseSDK):
1293
1289
  server_url: Optional[str] = None,
1294
1290
  timeout_ms: Optional[int] = None,
1295
1291
  http_headers: Optional[Mapping[str, str]] = None,
1296
- ) -> Optional[components.LinkSchema]:
1292
+ ) -> components.LinkSchema:
1297
1293
  r"""Update a link
1298
1294
 
1299
1295
  Update a link for the authenticated workspace. If there's no change, returns it as it is.
@@ -1380,7 +1376,7 @@ class Links(BaseSDK):
1380
1376
 
1381
1377
  response_data: Any = None
1382
1378
  if utils.match_response(http_res, "200", "application/json"):
1383
- return unmarshal_json_response(Optional[components.LinkSchema], http_res)
1379
+ return unmarshal_json_response(components.LinkSchema, http_res)
1384
1380
  if utils.match_response(http_res, "400", "application/json"):
1385
1381
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
1386
1382
  raise errors.BadRequest(response_data, http_res)
@@ -1431,7 +1427,7 @@ class Links(BaseSDK):
1431
1427
  server_url: Optional[str] = None,
1432
1428
  timeout_ms: Optional[int] = None,
1433
1429
  http_headers: Optional[Mapping[str, str]] = None,
1434
- ) -> Optional[operations.DeleteLinkResponseBody]:
1430
+ ) -> operations.DeleteLinkResponseBody:
1435
1431
  r"""Delete a link
1436
1432
 
1437
1433
  Delete a link for the authenticated workspace.
@@ -1507,9 +1503,7 @@ class Links(BaseSDK):
1507
1503
 
1508
1504
  response_data: Any = None
1509
1505
  if utils.match_response(http_res, "200", "application/json"):
1510
- return unmarshal_json_response(
1511
- Optional[operations.DeleteLinkResponseBody], http_res
1512
- )
1506
+ return unmarshal_json_response(operations.DeleteLinkResponseBody, http_res)
1513
1507
  if utils.match_response(http_res, "400", "application/json"):
1514
1508
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
1515
1509
  raise errors.BadRequest(response_data, http_res)
@@ -1560,7 +1554,7 @@ class Links(BaseSDK):
1560
1554
  server_url: Optional[str] = None,
1561
1555
  timeout_ms: Optional[int] = None,
1562
1556
  http_headers: Optional[Mapping[str, str]] = None,
1563
- ) -> Optional[operations.DeleteLinkResponseBody]:
1557
+ ) -> operations.DeleteLinkResponseBody:
1564
1558
  r"""Delete a link
1565
1559
 
1566
1560
  Delete a link for the authenticated workspace.
@@ -1636,9 +1630,7 @@ class Links(BaseSDK):
1636
1630
 
1637
1631
  response_data: Any = None
1638
1632
  if utils.match_response(http_res, "200", "application/json"):
1639
- return unmarshal_json_response(
1640
- Optional[operations.DeleteLinkResponseBody], http_res
1641
- )
1633
+ return unmarshal_json_response(operations.DeleteLinkResponseBody, http_res)
1642
1634
  if utils.match_response(http_res, "400", "application/json"):
1643
1635
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
1644
1636
  raise errors.BadRequest(response_data, http_res)
@@ -1691,7 +1683,7 @@ class Links(BaseSDK):
1691
1683
  server_url: Optional[str] = None,
1692
1684
  timeout_ms: Optional[int] = None,
1693
1685
  http_headers: Optional[Mapping[str, str]] = None,
1694
- ) -> Optional[List[operations.ResponseBody]]:
1686
+ ) -> List[operations.ResponseBody]:
1695
1687
  r"""Bulk create links
1696
1688
 
1697
1689
  Bulk create up to 100 links for the authenticated workspace.
@@ -1770,9 +1762,7 @@ class Links(BaseSDK):
1770
1762
 
1771
1763
  response_data: Any = None
1772
1764
  if utils.match_response(http_res, "200", "application/json"):
1773
- return unmarshal_json_response(
1774
- Optional[List[operations.ResponseBody]], http_res
1775
- )
1765
+ return unmarshal_json_response(List[operations.ResponseBody], http_res)
1776
1766
  if utils.match_response(http_res, "400", "application/json"):
1777
1767
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
1778
1768
  raise errors.BadRequest(response_data, http_res)
@@ -1825,7 +1815,7 @@ class Links(BaseSDK):
1825
1815
  server_url: Optional[str] = None,
1826
1816
  timeout_ms: Optional[int] = None,
1827
1817
  http_headers: Optional[Mapping[str, str]] = None,
1828
- ) -> Optional[List[operations.ResponseBody]]:
1818
+ ) -> List[operations.ResponseBody]:
1829
1819
  r"""Bulk create links
1830
1820
 
1831
1821
  Bulk create up to 100 links for the authenticated workspace.
@@ -1904,9 +1894,7 @@ class Links(BaseSDK):
1904
1894
 
1905
1895
  response_data: Any = None
1906
1896
  if utils.match_response(http_res, "200", "application/json"):
1907
- return unmarshal_json_response(
1908
- Optional[List[operations.ResponseBody]], http_res
1909
- )
1897
+ return unmarshal_json_response(List[operations.ResponseBody], http_res)
1910
1898
  if utils.match_response(http_res, "400", "application/json"):
1911
1899
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
1912
1900
  raise errors.BadRequest(response_data, http_res)
@@ -1962,7 +1950,7 @@ class Links(BaseSDK):
1962
1950
  server_url: Optional[str] = None,
1963
1951
  timeout_ms: Optional[int] = None,
1964
1952
  http_headers: Optional[Mapping[str, str]] = None,
1965
- ) -> Optional[List[components.LinkSchema]]:
1953
+ ) -> List[components.LinkSchema]:
1966
1954
  r"""Bulk update links
1967
1955
 
1968
1956
  Bulk update up to 100 links with the same data for the authenticated workspace.
@@ -2047,9 +2035,7 @@ class Links(BaseSDK):
2047
2035
 
2048
2036
  response_data: Any = None
2049
2037
  if utils.match_response(http_res, "200", "application/json"):
2050
- return unmarshal_json_response(
2051
- Optional[List[components.LinkSchema]], http_res
2052
- )
2038
+ return unmarshal_json_response(List[components.LinkSchema], http_res)
2053
2039
  if utils.match_response(http_res, "400", "application/json"):
2054
2040
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
2055
2041
  raise errors.BadRequest(response_data, http_res)
@@ -2105,7 +2091,7 @@ class Links(BaseSDK):
2105
2091
  server_url: Optional[str] = None,
2106
2092
  timeout_ms: Optional[int] = None,
2107
2093
  http_headers: Optional[Mapping[str, str]] = None,
2108
- ) -> Optional[List[components.LinkSchema]]:
2094
+ ) -> List[components.LinkSchema]:
2109
2095
  r"""Bulk update links
2110
2096
 
2111
2097
  Bulk update up to 100 links with the same data for the authenticated workspace.
@@ -2190,9 +2176,7 @@ class Links(BaseSDK):
2190
2176
 
2191
2177
  response_data: Any = None
2192
2178
  if utils.match_response(http_res, "200", "application/json"):
2193
- return unmarshal_json_response(
2194
- Optional[List[components.LinkSchema]], http_res
2195
- )
2179
+ return unmarshal_json_response(List[components.LinkSchema], http_res)
2196
2180
  if utils.match_response(http_res, "400", "application/json"):
2197
2181
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
2198
2182
  raise errors.BadRequest(response_data, http_res)
@@ -2246,7 +2230,7 @@ class Links(BaseSDK):
2246
2230
  server_url: Optional[str] = None,
2247
2231
  timeout_ms: Optional[int] = None,
2248
2232
  http_headers: Optional[Mapping[str, str]] = None,
2249
- ) -> Optional[operations.BulkDeleteLinksResponseBody]:
2233
+ ) -> operations.BulkDeleteLinksResponseBody:
2250
2234
  r"""Bulk delete links
2251
2235
 
2252
2236
  Bulk delete up to 100 links for the authenticated workspace.
@@ -2323,7 +2307,7 @@ class Links(BaseSDK):
2323
2307
  response_data: Any = None
2324
2308
  if utils.match_response(http_res, "200", "application/json"):
2325
2309
  return unmarshal_json_response(
2326
- Optional[operations.BulkDeleteLinksResponseBody], http_res
2310
+ operations.BulkDeleteLinksResponseBody, http_res
2327
2311
  )
2328
2312
  if utils.match_response(http_res, "400", "application/json"):
2329
2313
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
@@ -2378,7 +2362,7 @@ class Links(BaseSDK):
2378
2362
  server_url: Optional[str] = None,
2379
2363
  timeout_ms: Optional[int] = None,
2380
2364
  http_headers: Optional[Mapping[str, str]] = None,
2381
- ) -> Optional[operations.BulkDeleteLinksResponseBody]:
2365
+ ) -> operations.BulkDeleteLinksResponseBody:
2382
2366
  r"""Bulk delete links
2383
2367
 
2384
2368
  Bulk delete up to 100 links for the authenticated workspace.
@@ -2455,7 +2439,7 @@ class Links(BaseSDK):
2455
2439
  response_data: Any = None
2456
2440
  if utils.match_response(http_res, "200", "application/json"):
2457
2441
  return unmarshal_json_response(
2458
- Optional[operations.BulkDeleteLinksResponseBody], http_res
2442
+ operations.BulkDeleteLinksResponseBody, http_res
2459
2443
  )
2460
2444
  if utils.match_response(http_res, "400", "application/json"):
2461
2445
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
@@ -2512,7 +2496,7 @@ class Links(BaseSDK):
2512
2496
  server_url: Optional[str] = None,
2513
2497
  timeout_ms: Optional[int] = None,
2514
2498
  http_headers: Optional[Mapping[str, str]] = None,
2515
- ) -> Optional[components.LinkSchema]:
2499
+ ) -> components.LinkSchema:
2516
2500
  r"""Upsert a link
2517
2501
 
2518
2502
  Upsert a link for the authenticated workspace by its URL. If a link with the same URL already exists, return it (or update it if there are any changes). Otherwise, a new link will be created.
@@ -2593,7 +2577,7 @@ class Links(BaseSDK):
2593
2577
 
2594
2578
  response_data: Any = None
2595
2579
  if utils.match_response(http_res, "200", "application/json"):
2596
- return unmarshal_json_response(Optional[components.LinkSchema], http_res)
2580
+ return unmarshal_json_response(components.LinkSchema, http_res)
2597
2581
  if utils.match_response(http_res, "400", "application/json"):
2598
2582
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
2599
2583
  raise errors.BadRequest(response_data, http_res)
@@ -2649,7 +2633,7 @@ class Links(BaseSDK):
2649
2633
  server_url: Optional[str] = None,
2650
2634
  timeout_ms: Optional[int] = None,
2651
2635
  http_headers: Optional[Mapping[str, str]] = None,
2652
- ) -> Optional[components.LinkSchema]:
2636
+ ) -> components.LinkSchema:
2653
2637
  r"""Upsert a link
2654
2638
 
2655
2639
  Upsert a link for the authenticated workspace by its URL. If a link with the same URL already exists, return it (or update it if there are any changes). Otherwise, a new link will be created.
@@ -2730,7 +2714,7 @@ class Links(BaseSDK):
2730
2714
 
2731
2715
  response_data: Any = None
2732
2716
  if utils.match_response(http_res, "200", "application/json"):
2733
- return unmarshal_json_response(Optional[components.LinkSchema], http_res)
2717
+ return unmarshal_json_response(components.LinkSchema, http_res)
2734
2718
  if utils.match_response(http_res, "400", "application/json"):
2735
2719
  response_data = unmarshal_json_response(errors.BadRequestData, http_res)
2736
2720
  raise errors.BadRequest(response_data, http_res)
@@ -148,6 +148,18 @@ if TYPE_CHECKING:
148
148
  PartnerAnalyticsTopLinks,
149
149
  PartnerAnalyticsTopLinksTypedDict,
150
150
  )
151
+ from .partnerapplicationsubmittedevent import (
152
+ ApplicationFormData,
153
+ ApplicationFormDataTypedDict,
154
+ PartnerApplicationSubmittedEvent,
155
+ PartnerApplicationSubmittedEventData,
156
+ PartnerApplicationSubmittedEventDataTypedDict,
157
+ PartnerApplicationSubmittedEventEvent,
158
+ PartnerApplicationSubmittedEventPartner,
159
+ PartnerApplicationSubmittedEventPartnerTypedDict,
160
+ PartnerApplicationSubmittedEventStatus,
161
+ PartnerApplicationSubmittedEventTypedDict,
162
+ )
151
163
  from .partnerenrolledevent import (
152
164
  BannedReason,
153
165
  PartnerEnrolledEvent,
@@ -238,6 +250,8 @@ __all__ = [
238
250
  "AnalyticsTopUrlsTypedDict",
239
251
  "AnalyticsTriggers",
240
252
  "AnalyticsTriggersTypedDict",
253
+ "ApplicationFormData",
254
+ "ApplicationFormDataTypedDict",
241
255
  "BannedReason",
242
256
  "City",
243
257
  "Click",
@@ -327,6 +341,14 @@ __all__ = [
327
341
  "PartnerAnalyticsTimeseriesTypedDict",
328
342
  "PartnerAnalyticsTopLinks",
329
343
  "PartnerAnalyticsTopLinksTypedDict",
344
+ "PartnerApplicationSubmittedEvent",
345
+ "PartnerApplicationSubmittedEventData",
346
+ "PartnerApplicationSubmittedEventDataTypedDict",
347
+ "PartnerApplicationSubmittedEventEvent",
348
+ "PartnerApplicationSubmittedEventPartner",
349
+ "PartnerApplicationSubmittedEventPartnerTypedDict",
350
+ "PartnerApplicationSubmittedEventStatus",
351
+ "PartnerApplicationSubmittedEventTypedDict",
330
352
  "PartnerEnrolledEvent",
331
353
  "PartnerEnrolledEventData",
332
354
  "PartnerEnrolledEventDataTypedDict",
@@ -515,6 +537,16 @@ _dynamic_imports: dict[str, str] = {
515
537
  "PartnerAnalyticsTimeseriesTypedDict": ".partneranalyticstimeseries",
516
538
  "PartnerAnalyticsTopLinks": ".partneranalyticstoplinks",
517
539
  "PartnerAnalyticsTopLinksTypedDict": ".partneranalyticstoplinks",
540
+ "ApplicationFormData": ".partnerapplicationsubmittedevent",
541
+ "ApplicationFormDataTypedDict": ".partnerapplicationsubmittedevent",
542
+ "PartnerApplicationSubmittedEvent": ".partnerapplicationsubmittedevent",
543
+ "PartnerApplicationSubmittedEventData": ".partnerapplicationsubmittedevent",
544
+ "PartnerApplicationSubmittedEventDataTypedDict": ".partnerapplicationsubmittedevent",
545
+ "PartnerApplicationSubmittedEventEvent": ".partnerapplicationsubmittedevent",
546
+ "PartnerApplicationSubmittedEventPartner": ".partnerapplicationsubmittedevent",
547
+ "PartnerApplicationSubmittedEventPartnerTypedDict": ".partnerapplicationsubmittedevent",
548
+ "PartnerApplicationSubmittedEventStatus": ".partnerapplicationsubmittedevent",
549
+ "PartnerApplicationSubmittedEventTypedDict": ".partnerapplicationsubmittedevent",
518
550
  "BannedReason": ".partnerenrolledevent",
519
551
  "PartnerEnrolledEvent": ".partnerenrolledevent",
520
552
  "PartnerEnrolledEventData": ".partnerenrolledevent",
@@ -9,7 +9,7 @@ from typing_extensions import Annotated, NotRequired, TypedDict
9
9
 
10
10
  class AnalyticsTopUrlsTypedDict(TypedDict):
11
11
  url: str
12
- r"""The destination URL"""
12
+ r"""The full destination URL (including query parameters)"""
13
13
  clicks: NotRequired[float]
14
14
  r"""The number of clicks from this URL"""
15
15
  leads: NotRequired[float]
@@ -22,7 +22,7 @@ class AnalyticsTopUrlsTypedDict(TypedDict):
22
22
 
23
23
  class AnalyticsTopUrls(BaseModel):
24
24
  url: str
25
- r"""The destination URL"""
25
+ r"""The full destination URL (including query parameters)"""
26
26
 
27
27
  clicks: Optional[float] = 0
28
28
  r"""The number of clicks from this URL"""
@@ -125,6 +125,7 @@ class LinkTypedDict(TypedDict):
125
125
  archived: bool
126
126
  expires_at: str
127
127
  expired_url: Nullable[str]
128
+ disabled_at: str
128
129
  password: Nullable[str]
129
130
  r"""The password required to access the destination URL of the short link."""
130
131
  proxy: bool
@@ -167,8 +168,8 @@ class LinkTypedDict(TypedDict):
167
168
  r"""The UTM term of the short link."""
168
169
  utm_content: Nullable[str]
169
170
  r"""The UTM content of the short link."""
170
- test_started_at: Nullable[str]
171
- test_completed_at: Nullable[str]
171
+ test_started_at: str
172
+ test_completed_at: str
172
173
  user_id: Nullable[str]
173
174
  workspace_id: str
174
175
  r"""The workspace ID of the short link."""
@@ -225,6 +226,8 @@ class Link(BaseModel):
225
226
 
226
227
  expired_url: Annotated[Nullable[str], pydantic.Field(alias="expiredUrl")]
227
228
 
229
+ disabled_at: Annotated[str, pydantic.Field(alias="disabledAt")]
230
+
228
231
  password: Nullable[str]
229
232
  r"""The password required to access the destination URL of the short link."""
230
233
 
@@ -290,9 +293,9 @@ class Link(BaseModel):
290
293
  utm_content: Nullable[str]
291
294
  r"""The UTM content of the short link."""
292
295
 
293
- test_started_at: Annotated[Nullable[str], pydantic.Field(alias="testStartedAt")]
296
+ test_started_at: Annotated[str, pydantic.Field(alias="testStartedAt")]
294
297
 
295
- test_completed_at: Annotated[Nullable[str], pydantic.Field(alias="testCompletedAt")]
298
+ test_completed_at: Annotated[str, pydantic.Field(alias="testCompletedAt")]
296
299
 
297
300
  user_id: Annotated[Nullable[str], pydantic.Field(alias="userId")]
298
301
 
@@ -377,8 +380,6 @@ class Link(BaseModel):
377
380
  "utm_term",
378
381
  "utm_content",
379
382
  "testVariants",
380
- "testStartedAt",
381
- "testCompletedAt",
382
383
  "userId",
383
384
  "tagId",
384
385
  ]
@@ -207,6 +207,7 @@ class LeadCreatedEventLinkTypedDict(TypedDict):
207
207
  archived: bool
208
208
  expires_at: str
209
209
  expired_url: Nullable[str]
210
+ disabled_at: str
210
211
  password: Nullable[str]
211
212
  r"""The password required to access the destination URL of the short link."""
212
213
  proxy: bool
@@ -249,8 +250,8 @@ class LeadCreatedEventLinkTypedDict(TypedDict):
249
250
  r"""The UTM term of the short link."""
250
251
  utm_content: Nullable[str]
251
252
  r"""The UTM content of the short link."""
252
- test_started_at: Nullable[str]
253
- test_completed_at: Nullable[str]
253
+ test_started_at: str
254
+ test_completed_at: str
254
255
  user_id: Nullable[str]
255
256
  workspace_id: str
256
257
  r"""The workspace ID of the short link."""
@@ -307,6 +308,8 @@ class LeadCreatedEventLink(BaseModel):
307
308
 
308
309
  expired_url: Annotated[Nullable[str], pydantic.Field(alias="expiredUrl")]
309
310
 
311
+ disabled_at: Annotated[str, pydantic.Field(alias="disabledAt")]
312
+
310
313
  password: Nullable[str]
311
314
  r"""The password required to access the destination URL of the short link."""
312
315
 
@@ -372,9 +375,9 @@ class LeadCreatedEventLink(BaseModel):
372
375
  utm_content: Nullable[str]
373
376
  r"""The UTM content of the short link."""
374
377
 
375
- test_started_at: Annotated[Nullable[str], pydantic.Field(alias="testStartedAt")]
378
+ test_started_at: Annotated[str, pydantic.Field(alias="testStartedAt")]
376
379
 
377
- test_completed_at: Annotated[Nullable[str], pydantic.Field(alias="testCompletedAt")]
380
+ test_completed_at: Annotated[str, pydantic.Field(alias="testCompletedAt")]
378
381
 
379
382
  user_id: Annotated[Nullable[str], pydantic.Field(alias="userId")]
380
383
 
@@ -459,8 +462,6 @@ class LeadCreatedEventLink(BaseModel):
459
462
  "utm_term",
460
463
  "utm_content",
461
464
  "testVariants",
462
- "testStartedAt",
463
- "testCompletedAt",
464
465
  "userId",
465
466
  "tagId",
466
467
  ]
@@ -125,6 +125,7 @@ class LeadEventLinkTypedDict(TypedDict):
125
125
  archived: bool
126
126
  expires_at: str
127
127
  expired_url: Nullable[str]
128
+ disabled_at: str
128
129
  password: Nullable[str]
129
130
  r"""The password required to access the destination URL of the short link."""
130
131
  proxy: bool
@@ -167,8 +168,8 @@ class LeadEventLinkTypedDict(TypedDict):
167
168
  r"""The UTM term of the short link."""
168
169
  utm_content: Nullable[str]
169
170
  r"""The UTM content of the short link."""
170
- test_started_at: Nullable[str]
171
- test_completed_at: Nullable[str]
171
+ test_started_at: str
172
+ test_completed_at: str
172
173
  user_id: Nullable[str]
173
174
  workspace_id: str
174
175
  r"""The workspace ID of the short link."""
@@ -225,6 +226,8 @@ class LeadEventLink(BaseModel):
225
226
 
226
227
  expired_url: Annotated[Nullable[str], pydantic.Field(alias="expiredUrl")]
227
228
 
229
+ disabled_at: Annotated[str, pydantic.Field(alias="disabledAt")]
230
+
228
231
  password: Nullable[str]
229
232
  r"""The password required to access the destination URL of the short link."""
230
233
 
@@ -290,9 +293,9 @@ class LeadEventLink(BaseModel):
290
293
  utm_content: Nullable[str]
291
294
  r"""The UTM content of the short link."""
292
295
 
293
- test_started_at: Annotated[Nullable[str], pydantic.Field(alias="testStartedAt")]
296
+ test_started_at: Annotated[str, pydantic.Field(alias="testStartedAt")]
294
297
 
295
- test_completed_at: Annotated[Nullable[str], pydantic.Field(alias="testCompletedAt")]
298
+ test_completed_at: Annotated[str, pydantic.Field(alias="testCompletedAt")]
296
299
 
297
300
  user_id: Annotated[Nullable[str], pydantic.Field(alias="userId")]
298
301
 
@@ -377,8 +380,6 @@ class LeadEventLink(BaseModel):
377
380
  "utm_term",
378
381
  "utm_content",
379
382
  "testVariants",
380
- "testStartedAt",
381
- "testCompletedAt",
382
383
  "userId",
383
384
  "tagId",
384
385
  ]
@@ -125,6 +125,7 @@ class LinkClickedEventLinkTypedDict(TypedDict):
125
125
  archived: bool
126
126
  expires_at: str
127
127
  expired_url: Nullable[str]
128
+ disabled_at: str
128
129
  password: Nullable[str]
129
130
  r"""The password required to access the destination URL of the short link."""
130
131
  proxy: bool
@@ -167,8 +168,8 @@ class LinkClickedEventLinkTypedDict(TypedDict):
167
168
  r"""The UTM term of the short link."""
168
169
  utm_content: Nullable[str]
169
170
  r"""The UTM content of the short link."""
170
- test_started_at: Nullable[str]
171
- test_completed_at: Nullable[str]
171
+ test_started_at: str
172
+ test_completed_at: str
172
173
  user_id: Nullable[str]
173
174
  workspace_id: str
174
175
  r"""The workspace ID of the short link."""
@@ -225,6 +226,8 @@ class LinkClickedEventLink(BaseModel):
225
226
 
226
227
  expired_url: Annotated[Nullable[str], pydantic.Field(alias="expiredUrl")]
227
228
 
229
+ disabled_at: Annotated[str, pydantic.Field(alias="disabledAt")]
230
+
228
231
  password: Nullable[str]
229
232
  r"""The password required to access the destination URL of the short link."""
230
233
 
@@ -290,9 +293,9 @@ class LinkClickedEventLink(BaseModel):
290
293
  utm_content: Nullable[str]
291
294
  r"""The UTM content of the short link."""
292
295
 
293
- test_started_at: Annotated[Nullable[str], pydantic.Field(alias="testStartedAt")]
296
+ test_started_at: Annotated[str, pydantic.Field(alias="testStartedAt")]
294
297
 
295
- test_completed_at: Annotated[Nullable[str], pydantic.Field(alias="testCompletedAt")]
298
+ test_completed_at: Annotated[str, pydantic.Field(alias="testCompletedAt")]
296
299
 
297
300
  user_id: Annotated[Nullable[str], pydantic.Field(alias="userId")]
298
301
 
@@ -377,8 +380,6 @@ class LinkClickedEventLink(BaseModel):
377
380
  "utm_term",
378
381
  "utm_content",
379
382
  "testVariants",
380
- "testStartedAt",
381
- "testCompletedAt",
382
383
  "userId",
383
384
  "tagId",
384
385
  ]
@@ -45,6 +45,8 @@ class LinkSchemaTypedDict(TypedDict):
45
45
  r"""The date and time when the short link will expire in ISO-8601 format."""
46
46
  expired_url: Nullable[str]
47
47
  r"""The URL to redirect to when the short link has expired."""
48
+ disabled_at: Nullable[str]
49
+ r"""The date and time when the short link was disabled. When a short link is disabled, it will redirect to its domain's not found URL, and its stats will be excluded from your overall stats."""
48
50
  password: Nullable[str]
49
51
  r"""The password required to access the destination URL of the short link."""
50
52
  title: Nullable[str]
@@ -158,6 +160,9 @@ class LinkSchema(BaseModel):
158
160
  expired_url: Annotated[Nullable[str], pydantic.Field(alias="expiredUrl")]
159
161
  r"""The URL to redirect to when the short link has expired."""
160
162
 
163
+ disabled_at: Annotated[Nullable[str], pydantic.Field(alias="disabledAt")]
164
+ r"""The date and time when the short link was disabled. When a short link is disabled, it will redirect to its domain's not found URL, and its stats will be excluded from your overall stats."""
165
+
161
166
  password: Nullable[str]
162
167
  r"""The password required to access the destination URL of the short link."""
163
168
 
@@ -323,6 +328,7 @@ class LinkSchema(BaseModel):
323
328
  "partnerId",
324
329
  "expiresAt",
325
330
  "expiredUrl",
331
+ "disabledAt",
326
332
  "password",
327
333
  "title",
328
334
  "description",