dub 0.23.1__py3-none-any.whl → 0.24.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/httpclient.py +7 -37
- dub/models/components/partnerenrolledevent.py +78 -0
- dub/models/operations/createcustomer.py +8 -0
- dub/models/operations/createpartner.py +78 -0
- dub/models/operations/getcustomer.py +8 -0
- dub/models/operations/getcustomers.py +8 -0
- dub/models/operations/updatecustomer.py +8 -0
- {dub-0.23.1.dist-info → dub-0.24.0.dist-info}/METADATA +2 -3
- {dub-0.23.1.dist-info → dub-0.24.0.dist-info}/RECORD +12 -12
- {dub-0.23.1.dist-info → dub-0.24.0.dist-info}/LICENSE +0 -0
- {dub-0.23.1.dist-info → dub-0.24.0.dist-info}/WHEEL +0 -0
dub/_version.py
CHANGED
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
import importlib.metadata
|
|
4
4
|
|
|
5
5
|
__title__: str = "dub"
|
|
6
|
-
__version__: str = "0.
|
|
6
|
+
__version__: str = "0.24.0"
|
|
7
7
|
__openapi_doc_version__: str = "0.0.1"
|
|
8
|
-
__gen_version__: str = "2.
|
|
9
|
-
__user_agent__: str = "speakeasy-sdk/python 0.
|
|
8
|
+
__gen_version__: str = "2.604.4"
|
|
9
|
+
__user_agent__: str = "speakeasy-sdk/python 0.24.0 2.604.4 0.0.1 dub"
|
|
10
10
|
|
|
11
11
|
try:
|
|
12
12
|
if __package__ is not None:
|
dub/httpclient.py
CHANGED
|
@@ -115,42 +115,12 @@ def close_clients(
|
|
|
115
115
|
pass
|
|
116
116
|
|
|
117
117
|
if async_client is not None and not async_client_supplied:
|
|
118
|
-
# First, try the simplest approach - use asyncio.run()
|
|
119
|
-
# This works when we're not in an async context
|
|
120
118
|
try:
|
|
121
|
-
asyncio.
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
loop = asyncio.get_running_loop()
|
|
129
|
-
# Create a task but don't wait for it
|
|
130
|
-
loop.create_task(async_client.aclose())
|
|
131
|
-
except Exception:
|
|
132
|
-
# If we can't get the loop or create a task, just ignore
|
|
133
|
-
# The GC will eventually clean up the resources
|
|
134
|
-
pass
|
|
135
|
-
# If we get "RuntimeError: There is no current event loop in thread",
|
|
136
|
-
# we're not in an async context, but asyncio.run() failed for some reason
|
|
137
|
-
# In this case, we can try to create a new event loop explicitly
|
|
138
|
-
elif "no current event loop" in str(e):
|
|
139
|
-
try:
|
|
140
|
-
# Create a new event loop and run the coroutine
|
|
141
|
-
loop = asyncio.new_event_loop()
|
|
142
|
-
asyncio.set_event_loop(loop)
|
|
143
|
-
try:
|
|
144
|
-
loop.run_until_complete(async_client.aclose())
|
|
145
|
-
finally:
|
|
146
|
-
loop.close()
|
|
147
|
-
asyncio.set_event_loop(None)
|
|
148
|
-
except Exception:
|
|
149
|
-
# If this also fails, just ignore
|
|
150
|
-
pass
|
|
151
|
-
# For any other RuntimeError, just ignore
|
|
152
|
-
else:
|
|
119
|
+
loop = asyncio.get_running_loop()
|
|
120
|
+
asyncio.run_coroutine_threadsafe(async_client.aclose(), loop)
|
|
121
|
+
except RuntimeError:
|
|
122
|
+
try:
|
|
123
|
+
asyncio.run(async_client.aclose())
|
|
124
|
+
except RuntimeError:
|
|
125
|
+
# best effort
|
|
153
126
|
pass
|
|
154
|
-
except Exception:
|
|
155
|
-
# For any other exception, just ignore
|
|
156
|
-
pass
|
|
@@ -14,6 +14,8 @@ class PartnerEnrolledEventEvent(str, Enum):
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
class Status(str, Enum):
|
|
17
|
+
r"""The status of the partner's enrollment in the program."""
|
|
18
|
+
|
|
17
19
|
PENDING = "pending"
|
|
18
20
|
APPROVED = "approved"
|
|
19
21
|
REJECTED = "rejected"
|
|
@@ -74,71 +76,141 @@ class PartnerEnrolledEventLink(BaseModel):
|
|
|
74
76
|
|
|
75
77
|
class PartnerEnrolledEventDataTypedDict(TypedDict):
|
|
76
78
|
id: str
|
|
79
|
+
r"""The partner's unique ID on Dub."""
|
|
77
80
|
name: str
|
|
81
|
+
r"""The partner's full legal name."""
|
|
78
82
|
email: Nullable[str]
|
|
83
|
+
r"""The partner's email address. Should be a unique value across Dub."""
|
|
79
84
|
image: Nullable[str]
|
|
85
|
+
r"""The partner's avatar image."""
|
|
80
86
|
country: Nullable[str]
|
|
87
|
+
r"""The partner's country (required for tax purposes)."""
|
|
88
|
+
website: Nullable[str]
|
|
89
|
+
r"""The partner's website URL (including the https protocol)."""
|
|
90
|
+
youtube: Nullable[str]
|
|
91
|
+
r"""The partner's YouTube channel username (e.g. `johndoe`)."""
|
|
92
|
+
twitter: Nullable[str]
|
|
93
|
+
r"""The partner's Twitter username (e.g. `johndoe`)."""
|
|
94
|
+
linkedin: Nullable[str]
|
|
95
|
+
r"""The partner's LinkedIn username (e.g. `johndoe`)."""
|
|
96
|
+
instagram: Nullable[str]
|
|
97
|
+
r"""The partner's Instagram username (e.g. `johndoe`)."""
|
|
98
|
+
tiktok: Nullable[str]
|
|
99
|
+
r"""The partner's TikTok username (e.g. `johndoe`)."""
|
|
81
100
|
paypal_email: Nullable[str]
|
|
101
|
+
r"""The partner's PayPal email (for receiving payouts via PayPal)."""
|
|
82
102
|
stripe_connect_id: Nullable[str]
|
|
103
|
+
r"""The partner's Stripe Connect ID (for receiving payouts via Stripe)."""
|
|
83
104
|
payouts_enabled_at: Nullable[str]
|
|
105
|
+
r"""The date when the partner enabled payouts."""
|
|
84
106
|
created_at: str
|
|
107
|
+
r"""The date when the partner was created on Dub."""
|
|
85
108
|
status: Status
|
|
109
|
+
r"""The status of the partner's enrollment in the program."""
|
|
86
110
|
program_id: str
|
|
111
|
+
r"""The program's unique ID on Dub."""
|
|
87
112
|
tenant_id: Nullable[str]
|
|
113
|
+
r"""The partner's unique ID within your database. Can be useful for associating the partner with a user in your database and retrieving/update their data in the future."""
|
|
88
114
|
links: Nullable[List[PartnerEnrolledEventLinkTypedDict]]
|
|
115
|
+
r"""The partner's referral links in this program."""
|
|
89
116
|
description: NotRequired[Nullable[str]]
|
|
117
|
+
r"""A brief description of the partner and their background."""
|
|
90
118
|
clicks: NotRequired[float]
|
|
119
|
+
r"""The total number of clicks on the partner's links."""
|
|
91
120
|
leads: NotRequired[float]
|
|
121
|
+
r"""The total number of leads generated by the partner's links."""
|
|
92
122
|
sales: NotRequired[float]
|
|
123
|
+
r"""The total number of sales generated by the partner's links."""
|
|
93
124
|
sale_amount: NotRequired[float]
|
|
125
|
+
r"""The total amount of sales (in cents) generated by the partner's links."""
|
|
94
126
|
earnings: NotRequired[float]
|
|
127
|
+
r"""The total earnings/commissions accrued by the partner's links."""
|
|
95
128
|
application_id: NotRequired[Nullable[str]]
|
|
129
|
+
r"""If the partner submitted an application to join the program, this is the ID of the application."""
|
|
96
130
|
|
|
97
131
|
|
|
98
132
|
class PartnerEnrolledEventData(BaseModel):
|
|
99
133
|
id: str
|
|
134
|
+
r"""The partner's unique ID on Dub."""
|
|
100
135
|
|
|
101
136
|
name: str
|
|
137
|
+
r"""The partner's full legal name."""
|
|
102
138
|
|
|
103
139
|
email: Nullable[str]
|
|
140
|
+
r"""The partner's email address. Should be a unique value across Dub."""
|
|
104
141
|
|
|
105
142
|
image: Nullable[str]
|
|
143
|
+
r"""The partner's avatar image."""
|
|
106
144
|
|
|
107
145
|
country: Nullable[str]
|
|
146
|
+
r"""The partner's country (required for tax purposes)."""
|
|
147
|
+
|
|
148
|
+
website: Nullable[str]
|
|
149
|
+
r"""The partner's website URL (including the https protocol)."""
|
|
150
|
+
|
|
151
|
+
youtube: Nullable[str]
|
|
152
|
+
r"""The partner's YouTube channel username (e.g. `johndoe`)."""
|
|
153
|
+
|
|
154
|
+
twitter: Nullable[str]
|
|
155
|
+
r"""The partner's Twitter username (e.g. `johndoe`)."""
|
|
156
|
+
|
|
157
|
+
linkedin: Nullable[str]
|
|
158
|
+
r"""The partner's LinkedIn username (e.g. `johndoe`)."""
|
|
159
|
+
|
|
160
|
+
instagram: Nullable[str]
|
|
161
|
+
r"""The partner's Instagram username (e.g. `johndoe`)."""
|
|
162
|
+
|
|
163
|
+
tiktok: Nullable[str]
|
|
164
|
+
r"""The partner's TikTok username (e.g. `johndoe`)."""
|
|
108
165
|
|
|
109
166
|
paypal_email: Annotated[Nullable[str], pydantic.Field(alias="paypalEmail")]
|
|
167
|
+
r"""The partner's PayPal email (for receiving payouts via PayPal)."""
|
|
110
168
|
|
|
111
169
|
stripe_connect_id: Annotated[Nullable[str], pydantic.Field(alias="stripeConnectId")]
|
|
170
|
+
r"""The partner's Stripe Connect ID (for receiving payouts via Stripe)."""
|
|
112
171
|
|
|
113
172
|
payouts_enabled_at: Annotated[
|
|
114
173
|
Nullable[str], pydantic.Field(alias="payoutsEnabledAt")
|
|
115
174
|
]
|
|
175
|
+
r"""The date when the partner enabled payouts."""
|
|
116
176
|
|
|
117
177
|
created_at: Annotated[str, pydantic.Field(alias="createdAt")]
|
|
178
|
+
r"""The date when the partner was created on Dub."""
|
|
118
179
|
|
|
119
180
|
status: Status
|
|
181
|
+
r"""The status of the partner's enrollment in the program."""
|
|
120
182
|
|
|
121
183
|
program_id: Annotated[str, pydantic.Field(alias="programId")]
|
|
184
|
+
r"""The program's unique ID on Dub."""
|
|
122
185
|
|
|
123
186
|
tenant_id: Annotated[Nullable[str], pydantic.Field(alias="tenantId")]
|
|
187
|
+
r"""The partner's unique ID within your database. Can be useful for associating the partner with a user in your database and retrieving/update their data in the future."""
|
|
124
188
|
|
|
125
189
|
links: Nullable[List[PartnerEnrolledEventLink]]
|
|
190
|
+
r"""The partner's referral links in this program."""
|
|
126
191
|
|
|
127
192
|
description: OptionalNullable[str] = UNSET
|
|
193
|
+
r"""A brief description of the partner and their background."""
|
|
128
194
|
|
|
129
195
|
clicks: Optional[float] = 0
|
|
196
|
+
r"""The total number of clicks on the partner's links."""
|
|
130
197
|
|
|
131
198
|
leads: Optional[float] = 0
|
|
199
|
+
r"""The total number of leads generated by the partner's links."""
|
|
132
200
|
|
|
133
201
|
sales: Optional[float] = 0
|
|
202
|
+
r"""The total number of sales generated by the partner's links."""
|
|
134
203
|
|
|
135
204
|
sale_amount: Annotated[Optional[float], pydantic.Field(alias="saleAmount")] = 0
|
|
205
|
+
r"""The total amount of sales (in cents) generated by the partner's links."""
|
|
136
206
|
|
|
137
207
|
earnings: Optional[float] = 0
|
|
208
|
+
r"""The total earnings/commissions accrued by the partner's links."""
|
|
138
209
|
|
|
139
210
|
application_id: Annotated[
|
|
140
211
|
OptionalNullable[str], pydantic.Field(alias="applicationId")
|
|
141
212
|
] = UNSET
|
|
213
|
+
r"""If the partner submitted an application to join the program, this is the ID of the application."""
|
|
142
214
|
|
|
143
215
|
@model_serializer(mode="wrap")
|
|
144
216
|
def serialize_model(self, handler):
|
|
@@ -156,6 +228,12 @@ class PartnerEnrolledEventData(BaseModel):
|
|
|
156
228
|
"image",
|
|
157
229
|
"description",
|
|
158
230
|
"country",
|
|
231
|
+
"website",
|
|
232
|
+
"youtube",
|
|
233
|
+
"twitter",
|
|
234
|
+
"linkedin",
|
|
235
|
+
"instagram",
|
|
236
|
+
"tiktok",
|
|
159
237
|
"paypalEmail",
|
|
160
238
|
"stripeConnectId",
|
|
161
239
|
"payoutsEnabledAt",
|
|
@@ -130,19 +130,27 @@ class CreateCustomerLink(BaseModel):
|
|
|
130
130
|
|
|
131
131
|
class CreateCustomerPartnerTypedDict(TypedDict):
|
|
132
132
|
id: str
|
|
133
|
+
r"""The partner's unique ID on Dub."""
|
|
133
134
|
name: str
|
|
135
|
+
r"""The partner's full legal name."""
|
|
134
136
|
email: Nullable[str]
|
|
137
|
+
r"""The partner's email address. Should be a unique value across Dub."""
|
|
135
138
|
image: Nullable[str]
|
|
139
|
+
r"""The partner's avatar image."""
|
|
136
140
|
|
|
137
141
|
|
|
138
142
|
class CreateCustomerPartner(BaseModel):
|
|
139
143
|
id: str
|
|
144
|
+
r"""The partner's unique ID on Dub."""
|
|
140
145
|
|
|
141
146
|
name: str
|
|
147
|
+
r"""The partner's full legal name."""
|
|
142
148
|
|
|
143
149
|
email: Nullable[str]
|
|
150
|
+
r"""The partner's email address. Should be a unique value across Dub."""
|
|
144
151
|
|
|
145
152
|
image: Nullable[str]
|
|
153
|
+
r"""The partner's avatar image."""
|
|
146
154
|
|
|
147
155
|
@model_serializer(mode="wrap")
|
|
148
156
|
def serialize_model(self, handler):
|
|
@@ -641,6 +641,8 @@ class CreatePartnerRequestBody(BaseModel):
|
|
|
641
641
|
|
|
642
642
|
|
|
643
643
|
class Status(str, Enum):
|
|
644
|
+
r"""The status of the partner's enrollment in the program."""
|
|
645
|
+
|
|
644
646
|
PENDING = "pending"
|
|
645
647
|
APPROVED = "approved"
|
|
646
648
|
REJECTED = "rejected"
|
|
@@ -703,73 +705,143 @@ class CreatePartnerResponseBodyTypedDict(TypedDict):
|
|
|
703
705
|
r"""The created partner"""
|
|
704
706
|
|
|
705
707
|
id: str
|
|
708
|
+
r"""The partner's unique ID on Dub."""
|
|
706
709
|
name: str
|
|
710
|
+
r"""The partner's full legal name."""
|
|
707
711
|
email: Nullable[str]
|
|
712
|
+
r"""The partner's email address. Should be a unique value across Dub."""
|
|
708
713
|
image: Nullable[str]
|
|
714
|
+
r"""The partner's avatar image."""
|
|
709
715
|
country: Nullable[str]
|
|
716
|
+
r"""The partner's country (required for tax purposes)."""
|
|
717
|
+
website: Nullable[str]
|
|
718
|
+
r"""The partner's website URL (including the https protocol)."""
|
|
719
|
+
youtube: Nullable[str]
|
|
720
|
+
r"""The partner's YouTube channel username (e.g. `johndoe`)."""
|
|
721
|
+
twitter: Nullable[str]
|
|
722
|
+
r"""The partner's Twitter username (e.g. `johndoe`)."""
|
|
723
|
+
linkedin: Nullable[str]
|
|
724
|
+
r"""The partner's LinkedIn username (e.g. `johndoe`)."""
|
|
725
|
+
instagram: Nullable[str]
|
|
726
|
+
r"""The partner's Instagram username (e.g. `johndoe`)."""
|
|
727
|
+
tiktok: Nullable[str]
|
|
728
|
+
r"""The partner's TikTok username (e.g. `johndoe`)."""
|
|
710
729
|
paypal_email: Nullable[str]
|
|
730
|
+
r"""The partner's PayPal email (for receiving payouts via PayPal)."""
|
|
711
731
|
stripe_connect_id: Nullable[str]
|
|
732
|
+
r"""The partner's Stripe Connect ID (for receiving payouts via Stripe)."""
|
|
712
733
|
payouts_enabled_at: Nullable[str]
|
|
734
|
+
r"""The date when the partner enabled payouts."""
|
|
713
735
|
created_at: str
|
|
736
|
+
r"""The date when the partner was created on Dub."""
|
|
714
737
|
status: Status
|
|
738
|
+
r"""The status of the partner's enrollment in the program."""
|
|
715
739
|
program_id: str
|
|
740
|
+
r"""The program's unique ID on Dub."""
|
|
716
741
|
tenant_id: Nullable[str]
|
|
742
|
+
r"""The partner's unique ID within your database. Can be useful for associating the partner with a user in your database and retrieving/update their data in the future."""
|
|
717
743
|
links: Nullable[List[CreatePartnerLinkTypedDict]]
|
|
744
|
+
r"""The partner's referral links in this program."""
|
|
718
745
|
description: NotRequired[Nullable[str]]
|
|
746
|
+
r"""A brief description of the partner and their background."""
|
|
719
747
|
clicks: NotRequired[float]
|
|
748
|
+
r"""The total number of clicks on the partner's links."""
|
|
720
749
|
leads: NotRequired[float]
|
|
750
|
+
r"""The total number of leads generated by the partner's links."""
|
|
721
751
|
sales: NotRequired[float]
|
|
752
|
+
r"""The total number of sales generated by the partner's links."""
|
|
722
753
|
sale_amount: NotRequired[float]
|
|
754
|
+
r"""The total amount of sales (in cents) generated by the partner's links."""
|
|
723
755
|
earnings: NotRequired[float]
|
|
756
|
+
r"""The total earnings/commissions accrued by the partner's links."""
|
|
724
757
|
application_id: NotRequired[Nullable[str]]
|
|
758
|
+
r"""If the partner submitted an application to join the program, this is the ID of the application."""
|
|
725
759
|
|
|
726
760
|
|
|
727
761
|
class CreatePartnerResponseBody(BaseModel):
|
|
728
762
|
r"""The created partner"""
|
|
729
763
|
|
|
730
764
|
id: str
|
|
765
|
+
r"""The partner's unique ID on Dub."""
|
|
731
766
|
|
|
732
767
|
name: str
|
|
768
|
+
r"""The partner's full legal name."""
|
|
733
769
|
|
|
734
770
|
email: Nullable[str]
|
|
771
|
+
r"""The partner's email address. Should be a unique value across Dub."""
|
|
735
772
|
|
|
736
773
|
image: Nullable[str]
|
|
774
|
+
r"""The partner's avatar image."""
|
|
737
775
|
|
|
738
776
|
country: Nullable[str]
|
|
777
|
+
r"""The partner's country (required for tax purposes)."""
|
|
778
|
+
|
|
779
|
+
website: Nullable[str]
|
|
780
|
+
r"""The partner's website URL (including the https protocol)."""
|
|
781
|
+
|
|
782
|
+
youtube: Nullable[str]
|
|
783
|
+
r"""The partner's YouTube channel username (e.g. `johndoe`)."""
|
|
784
|
+
|
|
785
|
+
twitter: Nullable[str]
|
|
786
|
+
r"""The partner's Twitter username (e.g. `johndoe`)."""
|
|
787
|
+
|
|
788
|
+
linkedin: Nullable[str]
|
|
789
|
+
r"""The partner's LinkedIn username (e.g. `johndoe`)."""
|
|
790
|
+
|
|
791
|
+
instagram: Nullable[str]
|
|
792
|
+
r"""The partner's Instagram username (e.g. `johndoe`)."""
|
|
793
|
+
|
|
794
|
+
tiktok: Nullable[str]
|
|
795
|
+
r"""The partner's TikTok username (e.g. `johndoe`)."""
|
|
739
796
|
|
|
740
797
|
paypal_email: Annotated[Nullable[str], pydantic.Field(alias="paypalEmail")]
|
|
798
|
+
r"""The partner's PayPal email (for receiving payouts via PayPal)."""
|
|
741
799
|
|
|
742
800
|
stripe_connect_id: Annotated[Nullable[str], pydantic.Field(alias="stripeConnectId")]
|
|
801
|
+
r"""The partner's Stripe Connect ID (for receiving payouts via Stripe)."""
|
|
743
802
|
|
|
744
803
|
payouts_enabled_at: Annotated[
|
|
745
804
|
Nullable[str], pydantic.Field(alias="payoutsEnabledAt")
|
|
746
805
|
]
|
|
806
|
+
r"""The date when the partner enabled payouts."""
|
|
747
807
|
|
|
748
808
|
created_at: Annotated[str, pydantic.Field(alias="createdAt")]
|
|
809
|
+
r"""The date when the partner was created on Dub."""
|
|
749
810
|
|
|
750
811
|
status: Status
|
|
812
|
+
r"""The status of the partner's enrollment in the program."""
|
|
751
813
|
|
|
752
814
|
program_id: Annotated[str, pydantic.Field(alias="programId")]
|
|
815
|
+
r"""The program's unique ID on Dub."""
|
|
753
816
|
|
|
754
817
|
tenant_id: Annotated[Nullable[str], pydantic.Field(alias="tenantId")]
|
|
818
|
+
r"""The partner's unique ID within your database. Can be useful for associating the partner with a user in your database and retrieving/update their data in the future."""
|
|
755
819
|
|
|
756
820
|
links: Nullable[List[CreatePartnerLink]]
|
|
821
|
+
r"""The partner's referral links in this program."""
|
|
757
822
|
|
|
758
823
|
description: OptionalNullable[str] = UNSET
|
|
824
|
+
r"""A brief description of the partner and their background."""
|
|
759
825
|
|
|
760
826
|
clicks: Optional[float] = 0
|
|
827
|
+
r"""The total number of clicks on the partner's links."""
|
|
761
828
|
|
|
762
829
|
leads: Optional[float] = 0
|
|
830
|
+
r"""The total number of leads generated by the partner's links."""
|
|
763
831
|
|
|
764
832
|
sales: Optional[float] = 0
|
|
833
|
+
r"""The total number of sales generated by the partner's links."""
|
|
765
834
|
|
|
766
835
|
sale_amount: Annotated[Optional[float], pydantic.Field(alias="saleAmount")] = 0
|
|
836
|
+
r"""The total amount of sales (in cents) generated by the partner's links."""
|
|
767
837
|
|
|
768
838
|
earnings: Optional[float] = 0
|
|
839
|
+
r"""The total earnings/commissions accrued by the partner's links."""
|
|
769
840
|
|
|
770
841
|
application_id: Annotated[
|
|
771
842
|
OptionalNullable[str], pydantic.Field(alias="applicationId")
|
|
772
843
|
] = UNSET
|
|
844
|
+
r"""If the partner submitted an application to join the program, this is the ID of the application."""
|
|
773
845
|
|
|
774
846
|
@model_serializer(mode="wrap")
|
|
775
847
|
def serialize_model(self, handler):
|
|
@@ -787,6 +859,12 @@ class CreatePartnerResponseBody(BaseModel):
|
|
|
787
859
|
"image",
|
|
788
860
|
"description",
|
|
789
861
|
"country",
|
|
862
|
+
"website",
|
|
863
|
+
"youtube",
|
|
864
|
+
"twitter",
|
|
865
|
+
"linkedin",
|
|
866
|
+
"instagram",
|
|
867
|
+
"tiktok",
|
|
790
868
|
"paypalEmail",
|
|
791
869
|
"stripeConnectId",
|
|
792
870
|
"payoutsEnabledAt",
|
|
@@ -98,19 +98,27 @@ class GetCustomerLink(BaseModel):
|
|
|
98
98
|
|
|
99
99
|
class GetCustomerPartnerTypedDict(TypedDict):
|
|
100
100
|
id: str
|
|
101
|
+
r"""The partner's unique ID on Dub."""
|
|
101
102
|
name: str
|
|
103
|
+
r"""The partner's full legal name."""
|
|
102
104
|
email: Nullable[str]
|
|
105
|
+
r"""The partner's email address. Should be a unique value across Dub."""
|
|
103
106
|
image: Nullable[str]
|
|
107
|
+
r"""The partner's avatar image."""
|
|
104
108
|
|
|
105
109
|
|
|
106
110
|
class GetCustomerPartner(BaseModel):
|
|
107
111
|
id: str
|
|
112
|
+
r"""The partner's unique ID on Dub."""
|
|
108
113
|
|
|
109
114
|
name: str
|
|
115
|
+
r"""The partner's full legal name."""
|
|
110
116
|
|
|
111
117
|
email: Nullable[str]
|
|
118
|
+
r"""The partner's email address. Should be a unique value across Dub."""
|
|
112
119
|
|
|
113
120
|
image: Nullable[str]
|
|
121
|
+
r"""The partner's avatar image."""
|
|
114
122
|
|
|
115
123
|
@model_serializer(mode="wrap")
|
|
116
124
|
def serialize_model(self, handler):
|
|
@@ -182,19 +182,27 @@ class GetCustomersLink(BaseModel):
|
|
|
182
182
|
|
|
183
183
|
class GetCustomersPartnerTypedDict(TypedDict):
|
|
184
184
|
id: str
|
|
185
|
+
r"""The partner's unique ID on Dub."""
|
|
185
186
|
name: str
|
|
187
|
+
r"""The partner's full legal name."""
|
|
186
188
|
email: Nullable[str]
|
|
189
|
+
r"""The partner's email address. Should be a unique value across Dub."""
|
|
187
190
|
image: Nullable[str]
|
|
191
|
+
r"""The partner's avatar image."""
|
|
188
192
|
|
|
189
193
|
|
|
190
194
|
class GetCustomersPartner(BaseModel):
|
|
191
195
|
id: str
|
|
196
|
+
r"""The partner's unique ID on Dub."""
|
|
192
197
|
|
|
193
198
|
name: str
|
|
199
|
+
r"""The partner's full legal name."""
|
|
194
200
|
|
|
195
201
|
email: Nullable[str]
|
|
202
|
+
r"""The partner's email address. Should be a unique value across Dub."""
|
|
196
203
|
|
|
197
204
|
image: Nullable[str]
|
|
205
|
+
r"""The partner's avatar image."""
|
|
198
206
|
|
|
199
207
|
@model_serializer(mode="wrap")
|
|
200
208
|
def serialize_model(self, handler):
|
|
@@ -164,19 +164,27 @@ class UpdateCustomerLink(BaseModel):
|
|
|
164
164
|
|
|
165
165
|
class UpdateCustomerPartnerTypedDict(TypedDict):
|
|
166
166
|
id: str
|
|
167
|
+
r"""The partner's unique ID on Dub."""
|
|
167
168
|
name: str
|
|
169
|
+
r"""The partner's full legal name."""
|
|
168
170
|
email: Nullable[str]
|
|
171
|
+
r"""The partner's email address. Should be a unique value across Dub."""
|
|
169
172
|
image: Nullable[str]
|
|
173
|
+
r"""The partner's avatar image."""
|
|
170
174
|
|
|
171
175
|
|
|
172
176
|
class UpdateCustomerPartner(BaseModel):
|
|
173
177
|
id: str
|
|
178
|
+
r"""The partner's unique ID on Dub."""
|
|
174
179
|
|
|
175
180
|
name: str
|
|
181
|
+
r"""The partner's full legal name."""
|
|
176
182
|
|
|
177
183
|
email: Nullable[str]
|
|
184
|
+
r"""The partner's email address. Should be a unique value across Dub."""
|
|
178
185
|
|
|
179
186
|
image: Nullable[str]
|
|
187
|
+
r"""The partner's avatar image."""
|
|
180
188
|
|
|
181
189
|
@model_serializer(mode="wrap")
|
|
182
190
|
def serialize_model(self, handler):
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: dub
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.24.0
|
|
4
4
|
Summary: Python Client SDK Generated by Speakeasy
|
|
5
5
|
Author: Speakeasy
|
|
6
|
-
Requires-Python: >=3.9
|
|
6
|
+
Requires-Python: >=3.9.2
|
|
7
7
|
Classifier: Programming Language :: Python :: 3
|
|
8
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
9
8
|
Classifier: Programming Language :: Python :: 3.10
|
|
10
9
|
Classifier: Programming Language :: Python :: 3.11
|
|
11
10
|
Classifier: Programming Language :: Python :: 3.12
|
|
@@ -3,7 +3,7 @@ dub/_hooks/__init__.py,sha256=9_7W5jAYw8rcO8Kfc-Ty-lB82BHfksAJJpVFb_UeU1c,146
|
|
|
3
3
|
dub/_hooks/registration.py,sha256=tT-1Cjp5ax1DL-84HBNWPy4wAwgP-0aI4-asLfnkIlw,625
|
|
4
4
|
dub/_hooks/sdkhooks.py,sha256=2rLEjSz1xFGWabNs1voFn0lXSCqkS38bdKVFdnBJufE,2553
|
|
5
5
|
dub/_hooks/types.py,sha256=_f63z3zj-1mQYfbDbEgt_0Yzys8yQtKEivmhKxOPeU8,2806
|
|
6
|
-
dub/_version.py,sha256=
|
|
6
|
+
dub/_version.py,sha256=d_ypvM2_kkHth9dC772v1Xa_dd9iODLMrPnsJagxFug,450
|
|
7
7
|
dub/analytics.py,sha256=vlYINh0VlD1myVlTz5GbsJxoTEk45avOATjpJ_P_b9I,12938
|
|
8
8
|
dub/basesdk.py,sha256=rDM8sEHVtFjFSi7RgfDnl3T0gLUJzqguXrSxFOWFRqE,12105
|
|
9
9
|
dub/customers.py,sha256=8iLNQxjcU2gpWJsZp43XwKGNl2S9ONJQeo9IYtgdc-0,63157
|
|
@@ -11,7 +11,7 @@ dub/domains.py,sha256=Te3xPLGz0rusk0zMC0Q_lGryvIwN17HxKSuyChaxLNM,52450
|
|
|
11
11
|
dub/embed_tokens.py,sha256=brox--k6QHwvcAQlpxtMt7GrOoGdgYmbWP1qoSuQCbE,13654
|
|
12
12
|
dub/events.py,sha256=HyGsrKz18bEfjrKBOAwXKyo4MFKJ1EXK6uZoHmwUZ0U,12585
|
|
13
13
|
dub/folders.py,sha256=X6DIToZTRqmzjGulZE_4CrBYUyi2a8HrpEIjm3W-DnQ,50316
|
|
14
|
-
dub/httpclient.py,sha256=
|
|
14
|
+
dub/httpclient.py,sha256=Eu73urOAiZQtdUIyOUnPccxCiBbWEKrXG-JrRG3SLM4,3946
|
|
15
15
|
dub/links.py,sha256=Nq6Xo-jaw-hL0rcB8a-tAnDu6qUe9kTAcArhPugwRyY,128470
|
|
16
16
|
dub/models/__init__.py,sha256=HRiFG5CV9y2HvWWQl_JQNbYTPme0UYR1Mhh13Qc-5jE,84
|
|
17
17
|
dub/models/components/__init__.py,sha256=l2w2vvyhJTRJaSRPIxgqig8KphSuEuhiyvO4G1Lynf4,10710
|
|
@@ -44,7 +44,7 @@ dub/models/components/linkwebhookevent.py,sha256=r4Y8ba4iIDiA920YFzlmdf-8-z1Rdn4
|
|
|
44
44
|
dub/models/components/partneranalyticscount.py,sha256=hJOuFVUTFOuXWviLxExwXDZVgPLBcgmqt8VxeHv7JAw,1035
|
|
45
45
|
dub/models/components/partneranalyticstimeseries.py,sha256=Bh431YfEd8v6TD9o9DPCAwGCDo5Rrf1xR1pccm7q5aw,1268
|
|
46
46
|
dub/models/components/partneranalyticstoplinks.py,sha256=xy1F1vueaBX93Gj2AYqqa7jbEueJy-FAVD5GdnjPva8,3755
|
|
47
|
-
dub/models/components/partnerenrolledevent.py,sha256=
|
|
47
|
+
dub/models/components/partnerenrolledevent.py,sha256=YqXDkzDJa3QYkjxugVbny9n5s6gIk9jO8CC_qHDCJzo,10299
|
|
48
48
|
dub/models/components/salecreatedevent.py,sha256=0iC7LapQdrWFUPCuyr3vlsoqzYGnjVeUX1wwyXeToCs,42010
|
|
49
49
|
dub/models/components/saleevent.py,sha256=YT3fOa4J-glEqlepgo-22Dhu9rfD7VrbGLpGG8ntuFY,47528
|
|
50
50
|
dub/models/components/security.py,sha256=be_cng1n5ULto_xGGPBKH1ZE5LrtmBTg6kX2uPJqJOw,599
|
|
@@ -66,11 +66,11 @@ dub/models/operations/__init__.py,sha256=7DnUmcFdZqCHYpkVeZLTwsWBPhvSZCL42BYlUre
|
|
|
66
66
|
dub/models/operations/bulkcreatelinks.py,sha256=tT5lA_5LxR_k-WgIFNpYHZu4uvLANSssZbmZ7IamFFA,17466
|
|
67
67
|
dub/models/operations/bulkdeletelinks.py,sha256=u_hEFC9TZ1UnGGgLhQ-Mf3HNDO98Ur49MtdBnNVIRsE,1151
|
|
68
68
|
dub/models/operations/bulkupdatelinks.py,sha256=DDEW9Zp2BKPSwdzYGSnATxuFUsv175z3fq4UQ15IvME,16022
|
|
69
|
-
dub/models/operations/createcustomer.py,sha256=
|
|
69
|
+
dub/models/operations/createcustomer.py,sha256=gAwfJB7hXlbCKbfypCYxshq7LnWkTqAPdMIl1d5UOZQ,12006
|
|
70
70
|
dub/models/operations/createdomain.py,sha256=dHRvCzE6knsndN4FTFjfijHVmTi8NXKpURz8cM_C-bk,3900
|
|
71
71
|
dub/models/operations/createfolder.py,sha256=j9z0CIsc22VsWAwlCGNwxo6a3VsetD6t4T2LdCELYGE,1884
|
|
72
72
|
dub/models/operations/createlink.py,sha256=ThSHn-TNxF70sRWHXt723nBofdMjQ1_hkSZExnwIvVw,16833
|
|
73
|
-
dub/models/operations/createpartner.py,sha256=
|
|
73
|
+
dub/models/operations/createpartner.py,sha256=WdtPUJKhi_HQnB4Glz2CzwV0bKLjConLPVs59newf6g,30062
|
|
74
74
|
dub/models/operations/createpartnerlink.py,sha256=RfQ2uiU6ZDOw8pR3eksEY6rKviSsf0oUKGMDkp5s2NQ,16880
|
|
75
75
|
dub/models/operations/createreferralsembedtoken.py,sha256=q7Q1aAdhEbMDlRqh2M7VFAeAqpYEhFO1P9Cz3TGJhsU,21667
|
|
76
76
|
dub/models/operations/createtag.py,sha256=XUKuFcLoenYk1oxdeou-gI_s3A4YxtIJKgRiXtLfOpQ,1497
|
|
@@ -79,8 +79,8 @@ dub/models/operations/deletedomain.py,sha256=VtuDxUCmAcEmNn1vmrdlSKmASHSFwoho-Co
|
|
|
79
79
|
dub/models/operations/deletefolder.py,sha256=lpetbObqu9jd-XLl-unlvmSTuztW8Ecn-dhGNxN60Yc,815
|
|
80
80
|
dub/models/operations/deletelink.py,sha256=o3Uia06QBrKb--6OkShjKkcqaK0dpt_Jw3AClUqTQq4,1062
|
|
81
81
|
dub/models/operations/deletetag.py,sha256=UJz-O6oTuvOdzuUXUQktw699hEv0cs1eJW9C3wQBQBc,785
|
|
82
|
-
dub/models/operations/getcustomer.py,sha256=
|
|
83
|
-
dub/models/operations/getcustomers.py,sha256=
|
|
82
|
+
dub/models/operations/getcustomer.py,sha256=tiV2Ra9_AR7u6NRPJ1WUS-W-m0hRMKVpJANN_Ur0CQc,11197
|
|
83
|
+
dub/models/operations/getcustomers.py,sha256=2cy-M111P4Iok1plmB5UHQK-tKmJMXUUP83-9dqTW7w,14389
|
|
84
84
|
dub/models/operations/getlinkinfo.py,sha256=I4bhM6HeW7IFg1J-68Uou5-OHA7XdQcM8I_lRBtXAJI,1530
|
|
85
85
|
dub/models/operations/getlinks.py,sha256=9BPKj--6Zt9HvFPEIPU-a2aheaOvtIvHGc8PHTMkkbg,7472
|
|
86
86
|
dub/models/operations/getlinkscount.py,sha256=KvD0gh-Imn1WmiiRAIYUXHBoNNGEnmfBQXqdbLXU7EQ,5851
|
|
@@ -95,7 +95,7 @@ dub/models/operations/retrievelinks.py,sha256=1bLrT_Q2y60eU_gdOHTu99VW8c09gX3nki
|
|
|
95
95
|
dub/models/operations/retrievepartneranalytics.py,sha256=MmBDRCB5lQ1lKkfHpeMnZcQXkKIjSCVGEUVcvJgZ_Io,5275
|
|
96
96
|
dub/models/operations/tracklead.py,sha256=FxdbxL9r3PF0eqo4aOcGXCS7EERq11x07NEdPDkqeps,6855
|
|
97
97
|
dub/models/operations/tracksale.py,sha256=q_IL4dHay_dDTmRYH80zI6JphCyk46yHoLHBFEJEILg,8189
|
|
98
|
-
dub/models/operations/updatecustomer.py,sha256=
|
|
98
|
+
dub/models/operations/updatecustomer.py,sha256=xlW-W99WgdlAsKD4fNhIEw3f1Sipnb4ahPnZFOcisSY,13517
|
|
99
99
|
dub/models/operations/updatedomain.py,sha256=rexCga7uNxgBZLPiCMcaudc2cQGB0E_qX2HI0DgG_3M,4519
|
|
100
100
|
dub/models/operations/updatefolder.py,sha256=dNvSPY67g58SWynB8ic5rcgT-h7THRmyxuzuFdO42GQ,2581
|
|
101
101
|
dub/models/operations/updatelink.py,sha256=b6BbDMh7BOtNQc_vcsqRGKBtrlRnW9VG8BDIv1RUogw,17567
|
|
@@ -130,7 +130,7 @@ dub/utils/serializers.py,sha256=hiHBXM1AY8_N2Z_rvFfNSYwvLBkSQlPGFp8poasdU4s,5986
|
|
|
130
130
|
dub/utils/url.py,sha256=BgGPgcTA6MRK4bF8fjP2dUopN3NzEzxWMXPBVg8NQUA,5254
|
|
131
131
|
dub/utils/values.py,sha256=CcaCXEa3xHhkUDROyXZocN8f0bdITftv9Y0P9lTf0YM,3517
|
|
132
132
|
dub/workspaces.py,sha256=d4eBlOvwuYlENsGcYI0fHQKN-cpC8U9kekTbfNJ2C_4,25635
|
|
133
|
-
dub-0.
|
|
134
|
-
dub-0.
|
|
135
|
-
dub-0.
|
|
136
|
-
dub-0.
|
|
133
|
+
dub-0.24.0.dist-info/LICENSE,sha256=kc_aZ6YHHcdSsRy-mGsT0Ehji0ZgR_zevXiUt05V2KY,1079
|
|
134
|
+
dub-0.24.0.dist-info/METADATA,sha256=U_gJMoI6rg1xynFNR7X5QABDE0hRXdZcdJlHIWLLlwE,27519
|
|
135
|
+
dub-0.24.0.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
|
|
136
|
+
dub-0.24.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|