looker-sdk 24.8.0__tar.gz → 24.12.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/PKG-INFO +1 -1
  2. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/sdk/api40/methods.py +7 -1
  3. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/sdk/api40/models.py +44 -7
  4. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/sdk/constants.py +1 -1
  5. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/version.py +1 -1
  6. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk.egg-info/PKG-INFO +1 -1
  7. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/LICENSE.txt +0 -0
  8. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/MANIFEST.in +0 -0
  9. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/README.rst +0 -0
  10. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/__init__.py +0 -0
  11. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/error.py +0 -0
  12. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/py.typed +0 -0
  13. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/rtl/__init__.py +0 -0
  14. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/rtl/api_methods.py +0 -0
  15. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/rtl/api_settings.py +0 -0
  16. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/rtl/auth_session.py +0 -0
  17. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/rtl/auth_token.py +0 -0
  18. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/rtl/constants.py +0 -0
  19. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/rtl/hooks.py +0 -0
  20. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/rtl/model.py +0 -0
  21. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/rtl/requests_transport.py +0 -0
  22. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/rtl/serialize.py +0 -0
  23. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/rtl/transport.py +0 -0
  24. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/sdk/__init__.py +0 -0
  25. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk/sdk/api40/__init__.py +0 -0
  26. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk.egg-info/SOURCES.txt +0 -0
  27. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk.egg-info/dependency_links.txt +0 -0
  28. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk.egg-info/requires.txt +0 -0
  29. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/looker_sdk.egg-info/top_level.txt +0 -0
  30. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/setup.cfg +0 -0
  31. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/setup.py +0 -0
  32. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/tests/__init__.py +0 -0
  33. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/tests/conftest.py +0 -0
  34. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/tests/integration/__init__.py +0 -0
  35. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/tests/integration/test_methods.py +0 -0
  36. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/tests/integration/test_netrc.py +0 -0
  37. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/tests/rtl/__init__.py +0 -0
  38. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/tests/rtl/test_api_methods.py +0 -0
  39. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/tests/rtl/test_api_settings.py +0 -0
  40. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/tests/rtl/test_auth_session.py +0 -0
  41. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/tests/rtl/test_auth_token.py +0 -0
  42. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/tests/rtl/test_requests_transport.py +0 -0
  43. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/tests/rtl/test_serialize.py +0 -0
  44. {looker_sdk-24.8.0 → looker_sdk-24.12.0}/tests/rtl/test_transport.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: looker_sdk
3
- Version: 24.8.0
3
+ Version: 24.12.0
4
4
  Summary: Looker REST API
5
5
  Home-page: https://pypi.python.org/pypi/looker_sdk
6
6
  Author: Looker Data Sciences, Inc.
@@ -819,8 +819,11 @@ class Looker40SDK(api_methods.APIMethods):
819
819
  #
820
820
  # This function does not strictly require all group_ids, user attribute names, or model names to exist at the moment the
821
821
  # embed url is created. Unknown group_id, user attribute names or model names will be passed through to the output URL.
822
+ # Because of this, **these parameters are not validated** when the API call is made.
822
823
  #
823
- # To diagnose potential problems with an SSO embed URL, you can copy the signed URL into the Embed URI Validator text box in `<your looker instance>/admin/embed`.
824
+ # The [Get Embed Url](https://cloud.google.com/looker/docs/r/get-signed-url) dialog can be used to determine and validate the correct permissions for signing an embed url.
825
+ # This dialog also provides the SDK syntax for the API call to make. Alternatively, you can copy the signed URL into the Embed URI Validator text box
826
+ # in `<your looker instance>/admin/embed` to diagnose potential problems.
824
827
  #
825
828
  # The `secret_id` parameter is optional. If specified, its value must be the id of an active secret defined in the Looker instance.
826
829
  # if not specified, the URL will be signed using the most recent active signing secret. If there is no active secret for signing embed urls,
@@ -3236,6 +3239,7 @@ class Looker40SDK(api_methods.APIMethods):
3236
3239
  # - data_connector_default_enabled
3237
3240
  # - extension_framework_enabled
3238
3241
  # - extension_load_url_enabled
3242
+ # - instance_config
3239
3243
  # - marketplace_auto_install_enabled
3240
3244
  # - marketplace_automation
3241
3245
  # - marketplace_terms_accepted
@@ -3277,6 +3281,7 @@ class Looker40SDK(api_methods.APIMethods):
3277
3281
  # - data_connector_default_enabled
3278
3282
  # - extension_framework_enabled
3279
3283
  # - extension_load_url_enabled
3284
+ # - instance_config
3280
3285
  # - marketplace_auto_install_enabled
3281
3286
  # - marketplace_automation
3282
3287
  # - marketplace_terms_accepted
@@ -12874,6 +12879,7 @@ class Looker40SDK(api_methods.APIMethods):
12874
12879
  # associated credentials. Will overwrite all associated email addresses with
12875
12880
  # the value supplied in the 'email' body param.
12876
12881
  # The user's 'is_disabled' status must be true.
12882
+ # If the user has a credential email, they will receive a verification email and the user will be disabled until they verify the email
12877
12883
  #
12878
12884
  # Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).
12879
12885
  #
@@ -21,7 +21,7 @@
21
21
  # SOFTWARE.
22
22
  #
23
23
 
24
- # 341 API models: 258 Spec, 0 Request, 61 Write, 22 Enum
24
+ # 342 API models: 259 Spec, 0 Request, 61 Write, 22 Enum
25
25
 
26
26
 
27
27
  # NOTE: Do not edit this file generated by Looker SDK Codegen for API 4.0
@@ -4069,6 +4069,7 @@ class DialectInfo(model.Model):
4069
4069
  installed: Is the supporting driver installed
4070
4070
  label: The human-readable label of the connection
4071
4071
  label_for_database_equivalent: What the dialect calls the equivalent of a normal SQL table
4072
+ label_for_schema_equivalent: What the dialect calls the equivalent of a schema-level namespace
4072
4073
  name: The name of the dialect
4073
4074
  supported_options:
4074
4075
  """
@@ -4079,6 +4080,7 @@ class DialectInfo(model.Model):
4079
4080
  installed: Optional[bool] = None
4080
4081
  label: Optional[str] = None
4081
4082
  label_for_database_equivalent: Optional[str] = None
4083
+ label_for_schema_equivalent: Optional[str] = None
4082
4084
  name: Optional[str] = None
4083
4085
  supported_options: Optional["DialectInfoOptions"] = None
4084
4086
 
@@ -4091,6 +4093,7 @@ class DialectInfo(model.Model):
4091
4093
  installed: Optional[bool] = None,
4092
4094
  label: Optional[str] = None,
4093
4095
  label_for_database_equivalent: Optional[str] = None,
4096
+ label_for_schema_equivalent: Optional[str] = None,
4094
4097
  name: Optional[str] = None,
4095
4098
  supported_options: Optional["DialectInfoOptions"] = None
4096
4099
  ):
@@ -4100,6 +4103,7 @@ class DialectInfo(model.Model):
4100
4103
  self.installed = installed
4101
4104
  self.label = label
4102
4105
  self.label_for_database_equivalent = label_for_database_equivalent
4106
+ self.label_for_schema_equivalent = label_for_schema_equivalent
4103
4107
  self.name = name
4104
4108
  self.supported_options = supported_options
4105
4109
 
@@ -4675,6 +4679,7 @@ class ExternalOauthApplication(model.Model):
4675
4679
  name: The name of this application. For Snowflake connections, this should be the name of the host database.
4676
4680
  client_id: The OAuth Client ID for this application
4677
4681
  client_secret: (Write-Only) The OAuth Client Secret for this application
4682
+ tenant_id: The OAuth Tenant ID for this application
4678
4683
  dialect_name: The database dialect for this application.
4679
4684
  created_at: Creation time for this application
4680
4685
  """
@@ -4684,6 +4689,7 @@ class ExternalOauthApplication(model.Model):
4684
4689
  name: Optional[str] = None
4685
4690
  client_id: Optional[str] = None
4686
4691
  client_secret: Optional[str] = None
4692
+ tenant_id: Optional[str] = None
4687
4693
  dialect_name: Optional[str] = None
4688
4694
  created_at: Optional[datetime.datetime] = None
4689
4695
 
@@ -4695,6 +4701,7 @@ class ExternalOauthApplication(model.Model):
4695
4701
  name: Optional[str] = None,
4696
4702
  client_id: Optional[str] = None,
4697
4703
  client_secret: Optional[str] = None,
4704
+ tenant_id: Optional[str] = None,
4698
4705
  dialect_name: Optional[str] = None,
4699
4706
  created_at: Optional[datetime.datetime] = None
4700
4707
  ):
@@ -4703,6 +4710,7 @@ class ExternalOauthApplication(model.Model):
4703
4710
  self.name = name
4704
4711
  self.client_id = client_id
4705
4712
  self.client_secret = client_secret
4713
+ self.tenant_id = tenant_id
4706
4714
  self.dialect_name = dialect_name
4707
4715
  self.created_at = created_at
4708
4716
 
@@ -5471,6 +5479,27 @@ class ImportedProject(model.Model):
5471
5479
  self.is_remote = is_remote
5472
5480
 
5473
5481
 
5482
+ @attr.s(auto_attribs=True, init=False)
5483
+ class InstanceConfig(model.Model):
5484
+ """
5485
+ Attributes:
5486
+ feature_flags: Feature flags enabled on the instance
5487
+ license_features: License features enabled on the instance
5488
+ """
5489
+
5490
+ feature_flags: Optional[MutableMapping[str, bool]] = None
5491
+ license_features: Optional[MutableMapping[str, bool]] = None
5492
+
5493
+ def __init__(
5494
+ self,
5495
+ *,
5496
+ feature_flags: Optional[MutableMapping[str, bool]] = None,
5497
+ license_features: Optional[MutableMapping[str, bool]] = None
5498
+ ):
5499
+ self.feature_flags = feature_flags
5500
+ self.license_features = license_features
5501
+
5502
+
5474
5503
  @attr.s(auto_attribs=True, init=False)
5475
5504
  class Integration(model.Model):
5476
5505
  """
@@ -5883,13 +5912,13 @@ class JsonBiFields(model.Model):
5883
5912
  dimensions: Dimensions represent a column in a table, or a computed value based on some sort of column manipulation or combination
5884
5913
  measures: Measures are similar to aggregate functions in SQL (for example, COUNT, SUM, AVG) and represent information about multiple rows
5885
5914
  pivots: Pivots
5886
- table_calculations: Table Calculations (beta: May not be included)
5915
+ table_calculations: Table Calculations
5887
5916
  """
5888
5917
 
5889
5918
  dimensions: Sequence["JsonBiField"]
5890
5919
  measures: Sequence["JsonBiField"]
5891
5920
  pivots: Sequence["JsonBiField"]
5892
- table_calculations: Optional[Sequence["JsonBiTableCalc"]] = None
5921
+ table_calculations: Sequence["JsonBiTableCalc"]
5893
5922
 
5894
5923
  def __init__(
5895
5924
  self,
@@ -5897,7 +5926,7 @@ class JsonBiFields(model.Model):
5897
5926
  dimensions: Sequence["JsonBiField"],
5898
5927
  measures: Sequence["JsonBiField"],
5899
5928
  pivots: Sequence["JsonBiField"],
5900
- table_calculations: Optional[Sequence["JsonBiTableCalc"]] = None
5929
+ table_calculations: Sequence["JsonBiTableCalc"]
5901
5930
  ):
5902
5931
  self.dimensions = dimensions
5903
5932
  self.measures = measures
@@ -9288,7 +9317,7 @@ class Query(model.Model):
9288
9317
  fields: Fields
9289
9318
  pivots: Pivots
9290
9319
  fill_fields: Fill Fields
9291
- filters: Filters
9320
+ filters: Filters will contain data pertaining to complex filters that do not contain "or" conditions. When "or" conditions are present, filter data will be found on the `filter_expression` property.
9292
9321
  filter_expression: Filter Expression
9293
9322
  sorts: Sorting for the query results. Use the format `["view.field", ...]` to sort on fields in ascending order. Use the format `["view.field desc", ...]` to sort on fields in descending order. Use `["__UNSORTED__"]` (2 underscores before and after) to disable sorting entirely. Empty sorts `[]` will trigger a default sort.
9294
9323
  limit: Limit
@@ -10818,6 +10847,7 @@ class SessionConfig(model.Model):
10818
10847
  class Setting(model.Model):
10819
10848
  """
10820
10849
  Attributes:
10850
+ instance_config:
10821
10851
  extension_framework_enabled: Toggle extension framework on or off
10822
10852
  extension_load_url_enabled: (DEPRECATED) Toggle extension load url on or off. Do not use. This is temporary setting that will eventually become a noop and subsequently deleted.
10823
10853
  marketplace_auto_install_enabled: (DEPRECATED) Toggle marketplace auto install on or off. Deprecated - do not use. Auto install can now be enabled via marketplace automation settings
@@ -10841,6 +10871,7 @@ class Setting(model.Model):
10841
10871
  login_notification_text: Login notification text
10842
10872
  """
10843
10873
 
10874
+ instance_config: Optional["InstanceConfig"] = None
10844
10875
  extension_framework_enabled: Optional[bool] = None
10845
10876
  extension_load_url_enabled: Optional[bool] = None
10846
10877
  marketplace_auto_install_enabled: Optional[bool] = None
@@ -10866,6 +10897,7 @@ class Setting(model.Model):
10866
10897
  def __init__(
10867
10898
  self,
10868
10899
  *,
10900
+ instance_config: Optional["InstanceConfig"] = None,
10869
10901
  extension_framework_enabled: Optional[bool] = None,
10870
10902
  extension_load_url_enabled: Optional[bool] = None,
10871
10903
  marketplace_auto_install_enabled: Optional[bool] = None,
@@ -10888,6 +10920,7 @@ class Setting(model.Model):
10888
10920
  login_notification_enabled: Optional[bool] = None,
10889
10921
  login_notification_text: Optional[str] = None
10890
10922
  ):
10923
+ self.instance_config = instance_config
10891
10924
  self.extension_framework_enabled = extension_framework_enabled
10892
10925
  self.extension_load_url_enabled = extension_load_url_enabled
10893
10926
  self.marketplace_auto_install_enabled = marketplace_auto_install_enabled
@@ -13675,12 +13708,14 @@ class WriteExternalOauthApplication(model.Model):
13675
13708
  name: The name of this application. For Snowflake connections, this should be the name of the host database.
13676
13709
  client_id: The OAuth Client ID for this application
13677
13710
  client_secret: (Write-Only) The OAuth Client Secret for this application
13711
+ tenant_id: The OAuth Tenant ID for this application
13678
13712
  dialect_name: The database dialect for this application.
13679
13713
  """
13680
13714
 
13681
13715
  name: Optional[str] = None
13682
13716
  client_id: Optional[str] = None
13683
13717
  client_secret: Optional[str] = None
13718
+ tenant_id: Optional[str] = None
13684
13719
  dialect_name: Optional[str] = None
13685
13720
 
13686
13721
  def __init__(
@@ -13689,11 +13724,13 @@ class WriteExternalOauthApplication(model.Model):
13689
13724
  name: Optional[str] = None,
13690
13725
  client_id: Optional[str] = None,
13691
13726
  client_secret: Optional[str] = None,
13727
+ tenant_id: Optional[str] = None,
13692
13728
  dialect_name: Optional[str] = None
13693
13729
  ):
13694
13730
  self.name = name
13695
13731
  self.client_id = client_id
13696
13732
  self.client_secret = client_secret
13733
+ self.tenant_id = tenant_id
13697
13734
  self.dialect_name = dialect_name
13698
13735
 
13699
13736
 
@@ -14576,7 +14613,7 @@ class WriteQuery(model.Model):
14576
14613
  fields: Fields
14577
14614
  pivots: Pivots
14578
14615
  fill_fields: Fill Fields
14579
- filters: Filters
14616
+ filters: Filters will contain data pertaining to complex filters that do not contain "or" conditions. When "or" conditions are present, filter data will be found on the `filter_expression` property.
14580
14617
  filter_expression: Filter Expression
14581
14618
  sorts: Sorting for the query results. Use the format `["view.field", ...]` to sort on fields in ascending order. Use the format `["view.field desc", ...]` to sort on fields in descending order. Use `["__UNSORTED__"]` (2 underscores before and after) to disable sorting entirely. Empty sorts `[]` will trigger a default sort.
14582
14619
  limit: Limit
@@ -15029,7 +15066,7 @@ class WriteSessionConfig(model.Model):
15029
15066
  class WriteSetting(model.Model):
15030
15067
  """
15031
15068
  Dynamic writeable type for Setting removes:
15032
- marketplace_site, embed_enabled, login_notification_enabled, login_notification_text
15069
+ instance_config, marketplace_site, embed_enabled, login_notification_enabled, login_notification_text
15033
15070
 
15034
15071
  Attributes:
15035
15072
  extension_framework_enabled: Toggle extension framework on or off
@@ -20,5 +20,5 @@
20
20
  # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
21
  # THE SOFTWARE.
22
22
 
23
- sdk_version = "24.8"
23
+ sdk_version = "24.12"
24
24
  environment_prefix = "LOOKERSDK"
@@ -20,4 +20,4 @@
20
20
  # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
21
  # THE SOFTWARE.
22
22
 
23
- __version__ = "24.8.0"
23
+ __version__ = "24.12.0"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: looker-sdk
3
- Version: 24.8.0
3
+ Version: 24.12.0
4
4
  Summary: Looker REST API
5
5
  Home-page: https://pypi.python.org/pypi/looker_sdk
6
6
  Author: Looker Data Sciences, Inc.
File without changes
File without changes
File without changes
File without changes
File without changes