dub 0.34.1__py3-none-any.whl → 0.35.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/basesdk.py +20 -6
- dub/models/components/__init__.py +108 -26
- dub/models/components/analyticsbrowsers.py +18 -1
- dub/models/components/analyticscities.py +18 -1
- dub/models/components/analyticscontinents.py +18 -1
- dub/models/components/analyticscount.py +18 -1
- dub/models/components/analyticscountries.py +20 -1
- dub/models/components/analyticsdevices.py +18 -1
- dub/models/components/analyticsos.py +18 -1
- dub/models/components/analyticsreferers.py +18 -1
- dub/models/components/analyticsrefererurls.py +18 -1
- dub/models/components/analyticsregions.py +18 -1
- dub/models/components/analyticstimeseries.py +18 -1
- dub/models/components/analyticstoplinks.py +16 -26
- dub/models/components/analyticstopurls.py +18 -1
- dub/models/components/analyticstriggers.py +18 -1
- dub/models/components/commissioncreatedevent.py +96 -64
- dub/models/components/domainschema.py +31 -50
- dub/models/components/folderschema.py +18 -19
- dub/models/components/leadcreatedevent.py +151 -134
- dub/models/components/linkclickedevent.py +57 -70
- dub/models/components/linkschema.py +63 -64
- dub/models/components/linkwebhookevent.py +43 -51
- dub/models/components/partneranalyticscount.py +18 -1
- dub/models/components/partneranalyticstimeseries.py +18 -1
- dub/models/components/partneranalyticstoplinks.py +16 -27
- dub/models/components/partnerapplicationsubmittedevent.py +42 -75
- dub/models/components/partnerenrolledevent.py +477 -83
- dub/models/components/salecreatedevent.py +152 -151
- dub/models/errors/badrequest.py +18 -1
- dub/models/errors/conflict.py +18 -1
- dub/models/errors/forbidden.py +18 -1
- dub/models/errors/internalservererror.py +18 -1
- dub/models/errors/inviteexpired.py +18 -1
- dub/models/errors/notfound.py +18 -1
- dub/models/errors/ratelimitexceeded.py +18 -1
- dub/models/errors/unauthorized.py +18 -1
- dub/models/errors/unprocessableentity.py +18 -1
- dub/models/operations/__init__.py +230 -19
- dub/models/operations/approvebountysubmission.py +71 -45
- dub/models/operations/banpartner.py +14 -19
- dub/models/operations/bulkcreatelinks.py +86 -87
- dub/models/operations/bulkupdatelinks.py +97 -82
- dub/models/operations/checkdomainstatus.py +1 -17
- dub/models/operations/createdomain.py +33 -34
- dub/models/operations/createfolder.py +18 -19
- dub/models/operations/createlink.py +86 -87
- dub/models/operations/createpartner.py +560 -168
- dub/models/operations/createpartnerlink.py +74 -85
- dub/models/operations/createreferralsembedtoken.py +99 -87
- dub/models/operations/createtag.py +18 -1
- dub/models/operations/deactivatepartner.py +65 -0
- dub/models/operations/getcustomer.py +106 -105
- dub/models/operations/getcustomers.py +123 -105
- dub/models/operations/getlinkinfo.py +18 -1
- dub/models/operations/getlinks.py +36 -1
- dub/models/operations/getlinkscount.py +32 -1
- dub/models/operations/getqrcode.py +29 -1
- dub/models/operations/gettags.py +20 -1
- dub/models/operations/listbountysubmissions.py +63 -26
- dub/models/operations/listcommissions.py +129 -64
- dub/models/operations/listdomains.py +18 -1
- dub/models/operations/listevents.py +414 -389
- dub/models/operations/listfolders.py +18 -1
- dub/models/operations/listpartners.py +510 -84
- dub/models/operations/registerdomain.py +1 -17
- dub/models/operations/rejectbountysubmission.py +71 -26
- dub/models/operations/retrieveanalytics.py +65 -66
- dub/models/operations/retrievelinks.py +30 -19
- dub/models/operations/retrievepartneranalytics.py +25 -28
- dub/models/operations/tracklead.py +38 -83
- dub/models/operations/tracksale.py +52 -95
- dub/models/operations/updatecommission.py +126 -64
- dub/models/operations/updatecustomer.py +122 -131
- dub/models/operations/updatedomain.py +50 -35
- dub/models/operations/updatefolder.py +34 -19
- dub/models/operations/updatelink.py +101 -86
- dub/models/operations/updatetag.py +34 -1
- dub/models/operations/upsertlink.py +86 -87
- dub/models/operations/upsertpartnerlink.py +72 -78
- dub/partners.py +288 -0
- dub/sdk.py +0 -3
- dub/utils/__init__.py +10 -1
- {dub-0.34.1.dist-info → dub-0.35.0.dist-info}/METADATA +4 -8
- dub-0.35.0.dist-info/RECORD +143 -0
- dub/models/components/workspaceschema.py +0 -328
- dub/models/operations/getworkspace.py +0 -21
- dub/models/operations/updateworkspace.py +0 -78
- dub/workspaces.py +0 -561
- dub-0.34.1.dist-info/RECORD +0 -146
- {dub-0.34.1.dist-info → dub-0.35.0.dist-info}/WHEEL +0 -0
- {dub-0.34.1.dist-info → dub-0.35.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -187,71 +187,70 @@ class CreatePartnerLinkLinkProps(BaseModel):
|
|
|
187
187
|
|
|
188
188
|
@model_serializer(mode="wrap")
|
|
189
189
|
def serialize_model(self, handler):
|
|
190
|
-
optional_fields =
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
190
|
+
optional_fields = set(
|
|
191
|
+
[
|
|
192
|
+
"keyLength",
|
|
193
|
+
"externalId",
|
|
194
|
+
"tenantId",
|
|
195
|
+
"prefix",
|
|
196
|
+
"archived",
|
|
197
|
+
"tagIds",
|
|
198
|
+
"tagNames",
|
|
199
|
+
"comments",
|
|
200
|
+
"expiresAt",
|
|
201
|
+
"expiredUrl",
|
|
202
|
+
"password",
|
|
203
|
+
"proxy",
|
|
204
|
+
"title",
|
|
205
|
+
"description",
|
|
206
|
+
"image",
|
|
207
|
+
"video",
|
|
208
|
+
"rewrite",
|
|
209
|
+
"ios",
|
|
210
|
+
"android",
|
|
211
|
+
"doIndex",
|
|
212
|
+
"testVariants",
|
|
213
|
+
"testStartedAt",
|
|
214
|
+
"testCompletedAt",
|
|
215
|
+
]
|
|
216
|
+
)
|
|
217
|
+
nullable_fields = set(
|
|
218
|
+
[
|
|
219
|
+
"externalId",
|
|
220
|
+
"tenantId",
|
|
221
|
+
"comments",
|
|
222
|
+
"expiresAt",
|
|
223
|
+
"expiredUrl",
|
|
224
|
+
"password",
|
|
225
|
+
"title",
|
|
226
|
+
"description",
|
|
227
|
+
"image",
|
|
228
|
+
"video",
|
|
229
|
+
"ios",
|
|
230
|
+
"android",
|
|
231
|
+
"testVariants",
|
|
232
|
+
"testStartedAt",
|
|
233
|
+
"testCompletedAt",
|
|
234
|
+
]
|
|
235
|
+
)
|
|
234
236
|
serialized = handler(self)
|
|
235
|
-
|
|
236
237
|
m = {}
|
|
237
238
|
|
|
238
239
|
for n, f in type(self).model_fields.items():
|
|
239
240
|
k = f.alias or n
|
|
240
241
|
val = serialized.get(k)
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
):
|
|
254
|
-
m[k] = val
|
|
242
|
+
is_nullable_and_explicitly_set = (
|
|
243
|
+
k in nullable_fields
|
|
244
|
+
and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
|
|
245
|
+
)
|
|
246
|
+
|
|
247
|
+
if val != UNSET_SENTINEL:
|
|
248
|
+
if (
|
|
249
|
+
val is not None
|
|
250
|
+
or k not in optional_fields
|
|
251
|
+
or is_nullable_and_explicitly_set
|
|
252
|
+
):
|
|
253
|
+
m[k] = val
|
|
255
254
|
|
|
256
255
|
return m
|
|
257
256
|
|
|
@@ -298,37 +297,27 @@ class CreatePartnerLinkRequestBody(BaseModel):
|
|
|
298
297
|
|
|
299
298
|
@model_serializer(mode="wrap")
|
|
300
299
|
def serialize_model(self, handler):
|
|
301
|
-
optional_fields =
|
|
302
|
-
"partnerId",
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
"key",
|
|
306
|
-
"comments",
|
|
307
|
-
"linkProps",
|
|
308
|
-
]
|
|
309
|
-
nullable_fields = ["partnerId", "tenantId", "url", "comments"]
|
|
310
|
-
null_default_fields = []
|
|
311
|
-
|
|
300
|
+
optional_fields = set(
|
|
301
|
+
["partnerId", "tenantId", "url", "key", "comments", "linkProps"]
|
|
302
|
+
)
|
|
303
|
+
nullable_fields = set(["partnerId", "tenantId", "url", "comments"])
|
|
312
304
|
serialized = handler(self)
|
|
313
|
-
|
|
314
305
|
m = {}
|
|
315
306
|
|
|
316
307
|
for n, f in type(self).model_fields.items():
|
|
317
308
|
k = f.alias or n
|
|
318
309
|
val = serialized.get(k)
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
):
|
|
332
|
-
m[k] = val
|
|
310
|
+
is_nullable_and_explicitly_set = (
|
|
311
|
+
k in nullable_fields
|
|
312
|
+
and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
|
|
313
|
+
)
|
|
314
|
+
|
|
315
|
+
if val != UNSET_SENTINEL:
|
|
316
|
+
if (
|
|
317
|
+
val is not None
|
|
318
|
+
or k not in optional_fields
|
|
319
|
+
or is_nullable_and_explicitly_set
|
|
320
|
+
):
|
|
321
|
+
m[k] = val
|
|
333
322
|
|
|
334
323
|
return m
|
|
@@ -189,71 +189,70 @@ class CreateReferralsEmbedTokenLinkProps(BaseModel):
|
|
|
189
189
|
|
|
190
190
|
@model_serializer(mode="wrap")
|
|
191
191
|
def serialize_model(self, handler):
|
|
192
|
-
optional_fields =
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
192
|
+
optional_fields = set(
|
|
193
|
+
[
|
|
194
|
+
"keyLength",
|
|
195
|
+
"externalId",
|
|
196
|
+
"tenantId",
|
|
197
|
+
"prefix",
|
|
198
|
+
"archived",
|
|
199
|
+
"tagIds",
|
|
200
|
+
"tagNames",
|
|
201
|
+
"comments",
|
|
202
|
+
"expiresAt",
|
|
203
|
+
"expiredUrl",
|
|
204
|
+
"password",
|
|
205
|
+
"proxy",
|
|
206
|
+
"title",
|
|
207
|
+
"description",
|
|
208
|
+
"image",
|
|
209
|
+
"video",
|
|
210
|
+
"rewrite",
|
|
211
|
+
"ios",
|
|
212
|
+
"android",
|
|
213
|
+
"doIndex",
|
|
214
|
+
"testVariants",
|
|
215
|
+
"testStartedAt",
|
|
216
|
+
"testCompletedAt",
|
|
217
|
+
]
|
|
218
|
+
)
|
|
219
|
+
nullable_fields = set(
|
|
220
|
+
[
|
|
221
|
+
"externalId",
|
|
222
|
+
"tenantId",
|
|
223
|
+
"comments",
|
|
224
|
+
"expiresAt",
|
|
225
|
+
"expiredUrl",
|
|
226
|
+
"password",
|
|
227
|
+
"title",
|
|
228
|
+
"description",
|
|
229
|
+
"image",
|
|
230
|
+
"video",
|
|
231
|
+
"ios",
|
|
232
|
+
"android",
|
|
233
|
+
"testVariants",
|
|
234
|
+
"testStartedAt",
|
|
235
|
+
"testCompletedAt",
|
|
236
|
+
]
|
|
237
|
+
)
|
|
236
238
|
serialized = handler(self)
|
|
237
|
-
|
|
238
239
|
m = {}
|
|
239
240
|
|
|
240
241
|
for n, f in type(self).model_fields.items():
|
|
241
242
|
k = f.alias or n
|
|
242
243
|
val = serialized.get(k)
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
):
|
|
256
|
-
m[k] = val
|
|
244
|
+
is_nullable_and_explicitly_set = (
|
|
245
|
+
k in nullable_fields
|
|
246
|
+
and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
|
|
247
|
+
)
|
|
248
|
+
|
|
249
|
+
if val != UNSET_SENTINEL:
|
|
250
|
+
if (
|
|
251
|
+
val is not None
|
|
252
|
+
or k not in optional_fields
|
|
253
|
+
or is_nullable_and_explicitly_set
|
|
254
|
+
):
|
|
255
|
+
m[k] = val
|
|
257
256
|
|
|
258
257
|
return m
|
|
259
258
|
|
|
@@ -311,40 +310,37 @@ class Partner(BaseModel):
|
|
|
311
310
|
|
|
312
311
|
@model_serializer(mode="wrap")
|
|
313
312
|
def serialize_model(self, handler):
|
|
314
|
-
optional_fields =
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
313
|
+
optional_fields = set(
|
|
314
|
+
[
|
|
315
|
+
"name",
|
|
316
|
+
"username",
|
|
317
|
+
"image",
|
|
318
|
+
"tenantId",
|
|
319
|
+
"groupId",
|
|
320
|
+
"country",
|
|
321
|
+
"description",
|
|
322
|
+
"linkProps",
|
|
323
|
+
]
|
|
324
|
+
)
|
|
325
|
+
nullable_fields = set(["name", "username", "image", "country", "description"])
|
|
327
326
|
serialized = handler(self)
|
|
328
|
-
|
|
329
327
|
m = {}
|
|
330
328
|
|
|
331
329
|
for n, f in type(self).model_fields.items():
|
|
332
330
|
k = f.alias or n
|
|
333
331
|
val = serialized.get(k)
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
):
|
|
347
|
-
m[k] = val
|
|
332
|
+
is_nullable_and_explicitly_set = (
|
|
333
|
+
k in nullable_fields
|
|
334
|
+
and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
|
|
335
|
+
)
|
|
336
|
+
|
|
337
|
+
if val != UNSET_SENTINEL:
|
|
338
|
+
if (
|
|
339
|
+
val is not None
|
|
340
|
+
or k not in optional_fields
|
|
341
|
+
or is_nullable_and_explicitly_set
|
|
342
|
+
):
|
|
343
|
+
m[k] = val
|
|
348
344
|
|
|
349
345
|
return m
|
|
350
346
|
|
|
@@ -362,6 +358,22 @@ class CreateReferralsEmbedTokenRequestBody(BaseModel):
|
|
|
362
358
|
|
|
363
359
|
partner: Optional[Partner] = None
|
|
364
360
|
|
|
361
|
+
@model_serializer(mode="wrap")
|
|
362
|
+
def serialize_model(self, handler):
|
|
363
|
+
optional_fields = set(["partnerId", "tenantId", "partner"])
|
|
364
|
+
serialized = handler(self)
|
|
365
|
+
m = {}
|
|
366
|
+
|
|
367
|
+
for n, f in type(self).model_fields.items():
|
|
368
|
+
k = f.alias or n
|
|
369
|
+
val = serialized.get(k)
|
|
370
|
+
|
|
371
|
+
if val != UNSET_SENTINEL:
|
|
372
|
+
if val is not None or k not in optional_fields:
|
|
373
|
+
m[k] = val
|
|
374
|
+
|
|
375
|
+
return m
|
|
376
|
+
|
|
365
377
|
|
|
366
378
|
class CreateReferralsEmbedTokenResponseBodyTypedDict(TypedDict):
|
|
367
379
|
r"""The created public embed token."""
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from dub.types import BaseModel
|
|
4
|
+
from dub.types import BaseModel, UNSET_SENTINEL
|
|
5
5
|
from enum import Enum
|
|
6
6
|
import pydantic
|
|
7
|
+
from pydantic import model_serializer
|
|
7
8
|
from typing import Optional
|
|
8
9
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
10
|
|
|
@@ -43,3 +44,19 @@ class CreateTagRequestBody(BaseModel):
|
|
|
43
44
|
),
|
|
44
45
|
] = None
|
|
45
46
|
r"""The name of the tag to create."""
|
|
47
|
+
|
|
48
|
+
@model_serializer(mode="wrap")
|
|
49
|
+
def serialize_model(self, handler):
|
|
50
|
+
optional_fields = set(["name", "color", "tag"])
|
|
51
|
+
serialized = handler(self)
|
|
52
|
+
m = {}
|
|
53
|
+
|
|
54
|
+
for n, f in type(self).model_fields.items():
|
|
55
|
+
k = f.alias or n
|
|
56
|
+
val = serialized.get(k)
|
|
57
|
+
|
|
58
|
+
if val != UNSET_SENTINEL:
|
|
59
|
+
if val is not None or k not in optional_fields:
|
|
60
|
+
m[k] = val
|
|
61
|
+
|
|
62
|
+
return m
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from dub.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
|
5
|
+
import pydantic
|
|
6
|
+
from pydantic import model_serializer
|
|
7
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class DeactivatePartnerRequestBodyTypedDict(TypedDict):
|
|
11
|
+
partner_id: NotRequired[Nullable[str]]
|
|
12
|
+
r"""The ID of the partner to create a link for. Will take precedence over `tenantId` if provided."""
|
|
13
|
+
tenant_id: NotRequired[Nullable[str]]
|
|
14
|
+
r"""The ID of the partner in your system. If both `partnerId` and `tenantId` are not provided, an error will be thrown."""
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class DeactivatePartnerRequestBody(BaseModel):
|
|
18
|
+
partner_id: Annotated[OptionalNullable[str], pydantic.Field(alias="partnerId")] = (
|
|
19
|
+
UNSET
|
|
20
|
+
)
|
|
21
|
+
r"""The ID of the partner to create a link for. Will take precedence over `tenantId` if provided."""
|
|
22
|
+
|
|
23
|
+
tenant_id: Annotated[OptionalNullable[str], pydantic.Field(alias="tenantId")] = (
|
|
24
|
+
UNSET
|
|
25
|
+
)
|
|
26
|
+
r"""The ID of the partner in your system. If both `partnerId` and `tenantId` are not provided, an error will be thrown."""
|
|
27
|
+
|
|
28
|
+
@model_serializer(mode="wrap")
|
|
29
|
+
def serialize_model(self, handler):
|
|
30
|
+
optional_fields = set(["partnerId", "tenantId"])
|
|
31
|
+
nullable_fields = set(["partnerId", "tenantId"])
|
|
32
|
+
serialized = handler(self)
|
|
33
|
+
m = {}
|
|
34
|
+
|
|
35
|
+
for n, f in type(self).model_fields.items():
|
|
36
|
+
k = f.alias or n
|
|
37
|
+
val = serialized.get(k)
|
|
38
|
+
is_nullable_and_explicitly_set = (
|
|
39
|
+
k in nullable_fields
|
|
40
|
+
and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
|
|
41
|
+
)
|
|
42
|
+
|
|
43
|
+
if val != UNSET_SENTINEL:
|
|
44
|
+
if (
|
|
45
|
+
val is not None
|
|
46
|
+
or k not in optional_fields
|
|
47
|
+
or is_nullable_and_explicitly_set
|
|
48
|
+
):
|
|
49
|
+
m[k] = val
|
|
50
|
+
|
|
51
|
+
return m
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
class DeactivatePartnerResponseBodyTypedDict(TypedDict):
|
|
55
|
+
r"""The deactivated partner"""
|
|
56
|
+
|
|
57
|
+
partner_id: str
|
|
58
|
+
r"""The ID of the deactivated partner."""
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
class DeactivatePartnerResponseBody(BaseModel):
|
|
62
|
+
r"""The deactivated partner"""
|
|
63
|
+
|
|
64
|
+
partner_id: Annotated[str, pydantic.Field(alias="partnerId")]
|
|
65
|
+
r"""The ID of the deactivated partner."""
|