kaggle 1.7.4.2__py3-none-any.whl → 1.8.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. kaggle/__init__.py +10 -6
  2. kaggle/api/kaggle_api.py +574 -585
  3. kaggle/api/kaggle_api_extended.py +5251 -4738
  4. kaggle/cli.py +1335 -1585
  5. kaggle/models/api_blob_type.py +3 -3
  6. kaggle/models/dataset_column.py +129 -129
  7. kaggle/models/dataset_new_request.py +130 -72
  8. kaggle/models/dataset_new_version_request.py +88 -56
  9. kaggle/models/dataset_update_settings_request.py +93 -59
  10. kaggle/models/kaggle_models_extended.py +169 -172
  11. kaggle/models/kernel_push_request.py +152 -100
  12. kaggle/models/model_instance_new_version_request.py +30 -30
  13. kaggle/models/model_instance_update_request.py +171 -71
  14. kaggle/models/model_new_instance_request.py +223 -88
  15. kaggle/models/model_new_request.py +61 -46
  16. kaggle/models/model_update_request.py +66 -48
  17. kaggle/models/start_blob_upload_request.py +146 -138
  18. kaggle/models/start_blob_upload_response.py +83 -78
  19. kaggle/models/upload_file.py +92 -96
  20. kaggle/test/test_authenticate.py +23 -23
  21. {kaggle-1.7.4.2.dist-info → kaggle-1.8.0.dist-info}/METADATA +11 -15
  22. kaggle-1.8.0.dist-info/RECORD +148 -0
  23. kagglesdk/__init__.py +5 -1
  24. kagglesdk/benchmarks/services/__init__.py +0 -0
  25. kagglesdk/benchmarks/services/benchmarks_api_service.py +19 -0
  26. kagglesdk/benchmarks/types/__init__.py +0 -0
  27. kagglesdk/benchmarks/types/benchmark_types.py +307 -0
  28. kagglesdk/benchmarks/types/benchmarks_api_service.py +243 -0
  29. kagglesdk/blobs/services/blob_api_service.py +1 -1
  30. kagglesdk/blobs/types/blob_api_service.py +2 -2
  31. kagglesdk/common/services/__init__.py +0 -0
  32. kagglesdk/common/services/operations_service.py +46 -0
  33. kagglesdk/common/types/file_download.py +1 -1
  34. kagglesdk/common/types/http_redirect.py +1 -1
  35. kagglesdk/common/types/operations.py +194 -0
  36. kagglesdk/common/types/operations_service.py +48 -0
  37. kagglesdk/community/__init__.py +0 -0
  38. kagglesdk/community/types/__init__.py +0 -0
  39. kagglesdk/community/types/content_enums.py +44 -0
  40. kagglesdk/community/types/organization.py +410 -0
  41. kagglesdk/competitions/services/competition_api_service.py +49 -12
  42. kagglesdk/competitions/types/competition.py +14 -0
  43. kagglesdk/competitions/types/competition_api_service.py +1639 -1275
  44. kagglesdk/competitions/types/search_competitions.py +28 -0
  45. kagglesdk/datasets/databundles/__init__.py +0 -0
  46. kagglesdk/datasets/databundles/types/__init__.py +0 -0
  47. kagglesdk/datasets/databundles/types/databundle_api_types.py +540 -0
  48. kagglesdk/datasets/services/dataset_api_service.py +39 -14
  49. kagglesdk/datasets/types/dataset_api_service.py +567 -297
  50. kagglesdk/datasets/types/dataset_enums.py +21 -0
  51. kagglesdk/datasets/types/dataset_service.py +145 -0
  52. kagglesdk/datasets/types/dataset_types.py +74 -74
  53. kagglesdk/datasets/types/search_datasets.py +6 -0
  54. kagglesdk/discussions/__init__.py +0 -0
  55. kagglesdk/discussions/types/__init__.py +0 -0
  56. kagglesdk/discussions/types/search_discussions.py +43 -0
  57. kagglesdk/discussions/types/writeup_enums.py +11 -0
  58. kagglesdk/education/services/education_api_service.py +1 -1
  59. kagglesdk/education/types/education_api_service.py +1 -1
  60. kagglesdk/kaggle_client.py +55 -20
  61. kagglesdk/kaggle_creds.py +148 -0
  62. kagglesdk/kaggle_env.py +89 -27
  63. kagglesdk/kaggle_http_client.py +235 -290
  64. kagglesdk/kaggle_oauth.py +200 -0
  65. kagglesdk/kaggle_object.py +298 -250
  66. kagglesdk/kernels/services/kernels_api_service.py +46 -9
  67. kagglesdk/kernels/types/kernels_api_service.py +658 -158
  68. kagglesdk/kernels/types/kernels_enums.py +6 -0
  69. kagglesdk/kernels/types/search_kernels.py +6 -0
  70. kagglesdk/licenses/__init__.py +0 -0
  71. kagglesdk/licenses/types/__init__.py +0 -0
  72. kagglesdk/licenses/types/licenses_types.py +182 -0
  73. kagglesdk/models/services/model_api_service.py +46 -21
  74. kagglesdk/models/types/model_api_service.py +1018 -652
  75. kagglesdk/models/types/model_enums.py +8 -0
  76. kagglesdk/models/types/model_service.py +71 -71
  77. kagglesdk/models/types/model_types.py +1057 -5
  78. kagglesdk/models/types/search_models.py +8 -0
  79. kagglesdk/search/__init__.py +0 -0
  80. kagglesdk/search/services/__init__.py +0 -0
  81. kagglesdk/search/services/search_api_service.py +19 -0
  82. kagglesdk/search/types/__init__.py +0 -0
  83. kagglesdk/search/types/search_api_service.py +2435 -0
  84. kagglesdk/search/types/search_content_shared.py +50 -0
  85. kagglesdk/search/types/search_enums.py +45 -0
  86. kagglesdk/search/types/search_service.py +303 -0
  87. kagglesdk/security/__init__.py +0 -0
  88. kagglesdk/security/services/__init__.py +0 -0
  89. kagglesdk/security/services/iam_service.py +31 -0
  90. kagglesdk/security/services/oauth_service.py +58 -0
  91. kagglesdk/security/types/__init__.py +0 -0
  92. kagglesdk/security/types/authentication.py +171 -0
  93. kagglesdk/security/types/iam_service.py +496 -0
  94. kagglesdk/security/types/oauth_service.py +1181 -0
  95. kagglesdk/security/types/roles.py +8 -0
  96. kagglesdk/security/types/security_types.py +159 -0
  97. kagglesdk/test/__init__.py +0 -0
  98. kagglesdk/test/test_client.py +20 -24
  99. kagglesdk/users/services/__init__.py +0 -0
  100. kagglesdk/users/services/account_service.py +31 -0
  101. kagglesdk/users/services/group_api_service.py +31 -0
  102. kagglesdk/users/types/account_service.py +345 -0
  103. kagglesdk/users/types/group_api_service.py +315 -0
  104. kagglesdk/users/types/group_types.py +165 -0
  105. kagglesdk/users/types/groups_enum.py +8 -0
  106. kagglesdk/users/types/progression_service.py +9 -0
  107. kagglesdk/users/types/search_users.py +23 -0
  108. kagglesdk/users/types/user_avatar.py +226 -0
  109. kaggle/configuration.py +0 -206
  110. kaggle-1.7.4.2.dist-info/RECORD +0 -89
  111. {kaggle-1.7.4.2.dist-info → kaggle-1.8.0.dist-info}/WHEEL +0 -0
  112. {kaggle-1.7.4.2.dist-info → kaggle-1.8.0.dist-info}/entry_points.txt +0 -0
  113. {kaggle-1.7.4.2.dist-info → kaggle-1.8.0.dist-info}/licenses/LICENSE.txt +0 -0
  114. {kaggle/test → kagglesdk/benchmarks}/__init__.py +0 -0
@@ -4,6 +4,135 @@ from kagglesdk.datasets.types.dataset_types import DatasetInfo, DatasetSettings
4
4
  from kagglesdk.kaggle_object import *
5
5
  from typing import Optional, List
6
6
 
7
+ class ApiCategory(KaggleObject):
8
+ r"""
9
+ Attributes:
10
+ ref (str)
11
+ name (str)
12
+ description (str)
13
+ full_path (str)
14
+ competition_count (int)
15
+ dataset_count (int)
16
+ script_count (int)
17
+ total_count (int)
18
+ """
19
+
20
+ def __init__(self):
21
+ self._ref = ""
22
+ self._name = None
23
+ self._description = None
24
+ self._full_path = None
25
+ self._competition_count = 0
26
+ self._dataset_count = 0
27
+ self._script_count = 0
28
+ self._total_count = 0
29
+ self._freeze()
30
+
31
+ @property
32
+ def ref(self) -> str:
33
+ return self._ref
34
+
35
+ @ref.setter
36
+ def ref(self, ref: str):
37
+ if ref is None:
38
+ del self.ref
39
+ return
40
+ if not isinstance(ref, str):
41
+ raise TypeError('ref must be of type str')
42
+ self._ref = ref
43
+
44
+ @property
45
+ def name(self) -> str:
46
+ return self._name or ""
47
+
48
+ @name.setter
49
+ def name(self, name: Optional[str]):
50
+ if name is None:
51
+ del self.name
52
+ return
53
+ if not isinstance(name, str):
54
+ raise TypeError('name must be of type str')
55
+ self._name = name
56
+
57
+ @property
58
+ def description(self) -> str:
59
+ return self._description or ""
60
+
61
+ @description.setter
62
+ def description(self, description: Optional[str]):
63
+ if description is None:
64
+ del self.description
65
+ return
66
+ if not isinstance(description, str):
67
+ raise TypeError('description must be of type str')
68
+ self._description = description
69
+
70
+ @property
71
+ def full_path(self) -> str:
72
+ return self._full_path or ""
73
+
74
+ @full_path.setter
75
+ def full_path(self, full_path: Optional[str]):
76
+ if full_path is None:
77
+ del self.full_path
78
+ return
79
+ if not isinstance(full_path, str):
80
+ raise TypeError('full_path must be of type str')
81
+ self._full_path = full_path
82
+
83
+ @property
84
+ def competition_count(self) -> int:
85
+ return self._competition_count
86
+
87
+ @competition_count.setter
88
+ def competition_count(self, competition_count: int):
89
+ if competition_count is None:
90
+ del self.competition_count
91
+ return
92
+ if not isinstance(competition_count, int):
93
+ raise TypeError('competition_count must be of type int')
94
+ self._competition_count = competition_count
95
+
96
+ @property
97
+ def dataset_count(self) -> int:
98
+ return self._dataset_count
99
+
100
+ @dataset_count.setter
101
+ def dataset_count(self, dataset_count: int):
102
+ if dataset_count is None:
103
+ del self.dataset_count
104
+ return
105
+ if not isinstance(dataset_count, int):
106
+ raise TypeError('dataset_count must be of type int')
107
+ self._dataset_count = dataset_count
108
+
109
+ @property
110
+ def script_count(self) -> int:
111
+ return self._script_count
112
+
113
+ @script_count.setter
114
+ def script_count(self, script_count: int):
115
+ if script_count is None:
116
+ del self.script_count
117
+ return
118
+ if not isinstance(script_count, int):
119
+ raise TypeError('script_count must be of type int')
120
+ self._script_count = script_count
121
+
122
+ @property
123
+ def total_count(self) -> int:
124
+ return self._total_count
125
+
126
+ @total_count.setter
127
+ def total_count(self, total_count: int):
128
+ if total_count is None:
129
+ del self.total_count
130
+ return
131
+ if not isinstance(total_count, int):
132
+ raise TypeError('total_count must be of type int')
133
+ self._total_count = total_count
134
+
135
+
7
136
  class ApiCreateDatasetRequest(KaggleObject):
8
137
  r"""
9
138
  Attributes:
@@ -17,6 +146,7 @@ class ApiCreateDatasetRequest(KaggleObject):
17
146
  subtitle (str)
18
147
  description (str)
19
148
  category_ids (str)
149
+ directories (ApiUploadDirectoryInfo)
20
150
  """
21
151
 
22
152
  def __init__(self):
@@ -30,6 +160,7 @@ class ApiCreateDatasetRequest(KaggleObject):
30
160
  self._subtitle = None
31
161
  self._description = None
32
162
  self._category_ids = []
163
+ self._directories = []
33
164
  self._freeze()
34
165
 
35
166
  @property
@@ -37,7 +168,7 @@ class ApiCreateDatasetRequest(KaggleObject):
37
168
  return self._id or 0
38
169
 
39
170
  @id.setter
40
- def id(self, id: int):
171
+ def id(self, id: Optional[int]):
41
172
  if id is None:
42
173
  del self.id
43
174
  return
@@ -50,7 +181,7 @@ class ApiCreateDatasetRequest(KaggleObject):
50
181
  return self._owner_slug or ""
51
182
 
52
183
  @owner_slug.setter
53
- def owner_slug(self, owner_slug: str):
184
+ def owner_slug(self, owner_slug: Optional[str]):
54
185
  if owner_slug is None:
55
186
  del self.owner_slug
56
187
  return
@@ -63,7 +194,7 @@ class ApiCreateDatasetRequest(KaggleObject):
63
194
  return self._slug or ""
64
195
 
65
196
  @slug.setter
66
- def slug(self, slug: str):
197
+ def slug(self, slug: Optional[str]):
67
198
  if slug is None:
68
199
  del self.slug
69
200
  return
@@ -76,7 +207,7 @@ class ApiCreateDatasetRequest(KaggleObject):
76
207
  return self._title or ""
77
208
 
78
209
  @title.setter
79
- def title(self, title: str):
210
+ def title(self, title: Optional[str]):
80
211
  if title is None:
81
212
  del self.title
82
213
  return
@@ -89,7 +220,7 @@ class ApiCreateDatasetRequest(KaggleObject):
89
220
  return self._license_name or ""
90
221
 
91
222
  @license_name.setter
92
- def license_name(self, license_name: str):
223
+ def license_name(self, license_name: Optional[str]):
93
224
  if license_name is None:
94
225
  del self.license_name
95
226
  return
@@ -130,7 +261,7 @@ class ApiCreateDatasetRequest(KaggleObject):
130
261
  return self._subtitle or ""
131
262
 
132
263
  @subtitle.setter
133
- def subtitle(self, subtitle: str):
264
+ def subtitle(self, subtitle: Optional[str]):
134
265
  if subtitle is None:
135
266
  del self.subtitle
136
267
  return
@@ -143,7 +274,7 @@ class ApiCreateDatasetRequest(KaggleObject):
143
274
  return self._description or ""
144
275
 
145
276
  @description.setter
146
- def description(self, description: str):
277
+ def description(self, description: Optional[str]):
147
278
  if description is None:
148
279
  del self.description
149
280
  return
@@ -166,6 +297,21 @@ class ApiCreateDatasetRequest(KaggleObject):
166
297
  raise TypeError('category_ids must contain only items of type str')
167
298
  self._category_ids = category_ids
168
299
 
300
+ @property
301
+ def directories(self) -> Optional[List[Optional['ApiUploadDirectoryInfo']]]:
302
+ return self._directories
303
+
304
+ @directories.setter
305
+ def directories(self, directories: Optional[List[Optional['ApiUploadDirectoryInfo']]]):
306
+ if directories is None:
307
+ del self.directories
308
+ return
309
+ if not isinstance(directories, list):
310
+ raise TypeError('directories must be of type list')
311
+ if not all([isinstance(t, ApiUploadDirectoryInfo) for t in directories]):
312
+ raise TypeError('directories must contain only items of type ApiUploadDirectoryInfo')
313
+ self._directories = directories
314
+
169
315
  def endpoint(self):
170
316
  path = '/api/v1/datasets/create/new'
171
317
  return path.format_map(self.to_field_map(self))
@@ -203,7 +349,7 @@ class ApiCreateDatasetResponse(KaggleObject):
203
349
  return self._ref or ""
204
350
 
205
351
  @ref.setter
206
- def ref(self, ref: str):
352
+ def ref(self, ref: Optional[str]):
207
353
  if ref is None:
208
354
  del self.ref
209
355
  return
@@ -216,7 +362,7 @@ class ApiCreateDatasetResponse(KaggleObject):
216
362
  return self._url or ""
217
363
 
218
364
  @url.setter
219
- def url(self, url: str):
365
+ def url(self, url: Optional[str]):
220
366
  if url is None:
221
367
  del self.url
222
368
  return
@@ -229,7 +375,7 @@ class ApiCreateDatasetResponse(KaggleObject):
229
375
  return self._status or ""
230
376
 
231
377
  @status.setter
232
- def status(self, status: str):
378
+ def status(self, status: Optional[str]):
233
379
  if status is None:
234
380
  del self.status
235
381
  return
@@ -242,7 +388,7 @@ class ApiCreateDatasetResponse(KaggleObject):
242
388
  return self._error or ""
243
389
 
244
390
  @error.setter
245
- def error(self, error: str):
391
+ def error(self, error: Optional[str]):
246
392
  if error is None:
247
393
  del self.error
248
394
  return
@@ -398,6 +544,7 @@ class ApiCreateDatasetVersionRequestBody(KaggleObject):
398
544
  subtitle (str)
399
545
  description (str)
400
546
  category_ids (str)
547
+ directories (ApiUploadDirectoryInfo)
401
548
  """
402
549
 
403
550
  def __init__(self):
@@ -407,6 +554,7 @@ class ApiCreateDatasetVersionRequestBody(KaggleObject):
407
554
  self._subtitle = None
408
555
  self._description = None
409
556
  self._category_ids = []
557
+ self._directories = []
410
558
  self._freeze()
411
559
 
412
560
  @property
@@ -414,7 +562,7 @@ class ApiCreateDatasetVersionRequestBody(KaggleObject):
414
562
  return self._version_notes or ""
415
563
 
416
564
  @version_notes.setter
417
- def version_notes(self, version_notes: str):
565
+ def version_notes(self, version_notes: Optional[str]):
418
566
  if version_notes is None:
419
567
  del self.version_notes
420
568
  return
@@ -455,7 +603,7 @@ class ApiCreateDatasetVersionRequestBody(KaggleObject):
455
603
  return self._subtitle or ""
456
604
 
457
605
  @subtitle.setter
458
- def subtitle(self, subtitle: str):
606
+ def subtitle(self, subtitle: Optional[str]):
459
607
  if subtitle is None:
460
608
  del self.subtitle
461
609
  return
@@ -468,7 +616,7 @@ class ApiCreateDatasetVersionRequestBody(KaggleObject):
468
616
  return self._description or ""
469
617
 
470
618
  @description.setter
471
- def description(self, description: str):
619
+ def description(self, description: Optional[str]):
472
620
  if description is None:
473
621
  del self.description
474
622
  return
@@ -491,6 +639,21 @@ class ApiCreateDatasetVersionRequestBody(KaggleObject):
491
639
  raise TypeError('category_ids must contain only items of type str')
492
640
  self._category_ids = category_ids
493
641
 
642
+ @property
643
+ def directories(self) -> Optional[List[Optional['ApiUploadDirectoryInfo']]]:
644
+ return self._directories
645
+
646
+ @directories.setter
647
+ def directories(self, directories: Optional[List[Optional['ApiUploadDirectoryInfo']]]):
648
+ if directories is None:
649
+ del self.directories
650
+ return
651
+ if not isinstance(directories, list):
652
+ raise TypeError('directories must be of type list')
653
+ if not all([isinstance(t, ApiUploadDirectoryInfo) for t in directories]):
654
+ raise TypeError('directories must contain only items of type ApiUploadDirectoryInfo')
655
+ self._directories = directories
656
+
494
657
 
495
658
  class ApiDataset(KaggleObject):
496
659
  r"""
@@ -520,6 +683,7 @@ class ApiDataset(KaggleObject):
520
683
  tags (ApiCategory)
521
684
  files (ApiDatasetFile)
522
685
  versions (ApiDatasetVersion)
686
+ thumbnail_image_url (str)
523
687
  """
524
688
 
525
689
  def __init__(self):
@@ -548,6 +712,7 @@ class ApiDataset(KaggleObject):
548
712
  self._tags = []
549
713
  self._files = []
550
714
  self._versions = []
715
+ self._thumbnail_image_url = None
551
716
  self._freeze()
552
717
 
553
718
  @property
@@ -581,7 +746,7 @@ class ApiDataset(KaggleObject):
581
746
  return self._subtitle or ""
582
747
 
583
748
  @subtitle.setter
584
- def subtitle(self, subtitle: str):
749
+ def subtitle(self, subtitle: Optional[str]):
585
750
  if subtitle is None:
586
751
  del self.subtitle
587
752
  return
@@ -594,7 +759,7 @@ class ApiDataset(KaggleObject):
594
759
  return self._creator_name or ""
595
760
 
596
761
  @creator_name.setter
597
- def creator_name(self, creator_name: str):
762
+ def creator_name(self, creator_name: Optional[str]):
598
763
  if creator_name is None:
599
764
  del self.creator_name
600
765
  return
@@ -607,7 +772,7 @@ class ApiDataset(KaggleObject):
607
772
  return self._creator_url or ""
608
773
 
609
774
  @creator_url.setter
610
- def creator_url(self, creator_url: str):
775
+ def creator_url(self, creator_url: Optional[str]):
611
776
  if creator_url is None:
612
777
  del self.creator_url
613
778
  return
@@ -620,7 +785,7 @@ class ApiDataset(KaggleObject):
620
785
  return self._total_bytes or 0
621
786
 
622
787
  @total_bytes.setter
623
- def total_bytes(self, total_bytes: int):
788
+ def total_bytes(self, total_bytes: Optional[int]):
624
789
  if total_bytes is None:
625
790
  del self.total_bytes
626
791
  return
@@ -633,7 +798,7 @@ class ApiDataset(KaggleObject):
633
798
  return self._url or ""
634
799
 
635
800
  @url.setter
636
- def url(self, url: str):
801
+ def url(self, url: Optional[str]):
637
802
  if url is None:
638
803
  del self.url
639
804
  return
@@ -698,7 +863,7 @@ class ApiDataset(KaggleObject):
698
863
  return self._license_name or ""
699
864
 
700
865
  @license_name.setter
701
- def license_name(self, license_name: str):
866
+ def license_name(self, license_name: Optional[str]):
702
867
  if license_name is None:
703
868
  del self.license_name
704
869
  return
@@ -711,7 +876,7 @@ class ApiDataset(KaggleObject):
711
876
  return self._description or ""
712
877
 
713
878
  @description.setter
714
- def description(self, description: str):
879
+ def description(self, description: Optional[str]):
715
880
  if description is None:
716
881
  del self.description
717
882
  return
@@ -724,7 +889,7 @@ class ApiDataset(KaggleObject):
724
889
  return self._owner_name or ""
725
890
 
726
891
  @owner_name.setter
727
- def owner_name(self, owner_name: str):
892
+ def owner_name(self, owner_name: Optional[str]):
728
893
  if owner_name is None:
729
894
  del self.owner_name
730
895
  return
@@ -737,7 +902,7 @@ class ApiDataset(KaggleObject):
737
902
  return self._owner_ref or ""
738
903
 
739
904
  @owner_ref.setter
740
- def owner_ref(self, owner_ref: str):
905
+ def owner_ref(self, owner_ref: Optional[str]):
741
906
  if owner_ref is None:
742
907
  del self.owner_ref
743
908
  return
@@ -763,7 +928,7 @@ class ApiDataset(KaggleObject):
763
928
  return self._title or ""
764
929
 
765
930
  @title.setter
766
- def title(self, title: str):
931
+ def title(self, title: Optional[str]):
767
932
  if title is None:
768
933
  del self.title
769
934
  return
@@ -815,7 +980,7 @@ class ApiDataset(KaggleObject):
815
980
  return self._current_version_number or 0
816
981
 
817
982
  @current_version_number.setter
818
- def current_version_number(self, current_version_number: int):
983
+ def current_version_number(self, current_version_number: Optional[int]):
819
984
  if current_version_number is None:
820
985
  del self.current_version_number
821
986
  return
@@ -828,7 +993,7 @@ class ApiDataset(KaggleObject):
828
993
  return self._usability_rating or 0.0
829
994
 
830
995
  @usability_rating.setter
831
- def usability_rating(self, usability_rating: float):
996
+ def usability_rating(self, usability_rating: Optional[float]):
832
997
  if usability_rating is None:
833
998
  del self.usability_rating
834
999
  return
@@ -881,6 +1046,103 @@ class ApiDataset(KaggleObject):
881
1046
  raise TypeError('versions must contain only items of type ApiDatasetVersion')
882
1047
  self._versions = versions
883
1048
 
1049
+ @property
1050
+ def thumbnail_image_url(self) -> str:
1051
+ return self._thumbnail_image_url or ""
1052
+
1053
+ @thumbnail_image_url.setter
1054
+ def thumbnail_image_url(self, thumbnail_image_url: Optional[str]):
1055
+ if thumbnail_image_url is None:
1056
+ del self.thumbnail_image_url
1057
+ return
1058
+ if not isinstance(thumbnail_image_url, str):
1059
+ raise TypeError('thumbnail_image_url must be of type str')
1060
+ self._thumbnail_image_url = thumbnail_image_url
1061
+
1062
+
1063
+ class ApiDatasetColumn(KaggleObject):
1064
+ r"""
1065
+ Attributes:
1066
+ order (int)
1067
+ name (str)
1068
+ type (str)
1069
+ original_type (str)
1070
+ description (str)
1071
+ """
1072
+
1073
+ def __init__(self):
1074
+ self._order = None
1075
+ self._name = None
1076
+ self._type = None
1077
+ self._original_type = None
1078
+ self._description = None
1079
+ self._freeze()
1080
+
1081
+ @property
1082
+ def order(self) -> int:
1083
+ return self._order or 0
1084
+
1085
+ @order.setter
1086
+ def order(self, order: Optional[int]):
1087
+ if order is None:
1088
+ del self.order
1089
+ return
1090
+ if not isinstance(order, int):
1091
+ raise TypeError('order must be of type int')
1092
+ self._order = order
1093
+
1094
+ @property
1095
+ def name(self) -> str:
1096
+ return self._name or ""
1097
+
1098
+ @name.setter
1099
+ def name(self, name: Optional[str]):
1100
+ if name is None:
1101
+ del self.name
1102
+ return
1103
+ if not isinstance(name, str):
1104
+ raise TypeError('name must be of type str')
1105
+ self._name = name
1106
+
1107
+ @property
1108
+ def type(self) -> str:
1109
+ return self._type or ""
1110
+
1111
+ @type.setter
1112
+ def type(self, type: Optional[str]):
1113
+ if type is None:
1114
+ del self.type
1115
+ return
1116
+ if not isinstance(type, str):
1117
+ raise TypeError('type must be of type str')
1118
+ self._type = type
1119
+
1120
+ @property
1121
+ def original_type(self) -> str:
1122
+ return self._original_type or ""
1123
+
1124
+ @original_type.setter
1125
+ def original_type(self, original_type: Optional[str]):
1126
+ if original_type is None:
1127
+ del self.original_type
1128
+ return
1129
+ if not isinstance(original_type, str):
1130
+ raise TypeError('original_type must be of type str')
1131
+ self._original_type = original_type
1132
+
1133
+ @property
1134
+ def description(self) -> str:
1135
+ return self._description or ""
1136
+
1137
+ @description.setter
1138
+ def description(self, description: Optional[str]):
1139
+ if description is None:
1140
+ del self.description
1141
+ return
1142
+ if not isinstance(description, str):
1143
+ raise TypeError('description must be of type str')
1144
+ self._description = description
1145
+
884
1146
 
885
1147
  class ApiDatasetFile(KaggleObject):
886
1148
  r"""
@@ -928,7 +1190,7 @@ class ApiDatasetFile(KaggleObject):
928
1190
  return self._dataset_ref or ""
929
1191
 
930
1192
  @dataset_ref.setter
931
- def dataset_ref(self, dataset_ref: str):
1193
+ def dataset_ref(self, dataset_ref: Optional[str]):
932
1194
  if dataset_ref is None:
933
1195
  del self.dataset_ref
934
1196
  return
@@ -941,7 +1203,7 @@ class ApiDatasetFile(KaggleObject):
941
1203
  return self._owner_ref or ""
942
1204
 
943
1205
  @owner_ref.setter
944
- def owner_ref(self, owner_ref: str):
1206
+ def owner_ref(self, owner_ref: Optional[str]):
945
1207
  if owner_ref is None:
946
1208
  del self.owner_ref
947
1209
  return
@@ -954,7 +1216,7 @@ class ApiDatasetFile(KaggleObject):
954
1216
  return self._name or ""
955
1217
 
956
1218
  @name.setter
957
- def name(self, name: str):
1219
+ def name(self, name: Optional[str]):
958
1220
  if name is None:
959
1221
  del self.name
960
1222
  return
@@ -980,7 +1242,7 @@ class ApiDatasetFile(KaggleObject):
980
1242
  return self._description or ""
981
1243
 
982
1244
  @description.setter
983
- def description(self, description: str):
1245
+ def description(self, description: Optional[str]):
984
1246
  if description is None:
985
1247
  del self.description
986
1248
  return
@@ -993,7 +1255,7 @@ class ApiDatasetFile(KaggleObject):
993
1255
  return self._file_type or ""
994
1256
 
995
1257
  @file_type.setter
996
- def file_type(self, file_type: str):
1258
+ def file_type(self, file_type: Optional[str]):
997
1259
  if file_type is None:
998
1260
  del self.file_type
999
1261
  return
@@ -1006,7 +1268,7 @@ class ApiDatasetFile(KaggleObject):
1006
1268
  return self._url or ""
1007
1269
 
1008
1270
  @url.setter
1009
- def url(self, url: str):
1271
+ def url(self, url: Optional[str]):
1010
1272
  if url is None:
1011
1273
  del self.url
1012
1274
  return
@@ -1062,7 +1324,7 @@ class ApiDatasetNewFile(KaggleObject):
1062
1324
  return self._token or ""
1063
1325
 
1064
1326
  @token.setter
1065
- def token(self, token: str):
1327
+ def token(self, token: Optional[str]):
1066
1328
  if token is None:
1067
1329
  del self.token
1068
1330
  return
@@ -1075,7 +1337,7 @@ class ApiDatasetNewFile(KaggleObject):
1075
1337
  return self._description or ""
1076
1338
 
1077
1339
  @description.setter
1078
- def description(self, description: str):
1340
+ def description(self, description: Optional[str]):
1079
1341
  if description is None:
1080
1342
  del self.description
1081
1343
  return
@@ -1150,7 +1412,7 @@ class ApiDatasetVersion(KaggleObject):
1150
1412
  return self._creator_name or ""
1151
1413
 
1152
1414
  @creator_name.setter
1153
- def creator_name(self, creator_name: str):
1415
+ def creator_name(self, creator_name: Optional[str]):
1154
1416
  if creator_name is None:
1155
1417
  del self.creator_name
1156
1418
  return
@@ -1163,7 +1425,7 @@ class ApiDatasetVersion(KaggleObject):
1163
1425
  return self._creator_ref or ""
1164
1426
 
1165
1427
  @creator_ref.setter
1166
- def creator_ref(self, creator_ref: str):
1428
+ def creator_ref(self, creator_ref: Optional[str]):
1167
1429
  if creator_ref is None:
1168
1430
  del self.creator_ref
1169
1431
  return
@@ -1176,7 +1438,7 @@ class ApiDatasetVersion(KaggleObject):
1176
1438
  return self._version_notes or ""
1177
1439
 
1178
1440
  @version_notes.setter
1179
- def version_notes(self, version_notes: str):
1441
+ def version_notes(self, version_notes: Optional[str]):
1180
1442
  if version_notes is None:
1181
1443
  del self.version_notes
1182
1444
  return
@@ -1189,7 +1451,7 @@ class ApiDatasetVersion(KaggleObject):
1189
1451
  return self._status or ""
1190
1452
 
1191
1453
  @status.setter
1192
- def status(self, status: str):
1454
+ def status(self, status: Optional[str]):
1193
1455
  if status is None:
1194
1456
  del self.status
1195
1457
  return
@@ -1261,7 +1523,7 @@ class ApiDeleteDatasetResponse(KaggleObject):
1261
1523
  return self._error or ""
1262
1524
 
1263
1525
  @error.setter
1264
- def error(self, error: str):
1526
+ def error(self, error: Optional[str]):
1265
1527
  if error is None:
1266
1528
  del self.error
1267
1529
  return
@@ -1317,7 +1579,7 @@ class ApiDownloadDatasetRawRequest(KaggleObject):
1317
1579
  return self._file_name or ""
1318
1580
 
1319
1581
  @file_name.setter
1320
- def file_name(self, file_name: str):
1582
+ def file_name(self, file_name: Optional[str]):
1321
1583
  if file_name is None:
1322
1584
  del self.file_name
1323
1585
  return
@@ -1330,7 +1592,7 @@ class ApiDownloadDatasetRawRequest(KaggleObject):
1330
1592
  return self._dataset_version_number or 0
1331
1593
 
1332
1594
  @dataset_version_number.setter
1333
- def dataset_version_number(self, dataset_version_number: int):
1595
+ def dataset_version_number(self, dataset_version_number: Optional[int]):
1334
1596
  if dataset_version_number is None:
1335
1597
  del self.dataset_version_number
1336
1598
  return
@@ -1355,6 +1617,7 @@ class ApiDownloadDatasetRequest(KaggleObject):
1355
1617
  file_name (str)
1356
1618
  dataset_version_number (int)
1357
1619
  raw (bool)
1620
+ hash_link (str)
1358
1621
  """
1359
1622
 
1360
1623
  def __init__(self):
@@ -1363,6 +1626,7 @@ class ApiDownloadDatasetRequest(KaggleObject):
1363
1626
  self._file_name = None
1364
1627
  self._dataset_version_number = None
1365
1628
  self._raw = False
1629
+ self._hash_link = None
1366
1630
  self._freeze()
1367
1631
 
1368
1632
  @property
@@ -1396,7 +1660,7 @@ class ApiDownloadDatasetRequest(KaggleObject):
1396
1660
  return self._file_name or ""
1397
1661
 
1398
1662
  @file_name.setter
1399
- def file_name(self, file_name: str):
1663
+ def file_name(self, file_name: Optional[str]):
1400
1664
  if file_name is None:
1401
1665
  del self.file_name
1402
1666
  return
@@ -1409,7 +1673,7 @@ class ApiDownloadDatasetRequest(KaggleObject):
1409
1673
  return self._dataset_version_number or 0
1410
1674
 
1411
1675
  @dataset_version_number.setter
1412
- def dataset_version_number(self, dataset_version_number: int):
1676
+ def dataset_version_number(self, dataset_version_number: Optional[int]):
1413
1677
  if dataset_version_number is None:
1414
1678
  del self.dataset_version_number
1415
1679
  return
@@ -1430,6 +1694,19 @@ class ApiDownloadDatasetRequest(KaggleObject):
1430
1694
  raise TypeError('raw must be of type bool')
1431
1695
  self._raw = raw
1432
1696
 
1697
+ @property
1698
+ def hash_link(self) -> str:
1699
+ return self._hash_link or ""
1700
+
1701
+ @hash_link.setter
1702
+ def hash_link(self, hash_link: Optional[str]):
1703
+ if hash_link is None:
1704
+ del self.hash_link
1705
+ return
1706
+ if not isinstance(hash_link, str):
1707
+ raise TypeError('hash_link must be of type str')
1708
+ self._hash_link = hash_link
1709
+
1433
1710
  def endpoint(self):
1434
1711
  if self.file_name:
1435
1712
  path = '/api/v1/datasets/download/{owner_slug}/{dataset_slug}/{file_name}'
@@ -1442,7 +1719,69 @@ class ApiDownloadDatasetRequest(KaggleObject):
1442
1719
  return '/api/v1/datasets/download/{owner_slug}/{dataset_slug}'
1443
1720
 
1444
1721
 
1445
- class ApiGetDatasetMetadataRequest(KaggleObject):
1722
+ class ApiGetDatasetFilesSummaryRequest(KaggleObject):
1723
+ r"""
1724
+ Attributes:
1725
+ owner_slug (str)
1726
+ dataset_slug (str)
1727
+ dataset_version_number (int)
1728
+ """
1729
+
1730
+ def __init__(self):
1731
+ self._owner_slug = ""
1732
+ self._dataset_slug = ""
1733
+ self._dataset_version_number = None
1734
+ self._freeze()
1735
+
1736
+ @property
1737
+ def owner_slug(self) -> str:
1738
+ return self._owner_slug
1739
+
1740
+ @owner_slug.setter
1741
+ def owner_slug(self, owner_slug: str):
1742
+ if owner_slug is None:
1743
+ del self.owner_slug
1744
+ return
1745
+ if not isinstance(owner_slug, str):
1746
+ raise TypeError('owner_slug must be of type str')
1747
+ self._owner_slug = owner_slug
1748
+
1749
+ @property
1750
+ def dataset_slug(self) -> str:
1751
+ return self._dataset_slug
1752
+
1753
+ @dataset_slug.setter
1754
+ def dataset_slug(self, dataset_slug: str):
1755
+ if dataset_slug is None:
1756
+ del self.dataset_slug
1757
+ return
1758
+ if not isinstance(dataset_slug, str):
1759
+ raise TypeError('dataset_slug must be of type str')
1760
+ self._dataset_slug = dataset_slug
1761
+
1762
+ @property
1763
+ def dataset_version_number(self) -> int:
1764
+ return self._dataset_version_number or 0
1765
+
1766
+ @dataset_version_number.setter
1767
+ def dataset_version_number(self, dataset_version_number: Optional[int]):
1768
+ if dataset_version_number is None:
1769
+ del self.dataset_version_number
1770
+ return
1771
+ if not isinstance(dataset_version_number, int):
1772
+ raise TypeError('dataset_version_number must be of type int')
1773
+ self._dataset_version_number = dataset_version_number
1774
+
1775
+ def endpoint(self):
1776
+ path = '/api/v1/datasets/files/summary/{owner_slug}/{dataset_slug}'
1777
+ return path.format_map(self.to_field_map(self))
1778
+
1779
+ @staticmethod
1780
+ def endpoint_path():
1781
+ return '/api/v1/datasets/files/summary/{owner_slug}/{dataset_slug}'
1782
+
1783
+
1784
+ class ApiGetDatasetMetadataRequest(KaggleObject):
1446
1785
  r"""
1447
1786
  Attributes:
1448
1787
  owner_slug (str)
@@ -1525,7 +1864,7 @@ class ApiGetDatasetMetadataResponse(KaggleObject):
1525
1864
  return self._error_message or ""
1526
1865
 
1527
1866
  @error_message.setter
1528
- def error_message(self, error_message: str):
1867
+ def error_message(self, error_message: Optional[str]):
1529
1868
  if error_message is None:
1530
1869
  del self.error_message
1531
1870
  return
@@ -1655,10 +1994,6 @@ class ApiGetDatasetStatusResponse(KaggleObject):
1655
1994
  raise TypeError('status must be of type DatabundleVersionStatus')
1656
1995
  self._status = status
1657
1996
 
1658
- @classmethod
1659
- def prepare_from(cls, http_response):
1660
- return cls.from_dict({'status': json.loads(http_response.text)})
1661
-
1662
1997
 
1663
1998
  class ApiListDatasetFilesRequest(KaggleObject):
1664
1999
  r"""
@@ -1709,7 +2044,7 @@ class ApiListDatasetFilesRequest(KaggleObject):
1709
2044
  return self._dataset_version_number or 0
1710
2045
 
1711
2046
  @dataset_version_number.setter
1712
- def dataset_version_number(self, dataset_version_number: int):
2047
+ def dataset_version_number(self, dataset_version_number: Optional[int]):
1713
2048
  if dataset_version_number is None:
1714
2049
  del self.dataset_version_number
1715
2050
  return
@@ -1722,7 +2057,7 @@ class ApiListDatasetFilesRequest(KaggleObject):
1722
2057
  return self._page_token or ""
1723
2058
 
1724
2059
  @page_token.setter
1725
- def page_token(self, page_token: str):
2060
+ def page_token(self, page_token: Optional[str]):
1726
2061
  if page_token is None:
1727
2062
  del self.page_token
1728
2063
  return
@@ -1735,7 +2070,7 @@ class ApiListDatasetFilesRequest(KaggleObject):
1735
2070
  return self._page_size or 0
1736
2071
 
1737
2072
  @page_size.setter
1738
- def page_size(self, page_size: int):
2073
+ def page_size(self, page_size: Optional[int]):
1739
2074
  if page_size is None:
1740
2075
  del self.page_size
1741
2076
  return
@@ -1786,7 +2121,7 @@ class ApiListDatasetFilesResponse(KaggleObject):
1786
2121
  return self._error_message or ""
1787
2122
 
1788
2123
  @error_message.setter
1789
- def error_message(self, error_message: str):
2124
+ def error_message(self, error_message: Optional[str]):
1790
2125
  if error_message is None:
1791
2126
  del self.error_message
1792
2127
  return
@@ -1799,7 +2134,7 @@ class ApiListDatasetFilesResponse(KaggleObject):
1799
2134
  return self._next_page_token or ""
1800
2135
 
1801
2136
  @next_page_token.setter
1802
- def next_page_token(self, next_page_token: str):
2137
+ def next_page_token(self, next_page_token: Optional[str]):
1803
2138
  if next_page_token is None:
1804
2139
  del self.next_page_token
1805
2140
  return
@@ -1939,7 +2274,7 @@ class ApiListDatasetsRequest(KaggleObject):
1939
2274
  return self._tag_ids or ""
1940
2275
 
1941
2276
  @tag_ids.setter
1942
- def tag_ids(self, tag_ids: str):
2277
+ def tag_ids(self, tag_ids: Optional[str]):
1943
2278
  if tag_ids is None:
1944
2279
  del self.tag_ids
1945
2280
  return
@@ -1952,7 +2287,7 @@ class ApiListDatasetsRequest(KaggleObject):
1952
2287
  return self._search or ""
1953
2288
 
1954
2289
  @search.setter
1955
- def search(self, search: str):
2290
+ def search(self, search: Optional[str]):
1956
2291
  if search is None:
1957
2292
  del self.search
1958
2293
  return
@@ -1965,7 +2300,7 @@ class ApiListDatasetsRequest(KaggleObject):
1965
2300
  return self._user or ""
1966
2301
 
1967
2302
  @user.setter
1968
- def user(self, user: str):
2303
+ def user(self, user: Optional[str]):
1969
2304
  if user is None:
1970
2305
  del self.user
1971
2306
  return
@@ -1978,7 +2313,7 @@ class ApiListDatasetsRequest(KaggleObject):
1978
2313
  return self._min_size or 0
1979
2314
 
1980
2315
  @min_size.setter
1981
- def min_size(self, min_size: int):
2316
+ def min_size(self, min_size: Optional[int]):
1982
2317
  if min_size is None:
1983
2318
  del self.min_size
1984
2319
  return
@@ -1991,7 +2326,7 @@ class ApiListDatasetsRequest(KaggleObject):
1991
2326
  return self._max_size or 0
1992
2327
 
1993
2328
  @max_size.setter
1994
- def max_size(self, max_size: int):
2329
+ def max_size(self, max_size: Optional[int]):
1995
2330
  if max_size is None:
1996
2331
  del self.max_size
1997
2332
  return
@@ -2004,7 +2339,7 @@ class ApiListDatasetsRequest(KaggleObject):
2004
2339
  return self._page or 0
2005
2340
 
2006
2341
  @page.setter
2007
- def page(self, page: int):
2342
+ def page(self, page: Optional[int]):
2008
2343
  if page is None:
2009
2344
  del self.page
2010
2345
  return
@@ -2017,7 +2352,7 @@ class ApiListDatasetsRequest(KaggleObject):
2017
2352
  return self._page_token or ""
2018
2353
 
2019
2354
  @page_token.setter
2020
- def page_token(self, page_token: str):
2355
+ def page_token(self, page_token: Optional[str]):
2021
2356
  if page_token is None:
2022
2357
  del self.page_token
2023
2358
  return
@@ -2030,7 +2365,7 @@ class ApiListDatasetsRequest(KaggleObject):
2030
2365
  return self._page_size or 0
2031
2366
 
2032
2367
  @page_size.setter
2033
- def page_size(self, page_size: int):
2368
+ def page_size(self, page_size: Optional[int]):
2034
2369
  if page_size is None:
2035
2370
  del self.page_size
2036
2371
  return
@@ -2047,10 +2382,12 @@ class ApiListDatasetsResponse(KaggleObject):
2047
2382
  r"""
2048
2383
  Attributes:
2049
2384
  datasets (ApiDataset)
2385
+ next_page_token (str)
2050
2386
  """
2051
2387
 
2052
2388
  def __init__(self):
2053
2389
  self._datasets = []
2390
+ self._next_page_token = ""
2054
2391
  self._freeze()
2055
2392
 
2056
2393
  @property
@@ -2068,9 +2405,135 @@ class ApiListDatasetsResponse(KaggleObject):
2068
2405
  raise TypeError('datasets must contain only items of type ApiDataset')
2069
2406
  self._datasets = datasets
2070
2407
 
2071
- @classmethod
2072
- def prepare_from(cls, http_response):
2073
- return cls.from_dict({'datasets': json.loads(http_response.text)})
2408
+ @property
2409
+ def next_page_token(self) -> str:
2410
+ return self._next_page_token
2411
+
2412
+ @next_page_token.setter
2413
+ def next_page_token(self, next_page_token: str):
2414
+ if next_page_token is None:
2415
+ del self.next_page_token
2416
+ return
2417
+ if not isinstance(next_page_token, str):
2418
+ raise TypeError('next_page_token must be of type str')
2419
+ self._next_page_token = next_page_token
2420
+
2421
+ @property
2422
+ def nextPageToken(self):
2423
+ return self.next_page_token
2424
+
2425
+
2426
+ class ApiListTreeDatasetFilesRequest(KaggleObject):
2427
+ r"""
2428
+ Attributes:
2429
+ owner_slug (str)
2430
+ dataset_slug (str)
2431
+ dataset_version_number (int)
2432
+ path (str)
2433
+ The path of the directory to list files from. If not provided, the root
2434
+ directory will be listed.
2435
+ page_token (str)
2436
+ page_size (int)
2437
+ """
2438
+
2439
+ def __init__(self):
2440
+ self._owner_slug = ""
2441
+ self._dataset_slug = ""
2442
+ self._dataset_version_number = None
2443
+ self._path = None
2444
+ self._page_token = None
2445
+ self._page_size = None
2446
+ self._freeze()
2447
+
2448
+ @property
2449
+ def owner_slug(self) -> str:
2450
+ return self._owner_slug
2451
+
2452
+ @owner_slug.setter
2453
+ def owner_slug(self, owner_slug: str):
2454
+ if owner_slug is None:
2455
+ del self.owner_slug
2456
+ return
2457
+ if not isinstance(owner_slug, str):
2458
+ raise TypeError('owner_slug must be of type str')
2459
+ self._owner_slug = owner_slug
2460
+
2461
+ @property
2462
+ def dataset_slug(self) -> str:
2463
+ return self._dataset_slug
2464
+
2465
+ @dataset_slug.setter
2466
+ def dataset_slug(self, dataset_slug: str):
2467
+ if dataset_slug is None:
2468
+ del self.dataset_slug
2469
+ return
2470
+ if not isinstance(dataset_slug, str):
2471
+ raise TypeError('dataset_slug must be of type str')
2472
+ self._dataset_slug = dataset_slug
2473
+
2474
+ @property
2475
+ def dataset_version_number(self) -> int:
2476
+ return self._dataset_version_number or 0
2477
+
2478
+ @dataset_version_number.setter
2479
+ def dataset_version_number(self, dataset_version_number: Optional[int]):
2480
+ if dataset_version_number is None:
2481
+ del self.dataset_version_number
2482
+ return
2483
+ if not isinstance(dataset_version_number, int):
2484
+ raise TypeError('dataset_version_number must be of type int')
2485
+ self._dataset_version_number = dataset_version_number
2486
+
2487
+ @property
2488
+ def path(self) -> str:
2489
+ r"""
2490
+ The path of the directory to list files from. If not provided, the root
2491
+ directory will be listed.
2492
+ """
2493
+ return self._path or ""
2494
+
2495
+ @path.setter
2496
+ def path(self, path: Optional[str]):
2497
+ if path is None:
2498
+ del self.path
2499
+ return
2500
+ if not isinstance(path, str):
2501
+ raise TypeError('path must be of type str')
2502
+ self._path = path
2503
+
2504
+ @property
2505
+ def page_token(self) -> str:
2506
+ return self._page_token or ""
2507
+
2508
+ @page_token.setter
2509
+ def page_token(self, page_token: Optional[str]):
2510
+ if page_token is None:
2511
+ del self.page_token
2512
+ return
2513
+ if not isinstance(page_token, str):
2514
+ raise TypeError('page_token must be of type str')
2515
+ self._page_token = page_token
2516
+
2517
+ @property
2518
+ def page_size(self) -> int:
2519
+ return self._page_size or 0
2520
+
2521
+ @page_size.setter
2522
+ def page_size(self, page_size: Optional[int]):
2523
+ if page_size is None:
2524
+ del self.page_size
2525
+ return
2526
+ if not isinstance(page_size, int):
2527
+ raise TypeError('page_size must be of type int')
2528
+ self._page_size = page_size
2529
+
2530
+ def endpoint(self):
2531
+ path = '/api/v1/datasets/list-tree/{owner_slug}/{dataset_slug}'
2532
+ return path.format_map(self.to_field_map(self))
2533
+
2534
+ @staticmethod
2535
+ def endpoint_path():
2536
+ return '/api/v1/datasets/list-tree/{owner_slug}/{dataset_slug}'
2074
2537
 
2075
2538
 
2076
2539
  class ApiUpdateDatasetMetadataRequest(KaggleObject):
@@ -2278,219 +2741,6 @@ class ApiUploadDatasetFileResponse(KaggleObject):
2278
2741
  return self.create_url
2279
2742
 
2280
2743
 
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
2744
  class ApiUploadDirectoryInfo(KaggleObject):
2495
2745
  r"""
2496
2746
  Attributes:
@@ -2549,6 +2799,17 @@ class ApiUploadDirectoryInfo(KaggleObject):
2549
2799
  self._files = files
2550
2800
 
2551
2801
 
2802
+ ApiCategory._fields = [
2803
+ FieldMetadata("ref", "ref", "_ref", str, "", PredefinedSerializer()),
2804
+ FieldMetadata("name", "name", "_name", str, None, PredefinedSerializer(), optional=True),
2805
+ FieldMetadata("description", "description", "_description", str, None, PredefinedSerializer(), optional=True),
2806
+ FieldMetadata("fullPath", "full_path", "_full_path", str, None, PredefinedSerializer(), optional=True),
2807
+ FieldMetadata("competitionCount", "competition_count", "_competition_count", int, 0, PredefinedSerializer()),
2808
+ FieldMetadata("datasetCount", "dataset_count", "_dataset_count", int, 0, PredefinedSerializer()),
2809
+ FieldMetadata("scriptCount", "script_count", "_script_count", int, 0, PredefinedSerializer()),
2810
+ FieldMetadata("totalCount", "total_count", "_total_count", int, 0, PredefinedSerializer()),
2811
+ ]
2812
+
2552
2813
  ApiCreateDatasetRequest._fields = [
2553
2814
  FieldMetadata("id", "id", "_id", int, None, PredefinedSerializer(), optional=True),
2554
2815
  FieldMetadata("ownerSlug", "owner_slug", "_owner_slug", str, None, PredefinedSerializer(), optional=True),
@@ -2560,6 +2821,7 @@ ApiCreateDatasetRequest._fields = [
2560
2821
  FieldMetadata("subtitle", "subtitle", "_subtitle", str, None, PredefinedSerializer(), optional=True),
2561
2822
  FieldMetadata("description", "description", "_description", str, None, PredefinedSerializer(), optional=True),
2562
2823
  FieldMetadata("categoryIds", "category_ids", "_category_ids", str, [], ListSerializer(PredefinedSerializer())),
2824
+ FieldMetadata("directories", "directories", "_directories", ApiUploadDirectoryInfo, [], ListSerializer(KaggleObjectSerializer())),
2563
2825
  ]
2564
2826
 
2565
2827
  ApiCreateDatasetResponse._fields = [
@@ -2588,6 +2850,7 @@ ApiCreateDatasetVersionRequestBody._fields = [
2588
2850
  FieldMetadata("subtitle", "subtitle", "_subtitle", str, None, PredefinedSerializer(), optional=True),
2589
2851
  FieldMetadata("description", "description", "_description", str, None, PredefinedSerializer(), optional=True),
2590
2852
  FieldMetadata("categoryIds", "category_ids", "_category_ids", str, [], ListSerializer(PredefinedSerializer())),
2853
+ FieldMetadata("directories", "directories", "_directories", ApiUploadDirectoryInfo, [], ListSerializer(KaggleObjectSerializer())),
2591
2854
  ]
2592
2855
 
2593
2856
  ApiDataset._fields = [
@@ -2616,6 +2879,15 @@ ApiDataset._fields = [
2616
2879
  FieldMetadata("tags", "tags", "_tags", ApiCategory, [], ListSerializer(KaggleObjectSerializer())),
2617
2880
  FieldMetadata("files", "files", "_files", ApiDatasetFile, [], ListSerializer(KaggleObjectSerializer())),
2618
2881
  FieldMetadata("versions", "versions", "_versions", ApiDatasetVersion, [], ListSerializer(KaggleObjectSerializer())),
2882
+ FieldMetadata("thumbnailImageUrl", "thumbnail_image_url", "_thumbnail_image_url", str, None, PredefinedSerializer(), optional=True),
2883
+ ]
2884
+
2885
+ ApiDatasetColumn._fields = [
2886
+ FieldMetadata("order", "order", "_order", int, None, PredefinedSerializer(), optional=True),
2887
+ FieldMetadata("name", "name", "_name", str, None, PredefinedSerializer(), optional=True),
2888
+ FieldMetadata("type", "type", "_type", str, None, PredefinedSerializer(), optional=True),
2889
+ FieldMetadata("originalType", "original_type", "_original_type", str, None, PredefinedSerializer(), optional=True),
2890
+ FieldMetadata("description", "description", "_description", str, None, PredefinedSerializer(), optional=True),
2619
2891
  ]
2620
2892
 
2621
2893
  ApiDatasetFile._fields = [
@@ -2668,6 +2940,13 @@ ApiDownloadDatasetRequest._fields = [
2668
2940
  FieldMetadata("fileName", "file_name", "_file_name", str, None, PredefinedSerializer(), optional=True),
2669
2941
  FieldMetadata("datasetVersionNumber", "dataset_version_number", "_dataset_version_number", int, None, PredefinedSerializer(), optional=True),
2670
2942
  FieldMetadata("raw", "raw", "_raw", bool, False, PredefinedSerializer()),
2943
+ FieldMetadata("hashLink", "hash_link", "_hash_link", str, None, PredefinedSerializer(), optional=True),
2944
+ ]
2945
+
2946
+ ApiGetDatasetFilesSummaryRequest._fields = [
2947
+ FieldMetadata("ownerSlug", "owner_slug", "_owner_slug", str, "", PredefinedSerializer()),
2948
+ FieldMetadata("datasetSlug", "dataset_slug", "_dataset_slug", str, "", PredefinedSerializer()),
2949
+ FieldMetadata("datasetVersionNumber", "dataset_version_number", "_dataset_version_number", int, None, PredefinedSerializer(), optional=True),
2671
2950
  ]
2672
2951
 
2673
2952
  ApiGetDatasetMetadataRequest._fields = [
@@ -2727,6 +3006,16 @@ ApiListDatasetsRequest._fields = [
2727
3006
 
2728
3007
  ApiListDatasetsResponse._fields = [
2729
3008
  FieldMetadata("datasets", "datasets", "_datasets", ApiDataset, [], ListSerializer(KaggleObjectSerializer())),
3009
+ FieldMetadata("nextPageToken", "next_page_token", "_next_page_token", str, "", PredefinedSerializer()),
3010
+ ]
3011
+
3012
+ ApiListTreeDatasetFilesRequest._fields = [
3013
+ FieldMetadata("ownerSlug", "owner_slug", "_owner_slug", str, "", PredefinedSerializer()),
3014
+ FieldMetadata("datasetSlug", "dataset_slug", "_dataset_slug", str, "", PredefinedSerializer()),
3015
+ FieldMetadata("datasetVersionNumber", "dataset_version_number", "_dataset_version_number", int, None, PredefinedSerializer(), optional=True),
3016
+ FieldMetadata("path", "path", "_path", str, None, PredefinedSerializer(), optional=True),
3017
+ FieldMetadata("pageToken", "page_token", "_page_token", str, None, PredefinedSerializer(), optional=True),
3018
+ FieldMetadata("pageSize", "page_size", "_page_size", int, None, PredefinedSerializer(), optional=True),
2730
3019
  ]
2731
3020
 
2732
3021
  ApiUpdateDatasetMetadataRequest._fields = [
@@ -2750,25 +3039,6 @@ ApiUploadDatasetFileResponse._fields = [
2750
3039
  FieldMetadata("createUrl", "create_url", "_create_url", str, "", PredefinedSerializer()),
2751
3040
  ]
2752
3041
 
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
3042
  ApiUploadDirectoryInfo._fields = [
2773
3043
  FieldMetadata("name", "name", "_name", str, "", PredefinedSerializer()),
2774
3044
  FieldMetadata("directories", "directories", "_directories", ApiUploadDirectoryInfo, [], ListSerializer(KaggleObjectSerializer())),