kaggle 1.7.3b1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. kaggle/LICENSE +201 -0
  2. kaggle/__init__.py +6 -0
  3. kaggle/api/__init__.py +0 -0
  4. kaggle/api/kaggle_api.py +614 -0
  5. kaggle/api/kaggle_api_extended.py +4657 -0
  6. kaggle/cli.py +1606 -0
  7. kaggle/configuration.py +206 -0
  8. kaggle/models/__init__.py +0 -0
  9. kaggle/models/api_blob_type.py +4 -0
  10. kaggle/models/dataset_column.py +228 -0
  11. kaggle/models/dataset_new_request.py +385 -0
  12. kaggle/models/dataset_new_version_request.py +287 -0
  13. kaggle/models/dataset_update_settings_request.py +310 -0
  14. kaggle/models/kaggle_models_extended.py +276 -0
  15. kaggle/models/kernel_push_request.py +556 -0
  16. kaggle/models/model_instance_new_version_request.py +145 -0
  17. kaggle/models/model_instance_update_request.py +351 -0
  18. kaggle/models/model_new_instance_request.py +417 -0
  19. kaggle/models/model_new_request.py +314 -0
  20. kaggle/models/model_update_request.py +282 -0
  21. kaggle/models/start_blob_upload_request.py +232 -0
  22. kaggle/models/start_blob_upload_response.py +137 -0
  23. kaggle/models/upload_file.py +169 -0
  24. kaggle/test/__init__.py +0 -0
  25. kaggle/test/test_authenticate.py +43 -0
  26. kaggle-1.7.3b1.dist-info/METADATA +348 -0
  27. kaggle-1.7.3b1.dist-info/RECORD +89 -0
  28. kaggle-1.7.3b1.dist-info/WHEEL +4 -0
  29. kaggle-1.7.3b1.dist-info/entry_points.txt +2 -0
  30. kaggle-1.7.3b1.dist-info/licenses/LICENSE.txt +201 -0
  31. kagglesdk/LICENSE +201 -0
  32. kagglesdk/__init__.py +2 -0
  33. kagglesdk/admin/__init__.py +0 -0
  34. kagglesdk/admin/services/__init__.py +0 -0
  35. kagglesdk/admin/services/inbox_file_service.py +22 -0
  36. kagglesdk/admin/types/__init__.py +0 -0
  37. kagglesdk/admin/types/inbox_file_service.py +74 -0
  38. kagglesdk/blobs/__init__.py +0 -0
  39. kagglesdk/blobs/services/__init__.py +0 -0
  40. kagglesdk/blobs/services/blob_api_service.py +25 -0
  41. kagglesdk/blobs/types/__init__.py +0 -0
  42. kagglesdk/blobs/types/blob_api_service.py +177 -0
  43. kagglesdk/common/__init__.py +0 -0
  44. kagglesdk/common/types/__init__.py +0 -0
  45. kagglesdk/common/types/file_download.py +102 -0
  46. kagglesdk/common/types/http_redirect.py +105 -0
  47. kagglesdk/competitions/__init__.py +0 -0
  48. kagglesdk/competitions/services/__init__.py +0 -0
  49. kagglesdk/competitions/services/competition_api_service.py +129 -0
  50. kagglesdk/competitions/types/__init__.py +0 -0
  51. kagglesdk/competitions/types/competition_api_service.py +1874 -0
  52. kagglesdk/competitions/types/competition_enums.py +53 -0
  53. kagglesdk/competitions/types/submission_status.py +9 -0
  54. kagglesdk/datasets/__init__.py +0 -0
  55. kagglesdk/datasets/services/__init__.py +0 -0
  56. kagglesdk/datasets/services/dataset_api_service.py +170 -0
  57. kagglesdk/datasets/types/__init__.py +0 -0
  58. kagglesdk/datasets/types/dataset_api_service.py +2777 -0
  59. kagglesdk/datasets/types/dataset_enums.py +82 -0
  60. kagglesdk/datasets/types/dataset_types.py +646 -0
  61. kagglesdk/education/__init__.py +0 -0
  62. kagglesdk/education/services/__init__.py +0 -0
  63. kagglesdk/education/services/education_api_service.py +19 -0
  64. kagglesdk/education/types/__init__.py +0 -0
  65. kagglesdk/education/types/education_api_service.py +248 -0
  66. kagglesdk/education/types/education_service.py +139 -0
  67. kagglesdk/kaggle_client.py +66 -0
  68. kagglesdk/kaggle_env.py +42 -0
  69. kagglesdk/kaggle_http_client.py +316 -0
  70. kagglesdk/kaggle_object.py +293 -0
  71. kagglesdk/kernels/__init__.py +0 -0
  72. kagglesdk/kernels/services/__init__.py +0 -0
  73. kagglesdk/kernels/services/kernels_api_service.py +109 -0
  74. kagglesdk/kernels/types/__init__.py +0 -0
  75. kagglesdk/kernels/types/kernels_api_service.py +1951 -0
  76. kagglesdk/kernels/types/kernels_enums.py +33 -0
  77. kagglesdk/models/__init__.py +0 -0
  78. kagglesdk/models/services/__init__.py +0 -0
  79. kagglesdk/models/services/model_api_service.py +255 -0
  80. kagglesdk/models/services/model_service.py +19 -0
  81. kagglesdk/models/types/__init__.py +0 -0
  82. kagglesdk/models/types/model_api_service.py +3719 -0
  83. kagglesdk/models/types/model_enums.py +60 -0
  84. kagglesdk/models/types/model_service.py +275 -0
  85. kagglesdk/models/types/model_types.py +286 -0
  86. kagglesdk/test/test_client.py +45 -0
  87. kagglesdk/users/__init__.py +0 -0
  88. kagglesdk/users/types/__init__.py +0 -0
  89. kagglesdk/users/types/users_enums.py +22 -0
@@ -0,0 +1,2777 @@
1
+ from datetime import datetime
2
+ from kagglesdk.datasets.types.dataset_enums import DatabundleVersionStatus, DatasetFileTypeGroup, DatasetLicenseGroup, DatasetSelectionGroup, DatasetSizeGroup, DatasetSortBy, DatasetViewedGroup
3
+ from kagglesdk.datasets.types.dataset_types import DatasetInfo, DatasetSettings
4
+ from kagglesdk.kaggle_object import *
5
+ from typing import Optional, List
6
+
7
+ class ApiCreateDatasetRequest(KaggleObject):
8
+ r"""
9
+ Attributes:
10
+ id (int)
11
+ owner_slug (str)
12
+ slug (str)
13
+ title (str)
14
+ license_name (str)
15
+ is_private (bool)
16
+ files (ApiDatasetNewFile)
17
+ subtitle (str)
18
+ description (str)
19
+ category_ids (str)
20
+ """
21
+
22
+ def __init__(self):
23
+ self._id = None
24
+ self._owner_slug = None
25
+ self._slug = None
26
+ self._title = None
27
+ self._license_name = None
28
+ self._is_private = False
29
+ self._files = []
30
+ self._subtitle = None
31
+ self._description = None
32
+ self._category_ids = []
33
+ self._freeze()
34
+
35
+ @property
36
+ def id(self) -> int:
37
+ return self._id or 0
38
+
39
+ @id.setter
40
+ def id(self, id: int):
41
+ if id is None:
42
+ del self.id
43
+ return
44
+ if not isinstance(id, int):
45
+ raise TypeError('id must be of type int')
46
+ self._id = id
47
+
48
+ @property
49
+ def owner_slug(self) -> str:
50
+ return self._owner_slug or ""
51
+
52
+ @owner_slug.setter
53
+ def owner_slug(self, owner_slug: str):
54
+ if owner_slug is None:
55
+ del self.owner_slug
56
+ return
57
+ if not isinstance(owner_slug, str):
58
+ raise TypeError('owner_slug must be of type str')
59
+ self._owner_slug = owner_slug
60
+
61
+ @property
62
+ def slug(self) -> str:
63
+ return self._slug or ""
64
+
65
+ @slug.setter
66
+ def slug(self, slug: str):
67
+ if slug is None:
68
+ del self.slug
69
+ return
70
+ if not isinstance(slug, str):
71
+ raise TypeError('slug must be of type str')
72
+ self._slug = slug
73
+
74
+ @property
75
+ def title(self) -> str:
76
+ return self._title or ""
77
+
78
+ @title.setter
79
+ def title(self, title: str):
80
+ if title is None:
81
+ del self.title
82
+ return
83
+ if not isinstance(title, str):
84
+ raise TypeError('title must be of type str')
85
+ self._title = title
86
+
87
+ @property
88
+ def license_name(self) -> str:
89
+ return self._license_name or ""
90
+
91
+ @license_name.setter
92
+ def license_name(self, license_name: str):
93
+ if license_name is None:
94
+ del self.license_name
95
+ return
96
+ if not isinstance(license_name, str):
97
+ raise TypeError('license_name must be of type str')
98
+ self._license_name = license_name
99
+
100
+ @property
101
+ def is_private(self) -> bool:
102
+ return self._is_private
103
+
104
+ @is_private.setter
105
+ def is_private(self, is_private: bool):
106
+ if is_private is None:
107
+ del self.is_private
108
+ return
109
+ if not isinstance(is_private, bool):
110
+ raise TypeError('is_private must be of type bool')
111
+ self._is_private = is_private
112
+
113
+ @property
114
+ def files(self) -> Optional[List[Optional['ApiDatasetNewFile']]]:
115
+ return self._files
116
+
117
+ @files.setter
118
+ def files(self, files: Optional[List[Optional['ApiDatasetNewFile']]]):
119
+ if files is None:
120
+ del self.files
121
+ return
122
+ if not isinstance(files, list):
123
+ raise TypeError('files must be of type list')
124
+ if not all([isinstance(t, ApiDatasetNewFile) for t in files]):
125
+ raise TypeError('files must contain only items of type ApiDatasetNewFile')
126
+ self._files = files
127
+
128
+ @property
129
+ def subtitle(self) -> str:
130
+ return self._subtitle or ""
131
+
132
+ @subtitle.setter
133
+ def subtitle(self, subtitle: str):
134
+ if subtitle is None:
135
+ del self.subtitle
136
+ return
137
+ if not isinstance(subtitle, str):
138
+ raise TypeError('subtitle must be of type str')
139
+ self._subtitle = subtitle
140
+
141
+ @property
142
+ def description(self) -> str:
143
+ return self._description or ""
144
+
145
+ @description.setter
146
+ def description(self, description: str):
147
+ if description is None:
148
+ del self.description
149
+ return
150
+ if not isinstance(description, str):
151
+ raise TypeError('description must be of type str')
152
+ self._description = description
153
+
154
+ @property
155
+ def category_ids(self) -> Optional[List[str]]:
156
+ return self._category_ids
157
+
158
+ @category_ids.setter
159
+ def category_ids(self, category_ids: Optional[List[str]]):
160
+ if category_ids is None:
161
+ del self.category_ids
162
+ return
163
+ if not isinstance(category_ids, list):
164
+ raise TypeError('category_ids must be of type list')
165
+ if not all([isinstance(t, str) for t in category_ids]):
166
+ raise TypeError('category_ids must contain only items of type str')
167
+ self._category_ids = category_ids
168
+
169
+ def endpoint(self):
170
+ path = '/api/v1/datasets/create/new'
171
+ return path.format_map(self.to_field_map(self))
172
+
173
+
174
+ @staticmethod
175
+ def method():
176
+ return 'POST'
177
+
178
+ @staticmethod
179
+ def body_fields():
180
+ return '*'
181
+
182
+
183
+ class ApiCreateDatasetResponse(KaggleObject):
184
+ r"""
185
+ Attributes:
186
+ ref (str)
187
+ url (str)
188
+ status (str)
189
+ error (str)
190
+ invalid_tags (str)
191
+ """
192
+
193
+ def __init__(self):
194
+ self._ref = None
195
+ self._url = None
196
+ self._status = None
197
+ self._error = None
198
+ self._invalid_tags = []
199
+ self._freeze()
200
+
201
+ @property
202
+ def ref(self) -> str:
203
+ return self._ref or ""
204
+
205
+ @ref.setter
206
+ def ref(self, ref: str):
207
+ if ref is None:
208
+ del self.ref
209
+ return
210
+ if not isinstance(ref, str):
211
+ raise TypeError('ref must be of type str')
212
+ self._ref = ref
213
+
214
+ @property
215
+ def url(self) -> str:
216
+ return self._url or ""
217
+
218
+ @url.setter
219
+ def url(self, url: str):
220
+ if url is None:
221
+ del self.url
222
+ return
223
+ if not isinstance(url, str):
224
+ raise TypeError('url must be of type str')
225
+ self._url = url
226
+
227
+ @property
228
+ def status(self) -> str:
229
+ return self._status or ""
230
+
231
+ @status.setter
232
+ def status(self, status: str):
233
+ if status is None:
234
+ del self.status
235
+ return
236
+ if not isinstance(status, str):
237
+ raise TypeError('status must be of type str')
238
+ self._status = status
239
+
240
+ @property
241
+ def error(self) -> str:
242
+ return self._error or ""
243
+
244
+ @error.setter
245
+ def error(self, error: str):
246
+ if error is None:
247
+ del self.error
248
+ return
249
+ if not isinstance(error, str):
250
+ raise TypeError('error must be of type str')
251
+ self._error = error
252
+
253
+ @property
254
+ def invalid_tags(self) -> Optional[List[str]]:
255
+ return self._invalid_tags
256
+
257
+ @invalid_tags.setter
258
+ def invalid_tags(self, invalid_tags: Optional[List[str]]):
259
+ if invalid_tags is None:
260
+ del self.invalid_tags
261
+ return
262
+ if not isinstance(invalid_tags, list):
263
+ raise TypeError('invalid_tags must be of type list')
264
+ if not all([isinstance(t, str) for t in invalid_tags]):
265
+ raise TypeError('invalid_tags must contain only items of type str')
266
+ self._invalid_tags = invalid_tags
267
+
268
+ @property
269
+ def invalidTags(self):
270
+ return self.invalid_tags
271
+
272
+
273
+ class ApiCreateDatasetVersionByIdRequest(KaggleObject):
274
+ r"""
275
+ Attributes:
276
+ id (int)
277
+ body (ApiCreateDatasetVersionRequestBody)
278
+ """
279
+
280
+ def __init__(self):
281
+ self._id = 0
282
+ self._body = None
283
+ self._freeze()
284
+
285
+ @property
286
+ def id(self) -> int:
287
+ return self._id
288
+
289
+ @id.setter
290
+ def id(self, id: int):
291
+ if id is None:
292
+ del self.id
293
+ return
294
+ if not isinstance(id, int):
295
+ raise TypeError('id must be of type int')
296
+ self._id = id
297
+
298
+ @property
299
+ def body(self) -> Optional['ApiCreateDatasetVersionRequestBody']:
300
+ return self._body
301
+
302
+ @body.setter
303
+ def body(self, body: Optional['ApiCreateDatasetVersionRequestBody']):
304
+ if body is None:
305
+ del self.body
306
+ return
307
+ if not isinstance(body, ApiCreateDatasetVersionRequestBody):
308
+ raise TypeError('body must be of type ApiCreateDatasetVersionRequestBody')
309
+ self._body = body
310
+
311
+ def endpoint(self):
312
+ path = '/api/v1/datasets/create/version/{id}'
313
+ return path.format_map(self.to_field_map(self))
314
+
315
+
316
+ @staticmethod
317
+ def method():
318
+ return 'POST'
319
+
320
+ @staticmethod
321
+ def body_fields():
322
+ return 'body'
323
+
324
+
325
+ class ApiCreateDatasetVersionRequest(KaggleObject):
326
+ r"""
327
+ Attributes:
328
+ owner_slug (str)
329
+ dataset_slug (str)
330
+ body (ApiCreateDatasetVersionRequestBody)
331
+ """
332
+
333
+ def __init__(self):
334
+ self._owner_slug = ""
335
+ self._dataset_slug = ""
336
+ self._body = None
337
+ self._freeze()
338
+
339
+ @property
340
+ def owner_slug(self) -> str:
341
+ return self._owner_slug
342
+
343
+ @owner_slug.setter
344
+ def owner_slug(self, owner_slug: str):
345
+ if owner_slug is None:
346
+ del self.owner_slug
347
+ return
348
+ if not isinstance(owner_slug, str):
349
+ raise TypeError('owner_slug must be of type str')
350
+ self._owner_slug = owner_slug
351
+
352
+ @property
353
+ def dataset_slug(self) -> str:
354
+ return self._dataset_slug
355
+
356
+ @dataset_slug.setter
357
+ def dataset_slug(self, dataset_slug: str):
358
+ if dataset_slug is None:
359
+ del self.dataset_slug
360
+ return
361
+ if not isinstance(dataset_slug, str):
362
+ raise TypeError('dataset_slug must be of type str')
363
+ self._dataset_slug = dataset_slug
364
+
365
+ @property
366
+ def body(self) -> Optional['ApiCreateDatasetVersionRequestBody']:
367
+ return self._body
368
+
369
+ @body.setter
370
+ def body(self, body: Optional['ApiCreateDatasetVersionRequestBody']):
371
+ if body is None:
372
+ del self.body
373
+ return
374
+ if not isinstance(body, ApiCreateDatasetVersionRequestBody):
375
+ raise TypeError('body must be of type ApiCreateDatasetVersionRequestBody')
376
+ self._body = body
377
+
378
+ def endpoint(self):
379
+ path = '/api/v1/datasets/create/version/{owner_slug}/{dataset_slug}'
380
+ return path.format_map(self.to_field_map(self))
381
+
382
+
383
+ @staticmethod
384
+ def method():
385
+ return 'POST'
386
+
387
+ @staticmethod
388
+ def body_fields():
389
+ return 'body'
390
+
391
+
392
+ class ApiCreateDatasetVersionRequestBody(KaggleObject):
393
+ r"""
394
+ Attributes:
395
+ version_notes (str)
396
+ delete_old_versions (bool)
397
+ files (ApiDatasetNewFile)
398
+ subtitle (str)
399
+ description (str)
400
+ category_ids (str)
401
+ """
402
+
403
+ def __init__(self):
404
+ self._version_notes = None
405
+ self._delete_old_versions = False
406
+ self._files = []
407
+ self._subtitle = None
408
+ self._description = None
409
+ self._category_ids = []
410
+ self._freeze()
411
+
412
+ @property
413
+ def version_notes(self) -> str:
414
+ return self._version_notes or ""
415
+
416
+ @version_notes.setter
417
+ def version_notes(self, version_notes: str):
418
+ if version_notes is None:
419
+ del self.version_notes
420
+ return
421
+ if not isinstance(version_notes, str):
422
+ raise TypeError('version_notes must be of type str')
423
+ self._version_notes = version_notes
424
+
425
+ @property
426
+ def delete_old_versions(self) -> bool:
427
+ return self._delete_old_versions
428
+
429
+ @delete_old_versions.setter
430
+ def delete_old_versions(self, delete_old_versions: bool):
431
+ if delete_old_versions is None:
432
+ del self.delete_old_versions
433
+ return
434
+ if not isinstance(delete_old_versions, bool):
435
+ raise TypeError('delete_old_versions must be of type bool')
436
+ self._delete_old_versions = delete_old_versions
437
+
438
+ @property
439
+ def files(self) -> Optional[List[Optional['ApiDatasetNewFile']]]:
440
+ return self._files
441
+
442
+ @files.setter
443
+ def files(self, files: Optional[List[Optional['ApiDatasetNewFile']]]):
444
+ if files is None:
445
+ del self.files
446
+ return
447
+ if not isinstance(files, list):
448
+ raise TypeError('files must be of type list')
449
+ if not all([isinstance(t, ApiDatasetNewFile) for t in files]):
450
+ raise TypeError('files must contain only items of type ApiDatasetNewFile')
451
+ self._files = files
452
+
453
+ @property
454
+ def subtitle(self) -> str:
455
+ return self._subtitle or ""
456
+
457
+ @subtitle.setter
458
+ def subtitle(self, subtitle: str):
459
+ if subtitle is None:
460
+ del self.subtitle
461
+ return
462
+ if not isinstance(subtitle, str):
463
+ raise TypeError('subtitle must be of type str')
464
+ self._subtitle = subtitle
465
+
466
+ @property
467
+ def description(self) -> str:
468
+ return self._description or ""
469
+
470
+ @description.setter
471
+ def description(self, description: str):
472
+ if description is None:
473
+ del self.description
474
+ return
475
+ if not isinstance(description, str):
476
+ raise TypeError('description must be of type str')
477
+ self._description = description
478
+
479
+ @property
480
+ def category_ids(self) -> Optional[List[str]]:
481
+ return self._category_ids
482
+
483
+ @category_ids.setter
484
+ def category_ids(self, category_ids: Optional[List[str]]):
485
+ if category_ids is None:
486
+ del self.category_ids
487
+ return
488
+ if not isinstance(category_ids, list):
489
+ raise TypeError('category_ids must be of type list')
490
+ if not all([isinstance(t, str) for t in category_ids]):
491
+ raise TypeError('category_ids must contain only items of type str')
492
+ self._category_ids = category_ids
493
+
494
+
495
+ class ApiDataset(KaggleObject):
496
+ r"""
497
+ Attributes:
498
+ id (int)
499
+ ref (str)
500
+ subtitle (str)
501
+ creator_name (str)
502
+ creator_url (str)
503
+ total_bytes (int)
504
+ url (str)
505
+ last_updated (datetime)
506
+ download_count (int)
507
+ is_private (bool)
508
+ is_featured (bool)
509
+ license_name (str)
510
+ description (str)
511
+ owner_name (str)
512
+ owner_ref (str)
513
+ kernel_count (int)
514
+ title (str)
515
+ topic_count (int)
516
+ view_count (int)
517
+ vote_count (int)
518
+ current_version_number (int)
519
+ usability_rating (float)
520
+ tags (ApiCategory)
521
+ files (ApiDatasetFile)
522
+ versions (ApiDatasetVersion)
523
+ """
524
+
525
+ def __init__(self):
526
+ self._id = 0
527
+ self._ref = ""
528
+ self._subtitle = None
529
+ self._creator_name = None
530
+ self._creator_url = None
531
+ self._total_bytes = None
532
+ self._url = None
533
+ self._last_updated = None
534
+ self._download_count = 0
535
+ self._is_private = False
536
+ self._is_featured = False
537
+ self._license_name = None
538
+ self._description = None
539
+ self._owner_name = None
540
+ self._owner_ref = None
541
+ self._kernel_count = 0
542
+ self._title = None
543
+ self._topic_count = 0
544
+ self._view_count = 0
545
+ self._vote_count = 0
546
+ self._current_version_number = None
547
+ self._usability_rating = None
548
+ self._tags = []
549
+ self._files = []
550
+ self._versions = []
551
+ self._freeze()
552
+
553
+ @property
554
+ def id(self) -> int:
555
+ return self._id
556
+
557
+ @id.setter
558
+ def id(self, id: int):
559
+ if id is None:
560
+ del self.id
561
+ return
562
+ if not isinstance(id, int):
563
+ raise TypeError('id must be of type int')
564
+ self._id = id
565
+
566
+ @property
567
+ def ref(self) -> str:
568
+ return self._ref
569
+
570
+ @ref.setter
571
+ def ref(self, ref: str):
572
+ if ref is None:
573
+ del self.ref
574
+ return
575
+ if not isinstance(ref, str):
576
+ raise TypeError('ref must be of type str')
577
+ self._ref = ref
578
+
579
+ @property
580
+ def subtitle(self) -> str:
581
+ return self._subtitle or ""
582
+
583
+ @subtitle.setter
584
+ def subtitle(self, subtitle: str):
585
+ if subtitle is None:
586
+ del self.subtitle
587
+ return
588
+ if not isinstance(subtitle, str):
589
+ raise TypeError('subtitle must be of type str')
590
+ self._subtitle = subtitle
591
+
592
+ @property
593
+ def creator_name(self) -> str:
594
+ return self._creator_name or ""
595
+
596
+ @creator_name.setter
597
+ def creator_name(self, creator_name: str):
598
+ if creator_name is None:
599
+ del self.creator_name
600
+ return
601
+ if not isinstance(creator_name, str):
602
+ raise TypeError('creator_name must be of type str')
603
+ self._creator_name = creator_name
604
+
605
+ @property
606
+ def creator_url(self) -> str:
607
+ return self._creator_url or ""
608
+
609
+ @creator_url.setter
610
+ def creator_url(self, creator_url: str):
611
+ if creator_url is None:
612
+ del self.creator_url
613
+ return
614
+ if not isinstance(creator_url, str):
615
+ raise TypeError('creator_url must be of type str')
616
+ self._creator_url = creator_url
617
+
618
+ @property
619
+ def total_bytes(self) -> int:
620
+ return self._total_bytes or 0
621
+
622
+ @total_bytes.setter
623
+ def total_bytes(self, total_bytes: int):
624
+ if total_bytes is None:
625
+ del self.total_bytes
626
+ return
627
+ if not isinstance(total_bytes, int):
628
+ raise TypeError('total_bytes must be of type int')
629
+ self._total_bytes = total_bytes
630
+
631
+ @property
632
+ def url(self) -> str:
633
+ return self._url or ""
634
+
635
+ @url.setter
636
+ def url(self, url: str):
637
+ if url is None:
638
+ del self.url
639
+ return
640
+ if not isinstance(url, str):
641
+ raise TypeError('url must be of type str')
642
+ self._url = url
643
+
644
+ @property
645
+ def last_updated(self) -> datetime:
646
+ return self._last_updated
647
+
648
+ @last_updated.setter
649
+ def last_updated(self, last_updated: datetime):
650
+ if last_updated is None:
651
+ del self.last_updated
652
+ return
653
+ if not isinstance(last_updated, datetime):
654
+ raise TypeError('last_updated must be of type datetime')
655
+ self._last_updated = last_updated
656
+
657
+ @property
658
+ def download_count(self) -> int:
659
+ return self._download_count
660
+
661
+ @download_count.setter
662
+ def download_count(self, download_count: int):
663
+ if download_count is None:
664
+ del self.download_count
665
+ return
666
+ if not isinstance(download_count, int):
667
+ raise TypeError('download_count must be of type int')
668
+ self._download_count = download_count
669
+
670
+ @property
671
+ def is_private(self) -> bool:
672
+ return self._is_private
673
+
674
+ @is_private.setter
675
+ def is_private(self, is_private: bool):
676
+ if is_private is None:
677
+ del self.is_private
678
+ return
679
+ if not isinstance(is_private, bool):
680
+ raise TypeError('is_private must be of type bool')
681
+ self._is_private = is_private
682
+
683
+ @property
684
+ def is_featured(self) -> bool:
685
+ return self._is_featured
686
+
687
+ @is_featured.setter
688
+ def is_featured(self, is_featured: bool):
689
+ if is_featured is None:
690
+ del self.is_featured
691
+ return
692
+ if not isinstance(is_featured, bool):
693
+ raise TypeError('is_featured must be of type bool')
694
+ self._is_featured = is_featured
695
+
696
+ @property
697
+ def license_name(self) -> str:
698
+ return self._license_name or ""
699
+
700
+ @license_name.setter
701
+ def license_name(self, license_name: str):
702
+ if license_name is None:
703
+ del self.license_name
704
+ return
705
+ if not isinstance(license_name, str):
706
+ raise TypeError('license_name must be of type str')
707
+ self._license_name = license_name
708
+
709
+ @property
710
+ def description(self) -> str:
711
+ return self._description or ""
712
+
713
+ @description.setter
714
+ def description(self, description: str):
715
+ if description is None:
716
+ del self.description
717
+ return
718
+ if not isinstance(description, str):
719
+ raise TypeError('description must be of type str')
720
+ self._description = description
721
+
722
+ @property
723
+ def owner_name(self) -> str:
724
+ return self._owner_name or ""
725
+
726
+ @owner_name.setter
727
+ def owner_name(self, owner_name: str):
728
+ if owner_name is None:
729
+ del self.owner_name
730
+ return
731
+ if not isinstance(owner_name, str):
732
+ raise TypeError('owner_name must be of type str')
733
+ self._owner_name = owner_name
734
+
735
+ @property
736
+ def owner_ref(self) -> str:
737
+ return self._owner_ref or ""
738
+
739
+ @owner_ref.setter
740
+ def owner_ref(self, owner_ref: str):
741
+ if owner_ref is None:
742
+ del self.owner_ref
743
+ return
744
+ if not isinstance(owner_ref, str):
745
+ raise TypeError('owner_ref must be of type str')
746
+ self._owner_ref = owner_ref
747
+
748
+ @property
749
+ def kernel_count(self) -> int:
750
+ return self._kernel_count
751
+
752
+ @kernel_count.setter
753
+ def kernel_count(self, kernel_count: int):
754
+ if kernel_count is None:
755
+ del self.kernel_count
756
+ return
757
+ if not isinstance(kernel_count, int):
758
+ raise TypeError('kernel_count must be of type int')
759
+ self._kernel_count = kernel_count
760
+
761
+ @property
762
+ def title(self) -> str:
763
+ return self._title or ""
764
+
765
+ @title.setter
766
+ def title(self, title: str):
767
+ if title is None:
768
+ del self.title
769
+ return
770
+ if not isinstance(title, str):
771
+ raise TypeError('title must be of type str')
772
+ self._title = title
773
+
774
+ @property
775
+ def topic_count(self) -> int:
776
+ return self._topic_count
777
+
778
+ @topic_count.setter
779
+ def topic_count(self, topic_count: int):
780
+ if topic_count is None:
781
+ del self.topic_count
782
+ return
783
+ if not isinstance(topic_count, int):
784
+ raise TypeError('topic_count must be of type int')
785
+ self._topic_count = topic_count
786
+
787
+ @property
788
+ def view_count(self) -> int:
789
+ return self._view_count
790
+
791
+ @view_count.setter
792
+ def view_count(self, view_count: int):
793
+ if view_count is None:
794
+ del self.view_count
795
+ return
796
+ if not isinstance(view_count, int):
797
+ raise TypeError('view_count must be of type int')
798
+ self._view_count = view_count
799
+
800
+ @property
801
+ def vote_count(self) -> int:
802
+ return self._vote_count
803
+
804
+ @vote_count.setter
805
+ def vote_count(self, vote_count: int):
806
+ if vote_count is None:
807
+ del self.vote_count
808
+ return
809
+ if not isinstance(vote_count, int):
810
+ raise TypeError('vote_count must be of type int')
811
+ self._vote_count = vote_count
812
+
813
+ @property
814
+ def current_version_number(self) -> int:
815
+ return self._current_version_number or 0
816
+
817
+ @current_version_number.setter
818
+ def current_version_number(self, current_version_number: int):
819
+ if current_version_number is None:
820
+ del self.current_version_number
821
+ return
822
+ if not isinstance(current_version_number, int):
823
+ raise TypeError('current_version_number must be of type int')
824
+ self._current_version_number = current_version_number
825
+
826
+ @property
827
+ def usability_rating(self) -> float:
828
+ return self._usability_rating or 0.0
829
+
830
+ @usability_rating.setter
831
+ def usability_rating(self, usability_rating: float):
832
+ if usability_rating is None:
833
+ del self.usability_rating
834
+ return
835
+ if not isinstance(usability_rating, float):
836
+ raise TypeError('usability_rating must be of type float')
837
+ self._usability_rating = usability_rating
838
+
839
+ @property
840
+ def tags(self) -> Optional[List[Optional['ApiCategory']]]:
841
+ return self._tags
842
+
843
+ @tags.setter
844
+ def tags(self, tags: Optional[List[Optional['ApiCategory']]]):
845
+ if tags is None:
846
+ del self.tags
847
+ return
848
+ if not isinstance(tags, list):
849
+ raise TypeError('tags must be of type list')
850
+ if not all([isinstance(t, ApiCategory) for t in tags]):
851
+ raise TypeError('tags must contain only items of type ApiCategory')
852
+ self._tags = tags
853
+
854
+ @property
855
+ def files(self) -> Optional[List[Optional['ApiDatasetFile']]]:
856
+ return self._files
857
+
858
+ @files.setter
859
+ def files(self, files: Optional[List[Optional['ApiDatasetFile']]]):
860
+ if files is None:
861
+ del self.files
862
+ return
863
+ if not isinstance(files, list):
864
+ raise TypeError('files must be of type list')
865
+ if not all([isinstance(t, ApiDatasetFile) for t in files]):
866
+ raise TypeError('files must contain only items of type ApiDatasetFile')
867
+ self._files = files
868
+
869
+ @property
870
+ def versions(self) -> Optional[List[Optional['ApiDatasetVersion']]]:
871
+ return self._versions
872
+
873
+ @versions.setter
874
+ def versions(self, versions: Optional[List[Optional['ApiDatasetVersion']]]):
875
+ if versions is None:
876
+ del self.versions
877
+ return
878
+ if not isinstance(versions, list):
879
+ raise TypeError('versions must be of type list')
880
+ if not all([isinstance(t, ApiDatasetVersion) for t in versions]):
881
+ raise TypeError('versions must contain only items of type ApiDatasetVersion')
882
+ self._versions = versions
883
+
884
+
885
+ class ApiDatasetFile(KaggleObject):
886
+ r"""
887
+ Attributes:
888
+ ref (str)
889
+ dataset_ref (str)
890
+ owner_ref (str)
891
+ name (str)
892
+ creation_date (datetime)
893
+ description (str)
894
+ file_type (str)
895
+ url (str)
896
+ total_bytes (int)
897
+ columns (ApiDatasetColumn)
898
+ """
899
+
900
+ def __init__(self):
901
+ self._ref = ""
902
+ self._dataset_ref = None
903
+ self._owner_ref = None
904
+ self._name = None
905
+ self._creation_date = None
906
+ self._description = None
907
+ self._file_type = None
908
+ self._url = None
909
+ self._total_bytes = 0
910
+ self._columns = []
911
+ self._freeze()
912
+
913
+ @property
914
+ def ref(self) -> str:
915
+ return self._ref
916
+
917
+ @ref.setter
918
+ def ref(self, ref: str):
919
+ if ref is None:
920
+ del self.ref
921
+ return
922
+ if not isinstance(ref, str):
923
+ raise TypeError('ref must be of type str')
924
+ self._ref = ref
925
+
926
+ @property
927
+ def dataset_ref(self) -> str:
928
+ return self._dataset_ref or ""
929
+
930
+ @dataset_ref.setter
931
+ def dataset_ref(self, dataset_ref: str):
932
+ if dataset_ref is None:
933
+ del self.dataset_ref
934
+ return
935
+ if not isinstance(dataset_ref, str):
936
+ raise TypeError('dataset_ref must be of type str')
937
+ self._dataset_ref = dataset_ref
938
+
939
+ @property
940
+ def owner_ref(self) -> str:
941
+ return self._owner_ref or ""
942
+
943
+ @owner_ref.setter
944
+ def owner_ref(self, owner_ref: str):
945
+ if owner_ref is None:
946
+ del self.owner_ref
947
+ return
948
+ if not isinstance(owner_ref, str):
949
+ raise TypeError('owner_ref must be of type str')
950
+ self._owner_ref = owner_ref
951
+
952
+ @property
953
+ def name(self) -> str:
954
+ return self._name or ""
955
+
956
+ @name.setter
957
+ def name(self, name: str):
958
+ if name is None:
959
+ del self.name
960
+ return
961
+ if not isinstance(name, str):
962
+ raise TypeError('name must be of type str')
963
+ self._name = name
964
+
965
+ @property
966
+ def creation_date(self) -> datetime:
967
+ return self._creation_date
968
+
969
+ @creation_date.setter
970
+ def creation_date(self, creation_date: datetime):
971
+ if creation_date is None:
972
+ del self.creation_date
973
+ return
974
+ if not isinstance(creation_date, datetime):
975
+ raise TypeError('creation_date must be of type datetime')
976
+ self._creation_date = creation_date
977
+
978
+ @property
979
+ def description(self) -> str:
980
+ return self._description or ""
981
+
982
+ @description.setter
983
+ def description(self, description: str):
984
+ if description is None:
985
+ del self.description
986
+ return
987
+ if not isinstance(description, str):
988
+ raise TypeError('description must be of type str')
989
+ self._description = description
990
+
991
+ @property
992
+ def file_type(self) -> str:
993
+ return self._file_type or ""
994
+
995
+ @file_type.setter
996
+ def file_type(self, file_type: str):
997
+ if file_type is None:
998
+ del self.file_type
999
+ return
1000
+ if not isinstance(file_type, str):
1001
+ raise TypeError('file_type must be of type str')
1002
+ self._file_type = file_type
1003
+
1004
+ @property
1005
+ def url(self) -> str:
1006
+ return self._url or ""
1007
+
1008
+ @url.setter
1009
+ def url(self, url: str):
1010
+ if url is None:
1011
+ del self.url
1012
+ return
1013
+ if not isinstance(url, str):
1014
+ raise TypeError('url must be of type str')
1015
+ self._url = url
1016
+
1017
+ @property
1018
+ def total_bytes(self) -> int:
1019
+ return self._total_bytes
1020
+
1021
+ @total_bytes.setter
1022
+ def total_bytes(self, total_bytes: int):
1023
+ if total_bytes is None:
1024
+ del self.total_bytes
1025
+ return
1026
+ if not isinstance(total_bytes, int):
1027
+ raise TypeError('total_bytes must be of type int')
1028
+ self._total_bytes = total_bytes
1029
+
1030
+ @property
1031
+ def columns(self) -> Optional[List[Optional['ApiDatasetColumn']]]:
1032
+ return self._columns
1033
+
1034
+ @columns.setter
1035
+ def columns(self, columns: Optional[List[Optional['ApiDatasetColumn']]]):
1036
+ if columns is None:
1037
+ del self.columns
1038
+ return
1039
+ if not isinstance(columns, list):
1040
+ raise TypeError('columns must be of type list')
1041
+ if not all([isinstance(t, ApiDatasetColumn) for t in columns]):
1042
+ raise TypeError('columns must contain only items of type ApiDatasetColumn')
1043
+ self._columns = columns
1044
+
1045
+
1046
+ class ApiDatasetNewFile(KaggleObject):
1047
+ r"""
1048
+ Attributes:
1049
+ token (str)
1050
+ description (str)
1051
+ columns (ApiDatasetColumn)
1052
+ """
1053
+
1054
+ def __init__(self):
1055
+ self._token = None
1056
+ self._description = None
1057
+ self._columns = []
1058
+ self._freeze()
1059
+
1060
+ @property
1061
+ def token(self) -> str:
1062
+ return self._token or ""
1063
+
1064
+ @token.setter
1065
+ def token(self, token: str):
1066
+ if token is None:
1067
+ del self.token
1068
+ return
1069
+ if not isinstance(token, str):
1070
+ raise TypeError('token must be of type str')
1071
+ self._token = token
1072
+
1073
+ @property
1074
+ def description(self) -> str:
1075
+ return self._description or ""
1076
+
1077
+ @description.setter
1078
+ def description(self, description: str):
1079
+ if description is None:
1080
+ del self.description
1081
+ return
1082
+ if not isinstance(description, str):
1083
+ raise TypeError('description must be of type str')
1084
+ self._description = description
1085
+
1086
+ @property
1087
+ def columns(self) -> Optional[List[Optional['ApiDatasetColumn']]]:
1088
+ return self._columns
1089
+
1090
+ @columns.setter
1091
+ def columns(self, columns: Optional[List[Optional['ApiDatasetColumn']]]):
1092
+ if columns is None:
1093
+ del self.columns
1094
+ return
1095
+ if not isinstance(columns, list):
1096
+ raise TypeError('columns must be of type list')
1097
+ if not all([isinstance(t, ApiDatasetColumn) for t in columns]):
1098
+ raise TypeError('columns must contain only items of type ApiDatasetColumn')
1099
+ self._columns = columns
1100
+
1101
+
1102
+ class ApiDatasetVersion(KaggleObject):
1103
+ r"""
1104
+ Attributes:
1105
+ version_number (int)
1106
+ creation_date (datetime)
1107
+ creator_name (str)
1108
+ creator_ref (str)
1109
+ version_notes (str)
1110
+ status (str)
1111
+ """
1112
+
1113
+ def __init__(self):
1114
+ self._version_number = 0
1115
+ self._creation_date = None
1116
+ self._creator_name = None
1117
+ self._creator_ref = None
1118
+ self._version_notes = None
1119
+ self._status = None
1120
+ self._freeze()
1121
+
1122
+ @property
1123
+ def version_number(self) -> int:
1124
+ return self._version_number
1125
+
1126
+ @version_number.setter
1127
+ def version_number(self, version_number: int):
1128
+ if version_number is None:
1129
+ del self.version_number
1130
+ return
1131
+ if not isinstance(version_number, int):
1132
+ raise TypeError('version_number must be of type int')
1133
+ self._version_number = version_number
1134
+
1135
+ @property
1136
+ def creation_date(self) -> datetime:
1137
+ return self._creation_date
1138
+
1139
+ @creation_date.setter
1140
+ def creation_date(self, creation_date: datetime):
1141
+ if creation_date is None:
1142
+ del self.creation_date
1143
+ return
1144
+ if not isinstance(creation_date, datetime):
1145
+ raise TypeError('creation_date must be of type datetime')
1146
+ self._creation_date = creation_date
1147
+
1148
+ @property
1149
+ def creator_name(self) -> str:
1150
+ return self._creator_name or ""
1151
+
1152
+ @creator_name.setter
1153
+ def creator_name(self, creator_name: str):
1154
+ if creator_name is None:
1155
+ del self.creator_name
1156
+ return
1157
+ if not isinstance(creator_name, str):
1158
+ raise TypeError('creator_name must be of type str')
1159
+ self._creator_name = creator_name
1160
+
1161
+ @property
1162
+ def creator_ref(self) -> str:
1163
+ return self._creator_ref or ""
1164
+
1165
+ @creator_ref.setter
1166
+ def creator_ref(self, creator_ref: str):
1167
+ if creator_ref is None:
1168
+ del self.creator_ref
1169
+ return
1170
+ if not isinstance(creator_ref, str):
1171
+ raise TypeError('creator_ref must be of type str')
1172
+ self._creator_ref = creator_ref
1173
+
1174
+ @property
1175
+ def version_notes(self) -> str:
1176
+ return self._version_notes or ""
1177
+
1178
+ @version_notes.setter
1179
+ def version_notes(self, version_notes: str):
1180
+ if version_notes is None:
1181
+ del self.version_notes
1182
+ return
1183
+ if not isinstance(version_notes, str):
1184
+ raise TypeError('version_notes must be of type str')
1185
+ self._version_notes = version_notes
1186
+
1187
+ @property
1188
+ def status(self) -> str:
1189
+ return self._status or ""
1190
+
1191
+ @status.setter
1192
+ def status(self, status: str):
1193
+ if status is None:
1194
+ del self.status
1195
+ return
1196
+ if not isinstance(status, str):
1197
+ raise TypeError('status must be of type str')
1198
+ self._status = status
1199
+
1200
+
1201
+ class ApiDeleteDatasetRequest(KaggleObject):
1202
+ r"""
1203
+ Attributes:
1204
+ owner_slug (str)
1205
+ dataset_slug (str)
1206
+ """
1207
+
1208
+ def __init__(self):
1209
+ self._owner_slug = ""
1210
+ self._dataset_slug = ""
1211
+ self._freeze()
1212
+
1213
+ @property
1214
+ def owner_slug(self) -> str:
1215
+ return self._owner_slug
1216
+
1217
+ @owner_slug.setter
1218
+ def owner_slug(self, owner_slug: str):
1219
+ if owner_slug is None:
1220
+ del self.owner_slug
1221
+ return
1222
+ if not isinstance(owner_slug, str):
1223
+ raise TypeError('owner_slug must be of type str')
1224
+ self._owner_slug = owner_slug
1225
+
1226
+ @property
1227
+ def dataset_slug(self) -> str:
1228
+ return self._dataset_slug
1229
+
1230
+ @dataset_slug.setter
1231
+ def dataset_slug(self, dataset_slug: str):
1232
+ if dataset_slug is None:
1233
+ del self.dataset_slug
1234
+ return
1235
+ if not isinstance(dataset_slug, str):
1236
+ raise TypeError('dataset_slug must be of type str')
1237
+ self._dataset_slug = dataset_slug
1238
+
1239
+ def endpoint(self):
1240
+ path = '/api/v1/dataset/{owner_slug}/{dataset_slug}/delete'
1241
+ return path.format_map(self.to_field_map(self))
1242
+
1243
+
1244
+ @staticmethod
1245
+ def method():
1246
+ return 'POST'
1247
+
1248
+
1249
+ class ApiDeleteDatasetResponse(KaggleObject):
1250
+ r"""
1251
+ Attributes:
1252
+ error (str)
1253
+ """
1254
+
1255
+ def __init__(self):
1256
+ self._error = None
1257
+ self._freeze()
1258
+
1259
+ @property
1260
+ def error(self) -> str:
1261
+ return self._error or ""
1262
+
1263
+ @error.setter
1264
+ def error(self, error: str):
1265
+ if error is None:
1266
+ del self.error
1267
+ return
1268
+ if not isinstance(error, str):
1269
+ raise TypeError('error must be of type str')
1270
+ self._error = error
1271
+
1272
+
1273
+ class ApiDownloadDatasetRawRequest(KaggleObject):
1274
+ r"""
1275
+ Attributes:
1276
+ owner_slug (str)
1277
+ dataset_slug (str)
1278
+ file_name (str)
1279
+ dataset_version_number (int)
1280
+ """
1281
+
1282
+ def __init__(self):
1283
+ self._owner_slug = ""
1284
+ self._dataset_slug = ""
1285
+ self._file_name = None
1286
+ self._dataset_version_number = None
1287
+ self._freeze()
1288
+
1289
+ @property
1290
+ def owner_slug(self) -> str:
1291
+ return self._owner_slug
1292
+
1293
+ @owner_slug.setter
1294
+ def owner_slug(self, owner_slug: str):
1295
+ if owner_slug is None:
1296
+ del self.owner_slug
1297
+ return
1298
+ if not isinstance(owner_slug, str):
1299
+ raise TypeError('owner_slug must be of type str')
1300
+ self._owner_slug = owner_slug
1301
+
1302
+ @property
1303
+ def dataset_slug(self) -> str:
1304
+ return self._dataset_slug
1305
+
1306
+ @dataset_slug.setter
1307
+ def dataset_slug(self, dataset_slug: str):
1308
+ if dataset_slug is None:
1309
+ del self.dataset_slug
1310
+ return
1311
+ if not isinstance(dataset_slug, str):
1312
+ raise TypeError('dataset_slug must be of type str')
1313
+ self._dataset_slug = dataset_slug
1314
+
1315
+ @property
1316
+ def file_name(self) -> str:
1317
+ return self._file_name or ""
1318
+
1319
+ @file_name.setter
1320
+ def file_name(self, file_name: str):
1321
+ if file_name is None:
1322
+ del self.file_name
1323
+ return
1324
+ if not isinstance(file_name, str):
1325
+ raise TypeError('file_name must be of type str')
1326
+ self._file_name = file_name
1327
+
1328
+ @property
1329
+ def dataset_version_number(self) -> int:
1330
+ return self._dataset_version_number or 0
1331
+
1332
+ @dataset_version_number.setter
1333
+ def dataset_version_number(self, dataset_version_number: int):
1334
+ if dataset_version_number is None:
1335
+ del self.dataset_version_number
1336
+ return
1337
+ if not isinstance(dataset_version_number, int):
1338
+ raise TypeError('dataset_version_number must be of type int')
1339
+ self._dataset_version_number = dataset_version_number
1340
+
1341
+ def endpoint(self):
1342
+ path = '/api/v1/datasets/download-raw/{owner_slug}/{dataset_slug}/{file_name}'
1343
+ return path.format_map(self.to_field_map(self))
1344
+
1345
+ @staticmethod
1346
+ def endpoint_path():
1347
+ return '/api/v1/datasets/download-raw/{owner_slug}/{dataset_slug}/{file_name}'
1348
+
1349
+
1350
+ class ApiDownloadDatasetRequest(KaggleObject):
1351
+ r"""
1352
+ Attributes:
1353
+ owner_slug (str)
1354
+ dataset_slug (str)
1355
+ file_name (str)
1356
+ dataset_version_number (int)
1357
+ raw (bool)
1358
+ """
1359
+
1360
+ def __init__(self):
1361
+ self._owner_slug = ""
1362
+ self._dataset_slug = ""
1363
+ self._file_name = None
1364
+ self._dataset_version_number = None
1365
+ self._raw = False
1366
+ self._freeze()
1367
+
1368
+ @property
1369
+ def owner_slug(self) -> str:
1370
+ return self._owner_slug
1371
+
1372
+ @owner_slug.setter
1373
+ def owner_slug(self, owner_slug: str):
1374
+ if owner_slug is None:
1375
+ del self.owner_slug
1376
+ return
1377
+ if not isinstance(owner_slug, str):
1378
+ raise TypeError('owner_slug must be of type str')
1379
+ self._owner_slug = owner_slug
1380
+
1381
+ @property
1382
+ def dataset_slug(self) -> str:
1383
+ return self._dataset_slug
1384
+
1385
+ @dataset_slug.setter
1386
+ def dataset_slug(self, dataset_slug: str):
1387
+ if dataset_slug is None:
1388
+ del self.dataset_slug
1389
+ return
1390
+ if not isinstance(dataset_slug, str):
1391
+ raise TypeError('dataset_slug must be of type str')
1392
+ self._dataset_slug = dataset_slug
1393
+
1394
+ @property
1395
+ def file_name(self) -> str:
1396
+ return self._file_name or ""
1397
+
1398
+ @file_name.setter
1399
+ def file_name(self, file_name: str):
1400
+ if file_name is None:
1401
+ del self.file_name
1402
+ return
1403
+ if not isinstance(file_name, str):
1404
+ raise TypeError('file_name must be of type str')
1405
+ self._file_name = file_name
1406
+
1407
+ @property
1408
+ def dataset_version_number(self) -> int:
1409
+ return self._dataset_version_number or 0
1410
+
1411
+ @dataset_version_number.setter
1412
+ def dataset_version_number(self, dataset_version_number: int):
1413
+ if dataset_version_number is None:
1414
+ del self.dataset_version_number
1415
+ return
1416
+ if not isinstance(dataset_version_number, int):
1417
+ raise TypeError('dataset_version_number must be of type int')
1418
+ self._dataset_version_number = dataset_version_number
1419
+
1420
+ @property
1421
+ def raw(self) -> bool:
1422
+ return self._raw
1423
+
1424
+ @raw.setter
1425
+ def raw(self, raw: bool):
1426
+ if raw is None:
1427
+ del self.raw
1428
+ return
1429
+ if not isinstance(raw, bool):
1430
+ raise TypeError('raw must be of type bool')
1431
+ self._raw = raw
1432
+
1433
+ def endpoint(self):
1434
+ if self.file_name:
1435
+ path = '/api/v1/datasets/download/{owner_slug}/{dataset_slug}/{file_name}'
1436
+ else:
1437
+ path = '/api/v1/datasets/download/{owner_slug}/{dataset_slug}'
1438
+ return path.format_map(self.to_field_map(self))
1439
+
1440
+ @staticmethod
1441
+ def endpoint_path():
1442
+ return '/api/v1/datasets/download/{owner_slug}/{dataset_slug}'
1443
+
1444
+
1445
+ class ApiGetDatasetMetadataRequest(KaggleObject):
1446
+ r"""
1447
+ Attributes:
1448
+ owner_slug (str)
1449
+ dataset_slug (str)
1450
+ """
1451
+
1452
+ def __init__(self):
1453
+ self._owner_slug = ""
1454
+ self._dataset_slug = ""
1455
+ self._freeze()
1456
+
1457
+ @property
1458
+ def owner_slug(self) -> str:
1459
+ return self._owner_slug
1460
+
1461
+ @owner_slug.setter
1462
+ def owner_slug(self, owner_slug: str):
1463
+ if owner_slug is None:
1464
+ del self.owner_slug
1465
+ return
1466
+ if not isinstance(owner_slug, str):
1467
+ raise TypeError('owner_slug must be of type str')
1468
+ self._owner_slug = owner_slug
1469
+
1470
+ @property
1471
+ def dataset_slug(self) -> str:
1472
+ return self._dataset_slug
1473
+
1474
+ @dataset_slug.setter
1475
+ def dataset_slug(self, dataset_slug: str):
1476
+ if dataset_slug is None:
1477
+ del self.dataset_slug
1478
+ return
1479
+ if not isinstance(dataset_slug, str):
1480
+ raise TypeError('dataset_slug must be of type str')
1481
+ self._dataset_slug = dataset_slug
1482
+
1483
+ def endpoint(self):
1484
+ path = '/api/v1/datasets/metadata/{owner_slug}/{dataset_slug}'
1485
+ return path.format_map(self.to_field_map(self))
1486
+
1487
+ @staticmethod
1488
+ def endpoint_path():
1489
+ return '/api/v1/datasets/metadata/{owner_slug}/{dataset_slug}'
1490
+
1491
+
1492
+ class ApiGetDatasetMetadataResponse(KaggleObject):
1493
+ r"""
1494
+ Attributes:
1495
+ info (DatasetInfo)
1496
+ error_message (str)
1497
+ Required for backwards-compatibility. See
1498
+ https://github.com/Kaggle/kaggle-api/issues/235
1499
+ """
1500
+
1501
+ def __init__(self):
1502
+ self._info = None
1503
+ self._error_message = None
1504
+ self._freeze()
1505
+
1506
+ @property
1507
+ def info(self) -> Optional['DatasetInfo']:
1508
+ return self._info
1509
+
1510
+ @info.setter
1511
+ def info(self, info: Optional['DatasetInfo']):
1512
+ if info is None:
1513
+ del self.info
1514
+ return
1515
+ if not isinstance(info, DatasetInfo):
1516
+ raise TypeError('info must be of type DatasetInfo')
1517
+ self._info = info
1518
+
1519
+ @property
1520
+ def error_message(self) -> str:
1521
+ r"""
1522
+ Required for backwards-compatibility. See
1523
+ https://github.com/Kaggle/kaggle-api/issues/235
1524
+ """
1525
+ return self._error_message or ""
1526
+
1527
+ @error_message.setter
1528
+ def error_message(self, error_message: str):
1529
+ if error_message is None:
1530
+ del self.error_message
1531
+ return
1532
+ if not isinstance(error_message, str):
1533
+ raise TypeError('error_message must be of type str')
1534
+ self._error_message = error_message
1535
+
1536
+ @property
1537
+ def errorMessage(self):
1538
+ return self.error_message
1539
+
1540
+
1541
+ class ApiGetDatasetRequest(KaggleObject):
1542
+ r"""
1543
+ Attributes:
1544
+ owner_slug (str)
1545
+ dataset_slug (str)
1546
+ """
1547
+
1548
+ def __init__(self):
1549
+ self._owner_slug = ""
1550
+ self._dataset_slug = ""
1551
+ self._freeze()
1552
+
1553
+ @property
1554
+ def owner_slug(self) -> str:
1555
+ return self._owner_slug
1556
+
1557
+ @owner_slug.setter
1558
+ def owner_slug(self, owner_slug: str):
1559
+ if owner_slug is None:
1560
+ del self.owner_slug
1561
+ return
1562
+ if not isinstance(owner_slug, str):
1563
+ raise TypeError('owner_slug must be of type str')
1564
+ self._owner_slug = owner_slug
1565
+
1566
+ @property
1567
+ def dataset_slug(self) -> str:
1568
+ return self._dataset_slug
1569
+
1570
+ @dataset_slug.setter
1571
+ def dataset_slug(self, dataset_slug: str):
1572
+ if dataset_slug is None:
1573
+ del self.dataset_slug
1574
+ return
1575
+ if not isinstance(dataset_slug, str):
1576
+ raise TypeError('dataset_slug must be of type str')
1577
+ self._dataset_slug = dataset_slug
1578
+
1579
+ def endpoint(self):
1580
+ path = '/api/v1/datasets/view/{owner_slug}/{dataset_slug}'
1581
+ return path.format_map(self.to_field_map(self))
1582
+
1583
+ @staticmethod
1584
+ def endpoint_path():
1585
+ return '/api/v1/datasets/view/{owner_slug}/{dataset_slug}'
1586
+
1587
+
1588
+ class ApiGetDatasetStatusRequest(KaggleObject):
1589
+ r"""
1590
+ Attributes:
1591
+ owner_slug (str)
1592
+ dataset_slug (str)
1593
+ """
1594
+
1595
+ def __init__(self):
1596
+ self._owner_slug = ""
1597
+ self._dataset_slug = ""
1598
+ self._freeze()
1599
+
1600
+ @property
1601
+ def owner_slug(self) -> str:
1602
+ return self._owner_slug
1603
+
1604
+ @owner_slug.setter
1605
+ def owner_slug(self, owner_slug: str):
1606
+ if owner_slug is None:
1607
+ del self.owner_slug
1608
+ return
1609
+ if not isinstance(owner_slug, str):
1610
+ raise TypeError('owner_slug must be of type str')
1611
+ self._owner_slug = owner_slug
1612
+
1613
+ @property
1614
+ def dataset_slug(self) -> str:
1615
+ return self._dataset_slug
1616
+
1617
+ @dataset_slug.setter
1618
+ def dataset_slug(self, dataset_slug: str):
1619
+ if dataset_slug is None:
1620
+ del self.dataset_slug
1621
+ return
1622
+ if not isinstance(dataset_slug, str):
1623
+ raise TypeError('dataset_slug must be of type str')
1624
+ self._dataset_slug = dataset_slug
1625
+
1626
+ def endpoint(self):
1627
+ path = '/api/v1/datasets/status/{owner_slug}/{dataset_slug}'
1628
+ return path.format_map(self.to_field_map(self))
1629
+
1630
+ @staticmethod
1631
+ def endpoint_path():
1632
+ return '/api/v1/datasets/status/{owner_slug}/{dataset_slug}'
1633
+
1634
+
1635
+ class ApiGetDatasetStatusResponse(KaggleObject):
1636
+ r"""
1637
+ Attributes:
1638
+ status (DatabundleVersionStatus)
1639
+ """
1640
+
1641
+ def __init__(self):
1642
+ self._status = DatabundleVersionStatus.NOT_YET_PERSISTED
1643
+ self._freeze()
1644
+
1645
+ @property
1646
+ def status(self) -> 'DatabundleVersionStatus':
1647
+ return self._status
1648
+
1649
+ @status.setter
1650
+ def status(self, status: 'DatabundleVersionStatus'):
1651
+ if status is None:
1652
+ del self.status
1653
+ return
1654
+ if not isinstance(status, DatabundleVersionStatus):
1655
+ raise TypeError('status must be of type DatabundleVersionStatus')
1656
+ self._status = status
1657
+
1658
+ @classmethod
1659
+ def prepare_from(cls, http_response):
1660
+ return cls.from_dict({'status': json.loads(http_response.text)})
1661
+
1662
+
1663
+ class ApiListDatasetFilesRequest(KaggleObject):
1664
+ r"""
1665
+ Attributes:
1666
+ owner_slug (str)
1667
+ dataset_slug (str)
1668
+ dataset_version_number (int)
1669
+ page_token (str)
1670
+ page_size (int)
1671
+ """
1672
+
1673
+ def __init__(self):
1674
+ self._owner_slug = ""
1675
+ self._dataset_slug = ""
1676
+ self._dataset_version_number = None
1677
+ self._page_token = None
1678
+ self._page_size = None
1679
+ self._freeze()
1680
+
1681
+ @property
1682
+ def owner_slug(self) -> str:
1683
+ return self._owner_slug
1684
+
1685
+ @owner_slug.setter
1686
+ def owner_slug(self, owner_slug: str):
1687
+ if owner_slug is None:
1688
+ del self.owner_slug
1689
+ return
1690
+ if not isinstance(owner_slug, str):
1691
+ raise TypeError('owner_slug must be of type str')
1692
+ self._owner_slug = owner_slug
1693
+
1694
+ @property
1695
+ def dataset_slug(self) -> str:
1696
+ return self._dataset_slug
1697
+
1698
+ @dataset_slug.setter
1699
+ def dataset_slug(self, dataset_slug: str):
1700
+ if dataset_slug is None:
1701
+ del self.dataset_slug
1702
+ return
1703
+ if not isinstance(dataset_slug, str):
1704
+ raise TypeError('dataset_slug must be of type str')
1705
+ self._dataset_slug = dataset_slug
1706
+
1707
+ @property
1708
+ def dataset_version_number(self) -> int:
1709
+ return self._dataset_version_number or 0
1710
+
1711
+ @dataset_version_number.setter
1712
+ def dataset_version_number(self, dataset_version_number: int):
1713
+ if dataset_version_number is None:
1714
+ del self.dataset_version_number
1715
+ return
1716
+ if not isinstance(dataset_version_number, int):
1717
+ raise TypeError('dataset_version_number must be of type int')
1718
+ self._dataset_version_number = dataset_version_number
1719
+
1720
+ @property
1721
+ def page_token(self) -> str:
1722
+ return self._page_token or ""
1723
+
1724
+ @page_token.setter
1725
+ def page_token(self, page_token: str):
1726
+ if page_token is None:
1727
+ del self.page_token
1728
+ return
1729
+ if not isinstance(page_token, str):
1730
+ raise TypeError('page_token must be of type str')
1731
+ self._page_token = page_token
1732
+
1733
+ @property
1734
+ def page_size(self) -> int:
1735
+ return self._page_size or 0
1736
+
1737
+ @page_size.setter
1738
+ def page_size(self, page_size: int):
1739
+ if page_size is None:
1740
+ del self.page_size
1741
+ return
1742
+ if not isinstance(page_size, int):
1743
+ raise TypeError('page_size must be of type int')
1744
+ self._page_size = page_size
1745
+
1746
+ def endpoint(self):
1747
+ path = '/api/v1/datasets/list/{owner_slug}/{dataset_slug}'
1748
+ return path.format_map(self.to_field_map(self))
1749
+
1750
+ @staticmethod
1751
+ def endpoint_path():
1752
+ return '/api/v1/datasets/list/{owner_slug}/{dataset_slug}'
1753
+
1754
+
1755
+ class ApiListDatasetFilesResponse(KaggleObject):
1756
+ r"""
1757
+ Attributes:
1758
+ dataset_files (ApiDatasetFile)
1759
+ error_message (str)
1760
+ next_page_token (str)
1761
+ """
1762
+
1763
+ def __init__(self):
1764
+ self._dataset_files = []
1765
+ self._error_message = None
1766
+ self._next_page_token = None
1767
+ self._freeze()
1768
+
1769
+ @property
1770
+ def dataset_files(self) -> Optional[List[Optional['ApiDatasetFile']]]:
1771
+ return self._dataset_files
1772
+
1773
+ @dataset_files.setter
1774
+ def dataset_files(self, dataset_files: Optional[List[Optional['ApiDatasetFile']]]):
1775
+ if dataset_files is None:
1776
+ del self.dataset_files
1777
+ return
1778
+ if not isinstance(dataset_files, list):
1779
+ raise TypeError('dataset_files must be of type list')
1780
+ if not all([isinstance(t, ApiDatasetFile) for t in dataset_files]):
1781
+ raise TypeError('dataset_files must contain only items of type ApiDatasetFile')
1782
+ self._dataset_files = dataset_files
1783
+
1784
+ @property
1785
+ def error_message(self) -> str:
1786
+ return self._error_message or ""
1787
+
1788
+ @error_message.setter
1789
+ def error_message(self, error_message: str):
1790
+ if error_message is None:
1791
+ del self.error_message
1792
+ return
1793
+ if not isinstance(error_message, str):
1794
+ raise TypeError('error_message must be of type str')
1795
+ self._error_message = error_message
1796
+
1797
+ @property
1798
+ def next_page_token(self) -> str:
1799
+ return self._next_page_token or ""
1800
+
1801
+ @next_page_token.setter
1802
+ def next_page_token(self, next_page_token: str):
1803
+ if next_page_token is None:
1804
+ del self.next_page_token
1805
+ return
1806
+ if not isinstance(next_page_token, str):
1807
+ raise TypeError('next_page_token must be of type str')
1808
+ self._next_page_token = next_page_token
1809
+
1810
+ @property
1811
+ def files(self):
1812
+ return self.dataset_files
1813
+
1814
+ @property
1815
+ def errorMessage(self):
1816
+ return self.error_message
1817
+
1818
+ @property
1819
+ def nextPageToken(self):
1820
+ return self.next_page_token
1821
+
1822
+
1823
+ class ApiListDatasetsRequest(KaggleObject):
1824
+ r"""
1825
+ Attributes:
1826
+ group (DatasetSelectionGroup)
1827
+ sort_by (DatasetSortBy)
1828
+ size (DatasetSizeGroup)
1829
+ file_type (DatasetFileTypeGroup)
1830
+ license (DatasetLicenseGroup)
1831
+ viewed (DatasetViewedGroup)
1832
+ tag_ids (str)
1833
+ search (str)
1834
+ user (str)
1835
+ min_size (int)
1836
+ max_size (int)
1837
+ page (int)
1838
+ page_token (str)
1839
+ page_size (int)
1840
+ """
1841
+
1842
+ def __init__(self):
1843
+ self._group = DatasetSelectionGroup.DATASET_SELECTION_GROUP_PUBLIC
1844
+ self._sort_by = DatasetSortBy.DATASET_SORT_BY_HOTTEST
1845
+ self._size = DatasetSizeGroup.DATASET_SIZE_GROUP_ALL
1846
+ self._file_type = DatasetFileTypeGroup.DATASET_FILE_TYPE_GROUP_ALL
1847
+ self._license = DatasetLicenseGroup.DATASET_LICENSE_GROUP_ALL
1848
+ self._viewed = DatasetViewedGroup.DATASET_VIEWED_GROUP_UNSPECIFIED
1849
+ self._tag_ids = None
1850
+ self._search = None
1851
+ self._user = None
1852
+ self._min_size = None
1853
+ self._max_size = None
1854
+ self._page = None
1855
+ self._page_token = None
1856
+ self._page_size = None
1857
+ self._freeze()
1858
+
1859
+ @property
1860
+ def group(self) -> 'DatasetSelectionGroup':
1861
+ return self._group
1862
+
1863
+ @group.setter
1864
+ def group(self, group: 'DatasetSelectionGroup'):
1865
+ if group is None:
1866
+ del self.group
1867
+ return
1868
+ if not isinstance(group, DatasetSelectionGroup):
1869
+ raise TypeError('group must be of type DatasetSelectionGroup')
1870
+ self._group = group
1871
+
1872
+ @property
1873
+ def sort_by(self) -> 'DatasetSortBy':
1874
+ return self._sort_by
1875
+
1876
+ @sort_by.setter
1877
+ def sort_by(self, sort_by: 'DatasetSortBy'):
1878
+ if sort_by is None:
1879
+ del self.sort_by
1880
+ return
1881
+ if not isinstance(sort_by, DatasetSortBy):
1882
+ raise TypeError('sort_by must be of type DatasetSortBy')
1883
+ self._sort_by = sort_by
1884
+
1885
+ @property
1886
+ def size(self) -> 'DatasetSizeGroup':
1887
+ return self._size
1888
+
1889
+ @size.setter
1890
+ def size(self, size: 'DatasetSizeGroup'):
1891
+ if size is None:
1892
+ del self.size
1893
+ return
1894
+ if not isinstance(size, DatasetSizeGroup):
1895
+ raise TypeError('size must be of type DatasetSizeGroup')
1896
+ self._size = size
1897
+
1898
+ @property
1899
+ def file_type(self) -> 'DatasetFileTypeGroup':
1900
+ return self._file_type
1901
+
1902
+ @file_type.setter
1903
+ def file_type(self, file_type: 'DatasetFileTypeGroup'):
1904
+ if file_type is None:
1905
+ del self.file_type
1906
+ return
1907
+ if not isinstance(file_type, DatasetFileTypeGroup):
1908
+ raise TypeError('file_type must be of type DatasetFileTypeGroup')
1909
+ self._file_type = file_type
1910
+
1911
+ @property
1912
+ def license(self) -> 'DatasetLicenseGroup':
1913
+ return self._license
1914
+
1915
+ @license.setter
1916
+ def license(self, license: 'DatasetLicenseGroup'):
1917
+ if license is None:
1918
+ del self.license
1919
+ return
1920
+ if not isinstance(license, DatasetLicenseGroup):
1921
+ raise TypeError('license must be of type DatasetLicenseGroup')
1922
+ self._license = license
1923
+
1924
+ @property
1925
+ def viewed(self) -> 'DatasetViewedGroup':
1926
+ return self._viewed
1927
+
1928
+ @viewed.setter
1929
+ def viewed(self, viewed: 'DatasetViewedGroup'):
1930
+ if viewed is None:
1931
+ del self.viewed
1932
+ return
1933
+ if not isinstance(viewed, DatasetViewedGroup):
1934
+ raise TypeError('viewed must be of type DatasetViewedGroup')
1935
+ self._viewed = viewed
1936
+
1937
+ @property
1938
+ def tag_ids(self) -> str:
1939
+ return self._tag_ids or ""
1940
+
1941
+ @tag_ids.setter
1942
+ def tag_ids(self, tag_ids: str):
1943
+ if tag_ids is None:
1944
+ del self.tag_ids
1945
+ return
1946
+ if not isinstance(tag_ids, str):
1947
+ raise TypeError('tag_ids must be of type str')
1948
+ self._tag_ids = tag_ids
1949
+
1950
+ @property
1951
+ def search(self) -> str:
1952
+ return self._search or ""
1953
+
1954
+ @search.setter
1955
+ def search(self, search: str):
1956
+ if search is None:
1957
+ del self.search
1958
+ return
1959
+ if not isinstance(search, str):
1960
+ raise TypeError('search must be of type str')
1961
+ self._search = search
1962
+
1963
+ @property
1964
+ def user(self) -> str:
1965
+ return self._user or ""
1966
+
1967
+ @user.setter
1968
+ def user(self, user: str):
1969
+ if user is None:
1970
+ del self.user
1971
+ return
1972
+ if not isinstance(user, str):
1973
+ raise TypeError('user must be of type str')
1974
+ self._user = user
1975
+
1976
+ @property
1977
+ def min_size(self) -> int:
1978
+ return self._min_size or 0
1979
+
1980
+ @min_size.setter
1981
+ def min_size(self, min_size: int):
1982
+ if min_size is None:
1983
+ del self.min_size
1984
+ return
1985
+ if not isinstance(min_size, int):
1986
+ raise TypeError('min_size must be of type int')
1987
+ self._min_size = min_size
1988
+
1989
+ @property
1990
+ def max_size(self) -> int:
1991
+ return self._max_size or 0
1992
+
1993
+ @max_size.setter
1994
+ def max_size(self, max_size: int):
1995
+ if max_size is None:
1996
+ del self.max_size
1997
+ return
1998
+ if not isinstance(max_size, int):
1999
+ raise TypeError('max_size must be of type int')
2000
+ self._max_size = max_size
2001
+
2002
+ @property
2003
+ def page(self) -> int:
2004
+ return self._page or 0
2005
+
2006
+ @page.setter
2007
+ def page(self, page: int):
2008
+ if page is None:
2009
+ del self.page
2010
+ return
2011
+ if not isinstance(page, int):
2012
+ raise TypeError('page must be of type int')
2013
+ self._page = page
2014
+
2015
+ @property
2016
+ def page_token(self) -> str:
2017
+ return self._page_token or ""
2018
+
2019
+ @page_token.setter
2020
+ def page_token(self, page_token: str):
2021
+ if page_token is None:
2022
+ del self.page_token
2023
+ return
2024
+ if not isinstance(page_token, str):
2025
+ raise TypeError('page_token must be of type str')
2026
+ self._page_token = page_token
2027
+
2028
+ @property
2029
+ def page_size(self) -> int:
2030
+ return self._page_size or 0
2031
+
2032
+ @page_size.setter
2033
+ def page_size(self, page_size: int):
2034
+ if page_size is None:
2035
+ del self.page_size
2036
+ return
2037
+ if not isinstance(page_size, int):
2038
+ raise TypeError('page_size must be of type int')
2039
+ self._page_size = page_size
2040
+
2041
+ def endpoint(self):
2042
+ path = '/api/v1/datasets/list'
2043
+ return path.format_map(self.to_field_map(self))
2044
+
2045
+
2046
+ class ApiListDatasetsResponse(KaggleObject):
2047
+ r"""
2048
+ Attributes:
2049
+ datasets (ApiDataset)
2050
+ """
2051
+
2052
+ def __init__(self):
2053
+ self._datasets = []
2054
+ self._freeze()
2055
+
2056
+ @property
2057
+ def datasets(self) -> Optional[List[Optional['ApiDataset']]]:
2058
+ return self._datasets
2059
+
2060
+ @datasets.setter
2061
+ def datasets(self, datasets: Optional[List[Optional['ApiDataset']]]):
2062
+ if datasets is None:
2063
+ del self.datasets
2064
+ return
2065
+ if not isinstance(datasets, list):
2066
+ raise TypeError('datasets must be of type list')
2067
+ if not all([isinstance(t, ApiDataset) for t in datasets]):
2068
+ raise TypeError('datasets must contain only items of type ApiDataset')
2069
+ self._datasets = datasets
2070
+
2071
+ @classmethod
2072
+ def prepare_from(cls, http_response):
2073
+ return cls.from_dict({'datasets': json.loads(http_response.text)})
2074
+
2075
+
2076
+ class ApiUpdateDatasetMetadataRequest(KaggleObject):
2077
+ r"""
2078
+ Attributes:
2079
+ owner_slug (str)
2080
+ dataset_slug (str)
2081
+ settings (DatasetSettings)
2082
+ """
2083
+
2084
+ def __init__(self):
2085
+ self._owner_slug = ""
2086
+ self._dataset_slug = ""
2087
+ self._settings = None
2088
+ self._freeze()
2089
+
2090
+ @property
2091
+ def owner_slug(self) -> str:
2092
+ return self._owner_slug
2093
+
2094
+ @owner_slug.setter
2095
+ def owner_slug(self, owner_slug: str):
2096
+ if owner_slug is None:
2097
+ del self.owner_slug
2098
+ return
2099
+ if not isinstance(owner_slug, str):
2100
+ raise TypeError('owner_slug must be of type str')
2101
+ self._owner_slug = owner_slug
2102
+
2103
+ @property
2104
+ def dataset_slug(self) -> str:
2105
+ return self._dataset_slug
2106
+
2107
+ @dataset_slug.setter
2108
+ def dataset_slug(self, dataset_slug: str):
2109
+ if dataset_slug is None:
2110
+ del self.dataset_slug
2111
+ return
2112
+ if not isinstance(dataset_slug, str):
2113
+ raise TypeError('dataset_slug must be of type str')
2114
+ self._dataset_slug = dataset_slug
2115
+
2116
+ @property
2117
+ def settings(self) -> Optional['DatasetSettings']:
2118
+ return self._settings
2119
+
2120
+ @settings.setter
2121
+ def settings(self, settings: Optional['DatasetSettings']):
2122
+ if settings is None:
2123
+ del self.settings
2124
+ return
2125
+ if not isinstance(settings, DatasetSettings):
2126
+ raise TypeError('settings must be of type DatasetSettings')
2127
+ self._settings = settings
2128
+
2129
+ def endpoint(self):
2130
+ path = '/api/v1/datasets/metadata/{owner_slug}/{dataset_slug}'
2131
+ return path.format_map(self.to_field_map(self))
2132
+
2133
+
2134
+ @staticmethod
2135
+ def method():
2136
+ return 'POST'
2137
+
2138
+ @staticmethod
2139
+ def body_fields():
2140
+ return 'settings'
2141
+
2142
+
2143
+ class ApiUpdateDatasetMetadataResponse(KaggleObject):
2144
+ r"""
2145
+ Attributes:
2146
+ errors (str)
2147
+ Required for backwards-compatibility.
2148
+ """
2149
+
2150
+ def __init__(self):
2151
+ self._errors = []
2152
+ self._freeze()
2153
+
2154
+ @property
2155
+ def errors(self) -> Optional[List[str]]:
2156
+ """Required for backwards-compatibility."""
2157
+ return self._errors
2158
+
2159
+ @errors.setter
2160
+ def errors(self, errors: Optional[List[str]]):
2161
+ if errors is None:
2162
+ del self.errors
2163
+ return
2164
+ if not isinstance(errors, list):
2165
+ raise TypeError('errors must be of type list')
2166
+ if not all([isinstance(t, str) for t in errors]):
2167
+ raise TypeError('errors must contain only items of type str')
2168
+ self._errors = errors
2169
+
2170
+
2171
+ class ApiUploadDatasetFileRequest(KaggleObject):
2172
+ r"""
2173
+ Attributes:
2174
+ file_name (str)
2175
+ content_length (int)
2176
+ last_modified_epoch_seconds (int)
2177
+ """
2178
+
2179
+ def __init__(self):
2180
+ self._file_name = ""
2181
+ self._content_length = 0
2182
+ self._last_modified_epoch_seconds = 0
2183
+ self._freeze()
2184
+
2185
+ @property
2186
+ def file_name(self) -> str:
2187
+ return self._file_name
2188
+
2189
+ @file_name.setter
2190
+ def file_name(self, file_name: str):
2191
+ if file_name is None:
2192
+ del self.file_name
2193
+ return
2194
+ if not isinstance(file_name, str):
2195
+ raise TypeError('file_name must be of type str')
2196
+ self._file_name = file_name
2197
+
2198
+ @property
2199
+ def content_length(self) -> int:
2200
+ return self._content_length
2201
+
2202
+ @content_length.setter
2203
+ def content_length(self, content_length: int):
2204
+ if content_length is None:
2205
+ del self.content_length
2206
+ return
2207
+ if not isinstance(content_length, int):
2208
+ raise TypeError('content_length must be of type int')
2209
+ self._content_length = content_length
2210
+
2211
+ @property
2212
+ def last_modified_epoch_seconds(self) -> int:
2213
+ return self._last_modified_epoch_seconds
2214
+
2215
+ @last_modified_epoch_seconds.setter
2216
+ def last_modified_epoch_seconds(self, last_modified_epoch_seconds: int):
2217
+ if last_modified_epoch_seconds is None:
2218
+ del self.last_modified_epoch_seconds
2219
+ return
2220
+ if not isinstance(last_modified_epoch_seconds, int):
2221
+ raise TypeError('last_modified_epoch_seconds must be of type int')
2222
+ self._last_modified_epoch_seconds = last_modified_epoch_seconds
2223
+
2224
+ def endpoint(self):
2225
+ path = '/api/v1/datasets/upload/file/{content_length}/{last_modified_epoch_seconds}'
2226
+ return path.format_map(self.to_field_map(self))
2227
+
2228
+
2229
+ @staticmethod
2230
+ def method():
2231
+ return 'POST'
2232
+
2233
+
2234
+ class ApiUploadDatasetFileResponse(KaggleObject):
2235
+ r"""
2236
+ Attributes:
2237
+ token (str)
2238
+ Opaque string token used to reference the new BlobFile.
2239
+ create_url (str)
2240
+ URL to use to start the upload
2241
+ """
2242
+
2243
+ def __init__(self):
2244
+ self._token = ""
2245
+ self._create_url = ""
2246
+ self._freeze()
2247
+
2248
+ @property
2249
+ def token(self) -> str:
2250
+ """Opaque string token used to reference the new BlobFile."""
2251
+ return self._token
2252
+
2253
+ @token.setter
2254
+ def token(self, token: str):
2255
+ if token is None:
2256
+ del self.token
2257
+ return
2258
+ if not isinstance(token, str):
2259
+ raise TypeError('token must be of type str')
2260
+ self._token = token
2261
+
2262
+ @property
2263
+ def create_url(self) -> str:
2264
+ """URL to use to start the upload"""
2265
+ return self._create_url
2266
+
2267
+ @create_url.setter
2268
+ def create_url(self, create_url: str):
2269
+ if create_url is None:
2270
+ del self.create_url
2271
+ return
2272
+ if not isinstance(create_url, str):
2273
+ raise TypeError('create_url must be of type str')
2274
+ self._create_url = create_url
2275
+
2276
+ @property
2277
+ def createUrl(self):
2278
+ return self.create_url
2279
+
2280
+
2281
+ class ApiCategory(KaggleObject):
2282
+ r"""
2283
+ Attributes:
2284
+ ref (str)
2285
+ name (str)
2286
+ description (str)
2287
+ full_path (str)
2288
+ competition_count (int)
2289
+ dataset_count (int)
2290
+ script_count (int)
2291
+ total_count (int)
2292
+ """
2293
+
2294
+ def __init__(self):
2295
+ self._ref = ""
2296
+ self._name = None
2297
+ self._description = None
2298
+ self._full_path = None
2299
+ self._competition_count = 0
2300
+ self._dataset_count = 0
2301
+ self._script_count = 0
2302
+ self._total_count = 0
2303
+ self._freeze()
2304
+
2305
+ @property
2306
+ def ref(self) -> str:
2307
+ return self._ref
2308
+
2309
+ @ref.setter
2310
+ def ref(self, ref: str):
2311
+ if ref is None:
2312
+ del self.ref
2313
+ return
2314
+ if not isinstance(ref, str):
2315
+ raise TypeError('ref must be of type str')
2316
+ self._ref = ref
2317
+
2318
+ @property
2319
+ def name(self) -> str:
2320
+ return self._name or ""
2321
+
2322
+ @name.setter
2323
+ def name(self, name: str):
2324
+ if name is None:
2325
+ del self.name
2326
+ return
2327
+ if not isinstance(name, str):
2328
+ raise TypeError('name must be of type str')
2329
+ self._name = name
2330
+
2331
+ @property
2332
+ def description(self) -> str:
2333
+ return self._description or ""
2334
+
2335
+ @description.setter
2336
+ def description(self, description: str):
2337
+ if description is None:
2338
+ del self.description
2339
+ return
2340
+ if not isinstance(description, str):
2341
+ raise TypeError('description must be of type str')
2342
+ self._description = description
2343
+
2344
+ @property
2345
+ def full_path(self) -> str:
2346
+ return self._full_path or ""
2347
+
2348
+ @full_path.setter
2349
+ def full_path(self, full_path: str):
2350
+ if full_path is None:
2351
+ del self.full_path
2352
+ return
2353
+ if not isinstance(full_path, str):
2354
+ raise TypeError('full_path must be of type str')
2355
+ self._full_path = full_path
2356
+
2357
+ @property
2358
+ def competition_count(self) -> int:
2359
+ return self._competition_count
2360
+
2361
+ @competition_count.setter
2362
+ def competition_count(self, competition_count: int):
2363
+ if competition_count is None:
2364
+ del self.competition_count
2365
+ return
2366
+ if not isinstance(competition_count, int):
2367
+ raise TypeError('competition_count must be of type int')
2368
+ self._competition_count = competition_count
2369
+
2370
+ @property
2371
+ def dataset_count(self) -> int:
2372
+ return self._dataset_count
2373
+
2374
+ @dataset_count.setter
2375
+ def dataset_count(self, dataset_count: int):
2376
+ if dataset_count is None:
2377
+ del self.dataset_count
2378
+ return
2379
+ if not isinstance(dataset_count, int):
2380
+ raise TypeError('dataset_count must be of type int')
2381
+ self._dataset_count = dataset_count
2382
+
2383
+ @property
2384
+ def script_count(self) -> int:
2385
+ return self._script_count
2386
+
2387
+ @script_count.setter
2388
+ def script_count(self, script_count: int):
2389
+ if script_count is None:
2390
+ del self.script_count
2391
+ return
2392
+ if not isinstance(script_count, int):
2393
+ raise TypeError('script_count must be of type int')
2394
+ self._script_count = script_count
2395
+
2396
+ @property
2397
+ def total_count(self) -> int:
2398
+ return self._total_count
2399
+
2400
+ @total_count.setter
2401
+ def total_count(self, total_count: int):
2402
+ if total_count is None:
2403
+ del self.total_count
2404
+ return
2405
+ if not isinstance(total_count, int):
2406
+ raise TypeError('total_count must be of type int')
2407
+ self._total_count = total_count
2408
+
2409
+
2410
+ class ApiDatasetColumn(KaggleObject):
2411
+ r"""
2412
+ Attributes:
2413
+ order (int)
2414
+ name (str)
2415
+ type (str)
2416
+ original_type (str)
2417
+ description (str)
2418
+ """
2419
+
2420
+ def __init__(self):
2421
+ self._order = None
2422
+ self._name = None
2423
+ self._type = None
2424
+ self._original_type = None
2425
+ self._description = None
2426
+ self._freeze()
2427
+
2428
+ @property
2429
+ def order(self) -> int:
2430
+ return self._order or 0
2431
+
2432
+ @order.setter
2433
+ def order(self, order: int):
2434
+ if order is None:
2435
+ del self.order
2436
+ return
2437
+ if not isinstance(order, int):
2438
+ raise TypeError('order must be of type int')
2439
+ self._order = order
2440
+
2441
+ @property
2442
+ def name(self) -> str:
2443
+ return self._name or ""
2444
+
2445
+ @name.setter
2446
+ def name(self, name: str):
2447
+ if name is None:
2448
+ del self.name
2449
+ return
2450
+ if not isinstance(name, str):
2451
+ raise TypeError('name must be of type str')
2452
+ self._name = name
2453
+
2454
+ @property
2455
+ def type(self) -> str:
2456
+ return self._type or ""
2457
+
2458
+ @type.setter
2459
+ def type(self, type: str):
2460
+ if type is None:
2461
+ del self.type
2462
+ return
2463
+ if not isinstance(type, str):
2464
+ raise TypeError('type must be of type str')
2465
+ self._type = type
2466
+
2467
+ @property
2468
+ def original_type(self) -> str:
2469
+ return self._original_type or ""
2470
+
2471
+ @original_type.setter
2472
+ def original_type(self, original_type: str):
2473
+ if original_type is None:
2474
+ del self.original_type
2475
+ return
2476
+ if not isinstance(original_type, str):
2477
+ raise TypeError('original_type must be of type str')
2478
+ self._original_type = original_type
2479
+
2480
+ @property
2481
+ def description(self) -> str:
2482
+ return self._description or ""
2483
+
2484
+ @description.setter
2485
+ def description(self, description: str):
2486
+ if description is None:
2487
+ del self.description
2488
+ return
2489
+ if not isinstance(description, str):
2490
+ raise TypeError('description must be of type str')
2491
+ self._description = description
2492
+
2493
+
2494
+ class ApiUploadDirectoryInfo(KaggleObject):
2495
+ r"""
2496
+ Attributes:
2497
+ name (str)
2498
+ directories (ApiUploadDirectoryInfo)
2499
+ files (ApiDatasetNewFile)
2500
+ """
2501
+
2502
+ def __init__(self):
2503
+ self._name = ""
2504
+ self._directories = []
2505
+ self._files = []
2506
+ self._freeze()
2507
+
2508
+ @property
2509
+ def name(self) -> str:
2510
+ return self._name
2511
+
2512
+ @name.setter
2513
+ def name(self, name: str):
2514
+ if name is None:
2515
+ del self.name
2516
+ return
2517
+ if not isinstance(name, str):
2518
+ raise TypeError('name must be of type str')
2519
+ self._name = name
2520
+
2521
+ @property
2522
+ def directories(self) -> Optional[List[Optional['ApiUploadDirectoryInfo']]]:
2523
+ return self._directories
2524
+
2525
+ @directories.setter
2526
+ def directories(self, directories: Optional[List[Optional['ApiUploadDirectoryInfo']]]):
2527
+ if directories is None:
2528
+ del self.directories
2529
+ return
2530
+ if not isinstance(directories, list):
2531
+ raise TypeError('directories must be of type list')
2532
+ if not all([isinstance(t, ApiUploadDirectoryInfo) for t in directories]):
2533
+ raise TypeError('directories must contain only items of type ApiUploadDirectoryInfo')
2534
+ self._directories = directories
2535
+
2536
+ @property
2537
+ def files(self) -> Optional[List[Optional['ApiDatasetNewFile']]]:
2538
+ return self._files
2539
+
2540
+ @files.setter
2541
+ def files(self, files: Optional[List[Optional['ApiDatasetNewFile']]]):
2542
+ if files is None:
2543
+ del self.files
2544
+ return
2545
+ if not isinstance(files, list):
2546
+ raise TypeError('files must be of type list')
2547
+ if not all([isinstance(t, ApiDatasetNewFile) for t in files]):
2548
+ raise TypeError('files must contain only items of type ApiDatasetNewFile')
2549
+ self._files = files
2550
+
2551
+
2552
+ ApiCreateDatasetRequest._fields = [
2553
+ FieldMetadata("id", "id", "_id", int, None, PredefinedSerializer(), optional=True),
2554
+ FieldMetadata("ownerSlug", "owner_slug", "_owner_slug", str, None, PredefinedSerializer(), optional=True),
2555
+ FieldMetadata("slug", "slug", "_slug", str, None, PredefinedSerializer(), optional=True),
2556
+ FieldMetadata("title", "title", "_title", str, None, PredefinedSerializer(), optional=True),
2557
+ FieldMetadata("licenseName", "license_name", "_license_name", str, None, PredefinedSerializer(), optional=True),
2558
+ FieldMetadata("isPrivate", "is_private", "_is_private", bool, False, PredefinedSerializer()),
2559
+ FieldMetadata("files", "files", "_files", ApiDatasetNewFile, [], ListSerializer(KaggleObjectSerializer())),
2560
+ FieldMetadata("subtitle", "subtitle", "_subtitle", str, None, PredefinedSerializer(), optional=True),
2561
+ FieldMetadata("description", "description", "_description", str, None, PredefinedSerializer(), optional=True),
2562
+ FieldMetadata("categoryIds", "category_ids", "_category_ids", str, [], ListSerializer(PredefinedSerializer())),
2563
+ ]
2564
+
2565
+ ApiCreateDatasetResponse._fields = [
2566
+ FieldMetadata("ref", "ref", "_ref", str, None, PredefinedSerializer(), optional=True),
2567
+ FieldMetadata("url", "url", "_url", str, None, PredefinedSerializer(), optional=True),
2568
+ FieldMetadata("status", "status", "_status", str, None, PredefinedSerializer(), optional=True),
2569
+ FieldMetadata("error", "error", "_error", str, None, PredefinedSerializer(), optional=True),
2570
+ FieldMetadata("invalidTags", "invalid_tags", "_invalid_tags", str, [], ListSerializer(PredefinedSerializer())),
2571
+ ]
2572
+
2573
+ ApiCreateDatasetVersionByIdRequest._fields = [
2574
+ FieldMetadata("id", "id", "_id", int, 0, PredefinedSerializer()),
2575
+ FieldMetadata("body", "body", "_body", ApiCreateDatasetVersionRequestBody, None, KaggleObjectSerializer()),
2576
+ ]
2577
+
2578
+ ApiCreateDatasetVersionRequest._fields = [
2579
+ FieldMetadata("ownerSlug", "owner_slug", "_owner_slug", str, "", PredefinedSerializer()),
2580
+ FieldMetadata("datasetSlug", "dataset_slug", "_dataset_slug", str, "", PredefinedSerializer()),
2581
+ FieldMetadata("body", "body", "_body", ApiCreateDatasetVersionRequestBody, None, KaggleObjectSerializer()),
2582
+ ]
2583
+
2584
+ ApiCreateDatasetVersionRequestBody._fields = [
2585
+ FieldMetadata("versionNotes", "version_notes", "_version_notes", str, None, PredefinedSerializer(), optional=True),
2586
+ FieldMetadata("deleteOldVersions", "delete_old_versions", "_delete_old_versions", bool, False, PredefinedSerializer()),
2587
+ FieldMetadata("files", "files", "_files", ApiDatasetNewFile, [], ListSerializer(KaggleObjectSerializer())),
2588
+ FieldMetadata("subtitle", "subtitle", "_subtitle", str, None, PredefinedSerializer(), optional=True),
2589
+ FieldMetadata("description", "description", "_description", str, None, PredefinedSerializer(), optional=True),
2590
+ FieldMetadata("categoryIds", "category_ids", "_category_ids", str, [], ListSerializer(PredefinedSerializer())),
2591
+ ]
2592
+
2593
+ ApiDataset._fields = [
2594
+ FieldMetadata("id", "id", "_id", int, 0, PredefinedSerializer()),
2595
+ FieldMetadata("ref", "ref", "_ref", str, "", PredefinedSerializer()),
2596
+ FieldMetadata("subtitle", "subtitle", "_subtitle", str, None, PredefinedSerializer(), optional=True),
2597
+ FieldMetadata("creatorName", "creator_name", "_creator_name", str, None, PredefinedSerializer(), optional=True),
2598
+ FieldMetadata("creatorUrl", "creator_url", "_creator_url", str, None, PredefinedSerializer(), optional=True),
2599
+ FieldMetadata("totalBytes", "total_bytes", "_total_bytes", int, None, PredefinedSerializer(), optional=True),
2600
+ FieldMetadata("url", "url", "_url", str, None, PredefinedSerializer(), optional=True),
2601
+ FieldMetadata("lastUpdated", "last_updated", "_last_updated", datetime, None, DateTimeSerializer()),
2602
+ FieldMetadata("downloadCount", "download_count", "_download_count", int, 0, PredefinedSerializer()),
2603
+ FieldMetadata("isPrivate", "is_private", "_is_private", bool, False, PredefinedSerializer()),
2604
+ FieldMetadata("isFeatured", "is_featured", "_is_featured", bool, False, PredefinedSerializer()),
2605
+ FieldMetadata("licenseName", "license_name", "_license_name", str, None, PredefinedSerializer(), optional=True),
2606
+ FieldMetadata("description", "description", "_description", str, None, PredefinedSerializer(), optional=True),
2607
+ FieldMetadata("ownerName", "owner_name", "_owner_name", str, None, PredefinedSerializer(), optional=True),
2608
+ FieldMetadata("ownerRef", "owner_ref", "_owner_ref", str, None, PredefinedSerializer(), optional=True),
2609
+ FieldMetadata("kernelCount", "kernel_count", "_kernel_count", int, 0, PredefinedSerializer()),
2610
+ FieldMetadata("title", "title", "_title", str, None, PredefinedSerializer(), optional=True),
2611
+ FieldMetadata("topicCount", "topic_count", "_topic_count", int, 0, PredefinedSerializer()),
2612
+ FieldMetadata("viewCount", "view_count", "_view_count", int, 0, PredefinedSerializer()),
2613
+ FieldMetadata("voteCount", "vote_count", "_vote_count", int, 0, PredefinedSerializer()),
2614
+ FieldMetadata("currentVersionNumber", "current_version_number", "_current_version_number", int, None, PredefinedSerializer(), optional=True),
2615
+ FieldMetadata("usabilityRating", "usability_rating", "_usability_rating", float, None, PredefinedSerializer(), optional=True),
2616
+ FieldMetadata("tags", "tags", "_tags", ApiCategory, [], ListSerializer(KaggleObjectSerializer())),
2617
+ FieldMetadata("files", "files", "_files", ApiDatasetFile, [], ListSerializer(KaggleObjectSerializer())),
2618
+ FieldMetadata("versions", "versions", "_versions", ApiDatasetVersion, [], ListSerializer(KaggleObjectSerializer())),
2619
+ ]
2620
+
2621
+ ApiDatasetFile._fields = [
2622
+ FieldMetadata("ref", "ref", "_ref", str, "", PredefinedSerializer()),
2623
+ FieldMetadata("datasetRef", "dataset_ref", "_dataset_ref", str, None, PredefinedSerializer(), optional=True),
2624
+ FieldMetadata("ownerRef", "owner_ref", "_owner_ref", str, None, PredefinedSerializer(), optional=True),
2625
+ FieldMetadata("name", "name", "_name", str, None, PredefinedSerializer(), optional=True),
2626
+ FieldMetadata("creationDate", "creation_date", "_creation_date", datetime, None, DateTimeSerializer()),
2627
+ FieldMetadata("description", "description", "_description", str, None, PredefinedSerializer(), optional=True),
2628
+ FieldMetadata("fileType", "file_type", "_file_type", str, None, PredefinedSerializer(), optional=True),
2629
+ FieldMetadata("url", "url", "_url", str, None, PredefinedSerializer(), optional=True),
2630
+ FieldMetadata("totalBytes", "total_bytes", "_total_bytes", int, 0, PredefinedSerializer()),
2631
+ FieldMetadata("columns", "columns", "_columns", ApiDatasetColumn, [], ListSerializer(KaggleObjectSerializer())),
2632
+ ]
2633
+
2634
+ ApiDatasetNewFile._fields = [
2635
+ FieldMetadata("token", "token", "_token", str, None, PredefinedSerializer(), optional=True),
2636
+ FieldMetadata("description", "description", "_description", str, None, PredefinedSerializer(), optional=True),
2637
+ FieldMetadata("columns", "columns", "_columns", ApiDatasetColumn, [], ListSerializer(KaggleObjectSerializer())),
2638
+ ]
2639
+
2640
+ ApiDatasetVersion._fields = [
2641
+ FieldMetadata("versionNumber", "version_number", "_version_number", int, 0, PredefinedSerializer()),
2642
+ FieldMetadata("creationDate", "creation_date", "_creation_date", datetime, None, DateTimeSerializer()),
2643
+ FieldMetadata("creatorName", "creator_name", "_creator_name", str, None, PredefinedSerializer(), optional=True),
2644
+ FieldMetadata("creatorRef", "creator_ref", "_creator_ref", str, None, PredefinedSerializer(), optional=True),
2645
+ FieldMetadata("versionNotes", "version_notes", "_version_notes", str, None, PredefinedSerializer(), optional=True),
2646
+ FieldMetadata("status", "status", "_status", str, None, PredefinedSerializer(), optional=True),
2647
+ ]
2648
+
2649
+ ApiDeleteDatasetRequest._fields = [
2650
+ FieldMetadata("ownerSlug", "owner_slug", "_owner_slug", str, "", PredefinedSerializer()),
2651
+ FieldMetadata("datasetSlug", "dataset_slug", "_dataset_slug", str, "", PredefinedSerializer()),
2652
+ ]
2653
+
2654
+ ApiDeleteDatasetResponse._fields = [
2655
+ FieldMetadata("error", "error", "_error", str, None, PredefinedSerializer(), optional=True),
2656
+ ]
2657
+
2658
+ ApiDownloadDatasetRawRequest._fields = [
2659
+ FieldMetadata("ownerSlug", "owner_slug", "_owner_slug", str, "", PredefinedSerializer()),
2660
+ FieldMetadata("datasetSlug", "dataset_slug", "_dataset_slug", str, "", PredefinedSerializer()),
2661
+ FieldMetadata("fileName", "file_name", "_file_name", str, None, PredefinedSerializer(), optional=True),
2662
+ FieldMetadata("datasetVersionNumber", "dataset_version_number", "_dataset_version_number", int, None, PredefinedSerializer(), optional=True),
2663
+ ]
2664
+
2665
+ ApiDownloadDatasetRequest._fields = [
2666
+ FieldMetadata("ownerSlug", "owner_slug", "_owner_slug", str, "", PredefinedSerializer()),
2667
+ FieldMetadata("datasetSlug", "dataset_slug", "_dataset_slug", str, "", PredefinedSerializer()),
2668
+ FieldMetadata("fileName", "file_name", "_file_name", str, None, PredefinedSerializer(), optional=True),
2669
+ FieldMetadata("datasetVersionNumber", "dataset_version_number", "_dataset_version_number", int, None, PredefinedSerializer(), optional=True),
2670
+ FieldMetadata("raw", "raw", "_raw", bool, False, PredefinedSerializer()),
2671
+ ]
2672
+
2673
+ ApiGetDatasetMetadataRequest._fields = [
2674
+ FieldMetadata("ownerSlug", "owner_slug", "_owner_slug", str, "", PredefinedSerializer()),
2675
+ FieldMetadata("datasetSlug", "dataset_slug", "_dataset_slug", str, "", PredefinedSerializer()),
2676
+ ]
2677
+
2678
+ ApiGetDatasetMetadataResponse._fields = [
2679
+ FieldMetadata("info", "info", "_info", DatasetInfo, None, KaggleObjectSerializer()),
2680
+ FieldMetadata("errorMessage", "error_message", "_error_message", str, None, PredefinedSerializer(), optional=True),
2681
+ ]
2682
+
2683
+ ApiGetDatasetRequest._fields = [
2684
+ FieldMetadata("ownerSlug", "owner_slug", "_owner_slug", str, "", PredefinedSerializer()),
2685
+ FieldMetadata("datasetSlug", "dataset_slug", "_dataset_slug", str, "", PredefinedSerializer()),
2686
+ ]
2687
+
2688
+ ApiGetDatasetStatusRequest._fields = [
2689
+ FieldMetadata("ownerSlug", "owner_slug", "_owner_slug", str, "", PredefinedSerializer()),
2690
+ FieldMetadata("datasetSlug", "dataset_slug", "_dataset_slug", str, "", PredefinedSerializer()),
2691
+ ]
2692
+
2693
+ ApiGetDatasetStatusResponse._fields = [
2694
+ FieldMetadata("status", "status", "_status", DatabundleVersionStatus, DatabundleVersionStatus.NOT_YET_PERSISTED, EnumSerializer()),
2695
+ ]
2696
+
2697
+ ApiListDatasetFilesRequest._fields = [
2698
+ FieldMetadata("ownerSlug", "owner_slug", "_owner_slug", str, "", PredefinedSerializer()),
2699
+ FieldMetadata("datasetSlug", "dataset_slug", "_dataset_slug", str, "", PredefinedSerializer()),
2700
+ FieldMetadata("datasetVersionNumber", "dataset_version_number", "_dataset_version_number", int, None, PredefinedSerializer(), optional=True),
2701
+ FieldMetadata("pageToken", "page_token", "_page_token", str, None, PredefinedSerializer(), optional=True),
2702
+ FieldMetadata("pageSize", "page_size", "_page_size", int, None, PredefinedSerializer(), optional=True),
2703
+ ]
2704
+
2705
+ ApiListDatasetFilesResponse._fields = [
2706
+ FieldMetadata("datasetFiles", "dataset_files", "_dataset_files", ApiDatasetFile, [], ListSerializer(KaggleObjectSerializer())),
2707
+ FieldMetadata("errorMessage", "error_message", "_error_message", str, None, PredefinedSerializer(), optional=True),
2708
+ FieldMetadata("nextPageToken", "next_page_token", "_next_page_token", str, None, PredefinedSerializer(), optional=True),
2709
+ ]
2710
+
2711
+ ApiListDatasetsRequest._fields = [
2712
+ FieldMetadata("group", "group", "_group", DatasetSelectionGroup, DatasetSelectionGroup.DATASET_SELECTION_GROUP_PUBLIC, EnumSerializer()),
2713
+ FieldMetadata("sortBy", "sort_by", "_sort_by", DatasetSortBy, DatasetSortBy.DATASET_SORT_BY_HOTTEST, EnumSerializer()),
2714
+ FieldMetadata("size", "size", "_size", DatasetSizeGroup, DatasetSizeGroup.DATASET_SIZE_GROUP_ALL, EnumSerializer()),
2715
+ FieldMetadata("fileType", "file_type", "_file_type", DatasetFileTypeGroup, DatasetFileTypeGroup.DATASET_FILE_TYPE_GROUP_ALL, EnumSerializer()),
2716
+ FieldMetadata("license", "license", "_license", DatasetLicenseGroup, DatasetLicenseGroup.DATASET_LICENSE_GROUP_ALL, EnumSerializer()),
2717
+ FieldMetadata("viewed", "viewed", "_viewed", DatasetViewedGroup, DatasetViewedGroup.DATASET_VIEWED_GROUP_UNSPECIFIED, EnumSerializer()),
2718
+ FieldMetadata("tagIds", "tag_ids", "_tag_ids", str, None, PredefinedSerializer(), optional=True),
2719
+ FieldMetadata("search", "search", "_search", str, None, PredefinedSerializer(), optional=True),
2720
+ FieldMetadata("user", "user", "_user", str, None, PredefinedSerializer(), optional=True),
2721
+ FieldMetadata("minSize", "min_size", "_min_size", int, None, PredefinedSerializer(), optional=True),
2722
+ FieldMetadata("maxSize", "max_size", "_max_size", int, None, PredefinedSerializer(), optional=True),
2723
+ FieldMetadata("page", "page", "_page", int, None, PredefinedSerializer(), optional=True),
2724
+ FieldMetadata("pageToken", "page_token", "_page_token", str, None, PredefinedSerializer(), optional=True),
2725
+ FieldMetadata("pageSize", "page_size", "_page_size", int, None, PredefinedSerializer(), optional=True),
2726
+ ]
2727
+
2728
+ ApiListDatasetsResponse._fields = [
2729
+ FieldMetadata("datasets", "datasets", "_datasets", ApiDataset, [], ListSerializer(KaggleObjectSerializer())),
2730
+ ]
2731
+
2732
+ ApiUpdateDatasetMetadataRequest._fields = [
2733
+ FieldMetadata("ownerSlug", "owner_slug", "_owner_slug", str, "", PredefinedSerializer()),
2734
+ FieldMetadata("datasetSlug", "dataset_slug", "_dataset_slug", str, "", PredefinedSerializer()),
2735
+ FieldMetadata("settings", "settings", "_settings", DatasetSettings, None, KaggleObjectSerializer()),
2736
+ ]
2737
+
2738
+ ApiUpdateDatasetMetadataResponse._fields = [
2739
+ FieldMetadata("errors", "errors", "_errors", str, [], ListSerializer(PredefinedSerializer())),
2740
+ ]
2741
+
2742
+ ApiUploadDatasetFileRequest._fields = [
2743
+ FieldMetadata("fileName", "file_name", "_file_name", str, "", PredefinedSerializer()),
2744
+ FieldMetadata("contentLength", "content_length", "_content_length", int, 0, PredefinedSerializer()),
2745
+ FieldMetadata("lastModifiedEpochSeconds", "last_modified_epoch_seconds", "_last_modified_epoch_seconds", int, 0, PredefinedSerializer()),
2746
+ ]
2747
+
2748
+ ApiUploadDatasetFileResponse._fields = [
2749
+ FieldMetadata("token", "token", "_token", str, "", PredefinedSerializer()),
2750
+ FieldMetadata("createUrl", "create_url", "_create_url", str, "", PredefinedSerializer()),
2751
+ ]
2752
+
2753
+ ApiCategory._fields = [
2754
+ FieldMetadata("ref", "ref", "_ref", str, "", PredefinedSerializer()),
2755
+ FieldMetadata("name", "name", "_name", str, None, PredefinedSerializer(), optional=True),
2756
+ FieldMetadata("description", "description", "_description", str, None, PredefinedSerializer(), optional=True),
2757
+ FieldMetadata("fullPath", "full_path", "_full_path", str, None, PredefinedSerializer(), optional=True),
2758
+ FieldMetadata("competitionCount", "competition_count", "_competition_count", int, 0, PredefinedSerializer()),
2759
+ FieldMetadata("datasetCount", "dataset_count", "_dataset_count", int, 0, PredefinedSerializer()),
2760
+ FieldMetadata("scriptCount", "script_count", "_script_count", int, 0, PredefinedSerializer()),
2761
+ FieldMetadata("totalCount", "total_count", "_total_count", int, 0, PredefinedSerializer()),
2762
+ ]
2763
+
2764
+ ApiDatasetColumn._fields = [
2765
+ FieldMetadata("order", "order", "_order", int, None, PredefinedSerializer(), optional=True),
2766
+ FieldMetadata("name", "name", "_name", str, None, PredefinedSerializer(), optional=True),
2767
+ FieldMetadata("type", "type", "_type", str, None, PredefinedSerializer(), optional=True),
2768
+ FieldMetadata("originalType", "original_type", "_original_type", str, None, PredefinedSerializer(), optional=True),
2769
+ FieldMetadata("description", "description", "_description", str, None, PredefinedSerializer(), optional=True),
2770
+ ]
2771
+
2772
+ ApiUploadDirectoryInfo._fields = [
2773
+ FieldMetadata("name", "name", "_name", str, "", PredefinedSerializer()),
2774
+ FieldMetadata("directories", "directories", "_directories", ApiUploadDirectoryInfo, [], ListSerializer(KaggleObjectSerializer())),
2775
+ FieldMetadata("files", "files", "_files", ApiDatasetNewFile, [], ListSerializer(KaggleObjectSerializer())),
2776
+ ]
2777
+