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.
- dub/_version.py +3 -3
- dub/analytics.py +4 -4
- dub/commissions.py +8 -8
- dub/customers.py +16 -313
- dub/domains.py +22 -26
- dub/embed_tokens.py +4 -4
- dub/events.py +4 -4
- dub/folders.py +16 -20
- dub/links.py +38 -54
- dub/models/components/__init__.py +32 -0
- dub/models/components/analyticstopurls.py +2 -2
- dub/models/components/clickevent.py +7 -6
- dub/models/components/leadcreatedevent.py +7 -6
- dub/models/components/leadevent.py +7 -6
- dub/models/components/linkclickedevent.py +7 -6
- dub/models/components/linkschema.py +6 -0
- dub/models/components/linkwebhookevent.py +7 -6
- dub/models/components/partnerapplicationsubmittedevent.py +269 -0
- dub/models/components/partnerenrolledevent.py +64 -4
- dub/models/components/salecreatedevent.py +7 -6
- dub/models/components/saleevent.py +7 -6
- dub/models/components/webhookevent.py +6 -0
- dub/models/components/workspaceschema.py +6 -0
- dub/models/operations/__init__.py +17 -35
- dub/models/operations/banpartner.py +83 -0
- dub/models/operations/createpartner.py +64 -4
- dub/models/operations/listcommissions.py +13 -2
- dub/models/operations/listevents.py +10 -0
- dub/models/operations/listpartners.py +71 -4
- dub/models/operations/retrieveanalytics.py +12 -0
- dub/models/operations/retrievelinks.py +42 -7
- dub/models/operations/retrievepartneranalytics.py +51 -11
- dub/models/operations/updatecommission.py +7 -2
- dub/partners.py +298 -24
- dub/qr_codes.py +2 -2
- dub/tags.py +16 -24
- dub/track.py +8 -16
- dub/utils/retries.py +69 -5
- dub/utils/unmarshal_json_response.py +15 -1
- dub/workspaces.py +8 -16
- {dub-0.32.0.dist-info → dub-0.33.0.dist-info}/METADATA +2 -20
- {dub-0.32.0.dist-info → dub-0.33.0.dist-info}/RECORD +44 -43
- dub/models/operations/createcustomer.py +0 -382
- {dub-0.32.0.dist-info → dub-0.33.0.dist-info}/WHEEL +0 -0
- {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
|
-
) ->
|
|
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(
|
|
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
|
-
) ->
|
|
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(
|
|
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
|
-
) ->
|
|
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(
|
|
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
|
-
) ->
|
|
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(
|
|
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
|
-
) ->
|
|
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(
|
|
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
|
-
) ->
|
|
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(
|
|
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
|
-
) ->
|
|
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(
|
|
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
|
-
) ->
|
|
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(
|
|
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
|
-
) ->
|
|
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
|
-
) ->
|
|
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
|
-
) ->
|
|
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
|
-
) ->
|
|
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
|
-
) ->
|
|
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
|
-
) ->
|
|
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
|
-
) ->
|
|
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
|
-
|
|
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
|
-
) ->
|
|
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
|
-
|
|
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
|
-
) ->
|
|
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(
|
|
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
|
-
) ->
|
|
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(
|
|
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:
|
|
171
|
-
test_completed_at:
|
|
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[
|
|
296
|
+
test_started_at: Annotated[str, pydantic.Field(alias="testStartedAt")]
|
|
294
297
|
|
|
295
|
-
test_completed_at: Annotated[
|
|
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:
|
|
253
|
-
test_completed_at:
|
|
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[
|
|
378
|
+
test_started_at: Annotated[str, pydantic.Field(alias="testStartedAt")]
|
|
376
379
|
|
|
377
|
-
test_completed_at: Annotated[
|
|
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:
|
|
171
|
-
test_completed_at:
|
|
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[
|
|
296
|
+
test_started_at: Annotated[str, pydantic.Field(alias="testStartedAt")]
|
|
294
297
|
|
|
295
|
-
test_completed_at: Annotated[
|
|
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:
|
|
171
|
-
test_completed_at:
|
|
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[
|
|
296
|
+
test_started_at: Annotated[str, pydantic.Field(alias="testStartedAt")]
|
|
294
297
|
|
|
295
|
-
test_completed_at: Annotated[
|
|
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",
|