looker-sdk 24.2.1__tar.gz → 25.0.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.
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/PKG-INFO +1 -1
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/error.py +2 -2
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/sdk/api40/methods.py +212 -37
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/sdk/api40/models.py +477 -142
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/sdk/constants.py +1 -1
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/version.py +1 -1
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk.egg-info/PKG-INFO +1 -1
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk.egg-info/SOURCES.txt +0 -2
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/setup.py +1 -1
- looker_sdk-24.2.1/tests/__init__.py +0 -0
- looker_sdk-24.2.1/tests/conftest.py +0 -133
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/LICENSE.txt +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/MANIFEST.in +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/README.rst +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/__init__.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/py.typed +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/rtl/__init__.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/rtl/api_methods.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/rtl/api_settings.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/rtl/auth_session.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/rtl/auth_token.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/rtl/constants.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/rtl/hooks.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/rtl/model.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/rtl/requests_transport.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/rtl/serialize.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/rtl/transport.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/sdk/__init__.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk/sdk/api40/__init__.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk.egg-info/dependency_links.txt +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk.egg-info/requires.txt +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/looker_sdk.egg-info/top_level.txt +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/setup.cfg +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/tests/integration/__init__.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/tests/integration/test_methods.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/tests/integration/test_netrc.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/tests/rtl/__init__.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/tests/rtl/test_api_methods.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/tests/rtl/test_api_settings.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/tests/rtl/test_auth_session.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/tests/rtl/test_auth_token.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/tests/rtl/test_requests_transport.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/tests/rtl/test_serialize.py +0 -0
- {looker_sdk-24.2.1 → looker_sdk-25.0.0}/tests/rtl/test_transport.py +0 -0
|
@@ -82,7 +82,7 @@ class SDKError(Exception):
|
|
|
82
82
|
documentation_url: {self.documentation_url}
|
|
83
83
|
error_doc_url: {self.error_doc_url}
|
|
84
84
|
error details:
|
|
85
|
-
{sep.join(self.errors)}
|
|
85
|
+
{sep.join(str(error) for error in self.errors)}
|
|
86
86
|
"""
|
|
87
87
|
|
|
88
88
|
|
|
@@ -99,7 +99,7 @@ class ErrorDocHelper:
|
|
|
99
99
|
ERROR_CODES_URL: str = "https://static-a.cdn.looker.app/errorcodes/"
|
|
100
100
|
lookup_dict: Dict[str, Dict[str, str]] = {}
|
|
101
101
|
RE_PATTERN: str = (
|
|
102
|
-
|
|
102
|
+
r'(https://docs\.looker\.com/r/err/|https://cloud\.google\.com/looker/docs/r/err/)(.*)/(\d{3})(.*)'
|
|
103
103
|
)
|
|
104
104
|
pattern = re.compile(RE_PATTERN, flags=re.IGNORECASE)
|
|
105
105
|
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
# SOFTWARE.
|
|
22
22
|
#
|
|
23
23
|
|
|
24
|
-
#
|
|
24
|
+
# 467 API methods
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
# NOTE: Do not edit this file generated by Looker SDK Codegen for API 4.0
|
|
@@ -751,7 +751,7 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
751
751
|
#
|
|
752
752
|
# The value of the `secret` field will be set by Looker and returned.
|
|
753
753
|
#
|
|
754
|
-
# Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled
|
|
754
|
+
# **NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.
|
|
755
755
|
#
|
|
756
756
|
# POST /embed_config/secrets -> mdls.EmbedSecret
|
|
757
757
|
def create_embed_secret(
|
|
@@ -773,7 +773,7 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
773
773
|
|
|
774
774
|
# ### Delete an embed secret.
|
|
775
775
|
#
|
|
776
|
-
# Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled
|
|
776
|
+
# **NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.
|
|
777
777
|
#
|
|
778
778
|
# DELETE /embed_config/secrets/{embed_secret_id} -> str
|
|
779
779
|
def delete_embed_secret(
|
|
@@ -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
|
-
#
|
|
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,
|
|
@@ -834,7 +837,7 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
834
837
|
# encrypted transport.
|
|
835
838
|
#
|
|
836
839
|
#
|
|
837
|
-
# Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled
|
|
840
|
+
# **NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.
|
|
838
841
|
#
|
|
839
842
|
# POST /embed/sso_url -> mdls.EmbedUrlResponse
|
|
840
843
|
def create_sso_embed_url(
|
|
@@ -881,7 +884,7 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
881
884
|
# encrypted transport.
|
|
882
885
|
#
|
|
883
886
|
#
|
|
884
|
-
# Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled
|
|
887
|
+
# **NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.
|
|
885
888
|
#
|
|
886
889
|
# POST /embed/token_url/me -> mdls.EmbedUrlResponse
|
|
887
890
|
def create_embed_url_as_me(
|
|
@@ -953,7 +956,7 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
953
956
|
# - Navigation token - lives for 10 minutes. The Looker client will ask for this token once it is loaded into
|
|
954
957
|
# the iframe.
|
|
955
958
|
#
|
|
956
|
-
# Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled
|
|
959
|
+
# **NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.
|
|
957
960
|
#
|
|
958
961
|
# POST /embed/cookieless_session/acquire -> mdls.EmbedCookielessSessionAcquireResponse
|
|
959
962
|
def acquire_embed_cookieless_session(
|
|
@@ -979,7 +982,7 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
979
982
|
# in the session and session reference data being cleared from the system. This endpoint can be used to log an embed
|
|
980
983
|
# user out of the Looker instance.
|
|
981
984
|
#
|
|
982
|
-
# Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled
|
|
985
|
+
# **NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.
|
|
983
986
|
#
|
|
984
987
|
# DELETE /embed/cookieless_session/{session_reference_token} -> str
|
|
985
988
|
def delete_embed_cookieless_session(
|
|
@@ -1015,7 +1018,7 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
1015
1018
|
# the session time to live in the `session_reference_token_ttl` response property. If this property
|
|
1016
1019
|
# contains a zero, the embed session has expired.
|
|
1017
1020
|
#
|
|
1018
|
-
# Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled
|
|
1021
|
+
# **NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.
|
|
1019
1022
|
#
|
|
1020
1023
|
# PUT /embed/cookieless_session/generate_tokens -> mdls.EmbedCookielessSessionGenerateTokensResponse
|
|
1021
1024
|
def generate_tokens_for_cookieless_session(
|
|
@@ -3234,8 +3237,12 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
3234
3237
|
# - allow_user_timezones
|
|
3235
3238
|
# - custom_welcome_email
|
|
3236
3239
|
# - data_connector_default_enabled
|
|
3240
|
+
# - dashboard_auto_refresh_restriction
|
|
3241
|
+
# - dashboard_auto_refresh_minimum_interval
|
|
3237
3242
|
# - extension_framework_enabled
|
|
3238
3243
|
# - extension_load_url_enabled
|
|
3244
|
+
# - instance_config
|
|
3245
|
+
# - managed_certificate_uri
|
|
3239
3246
|
# - marketplace_auto_install_enabled
|
|
3240
3247
|
# - marketplace_automation
|
|
3241
3248
|
# - marketplace_terms_accepted
|
|
@@ -3275,8 +3282,12 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
3275
3282
|
# - allow_user_timezones
|
|
3276
3283
|
# - custom_welcome_email
|
|
3277
3284
|
# - data_connector_default_enabled
|
|
3285
|
+
# - dashboard_auto_refresh_restriction
|
|
3286
|
+
# - dashboard_auto_refresh_minimum_interval
|
|
3278
3287
|
# - extension_framework_enabled
|
|
3279
3288
|
# - extension_load_url_enabled
|
|
3289
|
+
# - instance_config
|
|
3290
|
+
# - managed_certificate_uri
|
|
3280
3291
|
# - marketplace_auto_install_enabled
|
|
3281
3292
|
# - marketplace_automation
|
|
3282
3293
|
# - marketplace_terms_accepted
|
|
@@ -3737,6 +3748,31 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
3737
3748
|
)
|
|
3738
3749
|
return response
|
|
3739
3750
|
|
|
3751
|
+
# ### Update an OAuth Application's client secret.
|
|
3752
|
+
#
|
|
3753
|
+
# This is an OAuth Application which Looker uses to access external systems.
|
|
3754
|
+
#
|
|
3755
|
+
# PATCH /external_oauth_applications/{client_id} -> mdls.ExternalOauthApplication
|
|
3756
|
+
def update_external_oauth_application(
|
|
3757
|
+
self,
|
|
3758
|
+
# The client ID of the OAuth App to update
|
|
3759
|
+
client_id: str,
|
|
3760
|
+
body: mdls.WriteExternalOauthApplication,
|
|
3761
|
+
transport_options: Optional[transport.TransportOptions] = None,
|
|
3762
|
+
) -> mdls.ExternalOauthApplication:
|
|
3763
|
+
"""Update External OAuth Application"""
|
|
3764
|
+
client_id = self.encode_path_param(client_id)
|
|
3765
|
+
response = cast(
|
|
3766
|
+
mdls.ExternalOauthApplication,
|
|
3767
|
+
self.patch(
|
|
3768
|
+
path=f"/external_oauth_applications/{client_id}",
|
|
3769
|
+
structure=mdls.ExternalOauthApplication,
|
|
3770
|
+
body=body,
|
|
3771
|
+
transport_options=transport_options,
|
|
3772
|
+
),
|
|
3773
|
+
)
|
|
3774
|
+
return response
|
|
3775
|
+
|
|
3740
3776
|
# ### Create OAuth User state.
|
|
3741
3777
|
#
|
|
3742
3778
|
# POST /external_oauth_applications/user_state -> mdls.CreateOAuthApplicationUserStateResponse
|
|
@@ -4390,6 +4426,50 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
4390
4426
|
)
|
|
4391
4427
|
return response
|
|
4392
4428
|
|
|
4429
|
+
# ### Get Content Summary
|
|
4430
|
+
#
|
|
4431
|
+
# Retrieves a collection of content items related to user activity and engagement, such as recently viewed content,
|
|
4432
|
+
# favorites and scheduled items.
|
|
4433
|
+
#
|
|
4434
|
+
# GET /content_summary -> Sequence[mdls.ContentSummary]
|
|
4435
|
+
def content_summary(
|
|
4436
|
+
self,
|
|
4437
|
+
# Comma-delimited names of fields to return in responses. Omit for all fields
|
|
4438
|
+
fields: Optional[str] = None,
|
|
4439
|
+
# Number of results to return. (used with offset)
|
|
4440
|
+
limit: Optional[int] = None,
|
|
4441
|
+
# Number of results to skip before returning any. (used with limit)
|
|
4442
|
+
offset: Optional[int] = None,
|
|
4443
|
+
# Match group id
|
|
4444
|
+
target_group_id: Optional[str] = None,
|
|
4445
|
+
# Match user id
|
|
4446
|
+
target_user_id: Optional[str] = None,
|
|
4447
|
+
# Content type to match, options are: look, dashboard. Can be provided as a comma delimited list.
|
|
4448
|
+
target_content_type: Optional[str] = None,
|
|
4449
|
+
# Fields to sort by
|
|
4450
|
+
sorts: Optional[str] = None,
|
|
4451
|
+
transport_options: Optional[transport.TransportOptions] = None,
|
|
4452
|
+
) -> Sequence[mdls.ContentSummary]:
|
|
4453
|
+
"""Search Content Summaries"""
|
|
4454
|
+
response = cast(
|
|
4455
|
+
Sequence[mdls.ContentSummary],
|
|
4456
|
+
self.get(
|
|
4457
|
+
path="/content_summary",
|
|
4458
|
+
structure=Sequence[mdls.ContentSummary],
|
|
4459
|
+
query_params={
|
|
4460
|
+
"fields": fields,
|
|
4461
|
+
"limit": limit,
|
|
4462
|
+
"offset": offset,
|
|
4463
|
+
"target_group_id": target_group_id,
|
|
4464
|
+
"target_user_id": target_user_id,
|
|
4465
|
+
"target_content_type": target_content_type,
|
|
4466
|
+
"sorts": sorts,
|
|
4467
|
+
},
|
|
4468
|
+
transport_options=transport_options,
|
|
4469
|
+
),
|
|
4470
|
+
)
|
|
4471
|
+
return response
|
|
4472
|
+
|
|
4393
4473
|
# ### Get an image representing the contents of a dashboard or look.
|
|
4394
4474
|
#
|
|
4395
4475
|
# The returned thumbnail is an abstract representation of the contents of a dashboard or look and does not
|
|
@@ -4444,6 +4524,10 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
4444
4524
|
self,
|
|
4445
4525
|
# Requested fields.
|
|
4446
4526
|
fields: Optional[str] = None,
|
|
4527
|
+
# Optional list of project names to filter by
|
|
4528
|
+
project_names: Optional[mdls.DelimSequence[str]] = None,
|
|
4529
|
+
# Optional list of space ids to filter by
|
|
4530
|
+
space_ids: Optional[mdls.DelimSequence[str]] = None,
|
|
4447
4531
|
transport_options: Optional[transport.TransportOptions] = None,
|
|
4448
4532
|
) -> mdls.ContentValidation:
|
|
4449
4533
|
"""Validate Content"""
|
|
@@ -4452,7 +4536,11 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
4452
4536
|
self.get(
|
|
4453
4537
|
path="/content_validation",
|
|
4454
4538
|
structure=mdls.ContentValidation,
|
|
4455
|
-
query_params={
|
|
4539
|
+
query_params={
|
|
4540
|
+
"fields": fields,
|
|
4541
|
+
"project_names": project_names,
|
|
4542
|
+
"space_ids": space_ids,
|
|
4543
|
+
},
|
|
4456
4544
|
transport_options=transport_options,
|
|
4457
4545
|
),
|
|
4458
4546
|
)
|
|
@@ -5950,19 +6038,19 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
5950
6038
|
#
|
|
5951
6039
|
# All personal folders will be returned.
|
|
5952
6040
|
#
|
|
5953
|
-
# GET /folders -> Sequence[mdls.
|
|
6041
|
+
# GET /folders -> Sequence[mdls.FolderBase]
|
|
5954
6042
|
def all_folders(
|
|
5955
6043
|
self,
|
|
5956
6044
|
# Requested fields.
|
|
5957
6045
|
fields: Optional[str] = None,
|
|
5958
6046
|
transport_options: Optional[transport.TransportOptions] = None,
|
|
5959
|
-
) -> Sequence[mdls.
|
|
6047
|
+
) -> Sequence[mdls.FolderBase]:
|
|
5960
6048
|
"""Get All Folders"""
|
|
5961
6049
|
response = cast(
|
|
5962
|
-
Sequence[mdls.
|
|
6050
|
+
Sequence[mdls.FolderBase],
|
|
5963
6051
|
self.get(
|
|
5964
6052
|
path="/folders",
|
|
5965
|
-
structure=Sequence[mdls.
|
|
6053
|
+
structure=Sequence[mdls.FolderBase],
|
|
5966
6054
|
query_params={"fields": fields},
|
|
5967
6055
|
transport_options=transport_options,
|
|
5968
6056
|
),
|
|
@@ -7438,6 +7526,12 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
7438
7526
|
limit: Optional[int] = None,
|
|
7439
7527
|
# Number of results to skip before returning any. (Defaults to 0 if not set when limit is used)
|
|
7440
7528
|
offset: Optional[int] = None,
|
|
7529
|
+
# Whether or not to exclude models with no explores from the response (Defaults to false)
|
|
7530
|
+
exclude_empty: Optional[bool] = None,
|
|
7531
|
+
# Whether or not to exclude hidden explores from the response (Defaults to false)
|
|
7532
|
+
exclude_hidden: Optional[bool] = None,
|
|
7533
|
+
# Whether or not to include built-in models such as System Activity (Defaults to false)
|
|
7534
|
+
include_internal: Optional[bool] = None,
|
|
7441
7535
|
transport_options: Optional[transport.TransportOptions] = None,
|
|
7442
7536
|
) -> Sequence[mdls.LookmlModel]:
|
|
7443
7537
|
"""Get All LookML Models"""
|
|
@@ -7446,7 +7540,14 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
7446
7540
|
self.get(
|
|
7447
7541
|
path="/lookml_models",
|
|
7448
7542
|
structure=Sequence[mdls.LookmlModel],
|
|
7449
|
-
query_params={
|
|
7543
|
+
query_params={
|
|
7544
|
+
"fields": fields,
|
|
7545
|
+
"limit": limit,
|
|
7546
|
+
"offset": offset,
|
|
7547
|
+
"exclude_empty": exclude_empty,
|
|
7548
|
+
"exclude_hidden": exclude_hidden,
|
|
7549
|
+
"include_internal": include_internal,
|
|
7550
|
+
},
|
|
7450
7551
|
transport_options=transport_options,
|
|
7451
7552
|
),
|
|
7452
7553
|
)
|
|
@@ -8896,7 +8997,7 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
8896
8997
|
#
|
|
8897
8998
|
# Returns the results of an async query task if the query has completed.
|
|
8898
8999
|
#
|
|
8899
|
-
# If the query task is still running or waiting to run, this function returns
|
|
9000
|
+
# If the query task is still running or waiting to run, this function returns 202 Accepted.
|
|
8900
9001
|
#
|
|
8901
9002
|
# If the query task ID is invalid or the cached results of the query task have expired, this function returns 404 Not Found.
|
|
8902
9003
|
#
|
|
@@ -8916,20 +9017,20 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
8916
9017
|
# will be in the message of the 400 error response, but not as detailed as expressed in `json_detail.errors`.
|
|
8917
9018
|
# These data formats can only carry row data, and error info is not row data.
|
|
8918
9019
|
#
|
|
8919
|
-
# GET /query_tasks/{query_task_id}/results ->
|
|
9020
|
+
# GET /query_tasks/{query_task_id}/results -> str
|
|
8920
9021
|
def query_task_results(
|
|
8921
9022
|
self,
|
|
8922
9023
|
# ID of the Query Task
|
|
8923
9024
|
query_task_id: str,
|
|
8924
9025
|
transport_options: Optional[transport.TransportOptions] = None,
|
|
8925
|
-
) ->
|
|
9026
|
+
) -> str:
|
|
8926
9027
|
"""Get Async Query Results"""
|
|
8927
9028
|
query_task_id = self.encode_path_param(query_task_id)
|
|
8928
9029
|
response = cast(
|
|
8929
|
-
|
|
9030
|
+
str,
|
|
8930
9031
|
self.get(
|
|
8931
9032
|
path=f"/query_tasks/{query_task_id}/results",
|
|
8932
|
-
structure=
|
|
9033
|
+
structure=str,
|
|
8933
9034
|
transport_options=transport_options,
|
|
8934
9035
|
),
|
|
8935
9036
|
)
|
|
@@ -10187,6 +10288,8 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
10187
10288
|
built_in: Optional[bool] = None,
|
|
10188
10289
|
# Combine given search criteria in a boolean OR expression.
|
|
10189
10290
|
filter_or: Optional[bool] = None,
|
|
10291
|
+
# Search for Looker support roles.
|
|
10292
|
+
is_support_role: Optional[bool] = None,
|
|
10190
10293
|
transport_options: Optional[transport.TransportOptions] = None,
|
|
10191
10294
|
) -> Sequence[mdls.Role]:
|
|
10192
10295
|
"""Search Roles"""
|
|
@@ -10204,6 +10307,7 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
10204
10307
|
"name": name,
|
|
10205
10308
|
"built_in": built_in,
|
|
10206
10309
|
"filter_or": filter_or,
|
|
10310
|
+
"is_support_role": is_support_role,
|
|
10207
10311
|
},
|
|
10208
10312
|
transport_options=transport_options,
|
|
10209
10313
|
),
|
|
@@ -10761,6 +10865,84 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
10761
10865
|
)
|
|
10762
10866
|
return response
|
|
10763
10867
|
|
|
10868
|
+
# ### Search Scheduled Plans
|
|
10869
|
+
#
|
|
10870
|
+
# Returns all scheduled plans which matches the given search criteria.
|
|
10871
|
+
#
|
|
10872
|
+
# If no user_id is provided, this function returns the scheduled plans owned by the caller.
|
|
10873
|
+
#
|
|
10874
|
+
#
|
|
10875
|
+
# To list all schedules for all users, pass `all_users=true`.
|
|
10876
|
+
#
|
|
10877
|
+
#
|
|
10878
|
+
# The caller must have `see_schedules` permission to see other users' scheduled plans.
|
|
10879
|
+
#
|
|
10880
|
+
# GET /scheduled_plans/search -> Sequence[mdls.ScheduledPlan]
|
|
10881
|
+
def search_scheduled_plans(
|
|
10882
|
+
self,
|
|
10883
|
+
# Return scheduled plans belonging to this user_id. If not provided, returns scheduled plans owned by the caller.
|
|
10884
|
+
user_id: Optional[str] = None,
|
|
10885
|
+
# Comma delimited list of field names. If provided, only the fields specified will be included in the response
|
|
10886
|
+
fields: Optional[str] = None,
|
|
10887
|
+
# Return scheduled plans belonging to all users (caller needs see_schedules permission)
|
|
10888
|
+
all_users: Optional[bool] = None,
|
|
10889
|
+
# Number of results to return. (used with offset and takes priority over page and per_page)
|
|
10890
|
+
limit: Optional[int] = None,
|
|
10891
|
+
# Number of results to skip before returning any. (used with limit and takes priority over page and per_page)
|
|
10892
|
+
offset: Optional[int] = None,
|
|
10893
|
+
# Fields to sort by.
|
|
10894
|
+
sorts: Optional[str] = None,
|
|
10895
|
+
# Match Scheduled plan's name.
|
|
10896
|
+
name: Optional[str] = None,
|
|
10897
|
+
# Returns scheduled plans belonging to user with this first name.
|
|
10898
|
+
user_first_name: Optional[str] = None,
|
|
10899
|
+
# Returns scheduled plans belonging to user with this last name.
|
|
10900
|
+
user_last_name: Optional[str] = None,
|
|
10901
|
+
# Returns scheduled plans created on this Dashboard.
|
|
10902
|
+
dashboard_id: Optional[str] = None,
|
|
10903
|
+
# Returns scheduled plans created on this Look.
|
|
10904
|
+
look_id: Optional[str] = None,
|
|
10905
|
+
# Returns scheduled plans created on this LookML Dashboard.
|
|
10906
|
+
lookml_dashboard_id: Optional[str] = None,
|
|
10907
|
+
# Match recipient address.
|
|
10908
|
+
recipient: Optional[str] = None,
|
|
10909
|
+
# Match scheduled plan's destination type.
|
|
10910
|
+
destination_type: Optional[str] = None,
|
|
10911
|
+
# Match scheduled plan's delivery format.
|
|
10912
|
+
delivery_format: Optional[str] = None,
|
|
10913
|
+
# Combine given search criteria in a boolean OR expression
|
|
10914
|
+
filter_or: Optional[bool] = None,
|
|
10915
|
+
transport_options: Optional[transport.TransportOptions] = None,
|
|
10916
|
+
) -> Sequence[mdls.ScheduledPlan]:
|
|
10917
|
+
"""Search Scheduled Plans"""
|
|
10918
|
+
response = cast(
|
|
10919
|
+
Sequence[mdls.ScheduledPlan],
|
|
10920
|
+
self.get(
|
|
10921
|
+
path="/scheduled_plans/search",
|
|
10922
|
+
structure=Sequence[mdls.ScheduledPlan],
|
|
10923
|
+
query_params={
|
|
10924
|
+
"user_id": user_id,
|
|
10925
|
+
"fields": fields,
|
|
10926
|
+
"all_users": all_users,
|
|
10927
|
+
"limit": limit,
|
|
10928
|
+
"offset": offset,
|
|
10929
|
+
"sorts": sorts,
|
|
10930
|
+
"name": name,
|
|
10931
|
+
"user_first_name": user_first_name,
|
|
10932
|
+
"user_last_name": user_last_name,
|
|
10933
|
+
"dashboard_id": dashboard_id,
|
|
10934
|
+
"look_id": look_id,
|
|
10935
|
+
"lookml_dashboard_id": lookml_dashboard_id,
|
|
10936
|
+
"recipient": recipient,
|
|
10937
|
+
"destination_type": destination_type,
|
|
10938
|
+
"delivery_format": delivery_format,
|
|
10939
|
+
"filter_or": filter_or,
|
|
10940
|
+
},
|
|
10941
|
+
transport_options=transport_options,
|
|
10942
|
+
),
|
|
10943
|
+
)
|
|
10944
|
+
return response
|
|
10945
|
+
|
|
10764
10946
|
# ### Get Scheduled Plans for a Look
|
|
10765
10947
|
#
|
|
10766
10948
|
# Returns all scheduled plans for a look which belong to the caller or given user.
|
|
@@ -11054,17 +11236,9 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
11054
11236
|
#
|
|
11055
11237
|
# | result_format | Description
|
|
11056
11238
|
# | :-----------: | :--- |
|
|
11057
|
-
# |
|
|
11058
|
-
# | json_bi | (*RECOMMENDED*) Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query
|
|
11059
|
-
# | json_detail | (*LEGACY*) Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query
|
|
11060
|
-
# | csv | Comma separated values with a header
|
|
11061
|
-
# | txt | Tab separated values with a header
|
|
11062
|
-
# | html | Simple html
|
|
11063
|
-
# | md | Simple markdown
|
|
11064
|
-
# | xlsx | MS Excel spreadsheet
|
|
11065
|
-
# | sql | Returns the generated SQL rather than running the query
|
|
11239
|
+
# | json_bi | Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query
|
|
11066
11240
|
#
|
|
11067
|
-
# GET /sql_interface_queries/{query_id}/run/{result_format} -> mdls.
|
|
11241
|
+
# GET /sql_interface_queries/{query_id}/run/{result_format} -> mdls.JsonBi
|
|
11068
11242
|
def run_sql_interface_query(
|
|
11069
11243
|
self,
|
|
11070
11244
|
# Integer id of query
|
|
@@ -11072,14 +11246,14 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
11072
11246
|
# Format of result, options are: ["json_bi"]
|
|
11073
11247
|
result_format: str,
|
|
11074
11248
|
transport_options: Optional[transport.TransportOptions] = None,
|
|
11075
|
-
) -> mdls.
|
|
11249
|
+
) -> mdls.JsonBi:
|
|
11076
11250
|
"""Run SQL Interface Query"""
|
|
11077
11251
|
result_format = self.encode_path_param(result_format)
|
|
11078
11252
|
response = cast(
|
|
11079
|
-
mdls.
|
|
11253
|
+
mdls.JsonBi,
|
|
11080
11254
|
self.get(
|
|
11081
11255
|
path=f"/sql_interface_queries/{query_id}/run/{result_format}",
|
|
11082
|
-
structure=mdls.
|
|
11256
|
+
structure=mdls.JsonBi,
|
|
11083
11257
|
transport_options=transport_options,
|
|
11084
11258
|
),
|
|
11085
11259
|
)
|
|
@@ -12429,7 +12603,7 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
12429
12603
|
|
|
12430
12604
|
# ### Embed login information for the specified user.
|
|
12431
12605
|
#
|
|
12432
|
-
# Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled
|
|
12606
|
+
# **NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.
|
|
12433
12607
|
#
|
|
12434
12608
|
# GET /users/{user_id}/credentials_embed/{credentials_embed_id} -> mdls.CredentialsEmbed
|
|
12435
12609
|
def user_credentials_embed(
|
|
@@ -12458,7 +12632,7 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
12458
12632
|
|
|
12459
12633
|
# ### Embed login information for the specified user.
|
|
12460
12634
|
#
|
|
12461
|
-
# Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled
|
|
12635
|
+
# **NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.
|
|
12462
12636
|
#
|
|
12463
12637
|
# DELETE /users/{user_id}/credentials_embed/{credentials_embed_id} -> str
|
|
12464
12638
|
def delete_user_credentials_embed(
|
|
@@ -12484,7 +12658,7 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
12484
12658
|
|
|
12485
12659
|
# ### Embed login information for the specified user.
|
|
12486
12660
|
#
|
|
12487
|
-
# Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled
|
|
12661
|
+
# **NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.
|
|
12488
12662
|
#
|
|
12489
12663
|
# GET /users/{user_id}/credentials_embed -> Sequence[mdls.CredentialsEmbed]
|
|
12490
12664
|
def all_user_credentials_embeds(
|
|
@@ -12874,6 +13048,7 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
12874
13048
|
# associated credentials. Will overwrite all associated email addresses with
|
|
12875
13049
|
# the value supplied in the 'email' body param.
|
|
12876
13050
|
# The user's 'is_disabled' status must be true.
|
|
13051
|
+
# 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
13052
|
#
|
|
12878
13053
|
# Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).
|
|
12879
13054
|
#
|
|
@@ -12903,7 +13078,7 @@ class Looker40SDK(api_methods.APIMethods):
|
|
|
12903
13078
|
|
|
12904
13079
|
# Create an embed user from an external user ID
|
|
12905
13080
|
#
|
|
12906
|
-
# Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled
|
|
13081
|
+
# **NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.
|
|
12907
13082
|
#
|
|
12908
13083
|
# POST /users/embed_user -> mdls.UserPublic
|
|
12909
13084
|
def create_embed_user(
|