tableauserverclient 0.37__py3-none-any.whl → 0.38__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 (36) hide show
  1. tableauserverclient/__init__.py +4 -0
  2. tableauserverclient/bin/_version.py +3 -3
  3. tableauserverclient/helpers/strings.py +25 -1
  4. tableauserverclient/models/__init__.py +6 -1
  5. tableauserverclient/models/datasource_item.py +110 -2
  6. tableauserverclient/models/extract_item.py +82 -0
  7. tableauserverclient/models/flow_item.py +2 -2
  8. tableauserverclient/models/group_item.py +11 -0
  9. tableauserverclient/models/interval_item.py +40 -0
  10. tableauserverclient/models/location_item.py +53 -0
  11. tableauserverclient/models/project_item.py +138 -27
  12. tableauserverclient/models/schedule_item.py +57 -0
  13. tableauserverclient/models/site_item.py +28 -0
  14. tableauserverclient/models/table_item.py +7 -3
  15. tableauserverclient/models/tableau_types.py +13 -1
  16. tableauserverclient/models/user_item.py +101 -1
  17. tableauserverclient/models/view_item.py +79 -5
  18. tableauserverclient/models/workbook_item.py +151 -1
  19. tableauserverclient/server/endpoint/databases_endpoint.py +101 -18
  20. tableauserverclient/server/endpoint/datasources_endpoint.py +3 -3
  21. tableauserverclient/server/endpoint/dqw_endpoint.py +16 -6
  22. tableauserverclient/server/endpoint/endpoint.py +39 -0
  23. tableauserverclient/server/endpoint/schedules_endpoint.py +132 -2
  24. tableauserverclient/server/endpoint/sites_endpoint.py +18 -1
  25. tableauserverclient/server/endpoint/tables_endpoint.py +140 -17
  26. tableauserverclient/server/endpoint/users_endpoint.py +22 -5
  27. tableauserverclient/server/query.py +36 -0
  28. tableauserverclient/server/request_factory.py +5 -0
  29. tableauserverclient/server/request_options.py +128 -2
  30. tableauserverclient/server/server.py +42 -0
  31. {tableauserverclient-0.37.dist-info → tableauserverclient-0.38.dist-info}/METADATA +1 -1
  32. {tableauserverclient-0.37.dist-info → tableauserverclient-0.38.dist-info}/RECORD +36 -34
  33. {tableauserverclient-0.37.dist-info → tableauserverclient-0.38.dist-info}/WHEEL +1 -1
  34. {tableauserverclient-0.37.dist-info → tableauserverclient-0.38.dist-info}/licenses/LICENSE +0 -0
  35. {tableauserverclient-0.37.dist-info → tableauserverclient-0.38.dist-info}/licenses/LICENSE.versioneer +0 -0
  36. {tableauserverclient-0.37.dist-info → tableauserverclient-0.38.dist-info}/top_level.txt +0 -0
@@ -913,6 +913,8 @@ class UserRequest:
913
913
  user_element.attrib["authSetting"] = user_item.auth_setting
914
914
  if password:
915
915
  user_element.attrib["password"] = password
916
+ if user_item.idp_configuration_id is not None:
917
+ user_element.attrib["idpConfigurationId"] = user_item.idp_configuration_id
916
918
  return ET.tostring(xml_request)
917
919
 
918
920
  def add_req(self, user_item: UserItem) -> bytes:
@@ -929,6 +931,9 @@ class UserRequest:
929
931
 
930
932
  if user_item.auth_setting:
931
933
  user_element.attrib["authSetting"] = user_item.auth_setting
934
+
935
+ if user_item.idp_configuration_id is not None:
936
+ user_element.attrib["idpConfigurationId"] = user_item.idp_configuration_id
932
937
  return ET.tostring(xml_request)
933
938
 
934
939
 
@@ -1,5 +1,6 @@
1
1
  import sys
2
2
  from typing import Optional
3
+ import warnings
3
4
 
4
5
  from typing_extensions import Self
5
6
 
@@ -62,8 +63,21 @@ class RequestOptions(RequestOptionsBase):
62
63
  self.pagesize = pagesize or config.PAGE_SIZE
63
64
  self.sort = set()
64
65
  self.filter = set()
66
+ self.fields = set()
65
67
  # This is private until we expand all of our parsers to handle the extra fields
66
- self._all_fields = False
68
+ self.all_fields = False
69
+
70
+ @property
71
+ def _all_fields(self) -> bool:
72
+ return self.all_fields
73
+
74
+ @_all_fields.setter
75
+ def _all_fields(self, value):
76
+ warnings.warn(
77
+ "Directly setting _all_fields is deprecated, please use the all_fields property instead.",
78
+ DeprecationWarning,
79
+ )
80
+ self.all_fields = value
67
81
 
68
82
  def get_query_params(self) -> dict:
69
83
  params = {}
@@ -75,12 +89,14 @@ class RequestOptions(RequestOptionsBase):
75
89
  filter_options = (str(filter_item) for filter_item in self.filter)
76
90
  ordered_filter_options = sorted(filter_options)
77
91
  params["filter"] = ",".join(ordered_filter_options)
78
- if self._all_fields:
92
+ if self.all_fields:
79
93
  params["fields"] = "_all_"
80
94
  if self.pagenumber:
81
95
  params["pageNumber"] = self.pagenumber
82
96
  if self.pagesize:
83
97
  params["pageSize"] = self.pagesize
98
+ if self.fields:
99
+ params["fields"] = ",".join(self.fields)
84
100
  return params
85
101
 
86
102
  def page_size(self, page_size):
@@ -181,6 +197,116 @@ class RequestOptions(RequestOptionsBase):
181
197
  Desc = "desc"
182
198
  Asc = "asc"
183
199
 
200
+ class SelectFields:
201
+ class Common:
202
+ All = "_all_"
203
+ Default = "_default_"
204
+
205
+ class ContentsCounts:
206
+ ProjectCount = "contentsCounts.projectCount"
207
+ ViewCount = "contentsCounts.viewCount"
208
+ DatasourceCount = "contentsCounts.datasourceCount"
209
+ WorkbookCount = "contentsCounts.workbookCount"
210
+
211
+ class Datasource:
212
+ ContentUrl = "datasource.contentUrl"
213
+ ID = "datasource.id"
214
+ Name = "datasource.name"
215
+ Type = "datasource.type"
216
+ Description = "datasource.description"
217
+ CreatedAt = "datasource.createdAt"
218
+ UpdatedAt = "datasource.updatedAt"
219
+ EncryptExtracts = "datasource.encryptExtracts"
220
+ IsCertified = "datasource.isCertified"
221
+ UseRemoteQueryAgent = "datasource.useRemoteQueryAgent"
222
+ WebPageURL = "datasource.webpageUrl"
223
+ Size = "datasource.size"
224
+ Tag = "datasource.tag"
225
+ FavoritesTotal = "datasource.favoritesTotal"
226
+ DatabaseName = "datasource.databaseName"
227
+ ConnectedWorkbooksCount = "datasource.connectedWorkbooksCount"
228
+ HasAlert = "datasource.hasAlert"
229
+ HasExtracts = "datasource.hasExtracts"
230
+ IsPublished = "datasource.isPublished"
231
+ ServerName = "datasource.serverName"
232
+
233
+ class Favorite:
234
+ Label = "favorite.label"
235
+ ParentProjectName = "favorite.parentProjectName"
236
+ TargetOwnerName = "favorite.targetOwnerName"
237
+
238
+ class Group:
239
+ ID = "group.id"
240
+ Name = "group.name"
241
+ DomainName = "group.domainName"
242
+ UserCount = "group.userCount"
243
+ MinimumSiteRole = "group.minimumSiteRole"
244
+
245
+ class Job:
246
+ ID = "job.id"
247
+ Status = "job.status"
248
+ CreatedAt = "job.createdAt"
249
+ StartedAt = "job.startedAt"
250
+ EndedAt = "job.endedAt"
251
+ Priority = "job.priority"
252
+ JobType = "job.jobType"
253
+ Title = "job.title"
254
+ Subtitle = "job.subtitle"
255
+
256
+ class Owner:
257
+ ID = "owner.id"
258
+ Name = "owner.name"
259
+ FullName = "owner.fullName"
260
+ SiteRole = "owner.siteRole"
261
+ LastLogin = "owner.lastLogin"
262
+ Email = "owner.email"
263
+
264
+ class Project:
265
+ ID = "project.id"
266
+ Name = "project.name"
267
+ Description = "project.description"
268
+ CreatedAt = "project.createdAt"
269
+ UpdatedAt = "project.updatedAt"
270
+ ContentPermissions = "project.contentPermissions"
271
+ ParentProjectID = "project.parentProjectId"
272
+ TopLevelProject = "project.topLevelProject"
273
+ Writeable = "project.writeable"
274
+
275
+ class User:
276
+ ExternalAuthUserId = "user.externalAuthUserId"
277
+ ID = "user.id"
278
+ Name = "user.name"
279
+ SiteRole = "user.siteRole"
280
+ LastLogin = "user.lastLogin"
281
+ FullName = "user.fullName"
282
+ Email = "user.email"
283
+ AuthSetting = "user.authSetting"
284
+
285
+ class View:
286
+ ID = "view.id"
287
+ Name = "view.name"
288
+ ContentUrl = "view.contentUrl"
289
+ CreatedAt = "view.createdAt"
290
+ UpdatedAt = "view.updatedAt"
291
+ Tags = "view.tags"
292
+ SheetType = "view.sheetType"
293
+ Usage = "view.usage"
294
+
295
+ class Workbook:
296
+ ID = "workbook.id"
297
+ Description = "workbook.description"
298
+ Name = "workbook.name"
299
+ ContentUrl = "workbook.contentUrl"
300
+ ShowTabs = "workbook.showTabs"
301
+ Size = "workbook.size"
302
+ CreatedAt = "workbook.createdAt"
303
+ UpdatedAt = "workbook.updatedAt"
304
+ SheetCount = "workbook.sheetCount"
305
+ HasExtracts = "workbook.hasExtracts"
306
+ Tags = "workbook.tags"
307
+ WebpageUrl = "workbook.webpageUrl"
308
+ DefaultViewId = "workbook.defaultViewId"
309
+
184
310
 
185
311
  """
186
312
  These options can be used by methods that are fetching data exported from a specific content item
@@ -2,6 +2,7 @@ from tableauserverclient.helpers.logging import logger
2
2
 
3
3
  import requests
4
4
  import urllib3
5
+ import ssl
5
6
 
6
7
  from defusedxml.ElementTree import fromstring, ParseError
7
8
  from packaging.version import Version
@@ -91,6 +92,13 @@ class Server:
91
92
  and a later version of the REST API. For more information, see REST API
92
93
  Versions.
93
94
 
95
+ http_options : dict, optional
96
+ Additional options to pass to the requests library when making HTTP requests.
97
+
98
+ session_factory : callable, optional
99
+ A factory function that returns a requests.Session object. If not provided,
100
+ requests.session is used.
101
+
94
102
  Examples
95
103
  --------
96
104
  >>> import tableauserverclient as TSC
@@ -107,6 +115,16 @@ class Server:
107
115
  >>> # for example, 2.8
108
116
  >>> # server.version = '2.8'
109
117
 
118
+ >>> # if connecting to an older Tableau Server with weak DH keys (Python 3.12+ only)
119
+ >>> server.configure_ssl(allow_weak_dh=True) # Note: reduces security
120
+
121
+ Notes
122
+ -----
123
+ When using Python 3.12 or later with older versions of Tableau Server, you may encounter
124
+ SSL errors related to weak Diffie-Hellman keys. This is because newer Python versions
125
+ enforce stronger security requirements. You can temporarily work around this using
126
+ configure_ssl(allow_weak_dh=True), but this reduces security and should only be used
127
+ as a temporary measure until the server can be upgraded.
110
128
  """
111
129
 
112
130
  class PublishMode:
@@ -125,6 +143,7 @@ class Server:
125
143
  self._auth_token = None
126
144
  self._site_id = None
127
145
  self._user_id = None
146
+ self._ssl_context = None
128
147
 
129
148
  # TODO: this needs to change to default to https, but without breaking existing code
130
149
  if not server_address.startswith("http://") and not server_address.startswith("https://"):
@@ -313,3 +332,26 @@ class Server:
313
332
 
314
333
  def is_signed_in(self):
315
334
  return self._auth_token is not None
335
+
336
+ def configure_ssl(self, *, allow_weak_dh=False):
337
+ """Configure SSL/TLS settings for the server connection.
338
+
339
+ Parameters
340
+ ----------
341
+ allow_weak_dh : bool, optional
342
+ If True, allows connections to servers with DH keys that are considered too small by modern Python versions.
343
+ WARNING: This reduces security and should only be used as a temporary workaround.
344
+ """
345
+ if allow_weak_dh:
346
+ logger.warning(
347
+ "WARNING: Allowing weak Diffie-Hellman keys. This reduces security and should only be used temporarily."
348
+ )
349
+ self._ssl_context = ssl.create_default_context()
350
+ # Allow weak DH keys by setting minimum key size to 512 bits (default is 1024 in Python 3.12+)
351
+ self._ssl_context.set_dh_parameters(min_key_bits=512)
352
+ self.add_http_options({"verify": self._ssl_context})
353
+ else:
354
+ self._ssl_context = None
355
+ # Remove any custom SSL context if we're reverting to default settings
356
+ if "verify" in self._http_options:
357
+ del self._http_options["verify"]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tableauserverclient
3
- Version: 0.37
3
+ Version: 0.38
4
4
  Summary: A Python module for working with the Tableau Server REST API.
5
5
  Author-email: Tableau <github@tableau.com>
6
6
  License: The MIT License (MIT)
@@ -1,16 +1,16 @@
1
- tableauserverclient/__init__.py,sha256=ZtTKjguU2eckQI9_0jkH3UeQemmjVHzL_H_R2cOWjLs,2864
1
+ tableauserverclient/__init__.py,sha256=MF3FF8PVVTOMt6XisyADxGtHwT2ZGYqzD0QYbKL3Fo0,2958
2
2
  tableauserverclient/config.py,sha256=LcWVmZjkYMh1cKCKZm3VZItgKOoSLz1ai4PnVgbAtDA,713
3
3
  tableauserverclient/datetime_helpers.py,sha256=_-gWz5I2_KHT5AzW_boD8meH6loTTKdK-_62h1MA6ko,884
4
4
  tableauserverclient/exponential_backoff.py,sha256=HtAfbbVnYtiOe2_ZzKqZmsml40EDZBaC3bttif5qeG8,1474
5
5
  tableauserverclient/filesys_helpers.py,sha256=hosTm9fpc9B9_VCDcAuyHA0A-f-MWs9_2utyRweuZ5I,1667
6
6
  tableauserverclient/namespace.py,sha256=Zh6QtxNmqPkjRMsefHHX-ycS4r-egnrJ4-hdHvldBHw,963
7
7
  tableauserverclient/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
- tableauserverclient/bin/_version.py,sha256=HbFP26HrRF5QHyXZah-2Lx9AWzM1KlO7_InvfHE-jfs,496
8
+ tableauserverclient/bin/_version.py,sha256=E7k74Qr0m6ibFzFeSwltkPyK8dAWvX_lwhGIx-whZy4,496
9
9
  tableauserverclient/helpers/__init__.py,sha256=llpqF9zV5dsP5hQt8dyop33Op5OzGmxW0BZibaSlCcM,23
10
10
  tableauserverclient/helpers/headers.py,sha256=Pg-ZWSgV2Yp813BV1Tzo8F2Hn4P01zscla2RRM4yqNk,411
11
11
  tableauserverclient/helpers/logging.py,sha256=5q_oR3wERHVXFXY6XDnLYML5-HdAPJTmqhH9IZg4VfY,113
12
- tableauserverclient/helpers/strings.py,sha256=HRTP31HIdD3gFxDDHuBsmOl_8cLdh8fa3xLALgYsUAQ,1563
13
- tableauserverclient/models/__init__.py,sha256=bU4eaOQ4I9h_JYn7IbhCZhHbMVvxdSUhMJeHg80apYA,4051
12
+ tableauserverclient/helpers/strings.py,sha256=7MvaS9haJ5hpdv4NPQ11gRj94zIgbDmujFPD_GnZPJI,2013
13
+ tableauserverclient/models/__init__.py,sha256=Udhoop0M75G6NMWyPzgH6Mr2PBH5H77jF359P5y4DUM,4272
14
14
  tableauserverclient/models/column_item.py,sha256=yUFzXNcnUPVo2imrhEBS4fMVAR5j2ZzksOk5t9XYW5s,1964
15
15
  tableauserverclient/models/connection_credentials.py,sha256=CQ8FkkHW9MeTw8uArNhrU5mowtryWUddgEgEliqh3ys,2066
16
16
  tableauserverclient/models/connection_item.py,sha256=LwZza3I5Zwx04BcLGWQXRcuZq5X_X86DDse6RMmrcr8,6002
@@ -19,59 +19,61 @@ tableauserverclient/models/data_acceleration_report_item.py,sha256=HFZROetfOWh-h
19
19
  tableauserverclient/models/data_alert_item.py,sha256=VZtRR-kqojq-mkrTgvay4WkPawj3-4jbSc0wBijmJhk,6444
20
20
  tableauserverclient/models/data_freshness_policy_item.py,sha256=UdaEmwVL_q364Do_2dOnkCSX-oKnvjKfsYzGSaJIQFs,7618
21
21
  tableauserverclient/models/database_item.py,sha256=lWxmmMpPeVxzizVAsVkc6Ps2I-j-0KJAJZto8qShrYU,8223
22
- tableauserverclient/models/datasource_item.py,sha256=YjNlQcrdP26iA8g1ZWAxgUtRHS3Z9YrI1yFdaK5hg6M,15872
22
+ tableauserverclient/models/datasource_item.py,sha256=1cQrn_Mm46aPq-RPJD5LRBq-gr2zbgXs5tLG8wG7oP8,19689
23
23
  tableauserverclient/models/dqw_item.py,sha256=87oTc7icrQst_DSaTqoVR965YEckg5dk6osa51BrCAk,3710
24
24
  tableauserverclient/models/exceptions.py,sha256=pQu5DS4jNMT9A0wEBWv2vANAQU1vgNpFatVr8sGE4zk,105
25
+ tableauserverclient/models/extract_item.py,sha256=2qDyNrAanbw1gK6qE2L7RwQFsIg_59unUx8rbLWrTmg,2691
25
26
  tableauserverclient/models/favorites_item.py,sha256=JxHfy38xdRYol2KM_8_A7Ng59cZunkhTNcpxO670k08,3294
26
27
  tableauserverclient/models/fileupload_item.py,sha256=N5M0jtlFj_PFh3jlp2AbcYOwCwdnBCk_L64xe3Z4ves,742
27
- tableauserverclient/models/flow_item.py,sha256=df4kkKXVp4dAOblBUDShEl571BxS7hB1AZKHl4P9tss,8666
28
+ tableauserverclient/models/flow_item.py,sha256=aXAv7yIWdpISBWARBkc8aHUmMmtk4z2ZFhWvVT0gCkg,8664
28
29
  tableauserverclient/models/flow_run_item.py,sha256=nf_b6KRwNevwZRsPoMh8dLzdONUMWY2wipWEMdY9SN4,3113
29
- tableauserverclient/models/group_item.py,sha256=asj0ZlA0-OAGgcYFu9sDX0t29B5A4LDsirXi0IN6i40,4896
30
+ tableauserverclient/models/group_item.py,sha256=qirnux5rrH_-Ih6ZyXceSz7ylXtRinY7FgN_Zmkhc7U,5241
30
31
  tableauserverclient/models/groupset_item.py,sha256=gxxyzviE5B8zr2sKJteIDKtYTPYKsGd-qMcrjEY2uVU,1885
31
- tableauserverclient/models/interval_item.py,sha256=_ZHQtzQWxwdd_sScziqhrK54k7W_ZgrMfP2PhlIhTRQ,9101
32
+ tableauserverclient/models/interval_item.py,sha256=zAP6gLjvFSKgEtuI2On_RRRSq240TJdCiRZaU4U2Kkg,10962
32
33
  tableauserverclient/models/job_item.py,sha256=Q7tTKXEiW-5VJsLmnAq6auP0jvmbbImmqw_nx1kiXtM,11512
33
34
  tableauserverclient/models/linked_tasks_item.py,sha256=TYkNvmJfKlZ30OST8w9GUobboFAH5ftFKjXdWWAtR24,3806
35
+ tableauserverclient/models/location_item.py,sha256=8pVxiSoySTAQOF9QDe0KiHMUp0aiFG-sZ2cB1u8oAEg,1287
34
36
  tableauserverclient/models/metric_item.py,sha256=D3atzbr3jtQUsVsqYHfz-v3yRP3qruRN5jRsv_-yRQ0,5378
35
37
  tableauserverclient/models/pagination_item.py,sha256=55Ap_9pJxq8plWQO1Js3Jp6KFidN3TQsL5LM2-yZGDo,1424
36
38
  tableauserverclient/models/permissions_item.py,sha256=CWf1Q4x7U4QQWQ1VUWgDzaE7mhriHblG1MJAc6EKJHM,6149
37
- tableauserverclient/models/project_item.py,sha256=bzSn9IsWt69DL7rZb5B3MubpNUTCw7XMYHw6wu4inj8,8481
39
+ tableauserverclient/models/project_item.py,sha256=5xoKbLUhpQ21i0iRG1MVbYLa5wetwTAmZ2IkzwmFsO4,11687
38
40
  tableauserverclient/models/property_decorators.py,sha256=v2cTqiW5iZXoOyu6RYg3X6Ly--8sozjWOcKCTLi99Nc,4645
39
41
  tableauserverclient/models/reference_item.py,sha256=R4Tr7qfVdnGcq_ac4hr0yhAjBOkqFZEW-4NGMUYaf9w,733
40
42
  tableauserverclient/models/revision_item.py,sha256=5ghmnwhUcCOWwZdApzgV_uM3sqdoG_gtsJwUQwfKITo,2773
41
- tableauserverclient/models/schedule_item.py,sha256=40Py-mpwK3GDZbfAuD6UjDz52NyVce5i8XjuneTarp4,11332
43
+ tableauserverclient/models/schedule_item.py,sha256=tiIkTj3JIsozCqIkMLzjM11FZMAWJ3vrNgySGPbuido,13490
42
44
  tableauserverclient/models/server_info_item.py,sha256=55wTG_31o-WwqgBrbwpgMpq_by10iM6BXpmdAZ3TO90,2631
43
- tableauserverclient/models/site_item.py,sha256=Y0uWYfTzk4Utfl44V1_v0wH4VJmWg4Wq5o1EPTWVs8U,44999
45
+ tableauserverclient/models/site_item.py,sha256=UjSl413kYwNJEVrqH3Fb3Y63IiCXICGYuRQuXgTyS5E,46219
44
46
  tableauserverclient/models/subscription_item.py,sha256=ujaQQIo_ln3pnm0Th2IdcGCp_cl6WxvEMPgeZbwZtFc,4724
45
- tableauserverclient/models/table_item.py,sha256=C_oseSV4PnkVkzIt8V_NkiT138vLmrGxzsr3Rn37png,4575
47
+ tableauserverclient/models/table_item.py,sha256=4CZ2R0asNz8iINn3FKKQzjpwt-5lBAvfm0fHKmz5gcw,4752
46
48
  tableauserverclient/models/tableau_auth.py,sha256=atmXdAsA5LrrLHEzrHJQPLYETC1iKyxFqPSwIk-vacI,8218
47
- tableauserverclient/models/tableau_types.py,sha256=ybXO_O7ni-WjKUJ5zVEoEgEnatsDtfXTeT0rpiq7Jxs,1230
49
+ tableauserverclient/models/tableau_types.py,sha256=bukzI490GWpebGv9ZiCuSqioqIZm9ao9Yr2GGrmM8_A,1420
48
50
  tableauserverclient/models/tag_item.py,sha256=K2EVEy1EDdr0yLr4wBvGr-p9gIAFVsOCv80b-AFPFLk,588
49
51
  tableauserverclient/models/target.py,sha256=dVc1SHwo9ZASR8250MhAPODXX_G5UqA4BnK8hykRE6E,263
50
52
  tableauserverclient/models/task_item.py,sha256=l4t4COw2LfdlYmJpzUSgwGven_NSZj2r3PUJZkqvCus,4555
51
- tableauserverclient/models/user_item.py,sha256=otfavMznvkqUwxRlh1wW0Y_eTw3gaVNJKlWeecKy5j0,16494
52
- tableauserverclient/models/view_item.py,sha256=AxHGrcUOv_kKDqqFWxvQ-kX9KoD0Df20MQygZIkF-9Y,9964
53
+ tableauserverclient/models/user_item.py,sha256=SsrbSA62oD99agQSzNv-q5Yjqd7UEQfmAD8j78bjrDU,19454
54
+ tableauserverclient/models/view_item.py,sha256=-JxiwRFqBo7DS3dvwk4rxRhc25WH-Pgf8rBaLyFQOzE,12451
53
55
  tableauserverclient/models/virtual_connection_item.py,sha256=TvX7MId7WSg4IZE41XAMl1l3Ibu8kTUR1xr26Cqtyeo,3357
54
56
  tableauserverclient/models/webhook_item.py,sha256=r37fHY3_uhDhxupHfMSvB4I2aUjy3qQ2FOLQjAcNUUk,3994
55
- tableauserverclient/models/workbook_item.py,sha256=s1zSSPaXASbjOirB6EqGO_O8ev-BrsSFwEJwlbdFYFQ,17468
57
+ tableauserverclient/models/workbook_item.py,sha256=8HMO7MGtclG4vsnP-rUCyZE5PczbXAm1fTG-9wRUlKI,22384
56
58
  tableauserverclient/server/__init__.py,sha256=77E-3LseLd9gHeRgKPnpZTNMQySgYiwst33AsReol-k,1940
57
59
  tableauserverclient/server/exceptions.py,sha256=l-O4lcoEeXJC7fLWUanIcZM_Mf8m54uK3NQuKNj3RCg,183
58
60
  tableauserverclient/server/filter.py,sha256=Z7O6A175bBSmcponLs0Enh5R5Gp2puVRGfOMk-V395w,1096
59
61
  tableauserverclient/server/pager.py,sha256=IESvCba7WZO3O9VBcKlJ6ricVDgro0gKuUQyJnOCUws,3497
60
- tableauserverclient/server/query.py,sha256=dxl0dOBd_Rx8BIS0ocMd-RhO5yb1KXnu2OacrQzQGPY,9461
61
- tableauserverclient/server/request_factory.py,sha256=5Vf0Vbhj_72-f7QlEnk1Gc2KUfzeiihzkhx78Mx07FM,72709
62
- tableauserverclient/server/request_options.py,sha256=3le-ujRiAlZVSSgnP2kF8hqavm7d7dmYFL-48MX6syo,15403
63
- tableauserverclient/server/server.py,sha256=Uk63h9Y2Ub1Iu2PWhguG5D5BpWFqNydgML6ae2yesV4,11291
62
+ tableauserverclient/server/query.py,sha256=dY_y20DOBOFwydIpLcWLK39s1lVmDPxhX5x6hVxeoL0,10529
63
+ tableauserverclient/server/request_factory.py,sha256=O6jqmDXUN-TnyieSvANhHyLtNxV49SzWnHdACmDRCTY,72994
64
+ tableauserverclient/server/request_options.py,sha256=gSaVE0LVQNNDgJFB9_WNOjjdyAl_i0Y6cwyJhXHXYkc,19889
65
+ tableauserverclient/server/server.py,sha256=BemJ2L0gl34JpMZL43nPQj5rulYWA1MdaaUh8DiVhKI,13363
64
66
  tableauserverclient/server/sort.py,sha256=wjnlt7rlmLvQjM_XpgD8N8Hlg0zVvLOV7k_dAs1DmHY,628
65
67
  tableauserverclient/server/endpoint/__init__.py,sha256=MpttkNENWAiXS2QigwZMfWG6PnsB05QSFK4-OIR3CaQ,3101
66
68
  tableauserverclient/server/endpoint/auth_endpoint.py,sha256=8N3_OUSwYm4KCvwDJHGmH9i2OqzH70PLP0-rT-sKYVo,7177
67
69
  tableauserverclient/server/endpoint/custom_views_endpoint.py,sha256=se-CZ9BF8Cf_quT_3BbrO9lwK7E8hHbCoMYq-2IZMM8,14515
68
70
  tableauserverclient/server/endpoint/data_acceleration_report_endpoint.py,sha256=he-MVqCvAQo8--icEKFoIV2KUP6Z1s_PJ2uZ8Xpj2f8,1130
69
71
  tableauserverclient/server/endpoint/data_alert_endpoint.py,sha256=ZNotgG3hBpR7fo8eDTXx_gSppF2n25GQ3udwF3MKFLk,5203
70
- tableauserverclient/server/endpoint/databases_endpoint.py,sha256=3kl7YCCJB_DY88QiJxKvtarDV7kPApGYtIcr7d7l8k0,5705
71
- tableauserverclient/server/endpoint/datasources_endpoint.py,sha256=D70xk7kWkqQBDRC0yx5gZj8AhZf-lUCzdL9Ycw3nP0c,41722
72
+ tableauserverclient/server/endpoint/databases_endpoint.py,sha256=vojSCB6DQ665Z0X7h5TQg5wflU_WUtd4pgcjsda7JdU,8689
73
+ tableauserverclient/server/endpoint/datasources_endpoint.py,sha256=n6R5Qdfyc_nOGzhG_zcVsEtaWKZ5dRTopBM36fVTYvg,41838
72
74
  tableauserverclient/server/endpoint/default_permissions_endpoint.py,sha256=bZlhDqu6jFyC4vbrdC3Nn1cWRJWRz0mhxco9hRUouJA,4327
73
- tableauserverclient/server/endpoint/dqw_endpoint.py,sha256=hN2UsyM3hrUsIK9CudSBB-WXNa0TeUU7Zjeol0njIXI,2155
74
- tableauserverclient/server/endpoint/endpoint.py,sha256=pYr-l3GLK8Fvh46U_VdaJLLerd2GBJXJk_x94RQ-ZeE,14113
75
+ tableauserverclient/server/endpoint/dqw_endpoint.py,sha256=bfgA7sRGQajR67xcRS9mIF7yKlJmjjFyN-hBxwZ5wkU,2626
76
+ tableauserverclient/server/endpoint/endpoint.py,sha256=035rsaaUoQP0oYtaRhtIMHs9bwMeFCt2u-gn5asOK7o,15309
75
77
  tableauserverclient/server/endpoint/exceptions.py,sha256=ifkRatvvqG5awY73BzwALlby3dYYKr_8leUOmpeZS0Y,2919
76
78
  tableauserverclient/server/endpoint/favorites_endpoint.py,sha256=ZMui0KQCSGRBlUrem519Y5_gBpngN7wtDWo_EvEUMEk,6340
77
79
  tableauserverclient/server/endpoint/fileuploads_endpoint.py,sha256=e3qIw6lJJG4Y8RHG26psMjjETovpfrBzmFjeYeJll8s,2410
@@ -87,20 +89,20 @@ tableauserverclient/server/endpoint/metrics_endpoint.py,sha256=p9F_tbUela1sb3i9n
87
89
  tableauserverclient/server/endpoint/permissions_endpoint.py,sha256=tXX_KSanbxUeR-L4UdI_jphko8dD_fZsXVhQayQL3JA,3719
88
90
  tableauserverclient/server/endpoint/projects_endpoint.py,sha256=aIYW2NWZnWgK2PXHcBgHJwGxv6Ak915J-1wmPD1FiFY,30603
89
91
  tableauserverclient/server/endpoint/resource_tagger.py,sha256=eKekflXzLjx_zDOLgYkTIusRO8vsFus1LvLIf0LOwtQ,6661
90
- tableauserverclient/server/endpoint/schedules_endpoint.py,sha256=eUyNCqx7alQTPTCX-KYGk7zFd7EtAJxYatfa9D6NCc0,6242
92
+ tableauserverclient/server/endpoint/schedules_endpoint.py,sha256=6CnlvC2OIMRTUM1JYYgg5WWVG68vnw2Cfui-O-vkYj4,11032
91
93
  tableauserverclient/server/endpoint/server_info_endpoint.py,sha256=9UcYP3td22S_Kwabu-RWc-Pn3lFrIERVlzVpl4ErP_I,2649
92
- tableauserverclient/server/endpoint/sites_endpoint.py,sha256=H_bq6hU-zsGJ2sNr2jqQ5YGajQ310WvjJgpiDBREfiY,14001
94
+ tableauserverclient/server/endpoint/sites_endpoint.py,sha256=Fh8ppL00IVI1YpXyOXCCc5fIc_r_TC1o8GCgYD_gOV4,14778
93
95
  tableauserverclient/server/endpoint/subscriptions_endpoint.py,sha256=21oZ6Q14AL8p2ZHyfREpbnPU6Vj4Xh97o1K9hmKRJ-I,3187
94
- tableauserverclient/server/endpoint/tables_endpoint.py,sha256=7HCOheWJd8VAEz1TACbWnLFxfYiKcPB40XpxtT5Qbj0,5725
96
+ tableauserverclient/server/endpoint/tables_endpoint.py,sha256=PcNqk66aJ_rsFSHOJ1FCB_G5GlvGFIzr66G5aO2aIRo,9742
95
97
  tableauserverclient/server/endpoint/tasks_endpoint.py,sha256=5VHGe2NSgr40BKPPOm9nVrdZGrG3Sf0ri_CNqsv0CpQ,6304
96
- tableauserverclient/server/endpoint/users_endpoint.py,sha256=yLDzGy9K9ecY8uO8Tww1fp3hwrs_WMbMYtgMRRa7Hho,19788
98
+ tableauserverclient/server/endpoint/users_endpoint.py,sha256=M8rtc0UOgJTpOudZg9XhPWpSNX5HOrNGeYAdYTfzYrs,20414
97
99
  tableauserverclient/server/endpoint/views_endpoint.py,sha256=4wTqjo1MyB6kkVB0W9QSajz8eqwO7vaZCcD2y6hN4Zo,17859
98
100
  tableauserverclient/server/endpoint/virtual_connections_endpoint.py,sha256=K5R86aIm4hZeYw3OUOlKv-zTmsWa3np1iuV_h5iPvt0,8458
99
101
  tableauserverclient/server/endpoint/webhooks_endpoint.py,sha256=nmEjKdbntwBg-0XAP2TluOv2v8usqxXg7sO8ogS5rDI,4923
100
102
  tableauserverclient/server/endpoint/workbooks_endpoint.py,sha256=W6o64Rec7i3dBzyR8TYntgWzryXbxFAZ_xa37edyzqY,43910
101
- tableauserverclient-0.37.dist-info/licenses/LICENSE,sha256=MMkY7MguOb4L-WCmmqrVcwg2iwSGaz-RfAMFvXRXwsQ,1074
102
- tableauserverclient-0.37.dist-info/licenses/LICENSE.versioneer,sha256=OYaGozOXk7bUNSm1z577iDYpti8a40XIqqR4lyQ47D8,334
103
- tableauserverclient-0.37.dist-info/METADATA,sha256=-Z0PkJLJDJ9EG1poAqRiDH_kxLrBvjTUje1vYceCLIU,4351
104
- tableauserverclient-0.37.dist-info/WHEEL,sha256=L0N565qmK-3nM2eBoMNFszYJ_MTx03_tQ0CQu1bHLYo,91
105
- tableauserverclient-0.37.dist-info/top_level.txt,sha256=kBnL39G2RlGqxJSsShDBWG4WZ3NFcWJkv1EGiOfZh4Q,20
106
- tableauserverclient-0.37.dist-info/RECORD,,
103
+ tableauserverclient-0.38.dist-info/licenses/LICENSE,sha256=MMkY7MguOb4L-WCmmqrVcwg2iwSGaz-RfAMFvXRXwsQ,1074
104
+ tableauserverclient-0.38.dist-info/licenses/LICENSE.versioneer,sha256=OYaGozOXk7bUNSm1z577iDYpti8a40XIqqR4lyQ47D8,334
105
+ tableauserverclient-0.38.dist-info/METADATA,sha256=Mqmu3eGpJkEDtUCXPioiJvuo5yHjUv77jwF_xGm48go,4351
106
+ tableauserverclient-0.38.dist-info/WHEEL,sha256=Nw36Djuh_5VDukK0H78QzOX-_FQEo6V37m3nkm96gtU,91
107
+ tableauserverclient-0.38.dist-info/top_level.txt,sha256=kBnL39G2RlGqxJSsShDBWG4WZ3NFcWJkv1EGiOfZh4Q,20
108
+ tableauserverclient-0.38.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (78.0.1)
2
+ Generator: setuptools (80.7.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5