fathom-python 0.0.36__tar.gz → 0.0.38__tar.gz
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.
- {fathom_python-0.0.36 → fathom_python-0.0.38}/PKG-INFO +20 -42
- {fathom_python-0.0.36 → fathom_python-0.0.38}/README.md +17 -40
- {fathom_python-0.0.36 → fathom_python-0.0.38}/pyproject.toml +2 -1
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/_version.py +3 -3
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/errors/apierror.py +1 -1
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/errors/fathomerror.py +1 -1
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/errors/no_response_error.py +1 -1
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/errors/responsevalidationerror.py +1 -1
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/__init__.py +28 -2
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/listmeetingsop.py +12 -40
- fathom_python-0.0.38/src/fathom_python/models/listmeetingtypesop.py +34 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/meeting.py +6 -0
- fathom_python-0.0.38/src/fathom_python/models/meetingtype.py +34 -0
- fathom_python-0.0.38/src/fathom_python/models/meetingtypelistresponse.py +52 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/sdk.py +274 -20
- fathom_python-0.0.38/src/fathom_python/types/base64fileinput.py +39 -0
- fathom_python-0.0.38/src/fathom_python/utils/dynamic_imports.py +54 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/retries.py +69 -5
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/unmarshal_json_response.py +15 -1
- {fathom_python-0.0.36 → fathom_python-0.0.38}/py.typed +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/__init__.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/_hooks/__init__.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/_hooks/registration.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/_hooks/sdkhooks.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/_hooks/types.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/basesdk.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/errors/__init__.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/httpclient.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/actionitem.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/assignee.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/callbackresponse.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/createwebhookop.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/crmcompanymatch.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/crmcontactmatch.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/crmdealmatch.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/crmmatches.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/deletewebhookop.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/fathomuser.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/getrecordingsummaryop.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/getrecordingtranscriptop.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/invitee.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/listteammembersop.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/listteamsop.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/meetinglistresponse.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/meetingsummary.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/security.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/team.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/teamlistresponse.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/teammember.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/teammemberlistresponse.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/transcriptitem.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/transcriptitemspeaker.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/models/webhook.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/py.typed +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/sdkconfiguration.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/types/__init__.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/types/basemodel.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/__init__.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/annotations.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/datetimes.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/enums.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/eventstreaming.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/forms.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/headers.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/logger.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/metadata.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/queryparams.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/requestbodies.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/security.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/serializers.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/url.py +0 -0
- {fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/utils/values.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: fathom-python
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.38
|
|
4
4
|
Summary: Fathom's official Python SDK.
|
|
5
5
|
Author: Speakeasy
|
|
6
6
|
Requires-Python: >=3.9.2
|
|
@@ -9,6 +9,7 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
9
9
|
Classifier: Programming Language :: Python :: 3.11
|
|
10
10
|
Classifier: Programming Language :: Python :: 3.12
|
|
11
11
|
Classifier: Programming Language :: Python :: 3.13
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
12
13
|
Requires-Dist: httpcore (>=1.0.9)
|
|
13
14
|
Requires-Dist: httpx (>=0.28.1)
|
|
14
15
|
Requires-Dist: jsonpath-python (>=1.0.6)
|
|
@@ -120,13 +121,10 @@ with Fathom(
|
|
|
120
121
|
),
|
|
121
122
|
) as fathom:
|
|
122
123
|
|
|
123
|
-
res = fathom.list_meetings(
|
|
124
|
-
"cfo@acme.com",
|
|
125
|
-
"legal@acme.com",
|
|
126
|
-
], calendar_invitees_domains=[
|
|
124
|
+
res = fathom.list_meetings(calendar_invitees_domains=[
|
|
127
125
|
"acme.com",
|
|
128
126
|
"client.com",
|
|
129
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
127
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
130
128
|
"ceo@acme.com",
|
|
131
129
|
"pm@acme.com",
|
|
132
130
|
], teams=[
|
|
@@ -158,13 +156,10 @@ async def main():
|
|
|
158
156
|
),
|
|
159
157
|
) as fathom:
|
|
160
158
|
|
|
161
|
-
res = await fathom.list_meetings_async(
|
|
162
|
-
"cfo@acme.com",
|
|
163
|
-
"legal@acme.com",
|
|
164
|
-
], calendar_invitees_domains=[
|
|
159
|
+
res = await fathom.list_meetings_async(calendar_invitees_domains=[
|
|
165
160
|
"acme.com",
|
|
166
161
|
"client.com",
|
|
167
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
162
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
168
163
|
"ceo@acme.com",
|
|
169
164
|
"pm@acme.com",
|
|
170
165
|
], teams=[
|
|
@@ -205,13 +200,10 @@ with Fathom(
|
|
|
205
200
|
),
|
|
206
201
|
) as fathom:
|
|
207
202
|
|
|
208
|
-
res = fathom.list_meetings(
|
|
209
|
-
"cfo@acme.com",
|
|
210
|
-
"legal@acme.com",
|
|
211
|
-
], calendar_invitees_domains=[
|
|
203
|
+
res = fathom.list_meetings(calendar_invitees_domains=[
|
|
212
204
|
"acme.com",
|
|
213
205
|
"client.com",
|
|
214
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
206
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
215
207
|
"ceo@acme.com",
|
|
216
208
|
"pm@acme.com",
|
|
217
209
|
], teams=[
|
|
@@ -240,6 +232,7 @@ with Fathom(
|
|
|
240
232
|
* [get_recording_transcript](docs/sdks/fathom/README.md#get_recording_transcript) - Get transcript
|
|
241
233
|
* [list_teams](docs/sdks/fathom/README.md#list_teams) - List teams
|
|
242
234
|
* [list_team_members](docs/sdks/fathom/README.md#list_team_members) - List team members
|
|
235
|
+
* [list_meeting_types](docs/sdks/fathom/README.md#list_meeting_types) - List meeting types
|
|
243
236
|
* [create_webhook](docs/sdks/fathom/README.md#create_webhook) - Create a webhook
|
|
244
237
|
* [delete_webhook](docs/sdks/fathom/README.md#delete_webhook) - Delete a webhook
|
|
245
238
|
|
|
@@ -265,13 +258,10 @@ with Fathom(
|
|
|
265
258
|
),
|
|
266
259
|
) as fathom:
|
|
267
260
|
|
|
268
|
-
res = fathom.list_meetings(
|
|
269
|
-
"cfo@acme.com",
|
|
270
|
-
"legal@acme.com",
|
|
271
|
-
], calendar_invitees_domains=[
|
|
261
|
+
res = fathom.list_meetings(calendar_invitees_domains=[
|
|
272
262
|
"acme.com",
|
|
273
263
|
"client.com",
|
|
274
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
264
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
275
265
|
"ceo@acme.com",
|
|
276
266
|
"pm@acme.com",
|
|
277
267
|
], teams=[
|
|
@@ -305,13 +295,10 @@ with Fathom(
|
|
|
305
295
|
),
|
|
306
296
|
) as fathom:
|
|
307
297
|
|
|
308
|
-
res = fathom.list_meetings(
|
|
309
|
-
"cfo@acme.com",
|
|
310
|
-
"legal@acme.com",
|
|
311
|
-
], calendar_invitees_domains=[
|
|
298
|
+
res = fathom.list_meetings(calendar_invitees_domains=[
|
|
312
299
|
"acme.com",
|
|
313
300
|
"client.com",
|
|
314
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
301
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
315
302
|
"ceo@acme.com",
|
|
316
303
|
"pm@acme.com",
|
|
317
304
|
], teams=[
|
|
@@ -341,13 +328,10 @@ with Fathom(
|
|
|
341
328
|
),
|
|
342
329
|
) as fathom:
|
|
343
330
|
|
|
344
|
-
res = fathom.list_meetings(
|
|
345
|
-
"cfo@acme.com",
|
|
346
|
-
"legal@acme.com",
|
|
347
|
-
], calendar_invitees_domains=[
|
|
331
|
+
res = fathom.list_meetings(calendar_invitees_domains=[
|
|
348
332
|
"acme.com",
|
|
349
333
|
"client.com",
|
|
350
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
334
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
351
335
|
"ceo@acme.com",
|
|
352
336
|
"pm@acme.com",
|
|
353
337
|
], teams=[
|
|
@@ -390,13 +374,10 @@ with Fathom(
|
|
|
390
374
|
res = None
|
|
391
375
|
try:
|
|
392
376
|
|
|
393
|
-
res = fathom.list_meetings(
|
|
394
|
-
"cfo@acme.com",
|
|
395
|
-
"legal@acme.com",
|
|
396
|
-
], calendar_invitees_domains=[
|
|
377
|
+
res = fathom.list_meetings(calendar_invitees_domains=[
|
|
397
378
|
"acme.com",
|
|
398
379
|
"client.com",
|
|
399
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
380
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
400
381
|
"ceo@acme.com",
|
|
401
382
|
"pm@acme.com",
|
|
402
383
|
], teams=[
|
|
@@ -458,13 +439,10 @@ with Fathom(
|
|
|
458
439
|
),
|
|
459
440
|
) as fathom:
|
|
460
441
|
|
|
461
|
-
res = fathom.list_meetings(
|
|
462
|
-
"cfo@acme.com",
|
|
463
|
-
"legal@acme.com",
|
|
464
|
-
], calendar_invitees_domains=[
|
|
442
|
+
res = fathom.list_meetings(calendar_invitees_domains=[
|
|
465
443
|
"acme.com",
|
|
466
444
|
"client.com",
|
|
467
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
445
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
468
446
|
"ceo@acme.com",
|
|
469
447
|
"pm@acme.com",
|
|
470
448
|
], teams=[
|
|
@@ -100,13 +100,10 @@ with Fathom(
|
|
|
100
100
|
),
|
|
101
101
|
) as fathom:
|
|
102
102
|
|
|
103
|
-
res = fathom.list_meetings(
|
|
104
|
-
"cfo@acme.com",
|
|
105
|
-
"legal@acme.com",
|
|
106
|
-
], calendar_invitees_domains=[
|
|
103
|
+
res = fathom.list_meetings(calendar_invitees_domains=[
|
|
107
104
|
"acme.com",
|
|
108
105
|
"client.com",
|
|
109
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
106
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
110
107
|
"ceo@acme.com",
|
|
111
108
|
"pm@acme.com",
|
|
112
109
|
], teams=[
|
|
@@ -138,13 +135,10 @@ async def main():
|
|
|
138
135
|
),
|
|
139
136
|
) as fathom:
|
|
140
137
|
|
|
141
|
-
res = await fathom.list_meetings_async(
|
|
142
|
-
"cfo@acme.com",
|
|
143
|
-
"legal@acme.com",
|
|
144
|
-
], calendar_invitees_domains=[
|
|
138
|
+
res = await fathom.list_meetings_async(calendar_invitees_domains=[
|
|
145
139
|
"acme.com",
|
|
146
140
|
"client.com",
|
|
147
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
141
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
148
142
|
"ceo@acme.com",
|
|
149
143
|
"pm@acme.com",
|
|
150
144
|
], teams=[
|
|
@@ -185,13 +179,10 @@ with Fathom(
|
|
|
185
179
|
),
|
|
186
180
|
) as fathom:
|
|
187
181
|
|
|
188
|
-
res = fathom.list_meetings(
|
|
189
|
-
"cfo@acme.com",
|
|
190
|
-
"legal@acme.com",
|
|
191
|
-
], calendar_invitees_domains=[
|
|
182
|
+
res = fathom.list_meetings(calendar_invitees_domains=[
|
|
192
183
|
"acme.com",
|
|
193
184
|
"client.com",
|
|
194
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
185
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
195
186
|
"ceo@acme.com",
|
|
196
187
|
"pm@acme.com",
|
|
197
188
|
], teams=[
|
|
@@ -220,6 +211,7 @@ with Fathom(
|
|
|
220
211
|
* [get_recording_transcript](docs/sdks/fathom/README.md#get_recording_transcript) - Get transcript
|
|
221
212
|
* [list_teams](docs/sdks/fathom/README.md#list_teams) - List teams
|
|
222
213
|
* [list_team_members](docs/sdks/fathom/README.md#list_team_members) - List team members
|
|
214
|
+
* [list_meeting_types](docs/sdks/fathom/README.md#list_meeting_types) - List meeting types
|
|
223
215
|
* [create_webhook](docs/sdks/fathom/README.md#create_webhook) - Create a webhook
|
|
224
216
|
* [delete_webhook](docs/sdks/fathom/README.md#delete_webhook) - Delete a webhook
|
|
225
217
|
|
|
@@ -245,13 +237,10 @@ with Fathom(
|
|
|
245
237
|
),
|
|
246
238
|
) as fathom:
|
|
247
239
|
|
|
248
|
-
res = fathom.list_meetings(
|
|
249
|
-
"cfo@acme.com",
|
|
250
|
-
"legal@acme.com",
|
|
251
|
-
], calendar_invitees_domains=[
|
|
240
|
+
res = fathom.list_meetings(calendar_invitees_domains=[
|
|
252
241
|
"acme.com",
|
|
253
242
|
"client.com",
|
|
254
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
243
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
255
244
|
"ceo@acme.com",
|
|
256
245
|
"pm@acme.com",
|
|
257
246
|
], teams=[
|
|
@@ -285,13 +274,10 @@ with Fathom(
|
|
|
285
274
|
),
|
|
286
275
|
) as fathom:
|
|
287
276
|
|
|
288
|
-
res = fathom.list_meetings(
|
|
289
|
-
"cfo@acme.com",
|
|
290
|
-
"legal@acme.com",
|
|
291
|
-
], calendar_invitees_domains=[
|
|
277
|
+
res = fathom.list_meetings(calendar_invitees_domains=[
|
|
292
278
|
"acme.com",
|
|
293
279
|
"client.com",
|
|
294
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
280
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
295
281
|
"ceo@acme.com",
|
|
296
282
|
"pm@acme.com",
|
|
297
283
|
], teams=[
|
|
@@ -321,13 +307,10 @@ with Fathom(
|
|
|
321
307
|
),
|
|
322
308
|
) as fathom:
|
|
323
309
|
|
|
324
|
-
res = fathom.list_meetings(
|
|
325
|
-
"cfo@acme.com",
|
|
326
|
-
"legal@acme.com",
|
|
327
|
-
], calendar_invitees_domains=[
|
|
310
|
+
res = fathom.list_meetings(calendar_invitees_domains=[
|
|
328
311
|
"acme.com",
|
|
329
312
|
"client.com",
|
|
330
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
313
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
331
314
|
"ceo@acme.com",
|
|
332
315
|
"pm@acme.com",
|
|
333
316
|
], teams=[
|
|
@@ -370,13 +353,10 @@ with Fathom(
|
|
|
370
353
|
res = None
|
|
371
354
|
try:
|
|
372
355
|
|
|
373
|
-
res = fathom.list_meetings(
|
|
374
|
-
"cfo@acme.com",
|
|
375
|
-
"legal@acme.com",
|
|
376
|
-
], calendar_invitees_domains=[
|
|
356
|
+
res = fathom.list_meetings(calendar_invitees_domains=[
|
|
377
357
|
"acme.com",
|
|
378
358
|
"client.com",
|
|
379
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
359
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
380
360
|
"ceo@acme.com",
|
|
381
361
|
"pm@acme.com",
|
|
382
362
|
], teams=[
|
|
@@ -438,13 +418,10 @@ with Fathom(
|
|
|
438
418
|
),
|
|
439
419
|
) as fathom:
|
|
440
420
|
|
|
441
|
-
res = fathom.list_meetings(
|
|
442
|
-
"cfo@acme.com",
|
|
443
|
-
"legal@acme.com",
|
|
444
|
-
], calendar_invitees_domains=[
|
|
421
|
+
res = fathom.list_meetings(calendar_invitees_domains=[
|
|
445
422
|
"acme.com",
|
|
446
423
|
"client.com",
|
|
447
|
-
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type=
|
|
424
|
+
], calendar_invitees_domains_type=models.ListMeetingsCalendarInviteesDomainsType.ALL, include_action_items=False, include_crm_matches=False, include_summary=False, include_transcript=False, meeting_type="Quarterly Business Review", recorded_by=[
|
|
448
425
|
"ceo@acme.com",
|
|
449
426
|
"pm@acme.com",
|
|
450
427
|
], teams=[
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
[project]
|
|
3
3
|
name = "fathom-python"
|
|
4
|
-
version = "0.0.
|
|
4
|
+
version = "0.0.38"
|
|
5
5
|
description = "Fathom's official Python SDK."
|
|
6
6
|
authors = [{ name = "Speakeasy" },]
|
|
7
7
|
readme = "README.md"
|
|
@@ -31,6 +31,7 @@ in-project = true
|
|
|
31
31
|
[tool.poetry.group.dev.dependencies]
|
|
32
32
|
mypy = "==1.15.0"
|
|
33
33
|
pylint = "==3.2.3"
|
|
34
|
+
pyright = "==1.1.398"
|
|
34
35
|
|
|
35
36
|
[build-system]
|
|
36
37
|
requires = ["poetry-core"]
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
import importlib.metadata
|
|
4
4
|
|
|
5
5
|
__title__: str = "fathom-python"
|
|
6
|
-
__version__: str = "0.0.
|
|
6
|
+
__version__: str = "0.0.38"
|
|
7
7
|
__openapi_doc_version__: str = "1.0.0"
|
|
8
|
-
__gen_version__: str = "2.
|
|
9
|
-
__user_agent__: str = "speakeasy-sdk/python 0.0.
|
|
8
|
+
__gen_version__: str = "2.762.0"
|
|
9
|
+
__user_agent__: str = "speakeasy-sdk/python 0.0.38 2.762.0 1.0.0 fathom-python"
|
|
10
10
|
|
|
11
11
|
try:
|
|
12
12
|
if __package__ is not None:
|
{fathom_python-0.0.36 → fathom_python-0.0.38}/src/fathom_python/errors/responsevalidationerror.py
RENAMED
|
@@ -7,7 +7,7 @@ from dataclasses import dataclass
|
|
|
7
7
|
from fathom_python.errors import FathomError
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
@dataclass(
|
|
10
|
+
@dataclass(unsafe_hash=True)
|
|
11
11
|
class ResponseValidationError(FathomError):
|
|
12
12
|
"""Error raised when there is a type mismatch between the response data and the expected Pydantic model."""
|
|
13
13
|
|
|
@@ -43,7 +43,12 @@ if TYPE_CHECKING:
|
|
|
43
43
|
ListMeetingsRequestTypedDict,
|
|
44
44
|
ListMeetingsResponse,
|
|
45
45
|
ListMeetingsResponseTypedDict,
|
|
46
|
-
|
|
46
|
+
)
|
|
47
|
+
from .listmeetingtypesop import (
|
|
48
|
+
ListMeetingTypesRequest,
|
|
49
|
+
ListMeetingTypesRequestTypedDict,
|
|
50
|
+
ListMeetingTypesResponse,
|
|
51
|
+
ListMeetingTypesResponseTypedDict,
|
|
47
52
|
)
|
|
48
53
|
from .listteammembersop import (
|
|
49
54
|
ListTeamMembersRequest,
|
|
@@ -60,6 +65,11 @@ if TYPE_CHECKING:
|
|
|
60
65
|
from .meeting import CalendarInviteesDomainsType, Meeting, MeetingTypedDict
|
|
61
66
|
from .meetinglistresponse import MeetingListResponse, MeetingListResponseTypedDict
|
|
62
67
|
from .meetingsummary import MeetingSummary, MeetingSummaryTypedDict
|
|
68
|
+
from .meetingtype import MeetingType, MeetingTypeTypedDict, Status
|
|
69
|
+
from .meetingtypelistresponse import (
|
|
70
|
+
MeetingTypeListResponse,
|
|
71
|
+
MeetingTypeListResponseTypedDict,
|
|
72
|
+
)
|
|
63
73
|
from .security import Security, SecurityTypedDict
|
|
64
74
|
from .team import Team, TeamTypedDict
|
|
65
75
|
from .teamlistresponse import TeamListResponse, TeamListResponseTypedDict
|
|
@@ -112,6 +122,10 @@ __all__ = [
|
|
|
112
122
|
"GetRecordingTranscriptResponseTypedDict",
|
|
113
123
|
"Invitee",
|
|
114
124
|
"InviteeTypedDict",
|
|
125
|
+
"ListMeetingTypesRequest",
|
|
126
|
+
"ListMeetingTypesRequestTypedDict",
|
|
127
|
+
"ListMeetingTypesResponse",
|
|
128
|
+
"ListMeetingTypesResponseTypedDict",
|
|
115
129
|
"ListMeetingsCalendarInviteesDomainsType",
|
|
116
130
|
"ListMeetingsRequest",
|
|
117
131
|
"ListMeetingsRequestTypedDict",
|
|
@@ -131,9 +145,13 @@ __all__ = [
|
|
|
131
145
|
"MeetingSummary",
|
|
132
146
|
"MeetingSummaryTypedDict",
|
|
133
147
|
"MeetingType",
|
|
148
|
+
"MeetingTypeListResponse",
|
|
149
|
+
"MeetingTypeListResponseTypedDict",
|
|
150
|
+
"MeetingTypeTypedDict",
|
|
134
151
|
"MeetingTypedDict",
|
|
135
152
|
"Security",
|
|
136
153
|
"SecurityTypedDict",
|
|
154
|
+
"Status",
|
|
137
155
|
"Team",
|
|
138
156
|
"TeamListResponse",
|
|
139
157
|
"TeamListResponseTypedDict",
|
|
@@ -192,7 +210,10 @@ _dynamic_imports: dict[str, str] = {
|
|
|
192
210
|
"ListMeetingsRequestTypedDict": ".listmeetingsop",
|
|
193
211
|
"ListMeetingsResponse": ".listmeetingsop",
|
|
194
212
|
"ListMeetingsResponseTypedDict": ".listmeetingsop",
|
|
195
|
-
"
|
|
213
|
+
"ListMeetingTypesRequest": ".listmeetingtypesop",
|
|
214
|
+
"ListMeetingTypesRequestTypedDict": ".listmeetingtypesop",
|
|
215
|
+
"ListMeetingTypesResponse": ".listmeetingtypesop",
|
|
216
|
+
"ListMeetingTypesResponseTypedDict": ".listmeetingtypesop",
|
|
196
217
|
"ListTeamMembersRequest": ".listteammembersop",
|
|
197
218
|
"ListTeamMembersRequestTypedDict": ".listteammembersop",
|
|
198
219
|
"ListTeamMembersResponse": ".listteammembersop",
|
|
@@ -208,6 +229,11 @@ _dynamic_imports: dict[str, str] = {
|
|
|
208
229
|
"MeetingListResponseTypedDict": ".meetinglistresponse",
|
|
209
230
|
"MeetingSummary": ".meetingsummary",
|
|
210
231
|
"MeetingSummaryTypedDict": ".meetingsummary",
|
|
232
|
+
"MeetingType": ".meetingtype",
|
|
233
|
+
"MeetingTypeTypedDict": ".meetingtype",
|
|
234
|
+
"Status": ".meetingtype",
|
|
235
|
+
"MeetingTypeListResponse": ".meetingtypelistresponse",
|
|
236
|
+
"MeetingTypeListResponseTypedDict": ".meetingtypelistresponse",
|
|
211
237
|
"Security": ".security",
|
|
212
238
|
"SecurityTypedDict": ".security",
|
|
213
239
|
"Team": ".team",
|
|
@@ -18,25 +18,7 @@ class ListMeetingsCalendarInviteesDomainsType(str, Enum):
|
|
|
18
18
|
ONE_OR_MORE_EXTERNAL = "one_or_more_external"
|
|
19
19
|
|
|
20
20
|
|
|
21
|
-
class MeetingType(str, Enum):
|
|
22
|
-
r"""Filter by meeting type."""
|
|
23
|
-
|
|
24
|
-
ALL = "all"
|
|
25
|
-
INTERNAL = "internal"
|
|
26
|
-
EXTERNAL = "external"
|
|
27
|
-
|
|
28
|
-
|
|
29
21
|
class ListMeetingsRequestTypedDict(TypedDict):
|
|
30
|
-
calendar_invitees: NotRequired[List[str]]
|
|
31
|
-
r"""Email address of calendar_invitees to filter by.
|
|
32
|
-
|
|
33
|
-
Pass the parameter once per value, e.g.
|
|
34
|
-
`calendar_invitees[]=cfo@acme.com&calendar_invitees[]=legal@acme.com`.
|
|
35
|
-
|
|
36
|
-
Returns meetings where any of the given email addresses appear
|
|
37
|
-
in the calendar_invitees list.
|
|
38
|
-
|
|
39
|
-
"""
|
|
40
22
|
calendar_invitees_domains: NotRequired[List[str]]
|
|
41
23
|
r"""Domains of the companies to filter by. Exact match.
|
|
42
24
|
|
|
@@ -62,8 +44,12 @@ class ListMeetingsRequestTypedDict(TypedDict):
|
|
|
62
44
|
r"""Include the summary for each meeting. Unavailable for OAuth connected apps (use /recordings instead)."""
|
|
63
45
|
include_transcript: NotRequired[bool]
|
|
64
46
|
r"""Include the transcript for each meeting. Unavailable for OAuth connected apps (use /recordings instead)."""
|
|
65
|
-
meeting_type: NotRequired[
|
|
66
|
-
r"""Filter by meeting type.
|
|
47
|
+
meeting_type: NotRequired[str]
|
|
48
|
+
r"""Filter by meeting type name.
|
|
49
|
+
|
|
50
|
+
Returns only meetings assigned the meeting type with this name. Use /meeting_types to discover valid values. An unknown or non-matching name returns an empty list.
|
|
51
|
+
|
|
52
|
+
"""
|
|
67
53
|
recorded_by: NotRequired[List[str]]
|
|
68
54
|
r"""Email addresses of users who recorded meetings.
|
|
69
55
|
|
|
@@ -85,21 +71,6 @@ class ListMeetingsRequestTypedDict(TypedDict):
|
|
|
85
71
|
|
|
86
72
|
|
|
87
73
|
class ListMeetingsRequest(BaseModel):
|
|
88
|
-
calendar_invitees: Annotated[
|
|
89
|
-
Optional[List[str]],
|
|
90
|
-
pydantic.Field(alias="calendar_invitees[]"),
|
|
91
|
-
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
92
|
-
] = None
|
|
93
|
-
r"""Email address of calendar_invitees to filter by.
|
|
94
|
-
|
|
95
|
-
Pass the parameter once per value, e.g.
|
|
96
|
-
`calendar_invitees[]=cfo@acme.com&calendar_invitees[]=legal@acme.com`.
|
|
97
|
-
|
|
98
|
-
Returns meetings where any of the given email addresses appear
|
|
99
|
-
in the calendar_invitees list.
|
|
100
|
-
|
|
101
|
-
"""
|
|
102
|
-
|
|
103
74
|
calendar_invitees_domains: Annotated[
|
|
104
75
|
Optional[List[str]],
|
|
105
76
|
pydantic.Field(alias="calendar_invitees_domains[]"),
|
|
@@ -163,13 +134,14 @@ class ListMeetingsRequest(BaseModel):
|
|
|
163
134
|
r"""Include the transcript for each meeting. Unavailable for OAuth connected apps (use /recordings instead)."""
|
|
164
135
|
|
|
165
136
|
meeting_type: Annotated[
|
|
166
|
-
Optional[
|
|
167
|
-
pydantic.Field(
|
|
168
|
-
deprecated="warning: ** DEPRECATED ** - This will be removed in a future release, please migrate away from it as soon as possible."
|
|
169
|
-
),
|
|
137
|
+
Optional[str],
|
|
170
138
|
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
171
139
|
] = None
|
|
172
|
-
r"""Filter by meeting type.
|
|
140
|
+
r"""Filter by meeting type name.
|
|
141
|
+
|
|
142
|
+
Returns only meetings assigned the meeting type with this name. Use /meeting_types to discover valid values. An unknown or non-matching name returns an empty list.
|
|
143
|
+
|
|
144
|
+
"""
|
|
173
145
|
|
|
174
146
|
recorded_by: Annotated[
|
|
175
147
|
Optional[List[str]],
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .meetingtypelistresponse import (
|
|
5
|
+
MeetingTypeListResponse,
|
|
6
|
+
MeetingTypeListResponseTypedDict,
|
|
7
|
+
)
|
|
8
|
+
from fathom_python.types import BaseModel
|
|
9
|
+
from fathom_python.utils import FieldMetadata, QueryParamMetadata
|
|
10
|
+
from typing import Callable, Optional
|
|
11
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class ListMeetingTypesRequestTypedDict(TypedDict):
|
|
15
|
+
cursor: NotRequired[str]
|
|
16
|
+
r"""Cursor for pagination."""
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class ListMeetingTypesRequest(BaseModel):
|
|
20
|
+
cursor: Annotated[
|
|
21
|
+
Optional[str],
|
|
22
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
23
|
+
] = None
|
|
24
|
+
r"""Cursor for pagination."""
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
class ListMeetingTypesResponseTypedDict(TypedDict):
|
|
28
|
+
result: MeetingTypeListResponseTypedDict
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class ListMeetingTypesResponse(BaseModel):
|
|
32
|
+
next: Callable[[], Optional[ListMeetingTypesResponse]]
|
|
33
|
+
|
|
34
|
+
result: MeetingTypeListResponse
|
|
@@ -30,6 +30,8 @@ class MeetingTypedDict(TypedDict):
|
|
|
30
30
|
title: str
|
|
31
31
|
meeting_title: Nullable[str]
|
|
32
32
|
r"""Calendar event title."""
|
|
33
|
+
meeting_type: Nullable[str]
|
|
34
|
+
r"""The name of the meeting type assigned to this meeting, or `null` if none is assigned."""
|
|
33
35
|
recording_id: int
|
|
34
36
|
r"""The ID of the meeting recording."""
|
|
35
37
|
url: str
|
|
@@ -59,6 +61,9 @@ class Meeting(BaseModel):
|
|
|
59
61
|
meeting_title: Nullable[str]
|
|
60
62
|
r"""Calendar event title."""
|
|
61
63
|
|
|
64
|
+
meeting_type: Nullable[str]
|
|
65
|
+
r"""The name of the meeting type assigned to this meeting, or `null` if none is assigned."""
|
|
66
|
+
|
|
62
67
|
recording_id: int
|
|
63
68
|
r"""The ID of the meeting recording."""
|
|
64
69
|
|
|
@@ -106,6 +111,7 @@ class Meeting(BaseModel):
|
|
|
106
111
|
]
|
|
107
112
|
nullable_fields = [
|
|
108
113
|
"meeting_title",
|
|
114
|
+
"meeting_type",
|
|
109
115
|
"transcript",
|
|
110
116
|
"default_summary",
|
|
111
117
|
"action_items",
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from datetime import datetime
|
|
5
|
+
from enum import Enum
|
|
6
|
+
from fathom_python.types import BaseModel
|
|
7
|
+
from typing_extensions import TypedDict
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Status(str, Enum):
|
|
11
|
+
r"""Whether the meeting type is currently assignable. `active` types can be assigned to meetings going forward; `inactive` types are no longer assigned going forward but may still appear on historical meetings."""
|
|
12
|
+
|
|
13
|
+
ACTIVE = "active"
|
|
14
|
+
INACTIVE = "inactive"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class MeetingTypeTypedDict(TypedDict):
|
|
18
|
+
name: str
|
|
19
|
+
status: Status
|
|
20
|
+
r"""Whether the meeting type is currently assignable. `active` types can be assigned to meetings going forward; `inactive` types are no longer assigned going forward but may still appear on historical meetings.
|
|
21
|
+
|
|
22
|
+
"""
|
|
23
|
+
created_at: datetime
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class MeetingType(BaseModel):
|
|
27
|
+
name: str
|
|
28
|
+
|
|
29
|
+
status: Status
|
|
30
|
+
r"""Whether the meeting type is currently assignable. `active` types can be assigned to meetings going forward; `inactive` types are no longer assigned going forward but may still appear on historical meetings.
|
|
31
|
+
|
|
32
|
+
"""
|
|
33
|
+
|
|
34
|
+
created_at: datetime
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .meetingtype import MeetingType, MeetingTypeTypedDict
|
|
5
|
+
from fathom_python.types import BaseModel, Nullable, UNSET_SENTINEL
|
|
6
|
+
from pydantic import model_serializer
|
|
7
|
+
from typing import List
|
|
8
|
+
from typing_extensions import TypedDict
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class MeetingTypeListResponseTypedDict(TypedDict):
|
|
12
|
+
limit: Nullable[int]
|
|
13
|
+
next_cursor: Nullable[str]
|
|
14
|
+
items: List[MeetingTypeTypedDict]
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class MeetingTypeListResponse(BaseModel):
|
|
18
|
+
limit: Nullable[int]
|
|
19
|
+
|
|
20
|
+
next_cursor: Nullable[str]
|
|
21
|
+
|
|
22
|
+
items: List[MeetingType]
|
|
23
|
+
|
|
24
|
+
@model_serializer(mode="wrap")
|
|
25
|
+
def serialize_model(self, handler):
|
|
26
|
+
optional_fields = []
|
|
27
|
+
nullable_fields = ["limit", "next_cursor"]
|
|
28
|
+
null_default_fields = []
|
|
29
|
+
|
|
30
|
+
serialized = handler(self)
|
|
31
|
+
|
|
32
|
+
m = {}
|
|
33
|
+
|
|
34
|
+
for n, f in type(self).model_fields.items():
|
|
35
|
+
k = f.alias or n
|
|
36
|
+
val = serialized.get(k)
|
|
37
|
+
serialized.pop(k, None)
|
|
38
|
+
|
|
39
|
+
optional_nullable = k in optional_fields and k in nullable_fields
|
|
40
|
+
is_set = (
|
|
41
|
+
self.__pydantic_fields_set__.intersection({n})
|
|
42
|
+
or k in null_default_fields
|
|
43
|
+
) # pylint: disable=no-member
|
|
44
|
+
|
|
45
|
+
if val is not None and val != UNSET_SENTINEL:
|
|
46
|
+
m[k] = val
|
|
47
|
+
elif val != UNSET_SENTINEL and (
|
|
48
|
+
not k in optional_fields or (optional_nullable and is_set)
|
|
49
|
+
):
|
|
50
|
+
m[k] = val
|
|
51
|
+
|
|
52
|
+
return m
|