From 1addfb52fd3e73696e6d6f210ee617157b8bdcc8 Mon Sep 17 00:00:00 2001 From: Jan Kadlec Date: Mon, 7 Oct 2024 11:32:06 +0200 Subject: [PATCH 1/4] chore: bump node version for docs Dockerfile JIRA: TRIVIAL risk: low --- docs/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/Dockerfile b/docs/Dockerfile index 9f15be857..169dfda64 100644 --- a/docs/Dockerfile +++ b/docs/Dockerfile @@ -1,4 +1,4 @@ -FROM node:20.11.1-bookworm-slim +FROM node:20.18.0-bookworm-slim RUN apt-get update && \ apt-get install -y git make golang-go curl && \ From b23265b57b77e28af64d45aae8290763a32dce29 Mon Sep 17 00:00:00 2001 From: Jan Kadlec Date: Mon, 7 Oct 2024 11:29:56 +0200 Subject: [PATCH 2/4] chore: regenerate client JIRA: TRIVIAL risk: low --- gooddata-api-client/.openapi-generator/FILES | 176 +- gooddata-api-client/README.md | 171 +- gooddata-api-client/docs/AIApi.md | 68 +- gooddata-api-client/docs/ActionsApi.md | 495 +- ...bhook.md => ActiveObjectIdentification.md} | 9 +- gooddata-api-client/docs/AlertAfm.md | 13 + gooddata-api-client/docs/AlertCondition.md | 15 + .../docs/AlertConditionOperand.md | 16 + gooddata-api-client/docs/ArithmeticMeasure.md | 14 + .../docs/AutomationSchedule.md | 2 +- gooddata-api-client/docs/AutomationsApi.md | 275 +- .../docs/ChatHistoryInteraction.md | 20 + .../docs/ChatHistoryRequest.md | 15 + ...icationTrigger.md => ChatHistoryResult.md} | 5 +- gooddata-api-client/docs/ChatRequest.md | 20 + gooddata-api-client/docs/ChatResult.md | 16 + ...tributesTriggersInner.md => Comparison.md} | 7 +- ...rAssigneeAllOf.md => ComparisonWrapper.md} | 4 +- .../docs/CreatedVisualization.md | 17 + .../docs/CreatedVisualizations.md | 14 + .../docs/DashboardPermissionsAssignment.md | 2 + gooddata-api-client/docs/DataFiltersApi.md | 6 +- .../docs/DeclarativeAutomation.md | 3 +- .../docs/DeclarativeNotificationChannel.md | 6 +- ...clarativeNotificationChannelDestination.md | 21 + .../docs/DeclarativeNotificationChannels.md | 13 + gooddata-api-client/docs/DefaultSmtp.md | 15 + gooddata-api-client/docs/DefaultSmtpAllOf.md | 14 + gooddata-api-client/docs/DimAttribute.md | 14 + gooddata-api-client/docs/ElementsRequest.md | 4 +- gooddata-api-client/docs/EntitiesApi.md | 1912 +- .../docs/ExportDefinitionsApi.md | 16 +- gooddata-api-client/docs/FilterViewsApi.md | 589 + gooddata-api-client/docs/FoundObjects.md | 14 + .../docs/IdentityProvidersApi.md | 495 + .../docs/JsonApiAutomationInAttributes.md | 2 + .../JsonApiAutomationInAttributesAlert.md | 14 + .../JsonApiAutomationInAttributesSchedule.md | 2 +- .../docs/JsonApiAutomationInRelationships.md | 1 + ...tionInRelationshipsAnalyticalDashboard.md} | 2 +- .../docs/JsonApiAutomationLinkage.md | 14 + .../docs/JsonApiAutomationOutAttributes.md | 2 + .../docs/JsonApiAutomationOutIncludes.md | 2 +- .../docs/JsonApiAutomationOutRelationships.md | 1 + .../docs/JsonApiAutomationToOneLinkage.md | 14 + .../JsonApiExportDefinitionInRelationships.md | 2 +- .../JsonApiExportDefinitionOutIncludes.md | 4 +- ...JsonApiExportDefinitionOutRelationships.md | 3 +- ...ortDefinitionOutRelationshipsAutomation.md | 12 + .../docs/JsonApiFilterViewIn.md | 16 + .../docs/JsonApiFilterViewInAttributes.md | 17 + .../docs/JsonApiFilterViewInDocument.md | 12 + .../docs/JsonApiFilterViewInRelationships.md | 13 + ...> JsonApiFilterViewInRelationshipsUser.md} | 2 +- .../docs/JsonApiFilterViewOut.md | 16 + .../docs/JsonApiFilterViewOutDocument.md | 14 + .../docs/JsonApiFilterViewOutIncludes.md | 17 + .../docs/JsonApiFilterViewOutList.md | 16 + .../docs/JsonApiFilterViewOutWithLinks.md | 16 + .../docs/JsonApiFilterViewPatch.md | 16 + .../docs/JsonApiFilterViewPatchAttributes.md | 17 + .../docs/JsonApiFilterViewPatchDocument.md | 12 + .../docs/JsonApiIdentityProviderIn.md | 15 + .../JsonApiIdentityProviderInAttributes.md | 14 + ...entityProviderInAttributesSpecification.md | 18 + .../docs/JsonApiIdentityProviderInDocument.md | 12 + .../docs/JsonApiIdentityProviderOut.md | 15 + .../JsonApiIdentityProviderOutDocument.md | 13 + .../docs/JsonApiIdentityProviderOutList.md | 15 + .../JsonApiIdentityProviderOutWithLinks.md | 15 + .../docs/JsonApiIdentityProviderPatch.md | 15 + .../JsonApiIdentityProviderPatchAttributes.md | 14 + .../JsonApiIdentityProviderPatchDocument.md | 12 + .../docs/JsonApiLlmEndpointIn.md | 15 + .../docs/JsonApiLlmEndpointInAttributes.md | 18 + .../docs/JsonApiLlmEndpointInDocument.md | 12 + .../docs/JsonApiLlmEndpointOut.md | 15 + .../docs/JsonApiLlmEndpointOutAttributes.md | 17 + .../docs/JsonApiLlmEndpointOutDocument.md | 13 + .../docs/JsonApiLlmEndpointOutList.md | 15 + .../docs/JsonApiLlmEndpointOutWithLinks.md | 15 + .../docs/JsonApiLlmEndpointPatch.md | 15 + .../docs/JsonApiLlmEndpointPatchAttributes.md | 18 + .../docs/JsonApiLlmEndpointPatchDocument.md | 12 + .../JsonApiNotificationChannelInAttributes.md | 6 +- ...ificationChannelInAttributesDestination.md | 22 + .../JsonApiOrganizationOutRelationships.md | 2 +- .../JsonApiUserDataFilterInRelationships.md | 2 +- .../JsonApiUserDataFilterOutRelationships.md | 2 +- gooddata-api-client/docs/LLMEndpointsApi.md | 505 + gooddata-api-client/docs/LayoutApi.md | 363 +- gooddata-api-client/docs/LocalIdentifier.md | 14 + .../ManageDashboardPermissionsRequestInner.md | 1 - gooddata-api-client/docs/MetadataSyncApi.md | 136 + gooddata-api-client/docs/Metric.md | 15 + .../docs/NotificationChannelDestination.md | 21 + .../docs/NotificationChannelsApi.md | 51 +- .../docs/OidcIdpSpecification.md | 17 + .../docs/OrganizationDeclarativeAPIsApi.md | 20 +- .../docs/OrganizationModelControllerApi.md | 1191 +- .../docs/PermissionsForAssignee.md | 1 - .../docs/PermissionsForAssigneeRule.md | 1 - gooddata-api-client/docs/Range.md | 15 + gooddata-api-client/docs/RangeWrapper.md | 12 + gooddata-api-client/docs/Relative.md | 14 + gooddata-api-client/docs/RelativeWrapper.md | 12 + gooddata-api-client/docs/RouteRequest.md | 12 + gooddata-api-client/docs/RouteResult.md | 13 + .../docs/SamlIdpSpecification.md | 13 + gooddata-api-client/docs/SearchRequest.md | 1 + .../docs/SearchResultObject.md | 19 +- gooddata-api-client/docs/SmartFunctionsApi.md | 237 + gooddata-api-client/docs/Smtp.md | 19 + gooddata-api-client/docs/SmtpAllOf.md | 18 + gooddata-api-client/docs/UnsubscribeApi.md | 198 + gooddata-api-client/docs/UserContext.md | 13 + gooddata-api-client/docs/Value.md | 12 + gooddata-api-client/docs/Webhook.md | 6 +- gooddata-api-client/docs/WebhookAllOf.md | 15 + .../docs/WorkspaceObjectControllerApi.md | 683 +- .../docs/WorkspacesDeclarativeAPIsApi.md | 6 +- .../gooddata_api_client/api/actions_api.py | 1097 +- .../gooddata_api_client/api/ai_api.py | 120 +- .../api/automations_api.py | 296 + .../gooddata_api_client/api/entities_api.py | 3309 ++- .../api/export_definitions_api.py | 10 + .../api/filter_views_api.py | 1071 + .../api/identity_providers_api.py | 932 + .../gooddata_api_client/api/layout_api.py | 538 + .../api/llm_endpoints_api.py | 932 + .../api/metadata_sync_api.py | 286 + .../api/notification_channels_api.py | 2 +- .../api/organization_model_controller_api.py | 3340 ++- .../api/smart_functions_api.py | 456 + .../api/unsubscribe_api.py | 423 + .../api/workspace_object_controller_api.py | 1091 +- .../gooddata_api_client/apis/__init__.py | 5 + .../model/active_object_identification.py | 282 + .../gooddata_api_client/model/alert_afm.py | 286 + .../model/alert_condition.py | 340 + .../model/alert_condition_operand.py | 341 + .../model/api_entitlement.py | 2 + .../model/arithmetic_measure.py | 292 + .../model/automation_schedule.py | 1 + .../model/chat_history_interaction.py | 319 + .../model/chat_history_request.py | 281 + .../model/chat_history_result.py | 276 + .../gooddata_api_client/model/chat_request.py | 311 + .../gooddata_api_client/model/chat_result.py | 296 + .../gooddata_api_client/model/comparison.py | 298 + .../model/comparison_wrapper.py | 276 + .../model/created_visualization.py | 310 + .../model/created_visualizations.py | 282 + .../model/dashboard_permissions_assignment.py | 103 +- .../model/declarative_automation.py | 12 +- .../model/declarative_notification_channel.py | 39 +- ...rative_notification_channel_destination.py | 386 + .../declarative_notification_channels.py | 276 + .../model/declarative_setting.py | 1 + ...declarative_single_workspace_permission.py | 2 + ...larative_workspace_hierarchy_permission.py | 2 + .../gooddata_api_client/model/default_smtp.py | 338 + .../model/default_smtp_all_of.py | 280 + ...tes_triggers_inner.py => dim_attribute.py} | 35 +- .../model/elements_request.py | 8 +- .../model/entitlements_request.py | 2 + .../model/found_objects.py | 282 + .../json_api_automation_in_attributes.py | 14 + ...json_api_automation_in_attributes_alert.py | 292 + ...n_api_automation_in_attributes_schedule.py | 1 + .../json_api_automation_in_relationships.py | 6 + ..._in_relationships_analytical_dashboard.py} | 6 +- ...gger.py => json_api_automation_linkage.py} | 35 +- .../json_api_automation_out_attributes.py | 14 + .../model/json_api_automation_out_includes.py | 11 +- .../json_api_automation_out_relationships.py | 6 + .../json_api_automation_to_one_linkage.py | 327 + ..._api_export_definition_in_relationships.py | 10 +- ...json_api_export_definition_out_includes.py | 23 +- ...api_export_definition_out_relationships.py | 16 +- ...definition_out_relationships_automation.py | 276 + .../model/json_api_filter_view_in.py | 304 + .../json_api_filter_view_in_attributes.py | 298 + ...py => json_api_filter_view_in_document.py} | 28 +- .../json_api_filter_view_in_relationships.py | 276 + ..._api_filter_view_in_relationships_user.py} | 6 +- .../model/json_api_filter_view_out.py | 304 + .../json_api_filter_view_out_document.py | 290 + .../json_api_filter_view_out_includes.py | 359 + .../model/json_api_filter_view_out_list.py | 298 + .../json_api_filter_view_out_with_links.py | 355 + .../model/json_api_filter_view_patch.py | 304 + .../json_api_filter_view_patch_attributes.py | 290 + .../json_api_filter_view_patch_document.py | 276 + .../model/json_api_identity_provider_in.py | 298 + ...son_api_identity_provider_in_attributes.py | 290 + ...ty_provider_in_attributes_specification.py | 361 + .../json_api_identity_provider_in_document.py | 276 + .../model/json_api_identity_provider_out.py | 298 + ...json_api_identity_provider_out_document.py | 282 + .../json_api_identity_provider_out_list.py | 290 + ...on_api_identity_provider_out_with_links.py | 349 + .../model/json_api_identity_provider_patch.py | 298 + ..._api_identity_provider_patch_attributes.py | 282 + ...on_api_identity_provider_patch_document.py | 276 + .../model/json_api_llm_endpoint_in.py | 298 + .../json_api_llm_endpoint_in_attributes.py | 321 + .../json_api_llm_endpoint_in_document.py | 276 + .../model/json_api_llm_endpoint_out.py | 298 + .../json_api_llm_endpoint_out_attributes.py | 312 + .../json_api_llm_endpoint_out_document.py | 282 + .../model/json_api_llm_endpoint_out_list.py | 290 + .../json_api_llm_endpoint_out_with_links.py | 349 + .../model/json_api_llm_endpoint_patch.py | 298 + .../json_api_llm_endpoint_patch_attributes.py | 309 + .../json_api_llm_endpoint_patch_document.py | 276 + ..._api_notification_channel_in_attributes.py | 40 +- ...ation_channel_in_attributes_destination.py | 386 + ...json_api_organization_out_relationships.py | 10 +- ..._api_organization_setting_in_attributes.py | 1 + ...n_api_user_data_filter_in_relationships.py | 10 +- ..._api_user_data_filter_out_relationships.py | 10 +- .../model/json_api_workspace_out_meta.py | 2 + .../model/local_identifier.py | 284 + ...age_dashboard_permissions_request_inner.py | 9 - .../gooddata_api_client/model/metric.py | 293 + .../model/notification_channel_destination.py | 383 + .../model/oidc_idp_specification.py | 309 + .../model/permissions_for_assignee.py | 94 +- .../model/permissions_for_assignee_rule.py | 94 +- .../gooddata_api_client/model/range.py | 300 + .../model/range_wrapper.py | 276 + .../gooddata_api_client/model/relative.py | 295 + .../model/relative_wrapper.py | 276 + .../model/resolved_setting.py | 1 + .../model/route_request.py | 273 + .../gooddata_api_client/model/route_result.py | 285 + .../model/saml_idp_specification.py | 273 + .../model/search_request.py | 7 + .../model/search_result_object.py | 80 +- .../gooddata_api_client/model/smtp.py | 360 + .../gooddata_api_client/model/smtp_all_of.py | 302 + .../gooddata_api_client/model/user_context.py | 276 + ...agement_workspace_permission_assignment.py | 4 + .../gooddata_api_client/model/value.py | 270 + .../gooddata_api_client/model/webhook.py | 112 +- ...ttributes_webhook.py => webhook_all_of.py} | 44 +- .../model/workspace_permission_assignment.py | 4 + .../gooddata_api_client/models/__init__.py | 83 +- schemas/gooddata-afm-client.json | 555 +- schemas/gooddata-api-client.json | 4545 +++- schemas/gooddata-metadata-client.json | 18576 +++++++++------- 252 files changed, 58776 insertions(+), 10013 deletions(-) rename gooddata-api-client/docs/{JsonApiNotificationChannelInAttributesWebhook.md => ActiveObjectIdentification.md} (67%) create mode 100644 gooddata-api-client/docs/AlertAfm.md create mode 100644 gooddata-api-client/docs/AlertCondition.md create mode 100644 gooddata-api-client/docs/AlertConditionOperand.md create mode 100644 gooddata-api-client/docs/ArithmeticMeasure.md create mode 100644 gooddata-api-client/docs/ChatHistoryInteraction.md create mode 100644 gooddata-api-client/docs/ChatHistoryRequest.md rename gooddata-api-client/docs/{NotificationTrigger.md => ChatHistoryResult.md} (76%) create mode 100644 gooddata-api-client/docs/ChatRequest.md create mode 100644 gooddata-api-client/docs/ChatResult.md rename gooddata-api-client/docs/{JsonApiNotificationChannelInAttributesTriggersInner.md => Comparison.md} (72%) rename gooddata-api-client/docs/{PermissionsForAssigneeAllOf.md => ComparisonWrapper.md} (78%) create mode 100644 gooddata-api-client/docs/CreatedVisualization.md create mode 100644 gooddata-api-client/docs/CreatedVisualizations.md create mode 100644 gooddata-api-client/docs/DeclarativeNotificationChannelDestination.md create mode 100644 gooddata-api-client/docs/DeclarativeNotificationChannels.md create mode 100644 gooddata-api-client/docs/DefaultSmtp.md create mode 100644 gooddata-api-client/docs/DefaultSmtpAllOf.md create mode 100644 gooddata-api-client/docs/DimAttribute.md create mode 100644 gooddata-api-client/docs/FilterViewsApi.md create mode 100644 gooddata-api-client/docs/FoundObjects.md create mode 100644 gooddata-api-client/docs/IdentityProvidersApi.md create mode 100644 gooddata-api-client/docs/JsonApiAutomationInAttributesAlert.md rename gooddata-api-client/docs/{JsonApiExportDefinitionInRelationshipsAnalyticalDashboard.md => JsonApiAutomationInRelationshipsAnalyticalDashboard.md} (90%) create mode 100644 gooddata-api-client/docs/JsonApiAutomationLinkage.md create mode 100644 gooddata-api-client/docs/JsonApiAutomationToOneLinkage.md create mode 100644 gooddata-api-client/docs/JsonApiExportDefinitionOutRelationshipsAutomation.md create mode 100644 gooddata-api-client/docs/JsonApiFilterViewIn.md create mode 100644 gooddata-api-client/docs/JsonApiFilterViewInAttributes.md create mode 100644 gooddata-api-client/docs/JsonApiFilterViewInDocument.md create mode 100644 gooddata-api-client/docs/JsonApiFilterViewInRelationships.md rename gooddata-api-client/docs/{JsonApiOrganizationOutRelationshipsBootstrapUser.md => JsonApiFilterViewInRelationshipsUser.md} (91%) create mode 100644 gooddata-api-client/docs/JsonApiFilterViewOut.md create mode 100644 gooddata-api-client/docs/JsonApiFilterViewOutDocument.md create mode 100644 gooddata-api-client/docs/JsonApiFilterViewOutIncludes.md create mode 100644 gooddata-api-client/docs/JsonApiFilterViewOutList.md create mode 100644 gooddata-api-client/docs/JsonApiFilterViewOutWithLinks.md create mode 100644 gooddata-api-client/docs/JsonApiFilterViewPatch.md create mode 100644 gooddata-api-client/docs/JsonApiFilterViewPatchAttributes.md create mode 100644 gooddata-api-client/docs/JsonApiFilterViewPatchDocument.md create mode 100644 gooddata-api-client/docs/JsonApiIdentityProviderIn.md create mode 100644 gooddata-api-client/docs/JsonApiIdentityProviderInAttributes.md create mode 100644 gooddata-api-client/docs/JsonApiIdentityProviderInAttributesSpecification.md create mode 100644 gooddata-api-client/docs/JsonApiIdentityProviderInDocument.md create mode 100644 gooddata-api-client/docs/JsonApiIdentityProviderOut.md create mode 100644 gooddata-api-client/docs/JsonApiIdentityProviderOutDocument.md create mode 100644 gooddata-api-client/docs/JsonApiIdentityProviderOutList.md create mode 100644 gooddata-api-client/docs/JsonApiIdentityProviderOutWithLinks.md create mode 100644 gooddata-api-client/docs/JsonApiIdentityProviderPatch.md create mode 100644 gooddata-api-client/docs/JsonApiIdentityProviderPatchAttributes.md create mode 100644 gooddata-api-client/docs/JsonApiIdentityProviderPatchDocument.md create mode 100644 gooddata-api-client/docs/JsonApiLlmEndpointIn.md create mode 100644 gooddata-api-client/docs/JsonApiLlmEndpointInAttributes.md create mode 100644 gooddata-api-client/docs/JsonApiLlmEndpointInDocument.md create mode 100644 gooddata-api-client/docs/JsonApiLlmEndpointOut.md create mode 100644 gooddata-api-client/docs/JsonApiLlmEndpointOutAttributes.md create mode 100644 gooddata-api-client/docs/JsonApiLlmEndpointOutDocument.md create mode 100644 gooddata-api-client/docs/JsonApiLlmEndpointOutList.md create mode 100644 gooddata-api-client/docs/JsonApiLlmEndpointOutWithLinks.md create mode 100644 gooddata-api-client/docs/JsonApiLlmEndpointPatch.md create mode 100644 gooddata-api-client/docs/JsonApiLlmEndpointPatchAttributes.md create mode 100644 gooddata-api-client/docs/JsonApiLlmEndpointPatchDocument.md create mode 100644 gooddata-api-client/docs/JsonApiNotificationChannelInAttributesDestination.md create mode 100644 gooddata-api-client/docs/LLMEndpointsApi.md create mode 100644 gooddata-api-client/docs/LocalIdentifier.md create mode 100644 gooddata-api-client/docs/MetadataSyncApi.md create mode 100644 gooddata-api-client/docs/Metric.md create mode 100644 gooddata-api-client/docs/NotificationChannelDestination.md create mode 100644 gooddata-api-client/docs/OidcIdpSpecification.md create mode 100644 gooddata-api-client/docs/Range.md create mode 100644 gooddata-api-client/docs/RangeWrapper.md create mode 100644 gooddata-api-client/docs/Relative.md create mode 100644 gooddata-api-client/docs/RelativeWrapper.md create mode 100644 gooddata-api-client/docs/RouteRequest.md create mode 100644 gooddata-api-client/docs/RouteResult.md create mode 100644 gooddata-api-client/docs/SamlIdpSpecification.md create mode 100644 gooddata-api-client/docs/Smtp.md create mode 100644 gooddata-api-client/docs/SmtpAllOf.md create mode 100644 gooddata-api-client/docs/UnsubscribeApi.md create mode 100644 gooddata-api-client/docs/UserContext.md create mode 100644 gooddata-api-client/docs/Value.md create mode 100644 gooddata-api-client/docs/WebhookAllOf.md create mode 100644 gooddata-api-client/gooddata_api_client/api/filter_views_api.py create mode 100644 gooddata-api-client/gooddata_api_client/api/identity_providers_api.py create mode 100644 gooddata-api-client/gooddata_api_client/api/llm_endpoints_api.py create mode 100644 gooddata-api-client/gooddata_api_client/api/metadata_sync_api.py create mode 100644 gooddata-api-client/gooddata_api_client/api/unsubscribe_api.py create mode 100644 gooddata-api-client/gooddata_api_client/model/active_object_identification.py create mode 100644 gooddata-api-client/gooddata_api_client/model/alert_afm.py create mode 100644 gooddata-api-client/gooddata_api_client/model/alert_condition.py create mode 100644 gooddata-api-client/gooddata_api_client/model/alert_condition_operand.py create mode 100644 gooddata-api-client/gooddata_api_client/model/arithmetic_measure.py create mode 100644 gooddata-api-client/gooddata_api_client/model/chat_history_interaction.py create mode 100644 gooddata-api-client/gooddata_api_client/model/chat_history_request.py create mode 100644 gooddata-api-client/gooddata_api_client/model/chat_history_result.py create mode 100644 gooddata-api-client/gooddata_api_client/model/chat_request.py create mode 100644 gooddata-api-client/gooddata_api_client/model/chat_result.py create mode 100644 gooddata-api-client/gooddata_api_client/model/comparison.py create mode 100644 gooddata-api-client/gooddata_api_client/model/comparison_wrapper.py create mode 100644 gooddata-api-client/gooddata_api_client/model/created_visualization.py create mode 100644 gooddata-api-client/gooddata_api_client/model/created_visualizations.py create mode 100644 gooddata-api-client/gooddata_api_client/model/declarative_notification_channel_destination.py create mode 100644 gooddata-api-client/gooddata_api_client/model/declarative_notification_channels.py create mode 100644 gooddata-api-client/gooddata_api_client/model/default_smtp.py create mode 100644 gooddata-api-client/gooddata_api_client/model/default_smtp_all_of.py rename gooddata-api-client/gooddata_api_client/model/{json_api_notification_channel_in_attributes_triggers_inner.py => dim_attribute.py} (92%) create mode 100644 gooddata-api-client/gooddata_api_client/model/found_objects.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_automation_in_attributes_alert.py rename gooddata-api-client/gooddata_api_client/model/{json_api_export_definition_in_relationships_analytical_dashboard.py => json_api_automation_in_relationships_analytical_dashboard.py} (97%) rename gooddata-api-client/gooddata_api_client/model/{notification_trigger.py => json_api_automation_linkage.py} (93%) create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_automation_to_one_linkage.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_export_definition_out_relationships_automation.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in_attributes.py rename gooddata-api-client/gooddata_api_client/model/{permissions_for_assignee_all_of.py => json_api_filter_view_in_document.py} (93%) create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in_relationships.py rename gooddata-api-client/gooddata_api_client/model/{json_api_organization_out_relationships_bootstrap_user.py => json_api_filter_view_in_relationships_user.py} (97%) create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_document.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_includes.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_list.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_with_links.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_filter_view_patch.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_filter_view_patch_attributes.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_filter_view_patch_document.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in_attributes.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in_attributes_specification.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in_document.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out_document.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out_list.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out_with_links.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_patch.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_patch_attributes.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_patch_document.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_in.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_in_attributes.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_in_document.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_attributes.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_document.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_list.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_with_links.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_patch.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_patch_attributes.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_patch_document.py create mode 100644 gooddata-api-client/gooddata_api_client/model/json_api_notification_channel_in_attributes_destination.py create mode 100644 gooddata-api-client/gooddata_api_client/model/local_identifier.py create mode 100644 gooddata-api-client/gooddata_api_client/model/metric.py create mode 100644 gooddata-api-client/gooddata_api_client/model/notification_channel_destination.py create mode 100644 gooddata-api-client/gooddata_api_client/model/oidc_idp_specification.py create mode 100644 gooddata-api-client/gooddata_api_client/model/range.py create mode 100644 gooddata-api-client/gooddata_api_client/model/range_wrapper.py create mode 100644 gooddata-api-client/gooddata_api_client/model/relative.py create mode 100644 gooddata-api-client/gooddata_api_client/model/relative_wrapper.py create mode 100644 gooddata-api-client/gooddata_api_client/model/route_request.py create mode 100644 gooddata-api-client/gooddata_api_client/model/route_result.py create mode 100644 gooddata-api-client/gooddata_api_client/model/saml_idp_specification.py create mode 100644 gooddata-api-client/gooddata_api_client/model/smtp.py create mode 100644 gooddata-api-client/gooddata_api_client/model/smtp_all_of.py create mode 100644 gooddata-api-client/gooddata_api_client/model/user_context.py create mode 100644 gooddata-api-client/gooddata_api_client/model/value.py rename gooddata-api-client/gooddata_api_client/model/{json_api_notification_channel_in_attributes_webhook.py => webhook_all_of.py} (91%) diff --git a/gooddata-api-client/.openapi-generator/FILES b/gooddata-api-client/.openapi-generator/FILES index 32e06b6ab..6a1090364 100644 --- a/gooddata-api-client/.openapi-generator/FILES +++ b/gooddata-api-client/.openapi-generator/FILES @@ -7,6 +7,7 @@ docs/AbsoluteDateFilter.md docs/AbsoluteDateFilterAbsoluteDateFilter.md docs/AbstractMeasureValueFilter.md docs/ActionsApi.md +docs/ActiveObjectIdentification.md docs/AfmExecution.md docs/AfmExecutionResponse.md docs/AfmIdentifier.md @@ -25,11 +26,15 @@ docs/AfmValidDescendantsQuery.md docs/AfmValidDescendantsResponse.md docs/AfmValidObjectsQuery.md docs/AfmValidObjectsResponse.md +docs/AlertAfm.md +docs/AlertCondition.md +docs/AlertConditionOperand.md docs/AnalyticsModelApi.md docs/AnomalyDetectionRequest.md docs/AnomalyDetectionResult.md docs/ApiEntitlement.md docs/AppearanceApi.md +docs/ArithmeticMeasure.md docs/ArithmeticMeasureDefinition.md docs/ArithmeticMeasureDefinitionArithmeticMeasure.md docs/AssigneeIdentifier.md @@ -49,6 +54,11 @@ docs/AutomationsApi.md docs/AvailableAssignees.md docs/AvailableDriversApi.md docs/CSPDirectivesApi.md +docs/ChatHistoryInteraction.md +docs/ChatHistoryRequest.md +docs/ChatHistoryResult.md +docs/ChatRequest.md +docs/ChatResult.md docs/ClusteringRequest.md docs/ClusteringResult.md docs/ColumnLocation.md @@ -58,11 +68,15 @@ docs/ColumnStatisticsRequest.md docs/ColumnStatisticsRequestFrom.md docs/ColumnStatisticsResponse.md docs/ColumnWarning.md +docs/Comparison.md docs/ComparisonMeasureValueFilter.md docs/ComparisonMeasureValueFilterComparisonMeasureValueFilter.md +docs/ComparisonWrapper.md docs/ComputationApi.md docs/ContextFiltersApi.md docs/CookieSecurityConfigurationApi.md +docs/CreatedVisualization.md +docs/CreatedVisualizations.md docs/CustomLabel.md docs/CustomMetric.md docs/CustomOverride.md @@ -121,7 +135,9 @@ docs/DeclarativeLdm.md docs/DeclarativeMetric.md docs/DeclarativeModel.md docs/DeclarativeNotificationChannel.md +docs/DeclarativeNotificationChannelDestination.md docs/DeclarativeNotificationChannelIdentifier.md +docs/DeclarativeNotificationChannels.md docs/DeclarativeOrganization.md docs/DeclarativeOrganizationInfo.md docs/DeclarativeOrganizationPermission.md @@ -157,6 +173,8 @@ docs/DeclarativeWorkspaceHierarchyPermission.md docs/DeclarativeWorkspaceModel.md docs/DeclarativeWorkspacePermissions.md docs/DeclarativeWorkspaces.md +docs/DefaultSmtp.md +docs/DefaultSmtpAllOf.md docs/DependencyGraphApi.md docs/DependentEntitiesGraph.md docs/DependentEntitiesNode.md @@ -167,6 +185,7 @@ docs/DependsOnAllOf.md docs/DependsOnDateFilter.md docs/DependsOnDateFilterAllOf.md docs/DependsOnItem.md +docs/DimAttribute.md docs/Dimension.md docs/DimensionHeader.md docs/Element.md @@ -192,8 +211,10 @@ docs/File.md docs/FilterBy.md docs/FilterDefinition.md docs/FilterDefinitionForSimpleMeasure.md +docs/FilterViewsApi.md docs/ForecastRequest.md docs/ForecastResult.md +docs/FoundObjects.md docs/Frequency.md docs/FrequencyBucket.md docs/FrequencyProperties.md @@ -209,6 +230,7 @@ docs/Histogram.md docs/HistogramBucket.md docs/HistogramProperties.md docs/IdentifierDuplications.md +docs/IdentityProvidersApi.md docs/InlineFilterDefinition.md docs/InlineFilterDefinitionInline.md docs/InlineMeasureDefinition.md @@ -283,12 +305,15 @@ docs/JsonApiAttributeToManyLinkage.md docs/JsonApiAttributeToOneLinkage.md docs/JsonApiAutomationIn.md docs/JsonApiAutomationInAttributes.md +docs/JsonApiAutomationInAttributesAlert.md docs/JsonApiAutomationInAttributesSchedule.md docs/JsonApiAutomationInDocument.md docs/JsonApiAutomationInRelationships.md +docs/JsonApiAutomationInRelationshipsAnalyticalDashboard.md docs/JsonApiAutomationInRelationshipsExportDefinitions.md docs/JsonApiAutomationInRelationshipsNotificationChannel.md docs/JsonApiAutomationInRelationshipsRecipients.md +docs/JsonApiAutomationLinkage.md docs/JsonApiAutomationOut.md docs/JsonApiAutomationOutAttributes.md docs/JsonApiAutomationOutDocument.md @@ -298,6 +323,7 @@ docs/JsonApiAutomationOutRelationships.md docs/JsonApiAutomationOutWithLinks.md docs/JsonApiAutomationPatch.md docs/JsonApiAutomationPatchDocument.md +docs/JsonApiAutomationToOneLinkage.md docs/JsonApiColorPaletteIn.md docs/JsonApiColorPaletteInAttributes.md docs/JsonApiColorPaletteInDocument.md @@ -397,7 +423,6 @@ docs/JsonApiExportDefinitionInAttributes.md docs/JsonApiExportDefinitionInAttributesRequestPayload.md docs/JsonApiExportDefinitionInDocument.md docs/JsonApiExportDefinitionInRelationships.md -docs/JsonApiExportDefinitionInRelationshipsAnalyticalDashboard.md docs/JsonApiExportDefinitionInRelationshipsVisualizationObject.md docs/JsonApiExportDefinitionLinkage.md docs/JsonApiExportDefinitionOut.md @@ -406,6 +431,7 @@ docs/JsonApiExportDefinitionOutDocument.md docs/JsonApiExportDefinitionOutIncludes.md docs/JsonApiExportDefinitionOutList.md docs/JsonApiExportDefinitionOutRelationships.md +docs/JsonApiExportDefinitionOutRelationshipsAutomation.md docs/JsonApiExportDefinitionOutWithLinks.md docs/JsonApiExportDefinitionPatch.md docs/JsonApiExportDefinitionPatchDocument.md @@ -434,6 +460,30 @@ docs/JsonApiFilterContextPatchDocument.md docs/JsonApiFilterContextPostOptionalId.md docs/JsonApiFilterContextPostOptionalIdDocument.md docs/JsonApiFilterContextToManyLinkage.md +docs/JsonApiFilterViewIn.md +docs/JsonApiFilterViewInAttributes.md +docs/JsonApiFilterViewInDocument.md +docs/JsonApiFilterViewInRelationships.md +docs/JsonApiFilterViewInRelationshipsUser.md +docs/JsonApiFilterViewOut.md +docs/JsonApiFilterViewOutDocument.md +docs/JsonApiFilterViewOutIncludes.md +docs/JsonApiFilterViewOutList.md +docs/JsonApiFilterViewOutWithLinks.md +docs/JsonApiFilterViewPatch.md +docs/JsonApiFilterViewPatchAttributes.md +docs/JsonApiFilterViewPatchDocument.md +docs/JsonApiIdentityProviderIn.md +docs/JsonApiIdentityProviderInAttributes.md +docs/JsonApiIdentityProviderInAttributesSpecification.md +docs/JsonApiIdentityProviderInDocument.md +docs/JsonApiIdentityProviderOut.md +docs/JsonApiIdentityProviderOutDocument.md +docs/JsonApiIdentityProviderOutList.md +docs/JsonApiIdentityProviderOutWithLinks.md +docs/JsonApiIdentityProviderPatch.md +docs/JsonApiIdentityProviderPatchAttributes.md +docs/JsonApiIdentityProviderPatchDocument.md docs/JsonApiJwkIn.md docs/JsonApiJwkInAttributes.md docs/JsonApiJwkInAttributesContent.md @@ -454,6 +504,17 @@ docs/JsonApiLabelOutRelationshipsAttribute.md docs/JsonApiLabelOutWithLinks.md docs/JsonApiLabelToManyLinkage.md docs/JsonApiLabelToOneLinkage.md +docs/JsonApiLlmEndpointIn.md +docs/JsonApiLlmEndpointInAttributes.md +docs/JsonApiLlmEndpointInDocument.md +docs/JsonApiLlmEndpointOut.md +docs/JsonApiLlmEndpointOutAttributes.md +docs/JsonApiLlmEndpointOutDocument.md +docs/JsonApiLlmEndpointOutList.md +docs/JsonApiLlmEndpointOutWithLinks.md +docs/JsonApiLlmEndpointPatch.md +docs/JsonApiLlmEndpointPatchAttributes.md +docs/JsonApiLlmEndpointPatchDocument.md docs/JsonApiMetricIn.md docs/JsonApiMetricInAttributes.md docs/JsonApiMetricInAttributesContent.md @@ -474,8 +535,7 @@ docs/JsonApiMetricPostOptionalIdDocument.md docs/JsonApiMetricToManyLinkage.md docs/JsonApiNotificationChannelIn.md docs/JsonApiNotificationChannelInAttributes.md -docs/JsonApiNotificationChannelInAttributesTriggersInner.md -docs/JsonApiNotificationChannelInAttributesWebhook.md +docs/JsonApiNotificationChannelInAttributesDestination.md docs/JsonApiNotificationChannelInDocument.md docs/JsonApiNotificationChannelLinkage.md docs/JsonApiNotificationChannelOut.md @@ -497,7 +557,6 @@ docs/JsonApiOrganizationOutDocument.md docs/JsonApiOrganizationOutIncludes.md docs/JsonApiOrganizationOutMeta.md docs/JsonApiOrganizationOutRelationships.md -docs/JsonApiOrganizationOutRelationshipsBootstrapUser.md docs/JsonApiOrganizationOutRelationshipsBootstrapUserGroup.md docs/JsonApiOrganizationPatch.md docs/JsonApiOrganizationPatchDocument.md @@ -647,11 +706,13 @@ docs/KeyDriversRequest.md docs/KeyDriversResponse.md docs/KeyDriversResult.md docs/LDMDeclarativeAPIsApi.md +docs/LLMEndpointsApi.md docs/LabelIdentifier.md docs/LabelsApi.md docs/LayoutApi.md docs/ListLinks.md docs/ListLinksAllOf.md +docs/LocalIdentifier.md docs/LocaleRequest.md docs/ManageDashboardPermissionsRequestInner.md docs/MeasureDefinition.md @@ -661,15 +722,18 @@ docs/MeasureHeaderOut.md docs/MeasureItem.md docs/MeasureResultHeader.md docs/MeasureValueFilter.md +docs/MetadataSyncApi.md +docs/Metric.md docs/MetricsApi.md docs/NegativeAttributeFilter.md docs/NegativeAttributeFilterNegativeAttributeFilter.md docs/Note.md docs/Notes.md +docs/NotificationChannelDestination.md docs/NotificationChannelsApi.md -docs/NotificationTrigger.md docs/ObjectLinks.md docs/ObjectLinksContainer.md +docs/OidcIdpSpecification.md docs/OptionsApi.md docs/OrganizationControllerApi.md docs/OrganizationDeclarativeAPIsApi.md @@ -686,7 +750,6 @@ docs/PdmSql.md docs/PermissionsApi.md docs/PermissionsAssignment.md docs/PermissionsForAssignee.md -docs/PermissionsForAssigneeAllOf.md docs/PermissionsForAssigneeRule.md docs/PlatformUsage.md docs/PlatformUsageRequest.md @@ -700,14 +763,18 @@ docs/PopDateMeasureDefinitionOverPeriodMeasure.md docs/PopMeasureDefinition.md docs/PositiveAttributeFilter.md docs/PositiveAttributeFilterPositiveAttributeFilter.md +docs/Range.md docs/RangeMeasureValueFilter.md docs/RangeMeasureValueFilterRangeMeasureValueFilter.md +docs/RangeWrapper.md docs/RankingFilter.md docs/RankingFilterRankingFilter.md docs/ReferenceIdentifier.md docs/ReferenceSourceColumn.md +docs/Relative.md docs/RelativeDateFilter.md docs/RelativeDateFilterRelativeDateFilter.md +docs/RelativeWrapper.md docs/ReportingSettingsApi.md docs/ResolveSettingsRequest.md docs/ResolvedSetting.md @@ -716,8 +783,11 @@ docs/ResultCacheMetadata.md docs/ResultDimension.md docs/ResultDimensionHeader.md docs/ResultSpec.md +docs/RouteRequest.md +docs/RouteResult.md docs/RsaSpecification.md docs/RulePermission.md +docs/SamlIdpSpecification.md docs/ScanRequest.md docs/ScanResultPdm.md docs/ScanSqlRequest.md @@ -733,6 +803,8 @@ docs/SimpleMeasureDefinitionMeasure.md docs/Skeleton.md docs/SmartFunctionResponse.md docs/SmartFunctionsApi.md +docs/Smtp.md +docs/SmtpAllOf.md docs/SortKey.md docs/SortKeyAttribute.md docs/SortKeyAttributeAttribute.md @@ -758,8 +830,10 @@ docs/TotalDimension.md docs/TotalExecutionResultHeader.md docs/TotalResultHeader.md docs/TranslationsApi.md +docs/UnsubscribeApi.md docs/UsageApi.md docs/UserAssignee.md +docs/UserContext.md docs/UserDataFiltersApi.md docs/UserGroupAssignee.md docs/UserGroupIdentifier.md @@ -783,10 +857,12 @@ docs/UserSettingsApi.md docs/UsersDeclarativeAPIsApi.md docs/UsersEntityAPIsApi.md docs/ValidateByItem.md +docs/Value.md docs/VisualExportApi.md docs/VisualExportRequest.md docs/VisualizationObjectApi.md docs/Webhook.md +docs/WebhookAllOf.md docs/WorkspaceDataSource.md docs/WorkspaceIdentifier.md docs/WorkspaceObjectControllerApi.md @@ -824,13 +900,17 @@ gooddata_api_client/api/entities_api.py gooddata_api_client/api/entitlement_api.py gooddata_api_client/api/export_definitions_api.py gooddata_api_client/api/facts_api.py +gooddata_api_client/api/filter_views_api.py gooddata_api_client/api/generate_logical_data_model_api.py gooddata_api_client/api/hierarchy_api.py +gooddata_api_client/api/identity_providers_api.py gooddata_api_client/api/invalidate_cache_api.py gooddata_api_client/api/jwks_api.py gooddata_api_client/api/labels_api.py gooddata_api_client/api/layout_api.py gooddata_api_client/api/ldm_declarative_apis_api.py +gooddata_api_client/api/llm_endpoints_api.py +gooddata_api_client/api/metadata_sync_api.py gooddata_api_client/api/metrics_api.py gooddata_api_client/api/notification_channels_api.py gooddata_api_client/api/options_api.py @@ -846,6 +926,7 @@ gooddata_api_client/api/smart_functions_api.py gooddata_api_client/api/tabular_export_api.py gooddata_api_client/api/test_connection_api.py gooddata_api_client/api/translations_api.py +gooddata_api_client/api/unsubscribe_api.py gooddata_api_client/api/usage_api.py gooddata_api_client/api/user_data_filters_api.py gooddata_api_client/api/user_groups_declarative_apis_api.py @@ -870,6 +951,7 @@ gooddata_api_client/model/__init__.py gooddata_api_client/model/absolute_date_filter.py gooddata_api_client/model/absolute_date_filter_absolute_date_filter.py gooddata_api_client/model/abstract_measure_value_filter.py +gooddata_api_client/model/active_object_identification.py gooddata_api_client/model/afm.py gooddata_api_client/model/afm_execution.py gooddata_api_client/model/afm_execution_response.py @@ -889,9 +971,13 @@ gooddata_api_client/model/afm_valid_descendants_query.py gooddata_api_client/model/afm_valid_descendants_response.py gooddata_api_client/model/afm_valid_objects_query.py gooddata_api_client/model/afm_valid_objects_response.py +gooddata_api_client/model/alert_afm.py +gooddata_api_client/model/alert_condition.py +gooddata_api_client/model/alert_condition_operand.py gooddata_api_client/model/anomaly_detection_request.py gooddata_api_client/model/anomaly_detection_result.py gooddata_api_client/model/api_entitlement.py +gooddata_api_client/model/arithmetic_measure.py gooddata_api_client/model/arithmetic_measure_definition.py gooddata_api_client/model/arithmetic_measure_definition_arithmetic_measure.py gooddata_api_client/model/assignee_identifier.py @@ -906,6 +992,11 @@ gooddata_api_client/model/attribute_item.py gooddata_api_client/model/attribute_result_header.py gooddata_api_client/model/automation_schedule.py gooddata_api_client/model/available_assignees.py +gooddata_api_client/model/chat_history_interaction.py +gooddata_api_client/model/chat_history_request.py +gooddata_api_client/model/chat_history_result.py +gooddata_api_client/model/chat_request.py +gooddata_api_client/model/chat_result.py gooddata_api_client/model/clustering_request.py gooddata_api_client/model/clustering_result.py gooddata_api_client/model/column_location.py @@ -915,8 +1006,12 @@ gooddata_api_client/model/column_statistics_request.py gooddata_api_client/model/column_statistics_request_from.py gooddata_api_client/model/column_statistics_response.py gooddata_api_client/model/column_warning.py +gooddata_api_client/model/comparison.py gooddata_api_client/model/comparison_measure_value_filter.py gooddata_api_client/model/comparison_measure_value_filter_comparison_measure_value_filter.py +gooddata_api_client/model/comparison_wrapper.py +gooddata_api_client/model/created_visualization.py +gooddata_api_client/model/created_visualizations.py gooddata_api_client/model/custom_label.py gooddata_api_client/model/custom_metric.py gooddata_api_client/model/custom_override.py @@ -970,7 +1065,9 @@ gooddata_api_client/model/declarative_ldm.py gooddata_api_client/model/declarative_metric.py gooddata_api_client/model/declarative_model.py gooddata_api_client/model/declarative_notification_channel.py +gooddata_api_client/model/declarative_notification_channel_destination.py gooddata_api_client/model/declarative_notification_channel_identifier.py +gooddata_api_client/model/declarative_notification_channels.py gooddata_api_client/model/declarative_organization.py gooddata_api_client/model/declarative_organization_info.py gooddata_api_client/model/declarative_organization_permission.py @@ -1006,6 +1103,8 @@ gooddata_api_client/model/declarative_workspace_hierarchy_permission.py gooddata_api_client/model/declarative_workspace_model.py gooddata_api_client/model/declarative_workspace_permissions.py gooddata_api_client/model/declarative_workspaces.py +gooddata_api_client/model/default_smtp.py +gooddata_api_client/model/default_smtp_all_of.py gooddata_api_client/model/dependent_entities_graph.py gooddata_api_client/model/dependent_entities_node.py gooddata_api_client/model/dependent_entities_request.py @@ -1015,6 +1114,7 @@ gooddata_api_client/model/depends_on_all_of.py gooddata_api_client/model/depends_on_date_filter.py gooddata_api_client/model/depends_on_date_filter_all_of.py gooddata_api_client/model/depends_on_item.py +gooddata_api_client/model/dim_attribute.py gooddata_api_client/model/dimension.py gooddata_api_client/model/dimension_header.py gooddata_api_client/model/element.py @@ -1038,6 +1138,7 @@ gooddata_api_client/model/filter_definition.py gooddata_api_client/model/filter_definition_for_simple_measure.py gooddata_api_client/model/forecast_request.py gooddata_api_client/model/forecast_result.py +gooddata_api_client/model/found_objects.py gooddata_api_client/model/frequency.py gooddata_api_client/model/frequency_bucket.py gooddata_api_client/model/frequency_properties.py @@ -1123,12 +1224,15 @@ gooddata_api_client/model/json_api_attribute_to_many_linkage.py gooddata_api_client/model/json_api_attribute_to_one_linkage.py gooddata_api_client/model/json_api_automation_in.py gooddata_api_client/model/json_api_automation_in_attributes.py +gooddata_api_client/model/json_api_automation_in_attributes_alert.py gooddata_api_client/model/json_api_automation_in_attributes_schedule.py gooddata_api_client/model/json_api_automation_in_document.py gooddata_api_client/model/json_api_automation_in_relationships.py +gooddata_api_client/model/json_api_automation_in_relationships_analytical_dashboard.py gooddata_api_client/model/json_api_automation_in_relationships_export_definitions.py gooddata_api_client/model/json_api_automation_in_relationships_notification_channel.py gooddata_api_client/model/json_api_automation_in_relationships_recipients.py +gooddata_api_client/model/json_api_automation_linkage.py gooddata_api_client/model/json_api_automation_out.py gooddata_api_client/model/json_api_automation_out_attributes.py gooddata_api_client/model/json_api_automation_out_document.py @@ -1138,6 +1242,7 @@ gooddata_api_client/model/json_api_automation_out_relationships.py gooddata_api_client/model/json_api_automation_out_with_links.py gooddata_api_client/model/json_api_automation_patch.py gooddata_api_client/model/json_api_automation_patch_document.py +gooddata_api_client/model/json_api_automation_to_one_linkage.py gooddata_api_client/model/json_api_color_palette_in.py gooddata_api_client/model/json_api_color_palette_in_attributes.py gooddata_api_client/model/json_api_color_palette_in_document.py @@ -1237,7 +1342,6 @@ gooddata_api_client/model/json_api_export_definition_in_attributes.py gooddata_api_client/model/json_api_export_definition_in_attributes_request_payload.py gooddata_api_client/model/json_api_export_definition_in_document.py gooddata_api_client/model/json_api_export_definition_in_relationships.py -gooddata_api_client/model/json_api_export_definition_in_relationships_analytical_dashboard.py gooddata_api_client/model/json_api_export_definition_in_relationships_visualization_object.py gooddata_api_client/model/json_api_export_definition_linkage.py gooddata_api_client/model/json_api_export_definition_out.py @@ -1246,6 +1350,7 @@ gooddata_api_client/model/json_api_export_definition_out_document.py gooddata_api_client/model/json_api_export_definition_out_includes.py gooddata_api_client/model/json_api_export_definition_out_list.py gooddata_api_client/model/json_api_export_definition_out_relationships.py +gooddata_api_client/model/json_api_export_definition_out_relationships_automation.py gooddata_api_client/model/json_api_export_definition_out_with_links.py gooddata_api_client/model/json_api_export_definition_patch.py gooddata_api_client/model/json_api_export_definition_patch_document.py @@ -1274,6 +1379,30 @@ gooddata_api_client/model/json_api_filter_context_patch_document.py gooddata_api_client/model/json_api_filter_context_post_optional_id.py gooddata_api_client/model/json_api_filter_context_post_optional_id_document.py gooddata_api_client/model/json_api_filter_context_to_many_linkage.py +gooddata_api_client/model/json_api_filter_view_in.py +gooddata_api_client/model/json_api_filter_view_in_attributes.py +gooddata_api_client/model/json_api_filter_view_in_document.py +gooddata_api_client/model/json_api_filter_view_in_relationships.py +gooddata_api_client/model/json_api_filter_view_in_relationships_user.py +gooddata_api_client/model/json_api_filter_view_out.py +gooddata_api_client/model/json_api_filter_view_out_document.py +gooddata_api_client/model/json_api_filter_view_out_includes.py +gooddata_api_client/model/json_api_filter_view_out_list.py +gooddata_api_client/model/json_api_filter_view_out_with_links.py +gooddata_api_client/model/json_api_filter_view_patch.py +gooddata_api_client/model/json_api_filter_view_patch_attributes.py +gooddata_api_client/model/json_api_filter_view_patch_document.py +gooddata_api_client/model/json_api_identity_provider_in.py +gooddata_api_client/model/json_api_identity_provider_in_attributes.py +gooddata_api_client/model/json_api_identity_provider_in_attributes_specification.py +gooddata_api_client/model/json_api_identity_provider_in_document.py +gooddata_api_client/model/json_api_identity_provider_out.py +gooddata_api_client/model/json_api_identity_provider_out_document.py +gooddata_api_client/model/json_api_identity_provider_out_list.py +gooddata_api_client/model/json_api_identity_provider_out_with_links.py +gooddata_api_client/model/json_api_identity_provider_patch.py +gooddata_api_client/model/json_api_identity_provider_patch_attributes.py +gooddata_api_client/model/json_api_identity_provider_patch_document.py gooddata_api_client/model/json_api_jwk_in.py gooddata_api_client/model/json_api_jwk_in_attributes.py gooddata_api_client/model/json_api_jwk_in_attributes_content.py @@ -1294,6 +1423,17 @@ gooddata_api_client/model/json_api_label_out_relationships_attribute.py gooddata_api_client/model/json_api_label_out_with_links.py gooddata_api_client/model/json_api_label_to_many_linkage.py gooddata_api_client/model/json_api_label_to_one_linkage.py +gooddata_api_client/model/json_api_llm_endpoint_in.py +gooddata_api_client/model/json_api_llm_endpoint_in_attributes.py +gooddata_api_client/model/json_api_llm_endpoint_in_document.py +gooddata_api_client/model/json_api_llm_endpoint_out.py +gooddata_api_client/model/json_api_llm_endpoint_out_attributes.py +gooddata_api_client/model/json_api_llm_endpoint_out_document.py +gooddata_api_client/model/json_api_llm_endpoint_out_list.py +gooddata_api_client/model/json_api_llm_endpoint_out_with_links.py +gooddata_api_client/model/json_api_llm_endpoint_patch.py +gooddata_api_client/model/json_api_llm_endpoint_patch_attributes.py +gooddata_api_client/model/json_api_llm_endpoint_patch_document.py gooddata_api_client/model/json_api_metric_in.py gooddata_api_client/model/json_api_metric_in_attributes.py gooddata_api_client/model/json_api_metric_in_attributes_content.py @@ -1314,8 +1454,7 @@ gooddata_api_client/model/json_api_metric_post_optional_id_document.py gooddata_api_client/model/json_api_metric_to_many_linkage.py gooddata_api_client/model/json_api_notification_channel_in.py gooddata_api_client/model/json_api_notification_channel_in_attributes.py -gooddata_api_client/model/json_api_notification_channel_in_attributes_triggers_inner.py -gooddata_api_client/model/json_api_notification_channel_in_attributes_webhook.py +gooddata_api_client/model/json_api_notification_channel_in_attributes_destination.py gooddata_api_client/model/json_api_notification_channel_in_document.py gooddata_api_client/model/json_api_notification_channel_linkage.py gooddata_api_client/model/json_api_notification_channel_out.py @@ -1337,7 +1476,6 @@ gooddata_api_client/model/json_api_organization_out_document.py gooddata_api_client/model/json_api_organization_out_includes.py gooddata_api_client/model/json_api_organization_out_meta.py gooddata_api_client/model/json_api_organization_out_relationships.py -gooddata_api_client/model/json_api_organization_out_relationships_bootstrap_user.py gooddata_api_client/model/json_api_organization_out_relationships_bootstrap_user_group.py gooddata_api_client/model/json_api_organization_patch.py gooddata_api_client/model/json_api_organization_patch_document.py @@ -1489,6 +1627,7 @@ gooddata_api_client/model/key_drivers_result.py gooddata_api_client/model/label_identifier.py gooddata_api_client/model/list_links.py gooddata_api_client/model/list_links_all_of.py +gooddata_api_client/model/local_identifier.py gooddata_api_client/model/locale_request.py gooddata_api_client/model/manage_dashboard_permissions_request_inner.py gooddata_api_client/model/measure_definition.py @@ -1498,13 +1637,15 @@ gooddata_api_client/model/measure_header_out.py gooddata_api_client/model/measure_item.py gooddata_api_client/model/measure_result_header.py gooddata_api_client/model/measure_value_filter.py +gooddata_api_client/model/metric.py gooddata_api_client/model/negative_attribute_filter.py gooddata_api_client/model/negative_attribute_filter_negative_attribute_filter.py gooddata_api_client/model/note.py gooddata_api_client/model/notes.py -gooddata_api_client/model/notification_trigger.py +gooddata_api_client/model/notification_channel_destination.py gooddata_api_client/model/object_links.py gooddata_api_client/model/object_links_container.py +gooddata_api_client/model/oidc_idp_specification.py gooddata_api_client/model/organization_permission_assignment.py gooddata_api_client/model/page_metadata.py gooddata_api_client/model/paging.py @@ -1515,7 +1656,6 @@ gooddata_api_client/model/pdm_ldm_request.py gooddata_api_client/model/pdm_sql.py gooddata_api_client/model/permissions_assignment.py gooddata_api_client/model/permissions_for_assignee.py -gooddata_api_client/model/permissions_for_assignee_all_of.py gooddata_api_client/model/permissions_for_assignee_rule.py gooddata_api_client/model/platform_usage.py gooddata_api_client/model/platform_usage_request.py @@ -1528,14 +1668,18 @@ gooddata_api_client/model/pop_date_measure_definition_over_period_measure.py gooddata_api_client/model/pop_measure_definition.py gooddata_api_client/model/positive_attribute_filter.py gooddata_api_client/model/positive_attribute_filter_positive_attribute_filter.py +gooddata_api_client/model/range.py gooddata_api_client/model/range_measure_value_filter.py gooddata_api_client/model/range_measure_value_filter_range_measure_value_filter.py +gooddata_api_client/model/range_wrapper.py gooddata_api_client/model/ranking_filter.py gooddata_api_client/model/ranking_filter_ranking_filter.py gooddata_api_client/model/reference_identifier.py gooddata_api_client/model/reference_source_column.py +gooddata_api_client/model/relative.py gooddata_api_client/model/relative_date_filter.py gooddata_api_client/model/relative_date_filter_relative_date_filter.py +gooddata_api_client/model/relative_wrapper.py gooddata_api_client/model/resolve_settings_request.py gooddata_api_client/model/resolved_setting.py gooddata_api_client/model/rest_api_identifier.py @@ -1543,8 +1687,11 @@ gooddata_api_client/model/result_cache_metadata.py gooddata_api_client/model/result_dimension.py gooddata_api_client/model/result_dimension_header.py gooddata_api_client/model/result_spec.py +gooddata_api_client/model/route_request.py +gooddata_api_client/model/route_result.py gooddata_api_client/model/rsa_specification.py gooddata_api_client/model/rule_permission.py +gooddata_api_client/model/saml_idp_specification.py gooddata_api_client/model/scan_request.py gooddata_api_client/model/scan_result_pdm.py gooddata_api_client/model/scan_sql_request.py @@ -1558,6 +1705,8 @@ gooddata_api_client/model/simple_measure_definition.py gooddata_api_client/model/simple_measure_definition_measure.py gooddata_api_client/model/skeleton.py gooddata_api_client/model/smart_function_response.py +gooddata_api_client/model/smtp.py +gooddata_api_client/model/smtp_all_of.py gooddata_api_client/model/sort_key.py gooddata_api_client/model/sort_key_attribute.py gooddata_api_client/model/sort_key_attribute_attribute.py @@ -1581,6 +1730,7 @@ gooddata_api_client/model/total_dimension.py gooddata_api_client/model/total_execution_result_header.py gooddata_api_client/model/total_result_header.py gooddata_api_client/model/user_assignee.py +gooddata_api_client/model/user_context.py gooddata_api_client/model/user_group_assignee.py gooddata_api_client/model/user_group_identifier.py gooddata_api_client/model/user_group_permission.py @@ -1595,8 +1745,10 @@ gooddata_api_client/model/user_management_users_item.py gooddata_api_client/model/user_management_workspace_permission_assignment.py gooddata_api_client/model/user_permission.py gooddata_api_client/model/validate_by_item.py +gooddata_api_client/model/value.py gooddata_api_client/model/visual_export_request.py gooddata_api_client/model/webhook.py +gooddata_api_client/model/webhook_all_of.py gooddata_api_client/model/workspace_data_source.py gooddata_api_client/model/workspace_identifier.py gooddata_api_client/model/workspace_permission_assignment.py diff --git a/gooddata-api-client/README.md b/gooddata-api-client/README.md index ade4a49b7..41b050c4a 100644 --- a/gooddata-api-client/README.md +++ b/gooddata-api-client/README.md @@ -65,7 +65,7 @@ with gooddata_api_client.ApiClient(configuration) as api_client: workspace_id = "workspaceId_example" # str | try: - # (BETA) Sync Metadata to AI services + # (BETA) Sync Metadata to other services api_instance.metadata_sync(workspace_id) except gooddata_api_client.ApiException as e: print("Exception when calling AIApi->metadata_sync: %s\n" % e) @@ -77,7 +77,8 @@ All URIs are relative to *http://localhost* Class | Method | HTTP request | Description ------------ | ------------- | ------------- | ------------- -*AIApi* | [**metadata_sync**](docs/AIApi.md#metadata_sync) | **POST** /api/v1/actions/workspaces/{workspaceId}/metadataSync | (BETA) Sync Metadata to AI services +*AIApi* | [**metadata_sync**](docs/AIApi.md#metadata_sync) | **POST** /api/v1/actions/workspaces/{workspaceId}/metadataSync | (BETA) Sync Metadata to other services +*AIApi* | [**metadata_sync_organization**](docs/AIApi.md#metadata_sync_organization) | **POST** /api/v1/actions/organization/metadataSync | (BETA) Sync organization scope Metadata to other services *APITokensApi* | [**create_entity_api_tokens**](docs/APITokensApi.md#create_entity_api_tokens) | **POST** /api/v1/entities/users/{userId}/apiTokens | Post a new API token for the user *APITokensApi* | [**delete_entity_api_tokens**](docs/APITokensApi.md#delete_entity_api_tokens) | **DELETE** /api/v1/entities/users/{userId}/apiTokens/{id} | Delete an API Token for a user *APITokensApi* | [**get_all_entities_api_tokens**](docs/APITokensApi.md#get_all_entities_api_tokens) | **GET** /api/v1/entities/users/{userId}/apiTokens | List all api tokens for a user @@ -107,8 +108,10 @@ Class | Method | HTTP request | Description *AutomationsApi* | [**create_entity_automations**](docs/AutomationsApi.md#create_entity_automations) | **POST** /api/v1/entities/workspaces/{workspaceId}/automations | Post Automations *AutomationsApi* | [**delete_entity_automations**](docs/AutomationsApi.md#delete_entity_automations) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/automations/{objectId} | Delete an Automation *AutomationsApi* | [**get_all_entities_automations**](docs/AutomationsApi.md#get_all_entities_automations) | **GET** /api/v1/entities/workspaces/{workspaceId}/automations | Get all Automations +*AutomationsApi* | [**get_automations**](docs/AutomationsApi.md#get_automations) | **GET** /api/v1/layout/workspaces/{workspaceId}/automations | Get automations *AutomationsApi* | [**get_entity_automations**](docs/AutomationsApi.md#get_entity_automations) | **GET** /api/v1/entities/workspaces/{workspaceId}/automations/{objectId} | Get an Automation *AutomationsApi* | [**patch_entity_automations**](docs/AutomationsApi.md#patch_entity_automations) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/automations/{objectId} | Patch an Automation +*AutomationsApi* | [**set_automations**](docs/AutomationsApi.md#set_automations) | **PUT** /api/v1/layout/workspaces/{workspaceId}/automations | Set automations *AutomationsApi* | [**update_entity_automations**](docs/AutomationsApi.md#update_entity_automations) | **PUT** /api/v1/entities/workspaces/{workspaceId}/automations/{objectId} | Put an Automation *AvailableDriversApi* | [**get_data_source_drivers**](docs/AvailableDriversApi.md#get_data_source_drivers) | **GET** /api/v1/options/availableDrivers | Get all available data source drivers *CSPDirectivesApi* | [**create_entity_csp_directives**](docs/CSPDirectivesApi.md#create_entity_csp_directives) | **POST** /api/v1/entities/cspDirectives | Post CSP Directives @@ -187,11 +190,23 @@ Class | Method | HTTP request | Description *ExportDefinitionsApi* | [**update_entity_export_definitions**](docs/ExportDefinitionsApi.md#update_entity_export_definitions) | **PUT** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Put an Export Definition *FactsApi* | [**get_all_entities_facts**](docs/FactsApi.md#get_all_entities_facts) | **GET** /api/v1/entities/workspaces/{workspaceId}/facts | Get all Facts *FactsApi* | [**get_entity_facts**](docs/FactsApi.md#get_entity_facts) | **GET** /api/v1/entities/workspaces/{workspaceId}/facts/{objectId} | Get a Fact +*FilterViewsApi* | [**create_entity_filter_views**](docs/FilterViewsApi.md#create_entity_filter_views) | **POST** /api/v1/entities/workspaces/{workspaceId}/filterViews | Post Filter views +*FilterViewsApi* | [**delete_entity_filter_views**](docs/FilterViewsApi.md#delete_entity_filter_views) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Delete Filter view +*FilterViewsApi* | [**get_all_entities_filter_views**](docs/FilterViewsApi.md#get_all_entities_filter_views) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterViews | Get all Filter views +*FilterViewsApi* | [**get_entity_filter_views**](docs/FilterViewsApi.md#get_entity_filter_views) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Get Filter view +*FilterViewsApi* | [**patch_entity_filter_views**](docs/FilterViewsApi.md#patch_entity_filter_views) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Patch Filter view +*FilterViewsApi* | [**update_entity_filter_views**](docs/FilterViewsApi.md#update_entity_filter_views) | **PUT** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Put Filter views *GenerateLogicalDataModelApi* | [**generate_logical_model**](docs/GenerateLogicalDataModelApi.md#generate_logical_model) | **POST** /api/v1/actions/dataSources/{dataSourceId}/generateLogicalModel | Generate logical data model (LDM) from physical data model (PDM) *HierarchyApi* | [**check_entity_overrides**](docs/HierarchyApi.md#check_entity_overrides) | **POST** /api/v1/actions/workspaces/{workspaceId}/checkEntityOverrides | Finds entities with given ID in hierarchy. *HierarchyApi* | [**inherited_entity_conflicts**](docs/HierarchyApi.md#inherited_entity_conflicts) | **GET** /api/v1/actions/workspaces/{workspaceId}/inheritedEntityConflicts | Finds identifier conflicts in workspace hierarchy. *HierarchyApi* | [**inherited_entity_prefixes**](docs/HierarchyApi.md#inherited_entity_prefixes) | **GET** /api/v1/actions/workspaces/{workspaceId}/inheritedEntityPrefixes | Get used entity prefixes in hierarchy *HierarchyApi* | [**overridden_child_entities**](docs/HierarchyApi.md#overridden_child_entities) | **GET** /api/v1/actions/workspaces/{workspaceId}/overriddenChildEntities | Finds identifier overrides in workspace hierarchy. +*IdentityProvidersApi* | [**create_entity_identity_providers**](docs/IdentityProvidersApi.md#create_entity_identity_providers) | **POST** /api/v1/entities/identityProviders | Post Identity Providers +*IdentityProvidersApi* | [**delete_entity_identity_providers**](docs/IdentityProvidersApi.md#delete_entity_identity_providers) | **DELETE** /api/v1/entities/identityProviders/{id} | Delete Identity Provider +*IdentityProvidersApi* | [**get_all_entities_identity_providers**](docs/IdentityProvidersApi.md#get_all_entities_identity_providers) | **GET** /api/v1/entities/identityProviders | Get all Identity Providers +*IdentityProvidersApi* | [**get_entity_identity_providers**](docs/IdentityProvidersApi.md#get_entity_identity_providers) | **GET** /api/v1/entities/identityProviders/{id} | Get Identity Provider +*IdentityProvidersApi* | [**patch_entity_identity_providers**](docs/IdentityProvidersApi.md#patch_entity_identity_providers) | **PATCH** /api/v1/entities/identityProviders/{id} | Patch Identity Provider +*IdentityProvidersApi* | [**update_entity_identity_providers**](docs/IdentityProvidersApi.md#update_entity_identity_providers) | **PUT** /api/v1/entities/identityProviders/{id} | Put Identity Provider *InvalidateCacheApi* | [**register_upload_notification**](docs/InvalidateCacheApi.md#register_upload_notification) | **POST** /api/v1/actions/dataSources/{dataSourceId}/uploadNotification | Register an upload notification *JWKSApi* | [**create_entity_jwks**](docs/JWKSApi.md#create_entity_jwks) | **POST** /api/v1/entities/jwks | Post Jwks *JWKSApi* | [**delete_entity_jwks**](docs/JWKSApi.md#delete_entity_jwks) | **DELETE** /api/v1/entities/jwks/{id} | Delete Jwk @@ -201,8 +216,16 @@ Class | Method | HTTP request | Description *JWKSApi* | [**update_entity_jwks**](docs/JWKSApi.md#update_entity_jwks) | **PUT** /api/v1/entities/jwks/{id} | Put Jwk *LDMDeclarativeAPIsApi* | [**get_logical_model**](docs/LDMDeclarativeAPIsApi.md#get_logical_model) | **GET** /api/v1/layout/workspaces/{workspaceId}/logicalModel | Get logical model *LDMDeclarativeAPIsApi* | [**set_logical_model**](docs/LDMDeclarativeAPIsApi.md#set_logical_model) | **PUT** /api/v1/layout/workspaces/{workspaceId}/logicalModel | Set logical model +*LLMEndpointsApi* | [**create_entity_llm_endpoints**](docs/LLMEndpointsApi.md#create_entity_llm_endpoints) | **POST** /api/v1/entities/llmEndpoints | Post LLM endpoint entities +*LLMEndpointsApi* | [**delete_entity_llm_endpoints**](docs/LLMEndpointsApi.md#delete_entity_llm_endpoints) | **DELETE** /api/v1/entities/llmEndpoints/{id} | +*LLMEndpointsApi* | [**get_all_entities_llm_endpoints**](docs/LLMEndpointsApi.md#get_all_entities_llm_endpoints) | **GET** /api/v1/entities/llmEndpoints | Get all LLM endpoint entities +*LLMEndpointsApi* | [**get_entity_llm_endpoints**](docs/LLMEndpointsApi.md#get_entity_llm_endpoints) | **GET** /api/v1/entities/llmEndpoints/{id} | Get LLM endpoint entity +*LLMEndpointsApi* | [**patch_entity_llm_endpoints**](docs/LLMEndpointsApi.md#patch_entity_llm_endpoints) | **PATCH** /api/v1/entities/llmEndpoints/{id} | Patch LLM endpoint entity +*LLMEndpointsApi* | [**update_entity_llm_endpoints**](docs/LLMEndpointsApi.md#update_entity_llm_endpoints) | **PUT** /api/v1/entities/llmEndpoints/{id} | PUT LLM endpoint entity *LabelsApi* | [**get_all_entities_labels**](docs/LabelsApi.md#get_all_entities_labels) | **GET** /api/v1/entities/workspaces/{workspaceId}/labels | Get all Labels *LabelsApi* | [**get_entity_labels**](docs/LabelsApi.md#get_entity_labels) | **GET** /api/v1/entities/workspaces/{workspaceId}/labels/{objectId} | Get a Label +*MetadataSyncApi* | [**metadata_sync**](docs/MetadataSyncApi.md#metadata_sync) | **POST** /api/v1/actions/workspaces/{workspaceId}/metadataSync | (BETA) Sync Metadata to other services +*MetadataSyncApi* | [**metadata_sync_organization**](docs/MetadataSyncApi.md#metadata_sync_organization) | **POST** /api/v1/actions/organization/metadataSync | (BETA) Sync organization scope Metadata to other services *MetricsApi* | [**create_entity_metrics**](docs/MetricsApi.md#create_entity_metrics) | **POST** /api/v1/entities/workspaces/{workspaceId}/metrics | Post Metrics *MetricsApi* | [**delete_entity_metrics**](docs/MetricsApi.md#delete_entity_metrics) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Delete a Metric *MetricsApi* | [**get_all_entities_metrics**](docs/MetricsApi.md#get_all_entities_metrics) | **GET** /api/v1/entities/workspaces/{workspaceId}/metrics | Get all Metrics @@ -210,7 +233,7 @@ Class | Method | HTTP request | Description *MetricsApi* | [**patch_entity_metrics**](docs/MetricsApi.md#patch_entity_metrics) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Patch a Metric *MetricsApi* | [**update_entity_metrics**](docs/MetricsApi.md#update_entity_metrics) | **PUT** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Put a Metric *NotificationChannelsApi* | [**create_entity_notification_channels**](docs/NotificationChannelsApi.md#create_entity_notification_channels) | **POST** /api/v1/entities/notificationChannels | Post Notification Channel entities -*NotificationChannelsApi* | [**delete_entity_notification_channels**](docs/NotificationChannelsApi.md#delete_entity_notification_channels) | **DELETE** /api/v1/entities/notificationChannels/{id} | +*NotificationChannelsApi* | [**delete_entity_notification_channels**](docs/NotificationChannelsApi.md#delete_entity_notification_channels) | **DELETE** /api/v1/entities/notificationChannels/{id} | Delete Notification Channel entity *NotificationChannelsApi* | [**get_all_entities_notification_channels**](docs/NotificationChannelsApi.md#get_all_entities_notification_channels) | **GET** /api/v1/entities/notificationChannels | Get all Notification Channel entities *NotificationChannelsApi* | [**get_entity_notification_channels**](docs/NotificationChannelsApi.md#get_entity_notification_channels) | **GET** /api/v1/entities/notificationChannels/{id} | Get Notification Channel entity *NotificationChannelsApi* | [**patch_entity_notification_channels**](docs/NotificationChannelsApi.md#patch_entity_notification_channels) | **PATCH** /api/v1/entities/notificationChannels/{id} | Patch Notification Channel entity @@ -253,6 +276,9 @@ Class | Method | HTTP request | Description *ScanningApi* | [**get_data_source_schemata**](docs/ScanningApi.md#get_data_source_schemata) | **GET** /api/v1/actions/dataSources/{dataSourceId}/scanSchemata | Get a list of schema names of a database *ScanningApi* | [**scan_data_source**](docs/ScanningApi.md#scan_data_source) | **POST** /api/v1/actions/dataSources/{dataSourceId}/scan | Scan a database to get a physical data model (PDM) *ScanningApi* | [**scan_sql**](docs/ScanningApi.md#scan_sql) | **POST** /api/v1/actions/dataSources/{dataSourceId}/scanSql | Collect metadata about SQL query +*SmartFunctionsApi* | [**ai_chat**](docs/SmartFunctionsApi.md#ai_chat) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/chat | (BETA) Chat with AI +*SmartFunctionsApi* | [**ai_chat_history**](docs/SmartFunctionsApi.md#ai_chat_history) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/chatHistory | (BETA) Get Chat History +*SmartFunctionsApi* | [**ai_route**](docs/SmartFunctionsApi.md#ai_route) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/route | (BETA) Route to supported use cases based on this input query. *SmartFunctionsApi* | [**ai_search**](docs/SmartFunctionsApi.md#ai_search) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/search | (BETA) Semantic Search in Metadata *SmartFunctionsApi* | [**anomaly_detection**](docs/SmartFunctionsApi.md#anomaly_detection) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/functions/anomalyDetection/{resultId} | (EXPERIMENTAL) Smart functions - Anomaly Detection *SmartFunctionsApi* | [**anomaly_detection_result**](docs/SmartFunctionsApi.md#anomaly_detection_result) | **GET** /api/v1/actions/workspaces/{workspaceId}/execution/functions/anomalyDetection/result/{resultId} | (EXPERIMENTAL) Smart functions - Anomaly Detection Result @@ -268,6 +294,9 @@ Class | Method | HTTP request | Description *TranslationsApi* | [**get_translation_tags**](docs/TranslationsApi.md#get_translation_tags) | **GET** /api/v1/actions/workspaces/{workspaceId}/translations | Get translation tags. *TranslationsApi* | [**retrieve_translations**](docs/TranslationsApi.md#retrieve_translations) | **POST** /api/v1/actions/workspaces/{workspaceId}/translations/retrieve | Retrieve translations for entities. *TranslationsApi* | [**set_translations**](docs/TranslationsApi.md#set_translations) | **POST** /api/v1/actions/workspaces/{workspaceId}/translations/set | Set translations for entities. +*UnsubscribeApi* | [**unsubscribe_all_automations**](docs/UnsubscribeApi.md#unsubscribe_all_automations) | **DELETE** /api/v1/actions/organization/automations/unsubscribe | Unsubscribe from all automations in all workspaces +*UnsubscribeApi* | [**unsubscribe_automation**](docs/UnsubscribeApi.md#unsubscribe_automation) | **DELETE** /api/v1/actions/workspaces/{workspaceId}/automations/{automationId}/unsubscribe | Unsubscribe from an automation +*UnsubscribeApi* | [**unsubscribe_workspace_automations**](docs/UnsubscribeApi.md#unsubscribe_workspace_automations) | **DELETE** /api/v1/actions/workspaces/{workspaceId}/automations/unsubscribe | Unsubscribe from all automations in the workspace *UsageApi* | [**all_platform_usage**](docs/UsageApi.md#all_platform_usage) | **GET** /api/v1/actions/collectUsage | Info about the platform usage. *UsageApi* | [**particular_platform_usage**](docs/UsageApi.md#particular_platform_usage) | **POST** /api/v1/actions/collectUsage | Info about the platform usage for particular items. *UserGroupsDeclarativeAPIsApi* | [**get_user_groups_layout**](docs/UserGroupsDeclarativeAPIsApi.md#get_user_groups_layout) | **GET** /api/v1/layout/userGroups | Get all user groups @@ -342,6 +371,9 @@ Class | Method | HTTP request | Description *WorkspacesSettingsApi* | [**update_entity_workspace_settings**](docs/WorkspacesSettingsApi.md#update_entity_workspace_settings) | **PUT** /api/v1/entities/workspaces/{workspaceId}/workspaceSettings/{objectId} | Put a Setting for a Workspace *WorkspacesSettingsApi* | [**workspace_resolve_all_settings**](docs/WorkspacesSettingsApi.md#workspace_resolve_all_settings) | **GET** /api/v1/actions/workspaces/{workspaceId}/resolveSettings | Values for all settings. *WorkspacesSettingsApi* | [**workspace_resolve_settings**](docs/WorkspacesSettingsApi.md#workspace_resolve_settings) | **POST** /api/v1/actions/workspaces/{workspaceId}/resolveSettings | Values for selected settings. +*ActionsApi* | [**ai_chat**](docs/ActionsApi.md#ai_chat) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/chat | (BETA) Chat with AI +*ActionsApi* | [**ai_chat_history**](docs/ActionsApi.md#ai_chat_history) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/chatHistory | (BETA) Get Chat History +*ActionsApi* | [**ai_route**](docs/ActionsApi.md#ai_route) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/route | (BETA) Route to supported use cases based on this input query. *ActionsApi* | [**ai_search**](docs/ActionsApi.md#ai_search) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/search | (BETA) Semantic Search in Metadata *ActionsApi* | [**all_platform_usage**](docs/ActionsApi.md#all_platform_usage) | **GET** /api/v1/actions/collectUsage | Info about the platform usage. *ActionsApi* | [**anomaly_detection**](docs/ActionsApi.md#anomaly_detection) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/functions/anomalyDetection/{resultId} | (EXPERIMENTAL) Smart functions - Anomaly Detection @@ -380,7 +412,8 @@ Class | Method | HTTP request | Description *ActionsApi* | [**manage_data_source_permissions**](docs/ActionsApi.md#manage_data_source_permissions) | **POST** /api/v1/actions/dataSources/{dataSourceId}/managePermissions | Manage Permissions for a Data Source *ActionsApi* | [**manage_organization_permissions**](docs/ActionsApi.md#manage_organization_permissions) | **POST** /api/v1/actions/organization/managePermissions | Manage Permissions for a Organization *ActionsApi* | [**manage_workspace_permissions**](docs/ActionsApi.md#manage_workspace_permissions) | **POST** /api/v1/actions/workspaces/{workspaceId}/managePermissions | Manage Permissions for a Workspace -*ActionsApi* | [**metadata_sync**](docs/ActionsApi.md#metadata_sync) | **POST** /api/v1/actions/workspaces/{workspaceId}/metadataSync | (BETA) Sync Metadata to AI services +*ActionsApi* | [**metadata_sync**](docs/ActionsApi.md#metadata_sync) | **POST** /api/v1/actions/workspaces/{workspaceId}/metadataSync | (BETA) Sync Metadata to other services +*ActionsApi* | [**metadata_sync_organization**](docs/ActionsApi.md#metadata_sync_organization) | **POST** /api/v1/actions/organization/metadataSync | (BETA) Sync organization scope Metadata to other services *ActionsApi* | [**overridden_child_entities**](docs/ActionsApi.md#overridden_child_entities) | **GET** /api/v1/actions/workspaces/{workspaceId}/overriddenChildEntities | Finds identifier overrides in workspace hierarchy. *ActionsApi* | [**particular_platform_usage**](docs/ActionsApi.md#particular_platform_usage) | **POST** /api/v1/actions/collectUsage | Info about the platform usage for particular items. *ActionsApi* | [**register_upload_notification**](docs/ActionsApi.md#register_upload_notification) | **POST** /api/v1/actions/dataSources/{dataSourceId}/uploadNotification | Register an upload notification @@ -396,6 +429,9 @@ Class | Method | HTTP request | Description *ActionsApi* | [**set_translations**](docs/ActionsApi.md#set_translations) | **POST** /api/v1/actions/workspaces/{workspaceId}/translations/set | Set translations for entities. *ActionsApi* | [**test_data_source**](docs/ActionsApi.md#test_data_source) | **POST** /api/v1/actions/dataSources/{dataSourceId}/test | Test data source connection by data source id *ActionsApi* | [**test_data_source_definition**](docs/ActionsApi.md#test_data_source_definition) | **POST** /api/v1/actions/dataSource/test | Test connection by data source definition +*ActionsApi* | [**unsubscribe_all_automations**](docs/ActionsApi.md#unsubscribe_all_automations) | **DELETE** /api/v1/actions/organization/automations/unsubscribe | Unsubscribe from all automations in all workspaces +*ActionsApi* | [**unsubscribe_automation**](docs/ActionsApi.md#unsubscribe_automation) | **DELETE** /api/v1/actions/workspaces/{workspaceId}/automations/{automationId}/unsubscribe | Unsubscribe from an automation +*ActionsApi* | [**unsubscribe_workspace_automations**](docs/ActionsApi.md#unsubscribe_workspace_automations) | **DELETE** /api/v1/actions/workspaces/{workspaceId}/automations/unsubscribe | Unsubscribe from all automations in the workspace *ActionsApi* | [**workspace_resolve_all_settings**](docs/ActionsApi.md#workspace_resolve_all_settings) | **GET** /api/v1/actions/workspaces/{workspaceId}/resolveSettings | Values for all settings. *ActionsApi* | [**workspace_resolve_settings**](docs/ActionsApi.md#workspace_resolve_settings) | **POST** /api/v1/actions/workspaces/{workspaceId}/resolveSettings | Values for selected settings. *EntitiesApi* | [**create_entity_analytical_dashboards**](docs/EntitiesApi.md#create_entity_analytical_dashboards) | **POST** /api/v1/entities/workspaces/{workspaceId}/analyticalDashboards | Post Dashboards @@ -409,7 +445,10 @@ Class | Method | HTTP request | Description *EntitiesApi* | [**create_entity_data_sources**](docs/EntitiesApi.md#create_entity_data_sources) | **POST** /api/v1/entities/dataSources | Post Data Sources *EntitiesApi* | [**create_entity_export_definitions**](docs/EntitiesApi.md#create_entity_export_definitions) | **POST** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions | Post Export Definitions *EntitiesApi* | [**create_entity_filter_contexts**](docs/EntitiesApi.md#create_entity_filter_contexts) | **POST** /api/v1/entities/workspaces/{workspaceId}/filterContexts | Post Context Filters +*EntitiesApi* | [**create_entity_filter_views**](docs/EntitiesApi.md#create_entity_filter_views) | **POST** /api/v1/entities/workspaces/{workspaceId}/filterViews | Post Filter views +*EntitiesApi* | [**create_entity_identity_providers**](docs/EntitiesApi.md#create_entity_identity_providers) | **POST** /api/v1/entities/identityProviders | Post Identity Providers *EntitiesApi* | [**create_entity_jwks**](docs/EntitiesApi.md#create_entity_jwks) | **POST** /api/v1/entities/jwks | Post Jwks +*EntitiesApi* | [**create_entity_llm_endpoints**](docs/EntitiesApi.md#create_entity_llm_endpoints) | **POST** /api/v1/entities/llmEndpoints | Post LLM endpoint entities *EntitiesApi* | [**create_entity_metrics**](docs/EntitiesApi.md#create_entity_metrics) | **POST** /api/v1/entities/workspaces/{workspaceId}/metrics | Post Metrics *EntitiesApi* | [**create_entity_notification_channels**](docs/EntitiesApi.md#create_entity_notification_channels) | **POST** /api/v1/entities/notificationChannels | Post Notification Channel entities *EntitiesApi* | [**create_entity_organization_settings**](docs/EntitiesApi.md#create_entity_organization_settings) | **POST** /api/v1/entities/organizationSettings | Post Organization Setting entities @@ -434,9 +473,12 @@ Class | Method | HTTP request | Description *EntitiesApi* | [**delete_entity_data_sources**](docs/EntitiesApi.md#delete_entity_data_sources) | **DELETE** /api/v1/entities/dataSources/{id} | Delete Data Source entity *EntitiesApi* | [**delete_entity_export_definitions**](docs/EntitiesApi.md#delete_entity_export_definitions) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Delete an Export Definition *EntitiesApi* | [**delete_entity_filter_contexts**](docs/EntitiesApi.md#delete_entity_filter_contexts) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Delete a Context Filter +*EntitiesApi* | [**delete_entity_filter_views**](docs/EntitiesApi.md#delete_entity_filter_views) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Delete Filter view +*EntitiesApi* | [**delete_entity_identity_providers**](docs/EntitiesApi.md#delete_entity_identity_providers) | **DELETE** /api/v1/entities/identityProviders/{id} | Delete Identity Provider *EntitiesApi* | [**delete_entity_jwks**](docs/EntitiesApi.md#delete_entity_jwks) | **DELETE** /api/v1/entities/jwks/{id} | Delete Jwk +*EntitiesApi* | [**delete_entity_llm_endpoints**](docs/EntitiesApi.md#delete_entity_llm_endpoints) | **DELETE** /api/v1/entities/llmEndpoints/{id} | *EntitiesApi* | [**delete_entity_metrics**](docs/EntitiesApi.md#delete_entity_metrics) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Delete a Metric -*EntitiesApi* | [**delete_entity_notification_channels**](docs/EntitiesApi.md#delete_entity_notification_channels) | **DELETE** /api/v1/entities/notificationChannels/{id} | +*EntitiesApi* | [**delete_entity_notification_channels**](docs/EntitiesApi.md#delete_entity_notification_channels) | **DELETE** /api/v1/entities/notificationChannels/{id} | Delete Notification Channel entity *EntitiesApi* | [**delete_entity_organization_settings**](docs/EntitiesApi.md#delete_entity_organization_settings) | **DELETE** /api/v1/entities/organizationSettings/{id} | Delete Organization entity *EntitiesApi* | [**delete_entity_themes**](docs/EntitiesApi.md#delete_entity_themes) | **DELETE** /api/v1/entities/themes/{id} | Delete Theming *EntitiesApi* | [**delete_entity_user_data_filters**](docs/EntitiesApi.md#delete_entity_user_data_filters) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/userDataFilters/{objectId} | Delete a User Data Filter @@ -464,8 +506,11 @@ Class | Method | HTTP request | Description *EntitiesApi* | [**get_all_entities_export_definitions**](docs/EntitiesApi.md#get_all_entities_export_definitions) | **GET** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions | Get all Export Definitions *EntitiesApi* | [**get_all_entities_facts**](docs/EntitiesApi.md#get_all_entities_facts) | **GET** /api/v1/entities/workspaces/{workspaceId}/facts | Get all Facts *EntitiesApi* | [**get_all_entities_filter_contexts**](docs/EntitiesApi.md#get_all_entities_filter_contexts) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterContexts | Get all Context Filters +*EntitiesApi* | [**get_all_entities_filter_views**](docs/EntitiesApi.md#get_all_entities_filter_views) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterViews | Get all Filter views +*EntitiesApi* | [**get_all_entities_identity_providers**](docs/EntitiesApi.md#get_all_entities_identity_providers) | **GET** /api/v1/entities/identityProviders | Get all Identity Providers *EntitiesApi* | [**get_all_entities_jwks**](docs/EntitiesApi.md#get_all_entities_jwks) | **GET** /api/v1/entities/jwks | Get all Jwks *EntitiesApi* | [**get_all_entities_labels**](docs/EntitiesApi.md#get_all_entities_labels) | **GET** /api/v1/entities/workspaces/{workspaceId}/labels | Get all Labels +*EntitiesApi* | [**get_all_entities_llm_endpoints**](docs/EntitiesApi.md#get_all_entities_llm_endpoints) | **GET** /api/v1/entities/llmEndpoints | Get all LLM endpoint entities *EntitiesApi* | [**get_all_entities_metrics**](docs/EntitiesApi.md#get_all_entities_metrics) | **GET** /api/v1/entities/workspaces/{workspaceId}/metrics | Get all Metrics *EntitiesApi* | [**get_all_entities_notification_channels**](docs/EntitiesApi.md#get_all_entities_notification_channels) | **GET** /api/v1/entities/notificationChannels | Get all Notification Channel entities *EntitiesApi* | [**get_all_entities_organization_settings**](docs/EntitiesApi.md#get_all_entities_organization_settings) | **GET** /api/v1/entities/organizationSettings | Get Organization entities @@ -499,8 +544,11 @@ Class | Method | HTTP request | Description *EntitiesApi* | [**get_entity_export_definitions**](docs/EntitiesApi.md#get_entity_export_definitions) | **GET** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Get an Export Definition *EntitiesApi* | [**get_entity_facts**](docs/EntitiesApi.md#get_entity_facts) | **GET** /api/v1/entities/workspaces/{workspaceId}/facts/{objectId} | Get a Fact *EntitiesApi* | [**get_entity_filter_contexts**](docs/EntitiesApi.md#get_entity_filter_contexts) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Get a Context Filter +*EntitiesApi* | [**get_entity_filter_views**](docs/EntitiesApi.md#get_entity_filter_views) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Get Filter view +*EntitiesApi* | [**get_entity_identity_providers**](docs/EntitiesApi.md#get_entity_identity_providers) | **GET** /api/v1/entities/identityProviders/{id} | Get Identity Provider *EntitiesApi* | [**get_entity_jwks**](docs/EntitiesApi.md#get_entity_jwks) | **GET** /api/v1/entities/jwks/{id} | Get Jwk *EntitiesApi* | [**get_entity_labels**](docs/EntitiesApi.md#get_entity_labels) | **GET** /api/v1/entities/workspaces/{workspaceId}/labels/{objectId} | Get a Label +*EntitiesApi* | [**get_entity_llm_endpoints**](docs/EntitiesApi.md#get_entity_llm_endpoints) | **GET** /api/v1/entities/llmEndpoints/{id} | Get LLM endpoint entity *EntitiesApi* | [**get_entity_metrics**](docs/EntitiesApi.md#get_entity_metrics) | **GET** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Get a Metric *EntitiesApi* | [**get_entity_notification_channels**](docs/EntitiesApi.md#get_entity_notification_channels) | **GET** /api/v1/entities/notificationChannels/{id} | Get Notification Channel entity *EntitiesApi* | [**get_entity_organization_settings**](docs/EntitiesApi.md#get_entity_organization_settings) | **GET** /api/v1/entities/organizationSettings/{id} | Get Organization entity @@ -528,7 +576,10 @@ Class | Method | HTTP request | Description *EntitiesApi* | [**patch_entity_data_sources**](docs/EntitiesApi.md#patch_entity_data_sources) | **PATCH** /api/v1/entities/dataSources/{id} | Patch Data Source entity *EntitiesApi* | [**patch_entity_export_definitions**](docs/EntitiesApi.md#patch_entity_export_definitions) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Patch an Export Definition *EntitiesApi* | [**patch_entity_filter_contexts**](docs/EntitiesApi.md#patch_entity_filter_contexts) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Patch a Context Filter +*EntitiesApi* | [**patch_entity_filter_views**](docs/EntitiesApi.md#patch_entity_filter_views) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Patch Filter view +*EntitiesApi* | [**patch_entity_identity_providers**](docs/EntitiesApi.md#patch_entity_identity_providers) | **PATCH** /api/v1/entities/identityProviders/{id} | Patch Identity Provider *EntitiesApi* | [**patch_entity_jwks**](docs/EntitiesApi.md#patch_entity_jwks) | **PATCH** /api/v1/entities/jwks/{id} | Patch Jwk +*EntitiesApi* | [**patch_entity_llm_endpoints**](docs/EntitiesApi.md#patch_entity_llm_endpoints) | **PATCH** /api/v1/entities/llmEndpoints/{id} | Patch LLM endpoint entity *EntitiesApi* | [**patch_entity_metrics**](docs/EntitiesApi.md#patch_entity_metrics) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Patch a Metric *EntitiesApi* | [**patch_entity_notification_channels**](docs/EntitiesApi.md#patch_entity_notification_channels) | **PATCH** /api/v1/entities/notificationChannels/{id} | Patch Notification Channel entity *EntitiesApi* | [**patch_entity_organization_settings**](docs/EntitiesApi.md#patch_entity_organization_settings) | **PATCH** /api/v1/entities/organizationSettings/{id} | Patch Organization entity @@ -553,7 +604,10 @@ Class | Method | HTTP request | Description *EntitiesApi* | [**update_entity_data_sources**](docs/EntitiesApi.md#update_entity_data_sources) | **PUT** /api/v1/entities/dataSources/{id} | Put Data Source entity *EntitiesApi* | [**update_entity_export_definitions**](docs/EntitiesApi.md#update_entity_export_definitions) | **PUT** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Put an Export Definition *EntitiesApi* | [**update_entity_filter_contexts**](docs/EntitiesApi.md#update_entity_filter_contexts) | **PUT** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Put a Context Filter +*EntitiesApi* | [**update_entity_filter_views**](docs/EntitiesApi.md#update_entity_filter_views) | **PUT** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Put Filter views +*EntitiesApi* | [**update_entity_identity_providers**](docs/EntitiesApi.md#update_entity_identity_providers) | **PUT** /api/v1/entities/identityProviders/{id} | Put Identity Provider *EntitiesApi* | [**update_entity_jwks**](docs/EntitiesApi.md#update_entity_jwks) | **PUT** /api/v1/entities/jwks/{id} | Put Jwk +*EntitiesApi* | [**update_entity_llm_endpoints**](docs/EntitiesApi.md#update_entity_llm_endpoints) | **PUT** /api/v1/entities/llmEndpoints/{id} | PUT LLM endpoint entity *EntitiesApi* | [**update_entity_metrics**](docs/EntitiesApi.md#update_entity_metrics) | **PUT** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Put a Metric *EntitiesApi* | [**update_entity_notification_channels**](docs/EntitiesApi.md#update_entity_notification_channels) | **PUT** /api/v1/entities/notificationChannels/{id} | Put Notification Channel entity *EntitiesApi* | [**update_entity_organization_settings**](docs/EntitiesApi.md#update_entity_organization_settings) | **PUT** /api/v1/entities/organizationSettings/{id} | Put Organization entity @@ -569,9 +623,11 @@ Class | Method | HTTP request | Description *EntitiesApi* | [**update_entity_workspace_settings**](docs/EntitiesApi.md#update_entity_workspace_settings) | **PUT** /api/v1/entities/workspaces/{workspaceId}/workspaceSettings/{objectId} | Put a Setting for a Workspace *EntitiesApi* | [**update_entity_workspaces**](docs/EntitiesApi.md#update_entity_workspaces) | **PUT** /api/v1/entities/workspaces/{id} | Put Workspace entity *LayoutApi* | [**get_analytics_model**](docs/LayoutApi.md#get_analytics_model) | **GET** /api/v1/layout/workspaces/{workspaceId}/analyticsModel | Get analytics model +*LayoutApi* | [**get_automations**](docs/LayoutApi.md#get_automations) | **GET** /api/v1/layout/workspaces/{workspaceId}/automations | Get automations *LayoutApi* | [**get_data_source_permissions**](docs/LayoutApi.md#get_data_source_permissions) | **GET** /api/v1/layout/dataSources/{dataSourceId}/permissions | Get permissions for the data source *LayoutApi* | [**get_data_sources_layout**](docs/LayoutApi.md#get_data_sources_layout) | **GET** /api/v1/layout/dataSources | Get all data sources *LayoutApi* | [**get_logical_model**](docs/LayoutApi.md#get_logical_model) | **GET** /api/v1/layout/workspaces/{workspaceId}/logicalModel | Get logical model +*LayoutApi* | [**get_notification_channels_layout**](docs/LayoutApi.md#get_notification_channels_layout) | **GET** /api/v1/layout/notificationChannels | Get all notification channels layout *LayoutApi* | [**get_organization_layout**](docs/LayoutApi.md#get_organization_layout) | **GET** /api/v1/layout/organization | Get organization layout *LayoutApi* | [**get_organization_permissions**](docs/LayoutApi.md#get_organization_permissions) | **GET** /api/v1/layout/organization/permissions | Get organization permissions *LayoutApi* | [**get_user_data_filters**](docs/LayoutApi.md#get_user_data_filters) | **GET** /api/v1/layout/workspaces/{workspaceId}/userDataFilters | Get user data filters @@ -590,8 +646,10 @@ Class | Method | HTTP request | Description *LayoutApi* | [**put_users_user_groups_layout**](docs/LayoutApi.md#put_users_user_groups_layout) | **PUT** /api/v1/layout/usersAndUserGroups | Put all users and user groups *LayoutApi* | [**put_workspace_layout**](docs/LayoutApi.md#put_workspace_layout) | **PUT** /api/v1/layout/workspaces/{workspaceId} | Set workspace layout *LayoutApi* | [**set_analytics_model**](docs/LayoutApi.md#set_analytics_model) | **PUT** /api/v1/layout/workspaces/{workspaceId}/analyticsModel | Set analytics model +*LayoutApi* | [**set_automations**](docs/LayoutApi.md#set_automations) | **PUT** /api/v1/layout/workspaces/{workspaceId}/automations | Set automations *LayoutApi* | [**set_data_source_permissions**](docs/LayoutApi.md#set_data_source_permissions) | **PUT** /api/v1/layout/dataSources/{dataSourceId}/permissions | Set data source permissions. *LayoutApi* | [**set_logical_model**](docs/LayoutApi.md#set_logical_model) | **PUT** /api/v1/layout/workspaces/{workspaceId}/logicalModel | Set logical model +*LayoutApi* | [**set_notification_channels**](docs/LayoutApi.md#set_notification_channels) | **PUT** /api/v1/layout/notificationChannels | Set all notification channels *LayoutApi* | [**set_organization_layout**](docs/LayoutApi.md#set_organization_layout) | **PUT** /api/v1/layout/organization | Set organization layout *LayoutApi* | [**set_organization_permissions**](docs/LayoutApi.md#set_organization_permissions) | **PUT** /api/v1/layout/organization/permissions | Set organization permissions *LayoutApi* | [**set_user_data_filters**](docs/LayoutApi.md#set_user_data_filters) | **PUT** /api/v1/layout/workspaces/{workspaceId}/userDataFilters | Set user data filters @@ -609,7 +667,9 @@ Class | Method | HTTP request | Description *OrganizationModelControllerApi* | [**create_entity_color_palettes**](docs/OrganizationModelControllerApi.md#create_entity_color_palettes) | **POST** /api/v1/entities/colorPalettes | Post Color Pallettes *OrganizationModelControllerApi* | [**create_entity_csp_directives**](docs/OrganizationModelControllerApi.md#create_entity_csp_directives) | **POST** /api/v1/entities/cspDirectives | Post CSP Directives *OrganizationModelControllerApi* | [**create_entity_data_sources**](docs/OrganizationModelControllerApi.md#create_entity_data_sources) | **POST** /api/v1/entities/dataSources | Post Data Sources +*OrganizationModelControllerApi* | [**create_entity_identity_providers**](docs/OrganizationModelControllerApi.md#create_entity_identity_providers) | **POST** /api/v1/entities/identityProviders | Post Identity Providers *OrganizationModelControllerApi* | [**create_entity_jwks**](docs/OrganizationModelControllerApi.md#create_entity_jwks) | **POST** /api/v1/entities/jwks | Post Jwks +*OrganizationModelControllerApi* | [**create_entity_llm_endpoints**](docs/OrganizationModelControllerApi.md#create_entity_llm_endpoints) | **POST** /api/v1/entities/llmEndpoints | Post LLM endpoint entities *OrganizationModelControllerApi* | [**create_entity_notification_channels**](docs/OrganizationModelControllerApi.md#create_entity_notification_channels) | **POST** /api/v1/entities/notificationChannels | Post Notification Channel entities *OrganizationModelControllerApi* | [**create_entity_organization_settings**](docs/OrganizationModelControllerApi.md#create_entity_organization_settings) | **POST** /api/v1/entities/organizationSettings | Post Organization Setting entities *OrganizationModelControllerApi* | [**create_entity_themes**](docs/OrganizationModelControllerApi.md#create_entity_themes) | **POST** /api/v1/entities/themes | Post Theming @@ -619,8 +679,10 @@ Class | Method | HTTP request | Description *OrganizationModelControllerApi* | [**delete_entity_color_palettes**](docs/OrganizationModelControllerApi.md#delete_entity_color_palettes) | **DELETE** /api/v1/entities/colorPalettes/{id} | Delete a Color Pallette *OrganizationModelControllerApi* | [**delete_entity_csp_directives**](docs/OrganizationModelControllerApi.md#delete_entity_csp_directives) | **DELETE** /api/v1/entities/cspDirectives/{id} | Delete CSP Directives *OrganizationModelControllerApi* | [**delete_entity_data_sources**](docs/OrganizationModelControllerApi.md#delete_entity_data_sources) | **DELETE** /api/v1/entities/dataSources/{id} | Delete Data Source entity +*OrganizationModelControllerApi* | [**delete_entity_identity_providers**](docs/OrganizationModelControllerApi.md#delete_entity_identity_providers) | **DELETE** /api/v1/entities/identityProviders/{id} | Delete Identity Provider *OrganizationModelControllerApi* | [**delete_entity_jwks**](docs/OrganizationModelControllerApi.md#delete_entity_jwks) | **DELETE** /api/v1/entities/jwks/{id} | Delete Jwk -*OrganizationModelControllerApi* | [**delete_entity_notification_channels**](docs/OrganizationModelControllerApi.md#delete_entity_notification_channels) | **DELETE** /api/v1/entities/notificationChannels/{id} | +*OrganizationModelControllerApi* | [**delete_entity_llm_endpoints**](docs/OrganizationModelControllerApi.md#delete_entity_llm_endpoints) | **DELETE** /api/v1/entities/llmEndpoints/{id} | +*OrganizationModelControllerApi* | [**delete_entity_notification_channels**](docs/OrganizationModelControllerApi.md#delete_entity_notification_channels) | **DELETE** /api/v1/entities/notificationChannels/{id} | Delete Notification Channel entity *OrganizationModelControllerApi* | [**delete_entity_organization_settings**](docs/OrganizationModelControllerApi.md#delete_entity_organization_settings) | **DELETE** /api/v1/entities/organizationSettings/{id} | Delete Organization entity *OrganizationModelControllerApi* | [**delete_entity_themes**](docs/OrganizationModelControllerApi.md#delete_entity_themes) | **DELETE** /api/v1/entities/themes/{id} | Delete Theming *OrganizationModelControllerApi* | [**delete_entity_user_groups**](docs/OrganizationModelControllerApi.md#delete_entity_user_groups) | **DELETE** /api/v1/entities/userGroups/{id} | Delete UserGroup entity @@ -631,7 +693,9 @@ Class | Method | HTTP request | Description *OrganizationModelControllerApi* | [**get_all_entities_data_source_identifiers**](docs/OrganizationModelControllerApi.md#get_all_entities_data_source_identifiers) | **GET** /api/v1/entities/dataSourceIdentifiers | Get all Data Source Identifiers *OrganizationModelControllerApi* | [**get_all_entities_data_sources**](docs/OrganizationModelControllerApi.md#get_all_entities_data_sources) | **GET** /api/v1/entities/dataSources | Get Data Source entities *OrganizationModelControllerApi* | [**get_all_entities_entitlements**](docs/OrganizationModelControllerApi.md#get_all_entities_entitlements) | **GET** /api/v1/entities/entitlements | Get Entitlements +*OrganizationModelControllerApi* | [**get_all_entities_identity_providers**](docs/OrganizationModelControllerApi.md#get_all_entities_identity_providers) | **GET** /api/v1/entities/identityProviders | Get all Identity Providers *OrganizationModelControllerApi* | [**get_all_entities_jwks**](docs/OrganizationModelControllerApi.md#get_all_entities_jwks) | **GET** /api/v1/entities/jwks | Get all Jwks +*OrganizationModelControllerApi* | [**get_all_entities_llm_endpoints**](docs/OrganizationModelControllerApi.md#get_all_entities_llm_endpoints) | **GET** /api/v1/entities/llmEndpoints | Get all LLM endpoint entities *OrganizationModelControllerApi* | [**get_all_entities_notification_channels**](docs/OrganizationModelControllerApi.md#get_all_entities_notification_channels) | **GET** /api/v1/entities/notificationChannels | Get all Notification Channel entities *OrganizationModelControllerApi* | [**get_all_entities_organization_settings**](docs/OrganizationModelControllerApi.md#get_all_entities_organization_settings) | **GET** /api/v1/entities/organizationSettings | Get Organization entities *OrganizationModelControllerApi* | [**get_all_entities_themes**](docs/OrganizationModelControllerApi.md#get_all_entities_themes) | **GET** /api/v1/entities/themes | Get all Theming entities @@ -644,7 +708,9 @@ Class | Method | HTTP request | Description *OrganizationModelControllerApi* | [**get_entity_data_source_identifiers**](docs/OrganizationModelControllerApi.md#get_entity_data_source_identifiers) | **GET** /api/v1/entities/dataSourceIdentifiers/{id} | Get Data Source Identifier *OrganizationModelControllerApi* | [**get_entity_data_sources**](docs/OrganizationModelControllerApi.md#get_entity_data_sources) | **GET** /api/v1/entities/dataSources/{id} | Get Data Source entity *OrganizationModelControllerApi* | [**get_entity_entitlements**](docs/OrganizationModelControllerApi.md#get_entity_entitlements) | **GET** /api/v1/entities/entitlements/{id} | Get Entitlement +*OrganizationModelControllerApi* | [**get_entity_identity_providers**](docs/OrganizationModelControllerApi.md#get_entity_identity_providers) | **GET** /api/v1/entities/identityProviders/{id} | Get Identity Provider *OrganizationModelControllerApi* | [**get_entity_jwks**](docs/OrganizationModelControllerApi.md#get_entity_jwks) | **GET** /api/v1/entities/jwks/{id} | Get Jwk +*OrganizationModelControllerApi* | [**get_entity_llm_endpoints**](docs/OrganizationModelControllerApi.md#get_entity_llm_endpoints) | **GET** /api/v1/entities/llmEndpoints/{id} | Get LLM endpoint entity *OrganizationModelControllerApi* | [**get_entity_notification_channels**](docs/OrganizationModelControllerApi.md#get_entity_notification_channels) | **GET** /api/v1/entities/notificationChannels/{id} | Get Notification Channel entity *OrganizationModelControllerApi* | [**get_entity_organization_settings**](docs/OrganizationModelControllerApi.md#get_entity_organization_settings) | **GET** /api/v1/entities/organizationSettings/{id} | Get Organization entity *OrganizationModelControllerApi* | [**get_entity_themes**](docs/OrganizationModelControllerApi.md#get_entity_themes) | **GET** /api/v1/entities/themes/{id} | Get Theming @@ -655,7 +721,9 @@ Class | Method | HTTP request | Description *OrganizationModelControllerApi* | [**patch_entity_color_palettes**](docs/OrganizationModelControllerApi.md#patch_entity_color_palettes) | **PATCH** /api/v1/entities/colorPalettes/{id} | Patch Color Pallette *OrganizationModelControllerApi* | [**patch_entity_csp_directives**](docs/OrganizationModelControllerApi.md#patch_entity_csp_directives) | **PATCH** /api/v1/entities/cspDirectives/{id} | Patch CSP Directives *OrganizationModelControllerApi* | [**patch_entity_data_sources**](docs/OrganizationModelControllerApi.md#patch_entity_data_sources) | **PATCH** /api/v1/entities/dataSources/{id} | Patch Data Source entity +*OrganizationModelControllerApi* | [**patch_entity_identity_providers**](docs/OrganizationModelControllerApi.md#patch_entity_identity_providers) | **PATCH** /api/v1/entities/identityProviders/{id} | Patch Identity Provider *OrganizationModelControllerApi* | [**patch_entity_jwks**](docs/OrganizationModelControllerApi.md#patch_entity_jwks) | **PATCH** /api/v1/entities/jwks/{id} | Patch Jwk +*OrganizationModelControllerApi* | [**patch_entity_llm_endpoints**](docs/OrganizationModelControllerApi.md#patch_entity_llm_endpoints) | **PATCH** /api/v1/entities/llmEndpoints/{id} | Patch LLM endpoint entity *OrganizationModelControllerApi* | [**patch_entity_notification_channels**](docs/OrganizationModelControllerApi.md#patch_entity_notification_channels) | **PATCH** /api/v1/entities/notificationChannels/{id} | Patch Notification Channel entity *OrganizationModelControllerApi* | [**patch_entity_organization_settings**](docs/OrganizationModelControllerApi.md#patch_entity_organization_settings) | **PATCH** /api/v1/entities/organizationSettings/{id} | Patch Organization entity *OrganizationModelControllerApi* | [**patch_entity_themes**](docs/OrganizationModelControllerApi.md#patch_entity_themes) | **PATCH** /api/v1/entities/themes/{id} | Patch Theming @@ -665,7 +733,9 @@ Class | Method | HTTP request | Description *OrganizationModelControllerApi* | [**update_entity_color_palettes**](docs/OrganizationModelControllerApi.md#update_entity_color_palettes) | **PUT** /api/v1/entities/colorPalettes/{id} | Put Color Pallette *OrganizationModelControllerApi* | [**update_entity_csp_directives**](docs/OrganizationModelControllerApi.md#update_entity_csp_directives) | **PUT** /api/v1/entities/cspDirectives/{id} | Put CSP Directives *OrganizationModelControllerApi* | [**update_entity_data_sources**](docs/OrganizationModelControllerApi.md#update_entity_data_sources) | **PUT** /api/v1/entities/dataSources/{id} | Put Data Source entity +*OrganizationModelControllerApi* | [**update_entity_identity_providers**](docs/OrganizationModelControllerApi.md#update_entity_identity_providers) | **PUT** /api/v1/entities/identityProviders/{id} | Put Identity Provider *OrganizationModelControllerApi* | [**update_entity_jwks**](docs/OrganizationModelControllerApi.md#update_entity_jwks) | **PUT** /api/v1/entities/jwks/{id} | Put Jwk +*OrganizationModelControllerApi* | [**update_entity_llm_endpoints**](docs/OrganizationModelControllerApi.md#update_entity_llm_endpoints) | **PUT** /api/v1/entities/llmEndpoints/{id} | PUT LLM endpoint entity *OrganizationModelControllerApi* | [**update_entity_notification_channels**](docs/OrganizationModelControllerApi.md#update_entity_notification_channels) | **PUT** /api/v1/entities/notificationChannels/{id} | Put Notification Channel entity *OrganizationModelControllerApi* | [**update_entity_organization_settings**](docs/OrganizationModelControllerApi.md#update_entity_organization_settings) | **PUT** /api/v1/entities/organizationSettings/{id} | Put Organization entity *OrganizationModelControllerApi* | [**update_entity_themes**](docs/OrganizationModelControllerApi.md#update_entity_themes) | **PUT** /api/v1/entities/themes/{id} | Put Theming @@ -688,6 +758,7 @@ Class | Method | HTTP request | Description *WorkspaceObjectControllerApi* | [**create_entity_dashboard_plugins**](docs/WorkspaceObjectControllerApi.md#create_entity_dashboard_plugins) | **POST** /api/v1/entities/workspaces/{workspaceId}/dashboardPlugins | Post Plugins *WorkspaceObjectControllerApi* | [**create_entity_export_definitions**](docs/WorkspaceObjectControllerApi.md#create_entity_export_definitions) | **POST** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions | Post Export Definitions *WorkspaceObjectControllerApi* | [**create_entity_filter_contexts**](docs/WorkspaceObjectControllerApi.md#create_entity_filter_contexts) | **POST** /api/v1/entities/workspaces/{workspaceId}/filterContexts | Post Context Filters +*WorkspaceObjectControllerApi* | [**create_entity_filter_views**](docs/WorkspaceObjectControllerApi.md#create_entity_filter_views) | **POST** /api/v1/entities/workspaces/{workspaceId}/filterViews | Post Filter views *WorkspaceObjectControllerApi* | [**create_entity_metrics**](docs/WorkspaceObjectControllerApi.md#create_entity_metrics) | **POST** /api/v1/entities/workspaces/{workspaceId}/metrics | Post Metrics *WorkspaceObjectControllerApi* | [**create_entity_user_data_filters**](docs/WorkspaceObjectControllerApi.md#create_entity_user_data_filters) | **POST** /api/v1/entities/workspaces/{workspaceId}/userDataFilters | Post User Data Filters *WorkspaceObjectControllerApi* | [**create_entity_visualization_objects**](docs/WorkspaceObjectControllerApi.md#create_entity_visualization_objects) | **POST** /api/v1/entities/workspaces/{workspaceId}/visualizationObjects | Post Visualization Objects @@ -701,6 +772,7 @@ Class | Method | HTTP request | Description *WorkspaceObjectControllerApi* | [**delete_entity_dashboard_plugins**](docs/WorkspaceObjectControllerApi.md#delete_entity_dashboard_plugins) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/dashboardPlugins/{objectId} | Delete a Plugin *WorkspaceObjectControllerApi* | [**delete_entity_export_definitions**](docs/WorkspaceObjectControllerApi.md#delete_entity_export_definitions) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Delete an Export Definition *WorkspaceObjectControllerApi* | [**delete_entity_filter_contexts**](docs/WorkspaceObjectControllerApi.md#delete_entity_filter_contexts) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Delete a Context Filter +*WorkspaceObjectControllerApi* | [**delete_entity_filter_views**](docs/WorkspaceObjectControllerApi.md#delete_entity_filter_views) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Delete Filter view *WorkspaceObjectControllerApi* | [**delete_entity_metrics**](docs/WorkspaceObjectControllerApi.md#delete_entity_metrics) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Delete a Metric *WorkspaceObjectControllerApi* | [**delete_entity_user_data_filters**](docs/WorkspaceObjectControllerApi.md#delete_entity_user_data_filters) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/userDataFilters/{objectId} | Delete a User Data Filter *WorkspaceObjectControllerApi* | [**delete_entity_visualization_objects**](docs/WorkspaceObjectControllerApi.md#delete_entity_visualization_objects) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/visualizationObjects/{objectId} | Delete a Visualization Object @@ -717,6 +789,7 @@ Class | Method | HTTP request | Description *WorkspaceObjectControllerApi* | [**get_all_entities_export_definitions**](docs/WorkspaceObjectControllerApi.md#get_all_entities_export_definitions) | **GET** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions | Get all Export Definitions *WorkspaceObjectControllerApi* | [**get_all_entities_facts**](docs/WorkspaceObjectControllerApi.md#get_all_entities_facts) | **GET** /api/v1/entities/workspaces/{workspaceId}/facts | Get all Facts *WorkspaceObjectControllerApi* | [**get_all_entities_filter_contexts**](docs/WorkspaceObjectControllerApi.md#get_all_entities_filter_contexts) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterContexts | Get all Context Filters +*WorkspaceObjectControllerApi* | [**get_all_entities_filter_views**](docs/WorkspaceObjectControllerApi.md#get_all_entities_filter_views) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterViews | Get all Filter views *WorkspaceObjectControllerApi* | [**get_all_entities_labels**](docs/WorkspaceObjectControllerApi.md#get_all_entities_labels) | **GET** /api/v1/entities/workspaces/{workspaceId}/labels | Get all Labels *WorkspaceObjectControllerApi* | [**get_all_entities_metrics**](docs/WorkspaceObjectControllerApi.md#get_all_entities_metrics) | **GET** /api/v1/entities/workspaces/{workspaceId}/metrics | Get all Metrics *WorkspaceObjectControllerApi* | [**get_all_entities_user_data_filters**](docs/WorkspaceObjectControllerApi.md#get_all_entities_user_data_filters) | **GET** /api/v1/entities/workspaces/{workspaceId}/userDataFilters | Get all User Data Filters @@ -734,6 +807,7 @@ Class | Method | HTTP request | Description *WorkspaceObjectControllerApi* | [**get_entity_export_definitions**](docs/WorkspaceObjectControllerApi.md#get_entity_export_definitions) | **GET** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Get an Export Definition *WorkspaceObjectControllerApi* | [**get_entity_facts**](docs/WorkspaceObjectControllerApi.md#get_entity_facts) | **GET** /api/v1/entities/workspaces/{workspaceId}/facts/{objectId} | Get a Fact *WorkspaceObjectControllerApi* | [**get_entity_filter_contexts**](docs/WorkspaceObjectControllerApi.md#get_entity_filter_contexts) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Get a Context Filter +*WorkspaceObjectControllerApi* | [**get_entity_filter_views**](docs/WorkspaceObjectControllerApi.md#get_entity_filter_views) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Get Filter view *WorkspaceObjectControllerApi* | [**get_entity_labels**](docs/WorkspaceObjectControllerApi.md#get_entity_labels) | **GET** /api/v1/entities/workspaces/{workspaceId}/labels/{objectId} | Get a Label *WorkspaceObjectControllerApi* | [**get_entity_metrics**](docs/WorkspaceObjectControllerApi.md#get_entity_metrics) | **GET** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Get a Metric *WorkspaceObjectControllerApi* | [**get_entity_user_data_filters**](docs/WorkspaceObjectControllerApi.md#get_entity_user_data_filters) | **GET** /api/v1/entities/workspaces/{workspaceId}/userDataFilters/{objectId} | Get a User Data Filter @@ -748,6 +822,7 @@ Class | Method | HTTP request | Description *WorkspaceObjectControllerApi* | [**patch_entity_dashboard_plugins**](docs/WorkspaceObjectControllerApi.md#patch_entity_dashboard_plugins) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/dashboardPlugins/{objectId} | Patch a Plugin *WorkspaceObjectControllerApi* | [**patch_entity_export_definitions**](docs/WorkspaceObjectControllerApi.md#patch_entity_export_definitions) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Patch an Export Definition *WorkspaceObjectControllerApi* | [**patch_entity_filter_contexts**](docs/WorkspaceObjectControllerApi.md#patch_entity_filter_contexts) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Patch a Context Filter +*WorkspaceObjectControllerApi* | [**patch_entity_filter_views**](docs/WorkspaceObjectControllerApi.md#patch_entity_filter_views) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Patch Filter view *WorkspaceObjectControllerApi* | [**patch_entity_metrics**](docs/WorkspaceObjectControllerApi.md#patch_entity_metrics) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Patch a Metric *WorkspaceObjectControllerApi* | [**patch_entity_user_data_filters**](docs/WorkspaceObjectControllerApi.md#patch_entity_user_data_filters) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/userDataFilters/{objectId} | Patch a User Data Filter *WorkspaceObjectControllerApi* | [**patch_entity_visualization_objects**](docs/WorkspaceObjectControllerApi.md#patch_entity_visualization_objects) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/visualizationObjects/{objectId} | Patch a Visualization Object @@ -761,6 +836,7 @@ Class | Method | HTTP request | Description *WorkspaceObjectControllerApi* | [**update_entity_dashboard_plugins**](docs/WorkspaceObjectControllerApi.md#update_entity_dashboard_plugins) | **PUT** /api/v1/entities/workspaces/{workspaceId}/dashboardPlugins/{objectId} | Put a Plugin *WorkspaceObjectControllerApi* | [**update_entity_export_definitions**](docs/WorkspaceObjectControllerApi.md#update_entity_export_definitions) | **PUT** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Put an Export Definition *WorkspaceObjectControllerApi* | [**update_entity_filter_contexts**](docs/WorkspaceObjectControllerApi.md#update_entity_filter_contexts) | **PUT** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Put a Context Filter +*WorkspaceObjectControllerApi* | [**update_entity_filter_views**](docs/WorkspaceObjectControllerApi.md#update_entity_filter_views) | **PUT** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Put Filter views *WorkspaceObjectControllerApi* | [**update_entity_metrics**](docs/WorkspaceObjectControllerApi.md#update_entity_metrics) | **PUT** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Put a Metric *WorkspaceObjectControllerApi* | [**update_entity_user_data_filters**](docs/WorkspaceObjectControllerApi.md#update_entity_user_data_filters) | **PUT** /api/v1/entities/workspaces/{workspaceId}/userDataFilters/{objectId} | Put a User Data Filter *WorkspaceObjectControllerApi* | [**update_entity_visualization_objects**](docs/WorkspaceObjectControllerApi.md#update_entity_visualization_objects) | **PUT** /api/v1/entities/workspaces/{workspaceId}/visualizationObjects/{objectId} | Put a Visualization Object @@ -775,6 +851,7 @@ Class | Method | HTTP request | Description - [AbsoluteDateFilter](docs/AbsoluteDateFilter.md) - [AbsoluteDateFilterAbsoluteDateFilter](docs/AbsoluteDateFilterAbsoluteDateFilter.md) - [AbstractMeasureValueFilter](docs/AbstractMeasureValueFilter.md) + - [ActiveObjectIdentification](docs/ActiveObjectIdentification.md) - [AfmExecution](docs/AfmExecution.md) - [AfmExecutionResponse](docs/AfmExecutionResponse.md) - [AfmIdentifier](docs/AfmIdentifier.md) @@ -793,9 +870,13 @@ Class | Method | HTTP request | Description - [AfmValidDescendantsResponse](docs/AfmValidDescendantsResponse.md) - [AfmValidObjectsQuery](docs/AfmValidObjectsQuery.md) - [AfmValidObjectsResponse](docs/AfmValidObjectsResponse.md) + - [AlertAfm](docs/AlertAfm.md) + - [AlertCondition](docs/AlertCondition.md) + - [AlertConditionOperand](docs/AlertConditionOperand.md) - [AnomalyDetectionRequest](docs/AnomalyDetectionRequest.md) - [AnomalyDetectionResult](docs/AnomalyDetectionResult.md) - [ApiEntitlement](docs/ApiEntitlement.md) + - [ArithmeticMeasure](docs/ArithmeticMeasure.md) - [ArithmeticMeasureDefinition](docs/ArithmeticMeasureDefinition.md) - [ArithmeticMeasureDefinitionArithmeticMeasure](docs/ArithmeticMeasureDefinitionArithmeticMeasure.md) - [AssigneeIdentifier](docs/AssigneeIdentifier.md) @@ -810,6 +891,11 @@ Class | Method | HTTP request | Description - [AttributeResultHeader](docs/AttributeResultHeader.md) - [AutomationSchedule](docs/AutomationSchedule.md) - [AvailableAssignees](docs/AvailableAssignees.md) + - [ChatHistoryInteraction](docs/ChatHistoryInteraction.md) + - [ChatHistoryRequest](docs/ChatHistoryRequest.md) + - [ChatHistoryResult](docs/ChatHistoryResult.md) + - [ChatRequest](docs/ChatRequest.md) + - [ChatResult](docs/ChatResult.md) - [ClusteringRequest](docs/ClusteringRequest.md) - [ClusteringResult](docs/ClusteringResult.md) - [ColumnLocation](docs/ColumnLocation.md) @@ -819,8 +905,12 @@ Class | Method | HTTP request | Description - [ColumnStatisticsRequestFrom](docs/ColumnStatisticsRequestFrom.md) - [ColumnStatisticsResponse](docs/ColumnStatisticsResponse.md) - [ColumnWarning](docs/ColumnWarning.md) + - [Comparison](docs/Comparison.md) - [ComparisonMeasureValueFilter](docs/ComparisonMeasureValueFilter.md) - [ComparisonMeasureValueFilterComparisonMeasureValueFilter](docs/ComparisonMeasureValueFilterComparisonMeasureValueFilter.md) + - [ComparisonWrapper](docs/ComparisonWrapper.md) + - [CreatedVisualization](docs/CreatedVisualization.md) + - [CreatedVisualizations](docs/CreatedVisualizations.md) - [CustomLabel](docs/CustomLabel.md) - [CustomMetric](docs/CustomMetric.md) - [CustomOverride](docs/CustomOverride.md) @@ -874,7 +964,9 @@ Class | Method | HTTP request | Description - [DeclarativeMetric](docs/DeclarativeMetric.md) - [DeclarativeModel](docs/DeclarativeModel.md) - [DeclarativeNotificationChannel](docs/DeclarativeNotificationChannel.md) + - [DeclarativeNotificationChannelDestination](docs/DeclarativeNotificationChannelDestination.md) - [DeclarativeNotificationChannelIdentifier](docs/DeclarativeNotificationChannelIdentifier.md) + - [DeclarativeNotificationChannels](docs/DeclarativeNotificationChannels.md) - [DeclarativeOrganization](docs/DeclarativeOrganization.md) - [DeclarativeOrganizationInfo](docs/DeclarativeOrganizationInfo.md) - [DeclarativeOrganizationPermission](docs/DeclarativeOrganizationPermission.md) @@ -910,6 +1002,8 @@ Class | Method | HTTP request | Description - [DeclarativeWorkspaceModel](docs/DeclarativeWorkspaceModel.md) - [DeclarativeWorkspacePermissions](docs/DeclarativeWorkspacePermissions.md) - [DeclarativeWorkspaces](docs/DeclarativeWorkspaces.md) + - [DefaultSmtp](docs/DefaultSmtp.md) + - [DefaultSmtpAllOf](docs/DefaultSmtpAllOf.md) - [DependentEntitiesGraph](docs/DependentEntitiesGraph.md) - [DependentEntitiesNode](docs/DependentEntitiesNode.md) - [DependentEntitiesRequest](docs/DependentEntitiesRequest.md) @@ -919,6 +1013,7 @@ Class | Method | HTTP request | Description - [DependsOnDateFilter](docs/DependsOnDateFilter.md) - [DependsOnDateFilterAllOf](docs/DependsOnDateFilterAllOf.md) - [DependsOnItem](docs/DependsOnItem.md) + - [DimAttribute](docs/DimAttribute.md) - [Dimension](docs/Dimension.md) - [DimensionHeader](docs/DimensionHeader.md) - [Element](docs/Element.md) @@ -942,6 +1037,7 @@ Class | Method | HTTP request | Description - [FilterDefinitionForSimpleMeasure](docs/FilterDefinitionForSimpleMeasure.md) - [ForecastRequest](docs/ForecastRequest.md) - [ForecastResult](docs/ForecastResult.md) + - [FoundObjects](docs/FoundObjects.md) - [Frequency](docs/Frequency.md) - [FrequencyBucket](docs/FrequencyBucket.md) - [FrequencyProperties](docs/FrequencyProperties.md) @@ -1027,12 +1123,15 @@ Class | Method | HTTP request | Description - [JsonApiAttributeToOneLinkage](docs/JsonApiAttributeToOneLinkage.md) - [JsonApiAutomationIn](docs/JsonApiAutomationIn.md) - [JsonApiAutomationInAttributes](docs/JsonApiAutomationInAttributes.md) + - [JsonApiAutomationInAttributesAlert](docs/JsonApiAutomationInAttributesAlert.md) - [JsonApiAutomationInAttributesSchedule](docs/JsonApiAutomationInAttributesSchedule.md) - [JsonApiAutomationInDocument](docs/JsonApiAutomationInDocument.md) - [JsonApiAutomationInRelationships](docs/JsonApiAutomationInRelationships.md) + - [JsonApiAutomationInRelationshipsAnalyticalDashboard](docs/JsonApiAutomationInRelationshipsAnalyticalDashboard.md) - [JsonApiAutomationInRelationshipsExportDefinitions](docs/JsonApiAutomationInRelationshipsExportDefinitions.md) - [JsonApiAutomationInRelationshipsNotificationChannel](docs/JsonApiAutomationInRelationshipsNotificationChannel.md) - [JsonApiAutomationInRelationshipsRecipients](docs/JsonApiAutomationInRelationshipsRecipients.md) + - [JsonApiAutomationLinkage](docs/JsonApiAutomationLinkage.md) - [JsonApiAutomationOut](docs/JsonApiAutomationOut.md) - [JsonApiAutomationOutAttributes](docs/JsonApiAutomationOutAttributes.md) - [JsonApiAutomationOutDocument](docs/JsonApiAutomationOutDocument.md) @@ -1042,6 +1141,7 @@ Class | Method | HTTP request | Description - [JsonApiAutomationOutWithLinks](docs/JsonApiAutomationOutWithLinks.md) - [JsonApiAutomationPatch](docs/JsonApiAutomationPatch.md) - [JsonApiAutomationPatchDocument](docs/JsonApiAutomationPatchDocument.md) + - [JsonApiAutomationToOneLinkage](docs/JsonApiAutomationToOneLinkage.md) - [JsonApiColorPaletteIn](docs/JsonApiColorPaletteIn.md) - [JsonApiColorPaletteInAttributes](docs/JsonApiColorPaletteInAttributes.md) - [JsonApiColorPaletteInDocument](docs/JsonApiColorPaletteInDocument.md) @@ -1141,7 +1241,6 @@ Class | Method | HTTP request | Description - [JsonApiExportDefinitionInAttributesRequestPayload](docs/JsonApiExportDefinitionInAttributesRequestPayload.md) - [JsonApiExportDefinitionInDocument](docs/JsonApiExportDefinitionInDocument.md) - [JsonApiExportDefinitionInRelationships](docs/JsonApiExportDefinitionInRelationships.md) - - [JsonApiExportDefinitionInRelationshipsAnalyticalDashboard](docs/JsonApiExportDefinitionInRelationshipsAnalyticalDashboard.md) - [JsonApiExportDefinitionInRelationshipsVisualizationObject](docs/JsonApiExportDefinitionInRelationshipsVisualizationObject.md) - [JsonApiExportDefinitionLinkage](docs/JsonApiExportDefinitionLinkage.md) - [JsonApiExportDefinitionOut](docs/JsonApiExportDefinitionOut.md) @@ -1150,6 +1249,7 @@ Class | Method | HTTP request | Description - [JsonApiExportDefinitionOutIncludes](docs/JsonApiExportDefinitionOutIncludes.md) - [JsonApiExportDefinitionOutList](docs/JsonApiExportDefinitionOutList.md) - [JsonApiExportDefinitionOutRelationships](docs/JsonApiExportDefinitionOutRelationships.md) + - [JsonApiExportDefinitionOutRelationshipsAutomation](docs/JsonApiExportDefinitionOutRelationshipsAutomation.md) - [JsonApiExportDefinitionOutWithLinks](docs/JsonApiExportDefinitionOutWithLinks.md) - [JsonApiExportDefinitionPatch](docs/JsonApiExportDefinitionPatch.md) - [JsonApiExportDefinitionPatchDocument](docs/JsonApiExportDefinitionPatchDocument.md) @@ -1178,6 +1278,30 @@ Class | Method | HTTP request | Description - [JsonApiFilterContextPostOptionalId](docs/JsonApiFilterContextPostOptionalId.md) - [JsonApiFilterContextPostOptionalIdDocument](docs/JsonApiFilterContextPostOptionalIdDocument.md) - [JsonApiFilterContextToManyLinkage](docs/JsonApiFilterContextToManyLinkage.md) + - [JsonApiFilterViewIn](docs/JsonApiFilterViewIn.md) + - [JsonApiFilterViewInAttributes](docs/JsonApiFilterViewInAttributes.md) + - [JsonApiFilterViewInDocument](docs/JsonApiFilterViewInDocument.md) + - [JsonApiFilterViewInRelationships](docs/JsonApiFilterViewInRelationships.md) + - [JsonApiFilterViewInRelationshipsUser](docs/JsonApiFilterViewInRelationshipsUser.md) + - [JsonApiFilterViewOut](docs/JsonApiFilterViewOut.md) + - [JsonApiFilterViewOutDocument](docs/JsonApiFilterViewOutDocument.md) + - [JsonApiFilterViewOutIncludes](docs/JsonApiFilterViewOutIncludes.md) + - [JsonApiFilterViewOutList](docs/JsonApiFilterViewOutList.md) + - [JsonApiFilterViewOutWithLinks](docs/JsonApiFilterViewOutWithLinks.md) + - [JsonApiFilterViewPatch](docs/JsonApiFilterViewPatch.md) + - [JsonApiFilterViewPatchAttributes](docs/JsonApiFilterViewPatchAttributes.md) + - [JsonApiFilterViewPatchDocument](docs/JsonApiFilterViewPatchDocument.md) + - [JsonApiIdentityProviderIn](docs/JsonApiIdentityProviderIn.md) + - [JsonApiIdentityProviderInAttributes](docs/JsonApiIdentityProviderInAttributes.md) + - [JsonApiIdentityProviderInAttributesSpecification](docs/JsonApiIdentityProviderInAttributesSpecification.md) + - [JsonApiIdentityProviderInDocument](docs/JsonApiIdentityProviderInDocument.md) + - [JsonApiIdentityProviderOut](docs/JsonApiIdentityProviderOut.md) + - [JsonApiIdentityProviderOutDocument](docs/JsonApiIdentityProviderOutDocument.md) + - [JsonApiIdentityProviderOutList](docs/JsonApiIdentityProviderOutList.md) + - [JsonApiIdentityProviderOutWithLinks](docs/JsonApiIdentityProviderOutWithLinks.md) + - [JsonApiIdentityProviderPatch](docs/JsonApiIdentityProviderPatch.md) + - [JsonApiIdentityProviderPatchAttributes](docs/JsonApiIdentityProviderPatchAttributes.md) + - [JsonApiIdentityProviderPatchDocument](docs/JsonApiIdentityProviderPatchDocument.md) - [JsonApiJwkIn](docs/JsonApiJwkIn.md) - [JsonApiJwkInAttributes](docs/JsonApiJwkInAttributes.md) - [JsonApiJwkInAttributesContent](docs/JsonApiJwkInAttributesContent.md) @@ -1198,6 +1322,17 @@ Class | Method | HTTP request | Description - [JsonApiLabelOutWithLinks](docs/JsonApiLabelOutWithLinks.md) - [JsonApiLabelToManyLinkage](docs/JsonApiLabelToManyLinkage.md) - [JsonApiLabelToOneLinkage](docs/JsonApiLabelToOneLinkage.md) + - [JsonApiLlmEndpointIn](docs/JsonApiLlmEndpointIn.md) + - [JsonApiLlmEndpointInAttributes](docs/JsonApiLlmEndpointInAttributes.md) + - [JsonApiLlmEndpointInDocument](docs/JsonApiLlmEndpointInDocument.md) + - [JsonApiLlmEndpointOut](docs/JsonApiLlmEndpointOut.md) + - [JsonApiLlmEndpointOutAttributes](docs/JsonApiLlmEndpointOutAttributes.md) + - [JsonApiLlmEndpointOutDocument](docs/JsonApiLlmEndpointOutDocument.md) + - [JsonApiLlmEndpointOutList](docs/JsonApiLlmEndpointOutList.md) + - [JsonApiLlmEndpointOutWithLinks](docs/JsonApiLlmEndpointOutWithLinks.md) + - [JsonApiLlmEndpointPatch](docs/JsonApiLlmEndpointPatch.md) + - [JsonApiLlmEndpointPatchAttributes](docs/JsonApiLlmEndpointPatchAttributes.md) + - [JsonApiLlmEndpointPatchDocument](docs/JsonApiLlmEndpointPatchDocument.md) - [JsonApiMetricIn](docs/JsonApiMetricIn.md) - [JsonApiMetricInAttributes](docs/JsonApiMetricInAttributes.md) - [JsonApiMetricInAttributesContent](docs/JsonApiMetricInAttributesContent.md) @@ -1218,8 +1353,7 @@ Class | Method | HTTP request | Description - [JsonApiMetricToManyLinkage](docs/JsonApiMetricToManyLinkage.md) - [JsonApiNotificationChannelIn](docs/JsonApiNotificationChannelIn.md) - [JsonApiNotificationChannelInAttributes](docs/JsonApiNotificationChannelInAttributes.md) - - [JsonApiNotificationChannelInAttributesTriggersInner](docs/JsonApiNotificationChannelInAttributesTriggersInner.md) - - [JsonApiNotificationChannelInAttributesWebhook](docs/JsonApiNotificationChannelInAttributesWebhook.md) + - [JsonApiNotificationChannelInAttributesDestination](docs/JsonApiNotificationChannelInAttributesDestination.md) - [JsonApiNotificationChannelInDocument](docs/JsonApiNotificationChannelInDocument.md) - [JsonApiNotificationChannelLinkage](docs/JsonApiNotificationChannelLinkage.md) - [JsonApiNotificationChannelOut](docs/JsonApiNotificationChannelOut.md) @@ -1241,7 +1375,6 @@ Class | Method | HTTP request | Description - [JsonApiOrganizationOutIncludes](docs/JsonApiOrganizationOutIncludes.md) - [JsonApiOrganizationOutMeta](docs/JsonApiOrganizationOutMeta.md) - [JsonApiOrganizationOutRelationships](docs/JsonApiOrganizationOutRelationships.md) - - [JsonApiOrganizationOutRelationshipsBootstrapUser](docs/JsonApiOrganizationOutRelationshipsBootstrapUser.md) - [JsonApiOrganizationOutRelationshipsBootstrapUserGroup](docs/JsonApiOrganizationOutRelationshipsBootstrapUserGroup.md) - [JsonApiOrganizationPatch](docs/JsonApiOrganizationPatch.md) - [JsonApiOrganizationPatchDocument](docs/JsonApiOrganizationPatchDocument.md) @@ -1393,6 +1526,7 @@ Class | Method | HTTP request | Description - [LabelIdentifier](docs/LabelIdentifier.md) - [ListLinks](docs/ListLinks.md) - [ListLinksAllOf](docs/ListLinksAllOf.md) + - [LocalIdentifier](docs/LocalIdentifier.md) - [LocaleRequest](docs/LocaleRequest.md) - [ManageDashboardPermissionsRequestInner](docs/ManageDashboardPermissionsRequestInner.md) - [MeasureDefinition](docs/MeasureDefinition.md) @@ -1402,13 +1536,15 @@ Class | Method | HTTP request | Description - [MeasureItem](docs/MeasureItem.md) - [MeasureResultHeader](docs/MeasureResultHeader.md) - [MeasureValueFilter](docs/MeasureValueFilter.md) + - [Metric](docs/Metric.md) - [NegativeAttributeFilter](docs/NegativeAttributeFilter.md) - [NegativeAttributeFilterNegativeAttributeFilter](docs/NegativeAttributeFilterNegativeAttributeFilter.md) - [Note](docs/Note.md) - [Notes](docs/Notes.md) - - [NotificationTrigger](docs/NotificationTrigger.md) + - [NotificationChannelDestination](docs/NotificationChannelDestination.md) - [ObjectLinks](docs/ObjectLinks.md) - [ObjectLinksContainer](docs/ObjectLinksContainer.md) + - [OidcIdpSpecification](docs/OidcIdpSpecification.md) - [OrganizationPermissionAssignment](docs/OrganizationPermissionAssignment.md) - [PageMetadata](docs/PageMetadata.md) - [Paging](docs/Paging.md) @@ -1419,7 +1555,6 @@ Class | Method | HTTP request | Description - [PdmSql](docs/PdmSql.md) - [PermissionsAssignment](docs/PermissionsAssignment.md) - [PermissionsForAssignee](docs/PermissionsForAssignee.md) - - [PermissionsForAssigneeAllOf](docs/PermissionsForAssigneeAllOf.md) - [PermissionsForAssigneeRule](docs/PermissionsForAssigneeRule.md) - [PlatformUsage](docs/PlatformUsage.md) - [PlatformUsageRequest](docs/PlatformUsageRequest.md) @@ -1432,14 +1567,18 @@ Class | Method | HTTP request | Description - [PopMeasureDefinition](docs/PopMeasureDefinition.md) - [PositiveAttributeFilter](docs/PositiveAttributeFilter.md) - [PositiveAttributeFilterPositiveAttributeFilter](docs/PositiveAttributeFilterPositiveAttributeFilter.md) + - [Range](docs/Range.md) - [RangeMeasureValueFilter](docs/RangeMeasureValueFilter.md) - [RangeMeasureValueFilterRangeMeasureValueFilter](docs/RangeMeasureValueFilterRangeMeasureValueFilter.md) + - [RangeWrapper](docs/RangeWrapper.md) - [RankingFilter](docs/RankingFilter.md) - [RankingFilterRankingFilter](docs/RankingFilterRankingFilter.md) - [ReferenceIdentifier](docs/ReferenceIdentifier.md) - [ReferenceSourceColumn](docs/ReferenceSourceColumn.md) + - [Relative](docs/Relative.md) - [RelativeDateFilter](docs/RelativeDateFilter.md) - [RelativeDateFilterRelativeDateFilter](docs/RelativeDateFilterRelativeDateFilter.md) + - [RelativeWrapper](docs/RelativeWrapper.md) - [ResolveSettingsRequest](docs/ResolveSettingsRequest.md) - [ResolvedSetting](docs/ResolvedSetting.md) - [RestApiIdentifier](docs/RestApiIdentifier.md) @@ -1447,8 +1586,11 @@ Class | Method | HTTP request | Description - [ResultDimension](docs/ResultDimension.md) - [ResultDimensionHeader](docs/ResultDimensionHeader.md) - [ResultSpec](docs/ResultSpec.md) + - [RouteRequest](docs/RouteRequest.md) + - [RouteResult](docs/RouteResult.md) - [RsaSpecification](docs/RsaSpecification.md) - [RulePermission](docs/RulePermission.md) + - [SamlIdpSpecification](docs/SamlIdpSpecification.md) - [ScanRequest](docs/ScanRequest.md) - [ScanResultPdm](docs/ScanResultPdm.md) - [ScanSqlRequest](docs/ScanSqlRequest.md) @@ -1462,6 +1604,8 @@ Class | Method | HTTP request | Description - [SimpleMeasureDefinitionMeasure](docs/SimpleMeasureDefinitionMeasure.md) - [Skeleton](docs/Skeleton.md) - [SmartFunctionResponse](docs/SmartFunctionResponse.md) + - [Smtp](docs/Smtp.md) + - [SmtpAllOf](docs/SmtpAllOf.md) - [SortKey](docs/SortKey.md) - [SortKeyAttribute](docs/SortKeyAttribute.md) - [SortKeyAttributeAttribute](docs/SortKeyAttributeAttribute.md) @@ -1485,6 +1629,7 @@ Class | Method | HTTP request | Description - [TotalExecutionResultHeader](docs/TotalExecutionResultHeader.md) - [TotalResultHeader](docs/TotalResultHeader.md) - [UserAssignee](docs/UserAssignee.md) + - [UserContext](docs/UserContext.md) - [UserGroupAssignee](docs/UserGroupAssignee.md) - [UserGroupIdentifier](docs/UserGroupIdentifier.md) - [UserGroupPermission](docs/UserGroupPermission.md) @@ -1499,8 +1644,10 @@ Class | Method | HTTP request | Description - [UserManagementWorkspacePermissionAssignment](docs/UserManagementWorkspacePermissionAssignment.md) - [UserPermission](docs/UserPermission.md) - [ValidateByItem](docs/ValidateByItem.md) + - [Value](docs/Value.md) - [VisualExportRequest](docs/VisualExportRequest.md) - [Webhook](docs/Webhook.md) + - [WebhookAllOf](docs/WebhookAllOf.md) - [WorkspaceDataSource](docs/WorkspaceDataSource.md) - [WorkspaceIdentifier](docs/WorkspaceIdentifier.md) - [WorkspacePermissionAssignment](docs/WorkspacePermissionAssignment.md) diff --git a/gooddata-api-client/docs/AIApi.md b/gooddata-api-client/docs/AIApi.md index cb390f962..0156ed9b8 100644 --- a/gooddata-api-client/docs/AIApi.md +++ b/gooddata-api-client/docs/AIApi.md @@ -4,13 +4,14 @@ All URIs are relative to *http://localhost* Method | HTTP request | Description ------------- | ------------- | ------------- -[**metadata_sync**](AIApi.md#metadata_sync) | **POST** /api/v1/actions/workspaces/{workspaceId}/metadataSync | (BETA) Sync Metadata to AI services +[**metadata_sync**](AIApi.md#metadata_sync) | **POST** /api/v1/actions/workspaces/{workspaceId}/metadataSync | (BETA) Sync Metadata to other services +[**metadata_sync_organization**](AIApi.md#metadata_sync_organization) | **POST** /api/v1/actions/organization/metadataSync | (BETA) Sync organization scope Metadata to other services # **metadata_sync** > metadata_sync(workspace_id) -(BETA) Sync Metadata to AI services +(BETA) Sync Metadata to other services (BETA) Temporary solution. Later relevant metadata actions will trigger it in its scope only. @@ -37,7 +38,7 @@ with gooddata_api_client.ApiClient() as api_client: # example passing only required values which don't have defaults set try: - # (BETA) Sync Metadata to AI services + # (BETA) Sync Metadata to other services api_instance.metadata_sync(workspace_id) except gooddata_api_client.ApiException as e: print("Exception when calling AIApi->metadata_sync: %s\n" % e) @@ -72,3 +73,64 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) +# **metadata_sync_organization** +> metadata_sync_organization() + +(BETA) Sync organization scope Metadata to other services + +(BETA) Temporary solution. Later relevant metadata actions will trigger sync in their scope only. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import ai_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = ai_api.AIApi(api_client) + + # example, this endpoint has no required or optional parameters + try: + # (BETA) Sync organization scope Metadata to other services + api_instance.metadata_sync_organization() + except gooddata_api_client.ApiException as e: + print("Exception when calling AIApi->metadata_sync_organization: %s\n" % e) +``` + + +### Parameters +This endpoint does not need any parameter. + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/gooddata-api-client/docs/ActionsApi.md b/gooddata-api-client/docs/ActionsApi.md index fe49a3745..2782ebd16 100644 --- a/gooddata-api-client/docs/ActionsApi.md +++ b/gooddata-api-client/docs/ActionsApi.md @@ -4,6 +4,9 @@ All URIs are relative to *http://localhost* Method | HTTP request | Description ------------- | ------------- | ------------- +[**ai_chat**](ActionsApi.md#ai_chat) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/chat | (BETA) Chat with AI +[**ai_chat_history**](ActionsApi.md#ai_chat_history) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/chatHistory | (BETA) Get Chat History +[**ai_route**](ActionsApi.md#ai_route) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/route | (BETA) Route to supported use cases based on this input query. [**ai_search**](ActionsApi.md#ai_search) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/search | (BETA) Semantic Search in Metadata [**all_platform_usage**](ActionsApi.md#all_platform_usage) | **GET** /api/v1/actions/collectUsage | Info about the platform usage. [**anomaly_detection**](ActionsApi.md#anomaly_detection) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/functions/anomalyDetection/{resultId} | (EXPERIMENTAL) Smart functions - Anomaly Detection @@ -42,7 +45,8 @@ Method | HTTP request | Description [**manage_data_source_permissions**](ActionsApi.md#manage_data_source_permissions) | **POST** /api/v1/actions/dataSources/{dataSourceId}/managePermissions | Manage Permissions for a Data Source [**manage_organization_permissions**](ActionsApi.md#manage_organization_permissions) | **POST** /api/v1/actions/organization/managePermissions | Manage Permissions for a Organization [**manage_workspace_permissions**](ActionsApi.md#manage_workspace_permissions) | **POST** /api/v1/actions/workspaces/{workspaceId}/managePermissions | Manage Permissions for a Workspace -[**metadata_sync**](ActionsApi.md#metadata_sync) | **POST** /api/v1/actions/workspaces/{workspaceId}/metadataSync | (BETA) Sync Metadata to AI services +[**metadata_sync**](ActionsApi.md#metadata_sync) | **POST** /api/v1/actions/workspaces/{workspaceId}/metadataSync | (BETA) Sync Metadata to other services +[**metadata_sync_organization**](ActionsApi.md#metadata_sync_organization) | **POST** /api/v1/actions/organization/metadataSync | (BETA) Sync organization scope Metadata to other services [**overridden_child_entities**](ActionsApi.md#overridden_child_entities) | **GET** /api/v1/actions/workspaces/{workspaceId}/overriddenChildEntities | Finds identifier overrides in workspace hierarchy. [**particular_platform_usage**](ActionsApi.md#particular_platform_usage) | **POST** /api/v1/actions/collectUsage | Info about the platform usage for particular items. [**register_upload_notification**](ActionsApi.md#register_upload_notification) | **POST** /api/v1/actions/dataSources/{dataSourceId}/uploadNotification | Register an upload notification @@ -58,10 +62,246 @@ Method | HTTP request | Description [**set_translations**](ActionsApi.md#set_translations) | **POST** /api/v1/actions/workspaces/{workspaceId}/translations/set | Set translations for entities. [**test_data_source**](ActionsApi.md#test_data_source) | **POST** /api/v1/actions/dataSources/{dataSourceId}/test | Test data source connection by data source id [**test_data_source_definition**](ActionsApi.md#test_data_source_definition) | **POST** /api/v1/actions/dataSource/test | Test connection by data source definition +[**unsubscribe_all_automations**](ActionsApi.md#unsubscribe_all_automations) | **DELETE** /api/v1/actions/organization/automations/unsubscribe | Unsubscribe from all automations in all workspaces +[**unsubscribe_automation**](ActionsApi.md#unsubscribe_automation) | **DELETE** /api/v1/actions/workspaces/{workspaceId}/automations/{automationId}/unsubscribe | Unsubscribe from an automation +[**unsubscribe_workspace_automations**](ActionsApi.md#unsubscribe_workspace_automations) | **DELETE** /api/v1/actions/workspaces/{workspaceId}/automations/unsubscribe | Unsubscribe from all automations in the workspace [**workspace_resolve_all_settings**](ActionsApi.md#workspace_resolve_all_settings) | **GET** /api/v1/actions/workspaces/{workspaceId}/resolveSettings | Values for all settings. [**workspace_resolve_settings**](ActionsApi.md#workspace_resolve_settings) | **POST** /api/v1/actions/workspaces/{workspaceId}/resolveSettings | Values for selected settings. +# **ai_chat** +> ChatResult ai_chat(workspace_id, chat_request) + +(BETA) Chat with AI + +(BETA) Combines multiple use cases such as search, create visualizations, ... + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from gooddata_api_client.model.chat_result import ChatResult +from gooddata_api_client.model.chat_request import ChatRequest +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = actions_api.ActionsApi(api_client) + workspace_id = "/6bUUGjjNSwg0_bs" # str | Workspace identifier + chat_request = ChatRequest( + chat_history_thread_id="chat_history_thread_id_example", + limit_create=3, + limit_create_context=10, + limit_search=5, + question="question_example", + relevant_score_threshold=0.4, + search_score_threshold=0.9, + title_to_descriptor_ratio=0.7, + user_context=UserContext( + active_object=ActiveObjectIdentification( + id="id_example", + type="type_example", + workspace_id="workspace_id_example", + ), + ), + ) # ChatRequest | + + # example passing only required values which don't have defaults set + try: + # (BETA) Chat with AI + api_response = api_instance.ai_chat(workspace_id, chat_request) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->ai_chat: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **chat_request** | [**ChatRequest**](ChatRequest.md)| | + +### Return type + +[**ChatResult**](ChatResult.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **ai_chat_history** +> ChatHistoryResult ai_chat_history(workspace_id, chat_history_request) + +(BETA) Get Chat History + +(BETA) Post thread ID (and optionally interaction ID) to get full/partial chat history. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from gooddata_api_client.model.chat_history_result import ChatHistoryResult +from gooddata_api_client.model.chat_history_request import ChatHistoryRequest +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = actions_api.ActionsApi(api_client) + workspace_id = "/6bUUGjjNSwg0_bs" # str | Workspace identifier + chat_history_request = ChatHistoryRequest( + chat_history_interaction_id=1, + chat_history_thread_id="chat_history_thread_id_example", + reset=True, + user_feedback="POSITIVE", + ) # ChatHistoryRequest | + + # example passing only required values which don't have defaults set + try: + # (BETA) Get Chat History + api_response = api_instance.ai_chat_history(workspace_id, chat_history_request) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->ai_chat_history: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **chat_history_request** | [**ChatHistoryRequest**](ChatHistoryRequest.md)| | + +### Return type + +[**ChatHistoryResult**](ChatHistoryResult.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **ai_route** +> RouteResult ai_route(workspace_id, route_request) + +(BETA) Route to supported use cases based on this input query. + +(BETA) Uses similarity (e.g. cosine distance) to find most similar use cases. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from gooddata_api_client.model.route_result import RouteResult +from gooddata_api_client.model.route_request import RouteRequest +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = actions_api.ActionsApi(api_client) + workspace_id = "/6bUUGjjNSwg0_bs" # str | Workspace identifier + route_request = RouteRequest( + question="question_example", + ) # RouteRequest | + + # example passing only required values which don't have defaults set + try: + # (BETA) Route to supported use cases based on this input query. + api_response = api_instance.ai_route(workspace_id, route_request) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->ai_route: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **route_request** | [**RouteRequest**](RouteRequest.md)| | + +### Return type + +[**RouteResult**](RouteResult.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + # **ai_search** > SearchResult ai_search(workspace_id, search_request) @@ -98,6 +338,7 @@ with gooddata_api_client.ApiClient() as api_client: "attribute", ], question="question_example", + relevant_score_threshold=0.3, title_to_descriptor_ratio=0.7, ) # SearchRequest | @@ -3188,7 +3429,7 @@ No authorization required # **metadata_sync** > metadata_sync(workspace_id) -(BETA) Sync Metadata to AI services +(BETA) Sync Metadata to other services (BETA) Temporary solution. Later relevant metadata actions will trigger it in its scope only. @@ -3215,7 +3456,7 @@ with gooddata_api_client.ApiClient() as api_client: # example passing only required values which don't have defaults set try: - # (BETA) Sync Metadata to AI services + # (BETA) Sync Metadata to other services api_instance.metadata_sync(workspace_id) except gooddata_api_client.ApiException as e: print("Exception when calling ActionsApi->metadata_sync: %s\n" % e) @@ -3242,6 +3483,67 @@ No authorization required - **Accept**: Not defined +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **metadata_sync_organization** +> metadata_sync_organization() + +(BETA) Sync organization scope Metadata to other services + +(BETA) Temporary solution. Later relevant metadata actions will trigger sync in their scope only. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = actions_api.ActionsApi(api_client) + + # example, this endpoint has no required or optional parameters + try: + # (BETA) Sync organization scope Metadata to other services + api_instance.metadata_sync_organization() + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->metadata_sync_organization: %s\n" % e) +``` + + +### Parameters +This endpoint does not need any parameter. + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + ### HTTP response details | Status code | Description | Response headers | @@ -4385,6 +4687,193 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) +# **unsubscribe_all_automations** +> unsubscribe_all_automations() + +Unsubscribe from all automations in all workspaces + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = actions_api.ActionsApi(api_client) + + # example, this endpoint has no required or optional parameters + try: + # Unsubscribe from all automations in all workspaces + api_instance.unsubscribe_all_automations() + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->unsubscribe_all_automations: %s\n" % e) +``` + + +### Parameters +This endpoint does not need any parameter. + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | No Content | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **unsubscribe_automation** +> unsubscribe_automation(workspace_id, automation_id) + +Unsubscribe from an automation + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = actions_api.ActionsApi(api_client) + workspace_id = "workspaceId_example" # str | + automation_id = "automationId_example" # str | + + # example passing only required values which don't have defaults set + try: + # Unsubscribe from an automation + api_instance.unsubscribe_automation(workspace_id, automation_id) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->unsubscribe_automation: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **automation_id** | **str**| | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | No Content | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **unsubscribe_workspace_automations** +> unsubscribe_workspace_automations(workspace_id) + +Unsubscribe from all automations in the workspace + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = actions_api.ActionsApi(api_client) + workspace_id = "workspaceId_example" # str | + + # example passing only required values which don't have defaults set + try: + # Unsubscribe from all automations in the workspace + api_instance.unsubscribe_workspace_automations(workspace_id) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->unsubscribe_workspace_automations: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | No Content | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + # **workspace_resolve_all_settings** > [ResolvedSetting] workspace_resolve_all_settings(workspace_id) diff --git a/gooddata-api-client/docs/JsonApiNotificationChannelInAttributesWebhook.md b/gooddata-api-client/docs/ActiveObjectIdentification.md similarity index 67% rename from gooddata-api-client/docs/JsonApiNotificationChannelInAttributesWebhook.md rename to gooddata-api-client/docs/ActiveObjectIdentification.md index 9580e6e50..d9a2475ae 100644 --- a/gooddata-api-client/docs/JsonApiNotificationChannelInAttributesWebhook.md +++ b/gooddata-api-client/docs/ActiveObjectIdentification.md @@ -1,12 +1,13 @@ -# JsonApiNotificationChannelInAttributesWebhook +# ActiveObjectIdentification +Object, with which the user is actively working. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**url** | **str** | The webhook URL. | -**has_token** | **bool** | | [optional] -**token** | **str, none_type** | Bearer token for the webhook. | [optional] +**id** | **str** | Object ID. | +**type** | **str** | Object type, e.g. dashboard. | +**workspace_id** | **str** | Workspace ID. | **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/gooddata-api-client/docs/AlertAfm.md b/gooddata-api-client/docs/AlertAfm.md new file mode 100644 index 000000000..3dc2e92a6 --- /dev/null +++ b/gooddata-api-client/docs/AlertAfm.md @@ -0,0 +1,13 @@ +# AlertAfm + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**filters** | [**[FilterDefinition]**](FilterDefinition.md) | Various filter types to filter execution result. | +**measures** | [**[MeasureItem]**](MeasureItem.md) | Metrics to be computed. One metric if the alert condition is evaluated to a scalar. Two metrics when they should be evaluated to each other. | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/AlertCondition.md b/gooddata-api-client/docs/AlertCondition.md new file mode 100644 index 000000000..6ad87592b --- /dev/null +++ b/gooddata-api-client/docs/AlertCondition.md @@ -0,0 +1,15 @@ +# AlertCondition + +Alert trigger condition. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**comparison** | [**Comparison**](Comparison.md) | | [optional] +**range** | [**Range**](Range.md) | | [optional] +**relative** | [**Relative**](Relative.md) | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/AlertConditionOperand.md b/gooddata-api-client/docs/AlertConditionOperand.md new file mode 100644 index 000000000..7d062ed1d --- /dev/null +++ b/gooddata-api-client/docs/AlertConditionOperand.md @@ -0,0 +1,16 @@ +# AlertConditionOperand + +Operand of the alert condition. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**format** | **str, none_type** | Metric format. | [optional] if omitted the server will use the default value of "#,##0.00" +**title** | **str, none_type** | Metric title. | [optional] +**local_identifier** | **str** | Local identifier of the metric to be compared. | [optional] +**value** | **float** | Value of the alert threshold to compare the metric to. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/ArithmeticMeasure.md b/gooddata-api-client/docs/ArithmeticMeasure.md new file mode 100644 index 000000000..f1633d912 --- /dev/null +++ b/gooddata-api-client/docs/ArithmeticMeasure.md @@ -0,0 +1,14 @@ +# ArithmeticMeasure + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**left** | [**LocalIdentifier**](LocalIdentifier.md) | | +**operator** | **str** | Arithmetic operator. DIFFERENCE - m₁−m₂ - the difference between two metrics. CHANGE - (m₁−m₂)÷m₂ - the relative difference between two metrics. | +**right** | [**LocalIdentifier**](LocalIdentifier.md) | | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/AutomationSchedule.md b/gooddata-api-client/docs/AutomationSchedule.md index 0d6ea65a4..495ba7fa8 100644 --- a/gooddata-api-client/docs/AutomationSchedule.md +++ b/gooddata-api-client/docs/AutomationSchedule.md @@ -5,7 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **cron** | **str** | Cron expression defining the schedule of the automation. The format is SECOND MINUTE HOUR DAY-OF-MONTH MONTH DAY-OF-WEEK (YEAR). The example expression signifies an action every 30 minutes from 9:00 to 17:00 on workdays. | -**cron_description** | **str** | Human-readable description of the cron expression. | [optional] +**cron_description** | **str** | Human-readable description of the cron expression. | [optional] [readonly] **first_run** | **datetime** | Timestamp of the first scheduled action. If not provided default to the next scheduled time. | [optional] **timezone** | **str** | Timezone in which the schedule is defined. | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/gooddata-api-client/docs/AutomationsApi.md b/gooddata-api-client/docs/AutomationsApi.md index cc7ffeb38..aa9497791 100644 --- a/gooddata-api-client/docs/AutomationsApi.md +++ b/gooddata-api-client/docs/AutomationsApi.md @@ -7,8 +7,10 @@ Method | HTTP request | Description [**create_entity_automations**](AutomationsApi.md#create_entity_automations) | **POST** /api/v1/entities/workspaces/{workspaceId}/automations | Post Automations [**delete_entity_automations**](AutomationsApi.md#delete_entity_automations) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/automations/{objectId} | Delete an Automation [**get_all_entities_automations**](AutomationsApi.md#get_all_entities_automations) | **GET** /api/v1/entities/workspaces/{workspaceId}/automations | Get all Automations +[**get_automations**](AutomationsApi.md#get_automations) | **GET** /api/v1/layout/workspaces/{workspaceId}/automations | Get automations [**get_entity_automations**](AutomationsApi.md#get_entity_automations) | **GET** /api/v1/entities/workspaces/{workspaceId}/automations/{objectId} | Get an Automation [**patch_entity_automations**](AutomationsApi.md#patch_entity_automations) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/automations/{objectId} | Patch an Automation +[**set_automations**](AutomationsApi.md#set_automations) | **PUT** /api/v1/layout/workspaces/{workspaceId}/automations | Set automations [**update_entity_automations**](AutomationsApi.md#update_entity_automations) | **PUT** /api/v1/entities/workspaces/{workspaceId}/automations/{objectId} | Put an Automation @@ -42,16 +44,31 @@ with gooddata_api_client.ApiClient() as api_client: json_api_automation_in_document = JsonApiAutomationInDocument( data=JsonApiAutomationIn( attributes=JsonApiAutomationInAttributes( + alert=JsonApiAutomationInAttributesAlert( + condition=AlertCondition(), + execution=AlertAfm( + filters=[ + FilterDefinition(), + ], + measures=[ + MeasureItem( + definition=MeasureDefinition(), + local_identifier="metric_1", + ), + ], + ), + trigger="ALWAYS", + ), are_relations_valid=True, description="description_example", details=None, metadata={}, schedule=JsonApiAutomationInAttributesSchedule( cron="0 */30 9-17 ? * MON-FRI", - cron_description="cron_description_example", first_run=dateutil_parser('2025-01-01T12:00:00Z'), timezone="Europe/Prague", ), + state="ACTIVE", tags=[ "tags_example", ], @@ -59,6 +76,9 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiAutomationInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), export_definitions=JsonApiAutomationInRelationshipsExportDefinitions( data=JsonApiExportDefinitionToManyLinkage([ JsonApiExportDefinitionLinkage( @@ -83,7 +103,7 @@ with gooddata_api_client.ApiClient() as api_client: ), ) # JsonApiAutomationInDocument | include = [ - "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) meta_include = [ "metaInclude=origin,all", @@ -165,7 +185,7 @@ with gooddata_api_client.ApiClient() as api_client: api_instance = automations_api.AutomationsApi(api_client) workspace_id = "workspaceId_example" # str | object_id = "objectId_example" # str | - filter = "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) # example passing only required values which don't have defaults set try: @@ -241,9 +261,9 @@ with gooddata_api_client.ApiClient() as api_client: api_instance = automations_api.AutomationsApi(api_client) workspace_id = "workspaceId_example" # str | origin = "ALL" # str | (optional) if omitted the server will use the default value of "ALL" - filter = "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 @@ -310,6 +330,86 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) +# **get_automations** +> [DeclarativeAutomation] get_automations(workspace_id) + +Get automations + +Retrieve automations for the specific workspace + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import automations_api +from gooddata_api_client.model.declarative_automation import DeclarativeAutomation +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = automations_api.AutomationsApi(api_client) + workspace_id = "workspaceId_example" # str | + exclude = [ + "ACTIVITY_INFO", + ] # [str] | (optional) + + # example passing only required values which don't have defaults set + try: + # Get automations + api_response = api_instance.get_automations(workspace_id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling AutomationsApi->get_automations: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get automations + api_response = api_instance.get_automations(workspace_id, exclude=exclude) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling AutomationsApi->get_automations: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **exclude** | **[str]**| | [optional] + +### Return type + +[**[DeclarativeAutomation]**](DeclarativeAutomation.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Retrieved automations. | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + # **get_entity_automations** > JsonApiAutomationOutDocument get_entity_automations(workspace_id, object_id) @@ -337,9 +437,9 @@ with gooddata_api_client.ApiClient() as api_client: api_instance = automations_api.AutomationsApi(api_client) workspace_id = "workspaceId_example" # str | object_id = "objectId_example" # str | - filter = "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) x_gdc_validate_relations = False # bool | (optional) if omitted the server will use the default value of False meta_include = [ @@ -429,16 +529,31 @@ with gooddata_api_client.ApiClient() as api_client: json_api_automation_patch_document = JsonApiAutomationPatchDocument( data=JsonApiAutomationPatch( attributes=JsonApiAutomationInAttributes( + alert=JsonApiAutomationInAttributesAlert( + condition=AlertCondition(), + execution=AlertAfm( + filters=[ + FilterDefinition(), + ], + measures=[ + MeasureItem( + definition=MeasureDefinition(), + local_identifier="metric_1", + ), + ], + ), + trigger="ALWAYS", + ), are_relations_valid=True, description="description_example", details=None, metadata={}, schedule=JsonApiAutomationInAttributesSchedule( cron="0 */30 9-17 ? * MON-FRI", - cron_description="cron_description_example", first_run=dateutil_parser('2025-01-01T12:00:00Z'), timezone="Europe/Prague", ), + state="ACTIVE", tags=[ "tags_example", ], @@ -446,6 +561,9 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiAutomationInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), export_definitions=JsonApiAutomationInRelationshipsExportDefinitions( data=JsonApiExportDefinitionToManyLinkage([ JsonApiExportDefinitionLinkage( @@ -469,9 +587,9 @@ with gooddata_api_client.ApiClient() as api_client: type="automation", ), ) # JsonApiAutomationPatchDocument | - filter = "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) # example passing only required values which don't have defaults set @@ -525,6 +643,119 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) +# **set_automations** +> set_automations(workspace_id, declarative_automation) + +Set automations + +Set automations for the specific workspace. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import automations_api +from gooddata_api_client.model.declarative_automation import DeclarativeAutomation +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = automations_api.AutomationsApi(api_client) + workspace_id = "workspaceId_example" # str | + declarative_automation = [ + DeclarativeAutomation( + created_at="2023-07-20 12:30", + created_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), + description="description_example", + details={ + "key": "key_example", + }, + export_definitions=[ + DeclarativeExportDefinitionIdentifier( + id="export123", + type="exportDefinition", + ), + ], + id="/6bUUGjjNSwg0_bs", + metadata=JsonNode(), + modified_at="2023-07-20 12:30", + modified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), + notification_channel=DeclarativeNotificationChannelIdentifier( + id="webhook123", + type="notificationChannel", + ), + recipients=[ + DeclarativeUserIdentifier( + id="employee123", + type="user", + ), + ], + schedule=AutomationSchedule( + cron="0 */30 9-17 ? * MON-FRI", + first_run=dateutil_parser('2025-01-01T12:00:00Z'), + timezone="Europe/Prague", + ), + state="ACTIVE", + tags=[ + "["Revenue","Sales"]", + ], + title="title_example", + ), + ] # [DeclarativeAutomation] | + + # example passing only required values which don't have defaults set + try: + # Set automations + api_instance.set_automations(workspace_id, declarative_automation) + except gooddata_api_client.ApiException as e: + print("Exception when calling AutomationsApi->set_automations: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **declarative_automation** | [**[DeclarativeAutomation]**](DeclarativeAutomation.md)| | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | Automations successfully set. | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + # **update_entity_automations** > JsonApiAutomationOutDocument update_entity_automations(workspace_id, object_id, json_api_automation_in_document) @@ -556,16 +787,31 @@ with gooddata_api_client.ApiClient() as api_client: json_api_automation_in_document = JsonApiAutomationInDocument( data=JsonApiAutomationIn( attributes=JsonApiAutomationInAttributes( + alert=JsonApiAutomationInAttributesAlert( + condition=AlertCondition(), + execution=AlertAfm( + filters=[ + FilterDefinition(), + ], + measures=[ + MeasureItem( + definition=MeasureDefinition(), + local_identifier="metric_1", + ), + ], + ), + trigger="ALWAYS", + ), are_relations_valid=True, description="description_example", details=None, metadata={}, schedule=JsonApiAutomationInAttributesSchedule( cron="0 */30 9-17 ? * MON-FRI", - cron_description="cron_description_example", first_run=dateutil_parser('2025-01-01T12:00:00Z'), timezone="Europe/Prague", ), + state="ACTIVE", tags=[ "tags_example", ], @@ -573,6 +819,9 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiAutomationInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), export_definitions=JsonApiAutomationInRelationshipsExportDefinitions( data=JsonApiExportDefinitionToManyLinkage([ JsonApiExportDefinitionLinkage( @@ -596,9 +845,9 @@ with gooddata_api_client.ApiClient() as api_client: type="automation", ), ) # JsonApiAutomationInDocument | - filter = "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) # example passing only required values which don't have defaults set diff --git a/gooddata-api-client/docs/ChatHistoryInteraction.md b/gooddata-api-client/docs/ChatHistoryInteraction.md new file mode 100644 index 000000000..2b57c5038 --- /dev/null +++ b/gooddata-api-client/docs/ChatHistoryInteraction.md @@ -0,0 +1,20 @@ +# ChatHistoryInteraction + +List of chat history interactions. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**interaction_finished** | **bool** | Has the interaction already finished? Can be used for polling when interaction is in progress. | +**interaction_id** | **int** | Chat History interaction ID. Unique ID for each interaction. | +**question** | **str** | User question | +**routing** | [**RouteResult**](RouteResult.md) | | +**thread_id** | **str** | Chat History thread ID. Backend persists chat history and returns ID for further requests. | +**created_visualizations** | [**CreatedVisualizations**](CreatedVisualizations.md) | | [optional] +**found_objects** | [**FoundObjects**](FoundObjects.md) | | [optional] +**text_response** | **str** | Text response for general questions. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/ChatHistoryRequest.md b/gooddata-api-client/docs/ChatHistoryRequest.md new file mode 100644 index 000000000..418a487d8 --- /dev/null +++ b/gooddata-api-client/docs/ChatHistoryRequest.md @@ -0,0 +1,15 @@ +# ChatHistoryRequest + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**chat_history_interaction_id** | **int** | Return chat history records only after this interaction ID. If empty, complete chat history is returned. | [optional] +**chat_history_thread_id** | **str** | Chat History thread ID. Optional, backend can create it if not provided. | [optional] +**reset** | **bool** | User feedback. | [optional] +**user_feedback** | **str** | User feedback. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/NotificationTrigger.md b/gooddata-api-client/docs/ChatHistoryResult.md similarity index 76% rename from gooddata-api-client/docs/NotificationTrigger.md rename to gooddata-api-client/docs/ChatHistoryResult.md index 109226e34..e0834787a 100644 --- a/gooddata-api-client/docs/NotificationTrigger.md +++ b/gooddata-api-client/docs/ChatHistoryResult.md @@ -1,11 +1,10 @@ -# NotificationTrigger +# ChatHistoryResult ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**type** | **str** | The notification trigger type. | -**metadata** | [**JsonNode**](JsonNode.md) | | [optional] +**interactions** | [**[ChatHistoryInteraction]**](ChatHistoryInteraction.md) | List of chat history interactions. | **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/gooddata-api-client/docs/ChatRequest.md b/gooddata-api-client/docs/ChatRequest.md new file mode 100644 index 000000000..179ad2148 --- /dev/null +++ b/gooddata-api-client/docs/ChatRequest.md @@ -0,0 +1,20 @@ +# ChatRequest + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**question** | **str** | User question | +**chat_history_thread_id** | **str** | Chat History thread ID. Backend persists chat history and returns ID for further requests. | [optional] +**limit_create** | **int** | Maximum number of created results. | [optional] if omitted the server will use the default value of 3 +**limit_create_context** | **int** | Maximum number of relevant objects included into context for LLM (for each object type). | [optional] if omitted the server will use the default value of 10 +**limit_search** | **int** | Maximum number of search results. | [optional] if omitted the server will use the default value of 5 +**relevant_score_threshold** | **float** | Score, above which we return found objects. Below this score objects are not relevant. | [optional] if omitted the server will use the default value of 0.4 +**search_score_threshold** | **float** | Score, above which we return found object(s) and don't call LLM to create new objects. | [optional] if omitted the server will use the default value of 0.9 +**title_to_descriptor_ratio** | **float** | Temporary for experiments. Ratio of title score to descriptor score. | [optional] if omitted the server will use the default value of 0.7 +**user_context** | [**UserContext**](UserContext.md) | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/ChatResult.md b/gooddata-api-client/docs/ChatResult.md new file mode 100644 index 000000000..f1239ddab --- /dev/null +++ b/gooddata-api-client/docs/ChatResult.md @@ -0,0 +1,16 @@ +# ChatResult + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**routing** | [**RouteResult**](RouteResult.md) | | +**chat_history_thread_id** | **str** | Chat History thread ID. Backend persists chat history and returns ID for further requests. | [optional] +**created_visualizations** | [**CreatedVisualizations**](CreatedVisualizations.md) | | [optional] +**found_objects** | [**FoundObjects**](FoundObjects.md) | | [optional] +**text_response** | **str** | Text response for general questions. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiNotificationChannelInAttributesTriggersInner.md b/gooddata-api-client/docs/Comparison.md similarity index 72% rename from gooddata-api-client/docs/JsonApiNotificationChannelInAttributesTriggersInner.md rename to gooddata-api-client/docs/Comparison.md index 7c8e6cf7c..87a8ab9ef 100644 --- a/gooddata-api-client/docs/JsonApiNotificationChannelInAttributesTriggersInner.md +++ b/gooddata-api-client/docs/Comparison.md @@ -1,11 +1,12 @@ -# JsonApiNotificationChannelInAttributesTriggersInner +# Comparison ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**type** | **str** | The notification trigger type. | -**metadata** | [**JsonNode**](JsonNode.md) | | [optional] +**left** | [**LocalIdentifier**](LocalIdentifier.md) | | +**operator** | **str** | | +**right** | [**AlertConditionOperand**](AlertConditionOperand.md) | | **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/gooddata-api-client/docs/PermissionsForAssigneeAllOf.md b/gooddata-api-client/docs/ComparisonWrapper.md similarity index 78% rename from gooddata-api-client/docs/PermissionsForAssigneeAllOf.md rename to gooddata-api-client/docs/ComparisonWrapper.md index 91f1bf02b..69c11fe50 100644 --- a/gooddata-api-client/docs/PermissionsForAssigneeAllOf.md +++ b/gooddata-api-client/docs/ComparisonWrapper.md @@ -1,10 +1,10 @@ -# PermissionsForAssigneeAllOf +# ComparisonWrapper ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**assignee_identifier** | [**AssigneeIdentifier**](AssigneeIdentifier.md) | | [optional] +**comparison** | [**Comparison**](Comparison.md) | | **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/gooddata-api-client/docs/CreatedVisualization.md b/gooddata-api-client/docs/CreatedVisualization.md new file mode 100644 index 000000000..50923485d --- /dev/null +++ b/gooddata-api-client/docs/CreatedVisualization.md @@ -0,0 +1,17 @@ +# CreatedVisualization + +List of created visualization objects + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**dimensionality** | [**[DimAttribute]**](DimAttribute.md) | List of attributes representing the dimensionality of the new visualization | +**id** | **str** | Proposed ID of the new visualization | +**metrics** | [**[Metric]**](Metric.md) | List of metrics to be used in the new visualization | +**title** | **str** | Proposed title of the new visualization | +**visualization_type** | **str** | Visualization type requested in question | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/CreatedVisualizations.md b/gooddata-api-client/docs/CreatedVisualizations.md new file mode 100644 index 000000000..ec75479f8 --- /dev/null +++ b/gooddata-api-client/docs/CreatedVisualizations.md @@ -0,0 +1,14 @@ +# CreatedVisualizations + +Visualization definitions created by AI. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**objects** | [**[CreatedVisualization]**](CreatedVisualization.md) | List of created visualization objects | +**reasoning** | **str** | Reasoning from LLM. Description of how and why the answer was generated. | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/DashboardPermissionsAssignment.md b/gooddata-api-client/docs/DashboardPermissionsAssignment.md index 538afa054..e8ac93711 100644 --- a/gooddata-api-client/docs/DashboardPermissionsAssignment.md +++ b/gooddata-api-client/docs/DashboardPermissionsAssignment.md @@ -6,6 +6,8 @@ Desired levels of permissions for an assignee. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **permissions** | **[str]** | | +**assignee_identifier** | [**AssigneeIdentifier**](AssigneeIdentifier.md) | | +**assignee_rule** | [**AssigneeRule**](AssigneeRule.md) | | **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/gooddata-api-client/docs/DataFiltersApi.md b/gooddata-api-client/docs/DataFiltersApi.md index e6d3cc00f..c5fa50dc1 100644 --- a/gooddata-api-client/docs/DataFiltersApi.md +++ b/gooddata-api-client/docs/DataFiltersApi.md @@ -66,7 +66,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiUserDataFilterInRelationships( - user=JsonApiOrganizationOutRelationshipsBootstrapUser( + user=JsonApiFilterViewInRelationshipsUser( data=JsonApiUserToOneLinkage(None), ), user_group=JsonApiOrganizationOutRelationshipsBootstrapUserGroup( @@ -1221,7 +1221,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiUserDataFilterInRelationships( - user=JsonApiOrganizationOutRelationshipsBootstrapUser( + user=JsonApiFilterViewInRelationshipsUser( data=JsonApiUserToOneLinkage(None), ), user_group=JsonApiOrganizationOutRelationshipsBootstrapUserGroup( @@ -1626,7 +1626,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiUserDataFilterInRelationships( - user=JsonApiOrganizationOutRelationshipsBootstrapUser( + user=JsonApiFilterViewInRelationshipsUser( data=JsonApiUserToOneLinkage(None), ), user_group=JsonApiOrganizationOutRelationshipsBootstrapUserGroup( diff --git a/gooddata-api-client/docs/DeclarativeAutomation.md b/gooddata-api-client/docs/DeclarativeAutomation.md index e034c5afe..11e47b224 100644 --- a/gooddata-api-client/docs/DeclarativeAutomation.md +++ b/gooddata-api-client/docs/DeclarativeAutomation.md @@ -16,7 +16,8 @@ Name | Type | Description | Notes **notification_channel** | [**DeclarativeNotificationChannelIdentifier**](DeclarativeNotificationChannelIdentifier.md) | | [optional] **recipients** | [**[DeclarativeUserIdentifier]**](DeclarativeUserIdentifier.md) | | [optional] **schedule** | [**AutomationSchedule**](AutomationSchedule.md) | | [optional] -**tags** | **[str]** | A list of tags. | [optional] +**state** | **str** | Current state of the automation. | [optional] if omitted the server will use the default value of "ACTIVE" +**tags** | **[str]** | | [optional] **title** | **str** | | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/gooddata-api-client/docs/DeclarativeNotificationChannel.md b/gooddata-api-client/docs/DeclarativeNotificationChannel.md index 0b0607c27..dfc7fd4f4 100644 --- a/gooddata-api-client/docs/DeclarativeNotificationChannel.md +++ b/gooddata-api-client/docs/DeclarativeNotificationChannel.md @@ -6,10 +6,12 @@ A declarative form of a particular notification channel. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **id** | **str** | Identifier of a notification channel | +**custom_dashboard_url** | **str** | Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}. | [optional] **description** | **str** | Description of a notification channel. | [optional] +**destination** | [**DeclarativeNotificationChannelDestination**](DeclarativeNotificationChannelDestination.md) | | [optional] +**destination_type** | **str, none_type** | | [optional] [readonly] +**enable_multiple_recipients** | **bool** | Whether notifications sent to the channel can have multiple recipients. | [optional] if omitted the server will use the default value of True **name** | **str** | Name of a notification channel. | [optional] -**triggers** | [**[NotificationTrigger]**](NotificationTrigger.md) | The triggers that are to be used to send notifications to the channel. | [optional] -**webhook** | [**Webhook**](Webhook.md) | | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/gooddata-api-client/docs/DeclarativeNotificationChannelDestination.md b/gooddata-api-client/docs/DeclarativeNotificationChannelDestination.md new file mode 100644 index 000000000..6d9d8c598 --- /dev/null +++ b/gooddata-api-client/docs/DeclarativeNotificationChannelDestination.md @@ -0,0 +1,21 @@ +# DeclarativeNotificationChannelDestination + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**from_email** | **str** | E-mail address to send notifications from. | [optional] if omitted the server will use the default value of "no-reply@gooddata.com" +**from_email_name** | **str** | An optional e-mail name to send notifications from. | [optional] if omitted the server will use the default value of "GoodData" +**host** | **str** | The SMTP server address. | [optional] +**password** | **str** | The SMTP server password. | [optional] +**port** | **int** | The SMTP server port. | [optional] +**username** | **str** | The SMTP server username. | [optional] +**has_token** | **bool, none_type** | Flag indicating if webhook has a token. | [optional] [readonly] +**token** | **str, none_type** | Bearer token for the webhook. | [optional] +**url** | **str** | The webhook URL. | [optional] +**type** | **str** | The destination type. | [optional] if omitted the server will use the default value of "WEBHOOK" +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/DeclarativeNotificationChannels.md b/gooddata-api-client/docs/DeclarativeNotificationChannels.md new file mode 100644 index 000000000..afb9d1a97 --- /dev/null +++ b/gooddata-api-client/docs/DeclarativeNotificationChannels.md @@ -0,0 +1,13 @@ +# DeclarativeNotificationChannels + +Notification channels. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**notification_channels** | [**[DeclarativeNotificationChannel]**](DeclarativeNotificationChannel.md) | | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/DefaultSmtp.md b/gooddata-api-client/docs/DefaultSmtp.md new file mode 100644 index 000000000..903320802 --- /dev/null +++ b/gooddata-api-client/docs/DefaultSmtp.md @@ -0,0 +1,15 @@ +# DefaultSmtp + +Default SMTP destination for notifications. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**type** | **str** | The destination type. | defaults to "DEFAULT_SMTP" +**from_email** | **str** | E-mail address to send notifications from. Currently this does not have any effect. E-mail 'no-reply@gooddata.com' is used instead. | [optional] if omitted the server will use the default value of "no-reply@gooddata.com" +**from_email_name** | **str** | An optional e-mail name to send notifications from. Currently this does not have any effect. E-mail from name 'GoodData' is used instead. | [optional] if omitted the server will use the default value of "GoodData" +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/DefaultSmtpAllOf.md b/gooddata-api-client/docs/DefaultSmtpAllOf.md new file mode 100644 index 000000000..126995760 --- /dev/null +++ b/gooddata-api-client/docs/DefaultSmtpAllOf.md @@ -0,0 +1,14 @@ +# DefaultSmtpAllOf + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**from_email** | **str** | E-mail address to send notifications from. Currently this does not have any effect. E-mail 'no-reply@gooddata.com' is used instead. | [optional] if omitted the server will use the default value of "no-reply@gooddata.com" +**from_email_name** | **str** | An optional e-mail name to send notifications from. Currently this does not have any effect. E-mail from name 'GoodData' is used instead. | [optional] if omitted the server will use the default value of "GoodData" +**type** | **str** | The destination type. | [optional] if omitted the server will use the default value of "DEFAULT_SMTP" +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/DimAttribute.md b/gooddata-api-client/docs/DimAttribute.md new file mode 100644 index 000000000..f6bf5bf6f --- /dev/null +++ b/gooddata-api-client/docs/DimAttribute.md @@ -0,0 +1,14 @@ +# DimAttribute + +List of attributes representing the dimensionality of the new visualization + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **str** | ID of the object | +**type** | **str** | Object type | defaults to "attribute" +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/ElementsRequest.md b/gooddata-api-client/docs/ElementsRequest.md index 3f3dbde70..8d321bf1b 100644 --- a/gooddata-api-client/docs/ElementsRequest.md +++ b/gooddata-api-client/docs/ElementsRequest.md @@ -8,13 +8,13 @@ Name | Type | Description | Notes **cache_id** | **str** | If specified, the element data will be taken from the result with the same cacheId if it is available. | [optional] **complement_filter** | **bool** | Inverse filters: * ```false``` - return items matching ```patternFilter``` and ```exactFilter``` * ```true``` - return items not matching ```patternFilter``` and ```exactFilter``` | [optional] if omitted the server will use the default value of False **data_sampling_percentage** | **float** | Specifies percentage of source table data scanned during the computation. This field is deprecated and is no longer used during the elements computation. | [optional] if omitted the server will use the default value of 100.0 -**depends_on** | [**[ElementsRequestDependsOnInner]**](ElementsRequestDependsOnInner.md) | Return only items, whose are not filtered out by the parent filters. | [optional] +**depends_on** | [**[ElementsRequestDependsOnInner]**](ElementsRequestDependsOnInner.md) | Return only items that are not filtered-out by the parent filters. | [optional] **exact_filter** | **[str, none_type]** | Return only items, whose ```label``` title exactly matches one of ```filter```. | [optional] **exclude_primary_label** | **bool** | Excludes items from the result that differ only by primary label * ```false``` - return items with distinct primary label * ```true``` - return items with distinct requested label | [optional] if omitted the server will use the default value of False **filter_by** | [**FilterBy**](FilterBy.md) | | [optional] **pattern_filter** | **str** | Return only items, whose ```label``` title case insensitively contains ```filter``` as substring. | [optional] **sort_order** | **str** | Sort order of returned items. Items are sorted by ```label``` title. If no sort order is specified then attribute's ```sortDirection``` is used, which is ASC by default | [optional] -**validate_by** | [**[ValidateByItem]**](ValidateByItem.md) | Return only items, what are computable on metric. | [optional] +**validate_by** | [**[ValidateByItem]**](ValidateByItem.md) | Return only items that are computable on metric. | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/gooddata-api-client/docs/EntitiesApi.md b/gooddata-api-client/docs/EntitiesApi.md index bd9e60d75..353243ca8 100644 --- a/gooddata-api-client/docs/EntitiesApi.md +++ b/gooddata-api-client/docs/EntitiesApi.md @@ -15,7 +15,10 @@ Method | HTTP request | Description [**create_entity_data_sources**](EntitiesApi.md#create_entity_data_sources) | **POST** /api/v1/entities/dataSources | Post Data Sources [**create_entity_export_definitions**](EntitiesApi.md#create_entity_export_definitions) | **POST** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions | Post Export Definitions [**create_entity_filter_contexts**](EntitiesApi.md#create_entity_filter_contexts) | **POST** /api/v1/entities/workspaces/{workspaceId}/filterContexts | Post Context Filters +[**create_entity_filter_views**](EntitiesApi.md#create_entity_filter_views) | **POST** /api/v1/entities/workspaces/{workspaceId}/filterViews | Post Filter views +[**create_entity_identity_providers**](EntitiesApi.md#create_entity_identity_providers) | **POST** /api/v1/entities/identityProviders | Post Identity Providers [**create_entity_jwks**](EntitiesApi.md#create_entity_jwks) | **POST** /api/v1/entities/jwks | Post Jwks +[**create_entity_llm_endpoints**](EntitiesApi.md#create_entity_llm_endpoints) | **POST** /api/v1/entities/llmEndpoints | Post LLM endpoint entities [**create_entity_metrics**](EntitiesApi.md#create_entity_metrics) | **POST** /api/v1/entities/workspaces/{workspaceId}/metrics | Post Metrics [**create_entity_notification_channels**](EntitiesApi.md#create_entity_notification_channels) | **POST** /api/v1/entities/notificationChannels | Post Notification Channel entities [**create_entity_organization_settings**](EntitiesApi.md#create_entity_organization_settings) | **POST** /api/v1/entities/organizationSettings | Post Organization Setting entities @@ -40,9 +43,12 @@ Method | HTTP request | Description [**delete_entity_data_sources**](EntitiesApi.md#delete_entity_data_sources) | **DELETE** /api/v1/entities/dataSources/{id} | Delete Data Source entity [**delete_entity_export_definitions**](EntitiesApi.md#delete_entity_export_definitions) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Delete an Export Definition [**delete_entity_filter_contexts**](EntitiesApi.md#delete_entity_filter_contexts) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Delete a Context Filter +[**delete_entity_filter_views**](EntitiesApi.md#delete_entity_filter_views) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Delete Filter view +[**delete_entity_identity_providers**](EntitiesApi.md#delete_entity_identity_providers) | **DELETE** /api/v1/entities/identityProviders/{id} | Delete Identity Provider [**delete_entity_jwks**](EntitiesApi.md#delete_entity_jwks) | **DELETE** /api/v1/entities/jwks/{id} | Delete Jwk +[**delete_entity_llm_endpoints**](EntitiesApi.md#delete_entity_llm_endpoints) | **DELETE** /api/v1/entities/llmEndpoints/{id} | [**delete_entity_metrics**](EntitiesApi.md#delete_entity_metrics) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Delete a Metric -[**delete_entity_notification_channels**](EntitiesApi.md#delete_entity_notification_channels) | **DELETE** /api/v1/entities/notificationChannels/{id} | +[**delete_entity_notification_channels**](EntitiesApi.md#delete_entity_notification_channels) | **DELETE** /api/v1/entities/notificationChannels/{id} | Delete Notification Channel entity [**delete_entity_organization_settings**](EntitiesApi.md#delete_entity_organization_settings) | **DELETE** /api/v1/entities/organizationSettings/{id} | Delete Organization entity [**delete_entity_themes**](EntitiesApi.md#delete_entity_themes) | **DELETE** /api/v1/entities/themes/{id} | Delete Theming [**delete_entity_user_data_filters**](EntitiesApi.md#delete_entity_user_data_filters) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/userDataFilters/{objectId} | Delete a User Data Filter @@ -70,8 +76,11 @@ Method | HTTP request | Description [**get_all_entities_export_definitions**](EntitiesApi.md#get_all_entities_export_definitions) | **GET** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions | Get all Export Definitions [**get_all_entities_facts**](EntitiesApi.md#get_all_entities_facts) | **GET** /api/v1/entities/workspaces/{workspaceId}/facts | Get all Facts [**get_all_entities_filter_contexts**](EntitiesApi.md#get_all_entities_filter_contexts) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterContexts | Get all Context Filters +[**get_all_entities_filter_views**](EntitiesApi.md#get_all_entities_filter_views) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterViews | Get all Filter views +[**get_all_entities_identity_providers**](EntitiesApi.md#get_all_entities_identity_providers) | **GET** /api/v1/entities/identityProviders | Get all Identity Providers [**get_all_entities_jwks**](EntitiesApi.md#get_all_entities_jwks) | **GET** /api/v1/entities/jwks | Get all Jwks [**get_all_entities_labels**](EntitiesApi.md#get_all_entities_labels) | **GET** /api/v1/entities/workspaces/{workspaceId}/labels | Get all Labels +[**get_all_entities_llm_endpoints**](EntitiesApi.md#get_all_entities_llm_endpoints) | **GET** /api/v1/entities/llmEndpoints | Get all LLM endpoint entities [**get_all_entities_metrics**](EntitiesApi.md#get_all_entities_metrics) | **GET** /api/v1/entities/workspaces/{workspaceId}/metrics | Get all Metrics [**get_all_entities_notification_channels**](EntitiesApi.md#get_all_entities_notification_channels) | **GET** /api/v1/entities/notificationChannels | Get all Notification Channel entities [**get_all_entities_organization_settings**](EntitiesApi.md#get_all_entities_organization_settings) | **GET** /api/v1/entities/organizationSettings | Get Organization entities @@ -105,8 +114,11 @@ Method | HTTP request | Description [**get_entity_export_definitions**](EntitiesApi.md#get_entity_export_definitions) | **GET** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Get an Export Definition [**get_entity_facts**](EntitiesApi.md#get_entity_facts) | **GET** /api/v1/entities/workspaces/{workspaceId}/facts/{objectId} | Get a Fact [**get_entity_filter_contexts**](EntitiesApi.md#get_entity_filter_contexts) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Get a Context Filter +[**get_entity_filter_views**](EntitiesApi.md#get_entity_filter_views) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Get Filter view +[**get_entity_identity_providers**](EntitiesApi.md#get_entity_identity_providers) | **GET** /api/v1/entities/identityProviders/{id} | Get Identity Provider [**get_entity_jwks**](EntitiesApi.md#get_entity_jwks) | **GET** /api/v1/entities/jwks/{id} | Get Jwk [**get_entity_labels**](EntitiesApi.md#get_entity_labels) | **GET** /api/v1/entities/workspaces/{workspaceId}/labels/{objectId} | Get a Label +[**get_entity_llm_endpoints**](EntitiesApi.md#get_entity_llm_endpoints) | **GET** /api/v1/entities/llmEndpoints/{id} | Get LLM endpoint entity [**get_entity_metrics**](EntitiesApi.md#get_entity_metrics) | **GET** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Get a Metric [**get_entity_notification_channels**](EntitiesApi.md#get_entity_notification_channels) | **GET** /api/v1/entities/notificationChannels/{id} | Get Notification Channel entity [**get_entity_organization_settings**](EntitiesApi.md#get_entity_organization_settings) | **GET** /api/v1/entities/organizationSettings/{id} | Get Organization entity @@ -134,7 +146,10 @@ Method | HTTP request | Description [**patch_entity_data_sources**](EntitiesApi.md#patch_entity_data_sources) | **PATCH** /api/v1/entities/dataSources/{id} | Patch Data Source entity [**patch_entity_export_definitions**](EntitiesApi.md#patch_entity_export_definitions) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Patch an Export Definition [**patch_entity_filter_contexts**](EntitiesApi.md#patch_entity_filter_contexts) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Patch a Context Filter +[**patch_entity_filter_views**](EntitiesApi.md#patch_entity_filter_views) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Patch Filter view +[**patch_entity_identity_providers**](EntitiesApi.md#patch_entity_identity_providers) | **PATCH** /api/v1/entities/identityProviders/{id} | Patch Identity Provider [**patch_entity_jwks**](EntitiesApi.md#patch_entity_jwks) | **PATCH** /api/v1/entities/jwks/{id} | Patch Jwk +[**patch_entity_llm_endpoints**](EntitiesApi.md#patch_entity_llm_endpoints) | **PATCH** /api/v1/entities/llmEndpoints/{id} | Patch LLM endpoint entity [**patch_entity_metrics**](EntitiesApi.md#patch_entity_metrics) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Patch a Metric [**patch_entity_notification_channels**](EntitiesApi.md#patch_entity_notification_channels) | **PATCH** /api/v1/entities/notificationChannels/{id} | Patch Notification Channel entity [**patch_entity_organization_settings**](EntitiesApi.md#patch_entity_organization_settings) | **PATCH** /api/v1/entities/organizationSettings/{id} | Patch Organization entity @@ -159,7 +174,10 @@ Method | HTTP request | Description [**update_entity_data_sources**](EntitiesApi.md#update_entity_data_sources) | **PUT** /api/v1/entities/dataSources/{id} | Put Data Source entity [**update_entity_export_definitions**](EntitiesApi.md#update_entity_export_definitions) | **PUT** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Put an Export Definition [**update_entity_filter_contexts**](EntitiesApi.md#update_entity_filter_contexts) | **PUT** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Put a Context Filter +[**update_entity_filter_views**](EntitiesApi.md#update_entity_filter_views) | **PUT** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Put Filter views +[**update_entity_identity_providers**](EntitiesApi.md#update_entity_identity_providers) | **PUT** /api/v1/entities/identityProviders/{id} | Put Identity Provider [**update_entity_jwks**](EntitiesApi.md#update_entity_jwks) | **PUT** /api/v1/entities/jwks/{id} | Put Jwk +[**update_entity_llm_endpoints**](EntitiesApi.md#update_entity_llm_endpoints) | **PUT** /api/v1/entities/llmEndpoints/{id} | PUT LLM endpoint entity [**update_entity_metrics**](EntitiesApi.md#update_entity_metrics) | **PUT** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Put a Metric [**update_entity_notification_channels**](EntitiesApi.md#update_entity_notification_channels) | **PUT** /api/v1/entities/notificationChannels/{id} | Put Notification Channel entity [**update_entity_organization_settings**](EntitiesApi.md#update_entity_organization_settings) | **PUT** /api/v1/entities/organizationSettings/{id} | Put Organization entity @@ -477,16 +495,31 @@ with gooddata_api_client.ApiClient() as api_client: json_api_automation_in_document = JsonApiAutomationInDocument( data=JsonApiAutomationIn( attributes=JsonApiAutomationInAttributes( + alert=JsonApiAutomationInAttributesAlert( + condition=AlertCondition(), + execution=AlertAfm( + filters=[ + FilterDefinition(), + ], + measures=[ + MeasureItem( + definition=MeasureDefinition(), + local_identifier="metric_1", + ), + ], + ), + trigger="ALWAYS", + ), are_relations_valid=True, description="description_example", details=None, metadata={}, schedule=JsonApiAutomationInAttributesSchedule( cron="0 */30 9-17 ? * MON-FRI", - cron_description="cron_description_example", first_run=dateutil_parser('2025-01-01T12:00:00Z'), timezone="Europe/Prague", ), + state="ACTIVE", tags=[ "tags_example", ], @@ -494,6 +527,9 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiAutomationInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), export_definitions=JsonApiAutomationInRelationshipsExportDefinitions( data=JsonApiExportDefinitionToManyLinkage([ JsonApiExportDefinitionLinkage( @@ -518,7 +554,7 @@ with gooddata_api_client.ApiClient() as api_client: ), ) # JsonApiAutomationInDocument | include = [ - "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) meta_include = [ "metaInclude=origin,all", @@ -1060,7 +1096,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiExportDefinitionInRelationships( - analytical_dashboard=JsonApiExportDefinitionInRelationshipsAnalyticalDashboard( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( data=JsonApiAnalyticalDashboardToOneLinkage(None), ), visualization_object=JsonApiExportDefinitionInRelationshipsVisualizationObject( @@ -1071,7 +1107,7 @@ with gooddata_api_client.ApiClient() as api_client: ), ) # JsonApiExportDefinitionPostOptionalIdDocument | include = [ - "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) meta_include = [ "metaInclude=origin,all", @@ -1218,6 +1254,186 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**201** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **create_entity_filter_views** +> JsonApiFilterViewOutDocument create_entity_filter_views(workspace_id, json_api_filter_view_in_document) + +Post Filter views + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_filter_view_in_document import JsonApiFilterViewInDocument +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + workspace_id = "workspaceId_example" # str | + json_api_filter_view_in_document = JsonApiFilterViewInDocument( + data=JsonApiFilterViewIn( + attributes=JsonApiFilterViewInAttributes( + are_relations_valid=True, + content={}, + description="description_example", + is_default=True, + tags=[ + "tags_example", + ], + title="title_example", + ), + id="id1", + relationships=JsonApiFilterViewInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), + user=JsonApiFilterViewInRelationshipsUser( + data=JsonApiUserToOneLinkage(None), + ), + ), + type="filterView", + ), + ) # JsonApiFilterViewInDocument | + include = [ + "include=analyticalDashboard,user", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + + # example passing only required values which don't have defaults set + try: + # Post Filter views + api_response = api_instance.create_entity_filter_views(workspace_id, json_api_filter_view_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->create_entity_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Post Filter views + api_response = api_instance.create_entity_filter_views(workspace_id, json_api_filter_view_in_document, include=include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->create_entity_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **json_api_filter_view_in_document** | [**JsonApiFilterViewInDocument**](JsonApiFilterViewInDocument.md)| | + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + +### Return type + +[**JsonApiFilterViewOutDocument**](JsonApiFilterViewOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**201** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **create_entity_identity_providers** +> JsonApiIdentityProviderOutDocument create_entity_identity_providers(json_api_identity_provider_in_document) + +Post Identity Providers + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument +from gooddata_api_client.model.json_api_identity_provider_in_document import JsonApiIdentityProviderInDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + json_api_identity_provider_in_document = JsonApiIdentityProviderInDocument( + data=JsonApiIdentityProviderIn( + attributes=JsonApiIdentityProviderInAttributes( + identifiers=["gooddata.com"], + specification=JsonApiIdentityProviderInAttributesSpecification(), + type="SAML", + ), + id="id1", + type="identityProvider", + ), + ) # JsonApiIdentityProviderInDocument | + + # example passing only required values which don't have defaults set + try: + # Post Identity Providers + api_response = api_instance.create_entity_identity_providers(json_api_identity_provider_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->create_entity_identity_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **json_api_identity_provider_in_document** | [**JsonApiIdentityProviderInDocument**](JsonApiIdentityProviderInDocument.md)| | + +### Return type + +[**JsonApiIdentityProviderOutDocument**](JsonApiIdentityProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -1294,6 +1510,86 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**201** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **create_entity_llm_endpoints** +> JsonApiLlmEndpointOutDocument create_entity_llm_endpoints(json_api_llm_endpoint_in_document) + +Post LLM endpoint entities + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_llm_endpoint_in_document import JsonApiLlmEndpointInDocument +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + json_api_llm_endpoint_in_document = JsonApiLlmEndpointInDocument( + data=JsonApiLlmEndpointIn( + attributes=JsonApiLlmEndpointInAttributes( + base_url="base_url_example", + description="description_example", + llm_model="llm_model_example", + llm_organization="llm_organization_example", + provider="OPENAI", + title="title_example", + token="token_example", + ), + id="id1", + type="llmEndpoint", + ), + ) # JsonApiLlmEndpointInDocument | + + # example passing only required values which don't have defaults set + try: + # Post LLM endpoint entities + api_response = api_instance.create_entity_llm_endpoints(json_api_llm_endpoint_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->create_entity_llm_endpoints: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **json_api_llm_endpoint_in_document** | [**JsonApiLlmEndpointInDocument**](JsonApiLlmEndpointInDocument.md)| | + +### Return type + +[**JsonApiLlmEndpointOutDocument**](JsonApiLlmEndpointOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -1433,19 +1729,12 @@ with gooddata_api_client.ApiClient() as api_client: json_api_notification_channel_post_optional_id_document = JsonApiNotificationChannelPostOptionalIdDocument( data=JsonApiNotificationChannelPostOptionalId( attributes=JsonApiNotificationChannelInAttributes( + allowed_recipients="CREATOR", + custom_dashboard_url="custom_dashboard_url_example", description="description_example", + destination=JsonApiNotificationChannelInAttributesDestination(None), + destination_type="WEBHOOK", name="name_example", - triggers=[ - JsonApiNotificationChannelInAttributesTriggersInner( - metadata=JsonNode(), - type="SCHEDULE", - ), - ], - webhook=JsonApiNotificationChannelInAttributesWebhook( - has_token=True, - token="token_example", - url="https://example.com/webhook", - ), ), id="id1", type="notificationChannel", @@ -1680,7 +1969,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiUserDataFilterInRelationships( - user=JsonApiOrganizationOutRelationshipsBootstrapUser( + user=JsonApiFilterViewInRelationshipsUser( data=JsonApiUserToOneLinkage(None), ), user_group=JsonApiOrganizationOutRelationshipsBootstrapUserGroup( @@ -2783,7 +3072,7 @@ with gooddata_api_client.ApiClient() as api_client: api_instance = entities_api.EntitiesApi(api_client) workspace_id = "workspaceId_example" # str | object_id = "objectId_example" # str | - filter = "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) # example passing only required values which don't have defaults set try: @@ -3355,12 +3644,10 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **delete_entity_jwks** -> delete_entity_jwks(id) - -Delete Jwk +# **delete_entity_filter_views** +> delete_entity_filter_views(workspace_id, object_id) -Deletes JSON web key - used to verify JSON web tokens (Jwts) +Delete Filter view ### Example @@ -3381,23 +3668,24 @@ configuration = gooddata_api_client.Configuration( with gooddata_api_client.ApiClient() as api_client: # Create an instance of the API class api_instance = entities_api.EntitiesApi(api_client) - id = "/6bUUGjjNSwg0_bs" # str | - filter = "filter=content==JwkSpecificationValue" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + workspace_id = "workspaceId_example" # str | + object_id = "objectId_example" # str | + filter = "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) # example passing only required values which don't have defaults set try: - # Delete Jwk - api_instance.delete_entity_jwks(id) + # Delete Filter view + api_instance.delete_entity_filter_views(workspace_id, object_id) except gooddata_api_client.ApiException as e: - print("Exception when calling EntitiesApi->delete_entity_jwks: %s\n" % e) + print("Exception when calling EntitiesApi->delete_entity_filter_views: %s\n" % e) # example passing only required values which don't have defaults set # and optional values try: - # Delete Jwk - api_instance.delete_entity_jwks(id, filter=filter) + # Delete Filter view + api_instance.delete_entity_filter_views(workspace_id, object_id, filter=filter) except gooddata_api_client.ApiException as e: - print("Exception when calling EntitiesApi->delete_entity_jwks: %s\n" % e) + print("Exception when calling EntitiesApi->delete_entity_filter_views: %s\n" % e) ``` @@ -3405,7 +3693,8 @@ with gooddata_api_client.ApiClient() as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **id** | **str**| | + **workspace_id** | **str**| | + **object_id** | **str**| | **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] ### Return type @@ -3430,10 +3719,10 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **delete_entity_metrics** -> delete_entity_metrics(workspace_id, object_id) +# **delete_entity_identity_providers** +> delete_entity_identity_providers(id) -Delete a Metric +Delete Identity Provider ### Example @@ -3454,24 +3743,23 @@ configuration = gooddata_api_client.Configuration( with gooddata_api_client.ApiClient() as api_client: # Create an instance of the API class api_instance = entities_api.EntitiesApi(api_client) - workspace_id = "workspaceId_example" # str | - object_id = "objectId_example" # str | - filter = "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + id = "/6bUUGjjNSwg0_bs" # str | + filter = "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) # example passing only required values which don't have defaults set try: - # Delete a Metric - api_instance.delete_entity_metrics(workspace_id, object_id) + # Delete Identity Provider + api_instance.delete_entity_identity_providers(id) except gooddata_api_client.ApiException as e: - print("Exception when calling EntitiesApi->delete_entity_metrics: %s\n" % e) + print("Exception when calling EntitiesApi->delete_entity_identity_providers: %s\n" % e) # example passing only required values which don't have defaults set # and optional values try: - # Delete a Metric - api_instance.delete_entity_metrics(workspace_id, object_id, filter=filter) + # Delete Identity Provider + api_instance.delete_entity_identity_providers(id, filter=filter) except gooddata_api_client.ApiException as e: - print("Exception when calling EntitiesApi->delete_entity_metrics: %s\n" % e) + print("Exception when calling EntitiesApi->delete_entity_identity_providers: %s\n" % e) ``` @@ -3479,8 +3767,7 @@ with gooddata_api_client.ApiClient() as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **workspace_id** | **str**| | - **object_id** | **str**| | + **id** | **str**| | **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] ### Return type @@ -3505,10 +3792,12 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **delete_entity_notification_channels** -> delete_entity_notification_channels(id) +# **delete_entity_jwks** +> delete_entity_jwks(id) +Delete Jwk +Deletes JSON web key - used to verify JSON web tokens (Jwts) ### Example @@ -3530,19 +3819,240 @@ with gooddata_api_client.ApiClient() as api_client: # Create an instance of the API class api_instance = entities_api.EntitiesApi(api_client) id = "/6bUUGjjNSwg0_bs" # str | - filter = "filter=name==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=content==JwkSpecificationValue" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) # example passing only required values which don't have defaults set try: - api_instance.delete_entity_notification_channels(id) + # Delete Jwk + api_instance.delete_entity_jwks(id) except gooddata_api_client.ApiException as e: - print("Exception when calling EntitiesApi->delete_entity_notification_channels: %s\n" % e) + print("Exception when calling EntitiesApi->delete_entity_jwks: %s\n" % e) # example passing only required values which don't have defaults set # and optional values try: - api_instance.delete_entity_notification_channels(id, filter=filter) - except gooddata_api_client.ApiException as e: + # Delete Jwk + api_instance.delete_entity_jwks(id, filter=filter) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->delete_entity_jwks: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | Successfully deleted | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **delete_entity_llm_endpoints** +> delete_entity_llm_endpoints(id) + + + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + filter = "filter=title==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + api_instance.delete_entity_llm_endpoints(id) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->delete_entity_llm_endpoints: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + api_instance.delete_entity_llm_endpoints(id, filter=filter) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->delete_entity_llm_endpoints: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | Successfully deleted | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **delete_entity_metrics** +> delete_entity_metrics(workspace_id, object_id) + +Delete a Metric + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + workspace_id = "workspaceId_example" # str | + object_id = "objectId_example" # str | + filter = "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Delete a Metric + api_instance.delete_entity_metrics(workspace_id, object_id) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->delete_entity_metrics: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Delete a Metric + api_instance.delete_entity_metrics(workspace_id, object_id, filter=filter) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->delete_entity_metrics: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **object_id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | Successfully deleted | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **delete_entity_notification_channels** +> delete_entity_notification_channels(id) + +Delete Notification Channel entity + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + filter = "filter=name==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Delete Notification Channel entity + api_instance.delete_entity_notification_channels(id) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->delete_entity_notification_channels: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Delete Notification Channel entity + api_instance.delete_entity_notification_channels(id, filter=filter) + except gooddata_api_client.ApiException as e: print("Exception when calling EntitiesApi->delete_entity_notification_channels: %s\n" % e) ``` @@ -4800,9 +5310,9 @@ with gooddata_api_client.ApiClient() as api_client: api_instance = entities_api.EntitiesApi(api_client) workspace_id = "workspaceId_example" # str | origin = "ALL" # str | (optional) if omitted the server will use the default value of "ALL" - filter = "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 @@ -5578,7 +6088,7 @@ with gooddata_api_client.ApiClient() as api_client: origin = "ALL" # str | (optional) if omitted the server will use the default value of "ALL" filter = "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 @@ -5829,6 +6339,180 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_all_entities_filter_views** +> JsonApiFilterViewOutList get_all_entities_filter_views(workspace_id) + +Get all Filter views + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_filter_view_out_list import JsonApiFilterViewOutList +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + workspace_id = "workspaceId_example" # str | + origin = "ALL" # str | (optional) if omitted the server will use the default value of "ALL" + filter = "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + include = [ + "include=analyticalDashboard,user", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 + size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 + sort = [ + "sort_example", + ] # [str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) + x_gdc_validate_relations = False # bool | (optional) if omitted the server will use the default value of False + meta_include = [ + "metaInclude=page,all", + ] # [str] | Include Meta objects. (optional) + + # example passing only required values which don't have defaults set + try: + # Get all Filter views + api_response = api_instance.get_all_entities_filter_views(workspace_id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->get_all_entities_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get all Filter views + api_response = api_instance.get_all_entities_filter_views(workspace_id, origin=origin, filter=filter, include=include, page=page, size=size, sort=sort, x_gdc_validate_relations=x_gdc_validate_relations, meta_include=meta_include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->get_all_entities_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **origin** | **str**| | [optional] if omitted the server will use the default value of "ALL" + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + **page** | **int**| Zero-based page index (0..N) | [optional] if omitted the server will use the default value of 0 + **size** | **int**| The size of the page to be returned | [optional] if omitted the server will use the default value of 20 + **sort** | **[str]**| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **x_gdc_validate_relations** | **bool**| | [optional] if omitted the server will use the default value of False + **meta_include** | **[str]**| Include Meta objects. | [optional] + +### Return type + +[**JsonApiFilterViewOutList**](JsonApiFilterViewOutList.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_all_entities_identity_providers** +> JsonApiIdentityProviderOutList get_all_entities_identity_providers() + +Get all Identity Providers + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_identity_provider_out_list import JsonApiIdentityProviderOutList +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + filter = "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 + size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 + sort = [ + "sort_example", + ] # [str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) + meta_include = [ + "metaInclude=page,all", + ] # [str] | Include Meta objects. (optional) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get all Identity Providers + api_response = api_instance.get_all_entities_identity_providers(filter=filter, page=page, size=size, sort=sort, meta_include=meta_include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->get_all_entities_identity_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **page** | **int**| Zero-based page index (0..N) | [optional] if omitted the server will use the default value of 0 + **size** | **int**| The size of the page to be returned | [optional] if omitted the server will use the default value of 20 + **sort** | **[str]**| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **meta_include** | **[str]**| Include Meta objects. | [optional] + +### Return type + +[**JsonApiIdentityProviderOutList**](JsonApiIdentityProviderOutList.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -5877,11 +6561,103 @@ with gooddata_api_client.ApiClient() as api_client: # example passing only required values which don't have defaults set # and optional values try: - # Get all Jwks - api_response = api_instance.get_all_entities_jwks(filter=filter, page=page, size=size, sort=sort, meta_include=meta_include) + # Get all Jwks + api_response = api_instance.get_all_entities_jwks(filter=filter, page=page, size=size, sort=sort, meta_include=meta_include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->get_all_entities_jwks: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **page** | **int**| Zero-based page index (0..N) | [optional] if omitted the server will use the default value of 0 + **size** | **int**| The size of the page to be returned | [optional] if omitted the server will use the default value of 20 + **sort** | **[str]**| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **meta_include** | **[str]**| Include Meta objects. | [optional] + +### Return type + +[**JsonApiJwkOutList**](JsonApiJwkOutList.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_all_entities_labels** +> JsonApiLabelOutList get_all_entities_labels(workspace_id) + +Get all Labels + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_label_out_list import JsonApiLabelOutList +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + workspace_id = "workspaceId_example" # str | + origin = "ALL" # str | (optional) if omitted the server will use the default value of "ALL" + filter = "filter=title==someString;description==someString;attribute.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + include = [ + "include=attribute", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 + size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 + sort = [ + "sort_example", + ] # [str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) + x_gdc_validate_relations = False # bool | (optional) if omitted the server will use the default value of False + meta_include = [ + "metaInclude=origin,page,all", + ] # [str] | Include Meta objects. (optional) + + # example passing only required values which don't have defaults set + try: + # Get all Labels + api_response = api_instance.get_all_entities_labels(workspace_id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->get_all_entities_labels: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get all Labels + api_response = api_instance.get_all_entities_labels(workspace_id, origin=origin, filter=filter, include=include, page=page, size=size, sort=sort, x_gdc_validate_relations=x_gdc_validate_relations, meta_include=meta_include) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling EntitiesApi->get_all_entities_jwks: %s\n" % e) + print("Exception when calling EntitiesApi->get_all_entities_labels: %s\n" % e) ``` @@ -5889,15 +6665,19 @@ with gooddata_api_client.ApiClient() as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **origin** | **str**| | [optional] if omitted the server will use the default value of "ALL" **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] **page** | **int**| Zero-based page index (0..N) | [optional] if omitted the server will use the default value of 0 **size** | **int**| The size of the page to be returned | [optional] if omitted the server will use the default value of 20 **sort** | **[str]**| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **x_gdc_validate_relations** | **bool**| | [optional] if omitted the server will use the default value of False **meta_include** | **[str]**| Include Meta objects. | [optional] ### Return type -[**JsonApiJwkOutList**](JsonApiJwkOutList.md) +[**JsonApiLabelOutList**](JsonApiLabelOutList.md) ### Authorization @@ -5917,10 +6697,10 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **get_all_entities_labels** -> JsonApiLabelOutList get_all_entities_labels(workspace_id) +# **get_all_entities_llm_endpoints** +> JsonApiLlmEndpointOutList get_all_entities_llm_endpoints() -Get all Labels +Get all LLM endpoint entities ### Example @@ -5929,7 +6709,7 @@ Get all Labels import time import gooddata_api_client from gooddata_api_client.api import entities_api -from gooddata_api_client.model.json_api_label_out_list import JsonApiLabelOutList +from gooddata_api_client.model.json_api_llm_endpoint_out_list import JsonApiLlmEndpointOutList from pprint import pprint # Defining the host is optional and defaults to http://localhost # See configuration.py for a list of all supported configuration parameters. @@ -5942,38 +6722,24 @@ configuration = gooddata_api_client.Configuration( with gooddata_api_client.ApiClient() as api_client: # Create an instance of the API class api_instance = entities_api.EntitiesApi(api_client) - workspace_id = "workspaceId_example" # str | - origin = "ALL" # str | (optional) if omitted the server will use the default value of "ALL" - filter = "filter=title==someString;description==someString;attribute.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) - include = [ - "include=attribute", - ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + filter = "filter=title==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 sort = [ "sort_example", ] # [str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) - x_gdc_validate_relations = False # bool | (optional) if omitted the server will use the default value of False meta_include = [ - "metaInclude=origin,page,all", + "metaInclude=page,all", ] # [str] | Include Meta objects. (optional) - # example passing only required values which don't have defaults set - try: - # Get all Labels - api_response = api_instance.get_all_entities_labels(workspace_id) - pprint(api_response) - except gooddata_api_client.ApiException as e: - print("Exception when calling EntitiesApi->get_all_entities_labels: %s\n" % e) - # example passing only required values which don't have defaults set # and optional values try: - # Get all Labels - api_response = api_instance.get_all_entities_labels(workspace_id, origin=origin, filter=filter, include=include, page=page, size=size, sort=sort, x_gdc_validate_relations=x_gdc_validate_relations, meta_include=meta_include) + # Get all LLM endpoint entities + api_response = api_instance.get_all_entities_llm_endpoints(filter=filter, page=page, size=size, sort=sort, meta_include=meta_include) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling EntitiesApi->get_all_entities_labels: %s\n" % e) + print("Exception when calling EntitiesApi->get_all_entities_llm_endpoints: %s\n" % e) ``` @@ -5981,19 +6747,15 @@ with gooddata_api_client.ApiClient() as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **workspace_id** | **str**| | - **origin** | **str**| | [optional] if omitted the server will use the default value of "ALL" **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] - **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] **page** | **int**| Zero-based page index (0..N) | [optional] if omitted the server will use the default value of 0 **size** | **int**| The size of the page to be returned | [optional] if omitted the server will use the default value of 20 **sort** | **[str]**| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] - **x_gdc_validate_relations** | **bool**| | [optional] if omitted the server will use the default value of False **meta_include** | **[str]**| Include Meta objects. | [optional] ### Return type -[**JsonApiLabelOutList**](JsonApiLabelOutList.md) +[**JsonApiLlmEndpointOutList**](JsonApiLlmEndpointOutList.md) ### Authorization @@ -7732,9 +8494,9 @@ with gooddata_api_client.ApiClient() as api_client: api_instance = entities_api.EntitiesApi(api_client) workspace_id = "workspaceId_example" # str | object_id = "objectId_example" # str | - filter = "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) x_gdc_validate_relations = False # bool | (optional) if omitted the server will use the default value of False meta_include = [ @@ -8552,7 +9314,7 @@ with gooddata_api_client.ApiClient() as api_client: object_id = "objectId_example" # str | filter = "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) x_gdc_validate_relations = False # bool | (optional) if omitted the server will use the default value of False meta_include = [ @@ -8779,6 +9541,166 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_entity_filter_views** +> JsonApiFilterViewOutDocument get_entity_filter_views(workspace_id, object_id) + +Get Filter view + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + workspace_id = "workspaceId_example" # str | + object_id = "objectId_example" # str | + filter = "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + include = [ + "include=analyticalDashboard,user", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + x_gdc_validate_relations = False # bool | (optional) if omitted the server will use the default value of False + + # example passing only required values which don't have defaults set + try: + # Get Filter view + api_response = api_instance.get_entity_filter_views(workspace_id, object_id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->get_entity_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get Filter view + api_response = api_instance.get_entity_filter_views(workspace_id, object_id, filter=filter, include=include, x_gdc_validate_relations=x_gdc_validate_relations) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->get_entity_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **object_id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + **x_gdc_validate_relations** | **bool**| | [optional] if omitted the server will use the default value of False + +### Return type + +[**JsonApiFilterViewOutDocument**](JsonApiFilterViewOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_entity_identity_providers** +> JsonApiIdentityProviderOutDocument get_entity_identity_providers(id) + +Get Identity Provider + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + filter = "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Get Identity Provider + api_response = api_instance.get_entity_identity_providers(id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->get_entity_identity_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get Identity Provider + api_response = api_instance.get_entity_identity_providers(id, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->get_entity_identity_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiIdentityProviderOutDocument**](JsonApiIdentityProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -8903,20 +9825,100 @@ with gooddata_api_client.ApiClient() as api_client: # example passing only required values which don't have defaults set try: - # Get a Label - api_response = api_instance.get_entity_labels(workspace_id, object_id) + # Get a Label + api_response = api_instance.get_entity_labels(workspace_id, object_id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->get_entity_labels: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get a Label + api_response = api_instance.get_entity_labels(workspace_id, object_id, filter=filter, include=include, x_gdc_validate_relations=x_gdc_validate_relations, meta_include=meta_include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->get_entity_labels: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **object_id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + **x_gdc_validate_relations** | **bool**| | [optional] if omitted the server will use the default value of False + **meta_include** | **[str]**| Include Meta objects. | [optional] + +### Return type + +[**JsonApiLabelOutDocument**](JsonApiLabelOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_entity_llm_endpoints** +> JsonApiLlmEndpointOutDocument get_entity_llm_endpoints(id) + +Get LLM endpoint entity + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + filter = "filter=title==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Get LLM endpoint entity + api_response = api_instance.get_entity_llm_endpoints(id) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling EntitiesApi->get_entity_labels: %s\n" % e) + print("Exception when calling EntitiesApi->get_entity_llm_endpoints: %s\n" % e) # example passing only required values which don't have defaults set # and optional values try: - # Get a Label - api_response = api_instance.get_entity_labels(workspace_id, object_id, filter=filter, include=include, x_gdc_validate_relations=x_gdc_validate_relations, meta_include=meta_include) + # Get LLM endpoint entity + api_response = api_instance.get_entity_llm_endpoints(id, filter=filter) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling EntitiesApi->get_entity_labels: %s\n" % e) + print("Exception when calling EntitiesApi->get_entity_llm_endpoints: %s\n" % e) ``` @@ -8924,16 +9926,12 @@ with gooddata_api_client.ApiClient() as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **workspace_id** | **str**| | - **object_id** | **str**| | + **id** | **str**| | **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] - **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] - **x_gdc_validate_relations** | **bool**| | [optional] if omitted the server will use the default value of False - **meta_include** | **[str]**| Include Meta objects. | [optional] ### Return type -[**JsonApiLabelOutDocument**](JsonApiLabelOutDocument.md) +[**JsonApiLlmEndpointOutDocument**](JsonApiLlmEndpointOutDocument.md) ### Authorization @@ -10492,16 +11490,31 @@ with gooddata_api_client.ApiClient() as api_client: json_api_automation_patch_document = JsonApiAutomationPatchDocument( data=JsonApiAutomationPatch( attributes=JsonApiAutomationInAttributes( + alert=JsonApiAutomationInAttributesAlert( + condition=AlertCondition(), + execution=AlertAfm( + filters=[ + FilterDefinition(), + ], + measures=[ + MeasureItem( + definition=MeasureDefinition(), + local_identifier="metric_1", + ), + ], + ), + trigger="ALWAYS", + ), are_relations_valid=True, description="description_example", details=None, metadata={}, schedule=JsonApiAutomationInAttributesSchedule( cron="0 */30 9-17 ? * MON-FRI", - cron_description="cron_description_example", first_run=dateutil_parser('2025-01-01T12:00:00Z'), timezone="Europe/Prague", ), + state="ACTIVE", tags=[ "tags_example", ], @@ -10509,6 +11522,9 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiAutomationInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), export_definitions=JsonApiAutomationInRelationshipsExportDefinitions( data=JsonApiExportDefinitionToManyLinkage([ JsonApiExportDefinitionLinkage( @@ -10532,9 +11548,9 @@ with gooddata_api_client.ApiClient() as api_client: type="automation", ), ) # JsonApiAutomationPatchDocument | - filter = "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) # example passing only required values which don't have defaults set @@ -11189,7 +12205,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiExportDefinitionInRelationships( - analytical_dashboard=JsonApiExportDefinitionInRelationshipsAnalyticalDashboard( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( data=JsonApiAnalyticalDashboardToOneLinkage(None), ), visualization_object=JsonApiExportDefinitionInRelationshipsVisualizationObject( @@ -11201,7 +12217,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiExportDefinitionPatchDocument | filter = "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) # example passing only required values which don't have defaults set @@ -11346,6 +12362,203 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **patch_entity_filter_views** +> JsonApiFilterViewOutDocument patch_entity_filter_views(workspace_id, object_id, json_api_filter_view_patch_document) + +Patch Filter view + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_filter_view_patch_document import JsonApiFilterViewPatchDocument +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + workspace_id = "workspaceId_example" # str | + object_id = "objectId_example" # str | + json_api_filter_view_patch_document = JsonApiFilterViewPatchDocument( + data=JsonApiFilterViewPatch( + attributes=JsonApiFilterViewPatchAttributes( + are_relations_valid=True, + content={}, + description="description_example", + is_default=True, + tags=[ + "tags_example", + ], + title="title_example", + ), + id="id1", + relationships=JsonApiFilterViewInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), + user=JsonApiFilterViewInRelationshipsUser( + data=JsonApiUserToOneLinkage(None), + ), + ), + type="filterView", + ), + ) # JsonApiFilterViewPatchDocument | + filter = "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + include = [ + "include=analyticalDashboard,user", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + + # example passing only required values which don't have defaults set + try: + # Patch Filter view + api_response = api_instance.patch_entity_filter_views(workspace_id, object_id, json_api_filter_view_patch_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->patch_entity_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Patch Filter view + api_response = api_instance.patch_entity_filter_views(workspace_id, object_id, json_api_filter_view_patch_document, filter=filter, include=include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->patch_entity_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **object_id** | **str**| | + **json_api_filter_view_patch_document** | [**JsonApiFilterViewPatchDocument**](JsonApiFilterViewPatchDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + +### Return type + +[**JsonApiFilterViewOutDocument**](JsonApiFilterViewOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **patch_entity_identity_providers** +> JsonApiIdentityProviderOutDocument patch_entity_identity_providers(id, json_api_identity_provider_patch_document) + +Patch Identity Provider + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_identity_provider_patch_document import JsonApiIdentityProviderPatchDocument +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + json_api_identity_provider_patch_document = JsonApiIdentityProviderPatchDocument( + data=JsonApiIdentityProviderPatch( + attributes=JsonApiIdentityProviderPatchAttributes( + identifiers=["gooddata.com"], + specification=JsonApiIdentityProviderInAttributesSpecification(), + type="SAML", + ), + id="id1", + type="identityProvider", + ), + ) # JsonApiIdentityProviderPatchDocument | + filter = "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Patch Identity Provider + api_response = api_instance.patch_entity_identity_providers(id, json_api_identity_provider_patch_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->patch_entity_identity_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Patch Identity Provider + api_response = api_instance.patch_entity_identity_providers(id, json_api_identity_provider_patch_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->patch_entity_identity_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_identity_provider_patch_document** | [**JsonApiIdentityProviderPatchDocument**](JsonApiIdentityProviderPatchDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiIdentityProviderOutDocument**](JsonApiIdentityProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -11357,9 +12570,96 @@ No authorization required # **patch_entity_jwks** > JsonApiJwkOutDocument patch_entity_jwks(id, json_api_jwk_patch_document) -Patch Jwk +Patch Jwk + +Patches JSON web key - used to verify JSON web tokens (Jwts) + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_jwk_patch_document import JsonApiJwkPatchDocument +from gooddata_api_client.model.json_api_jwk_out_document import JsonApiJwkOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + json_api_jwk_patch_document = JsonApiJwkPatchDocument( + data=JsonApiJwkPatch( + attributes=JsonApiJwkInAttributes( + content=JsonApiJwkInAttributesContent(), + ), + id="id1", + type="jwk", + ), + ) # JsonApiJwkPatchDocument | + filter = "filter=content==JwkSpecificationValue" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Patch Jwk + api_response = api_instance.patch_entity_jwks(id, json_api_jwk_patch_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->patch_entity_jwks: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Patch Jwk + api_response = api_instance.patch_entity_jwks(id, json_api_jwk_patch_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->patch_entity_jwks: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_jwk_patch_document** | [**JsonApiJwkPatchDocument**](JsonApiJwkPatchDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiJwkOutDocument**](JsonApiJwkOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **patch_entity_llm_endpoints** +> JsonApiLlmEndpointOutDocument patch_entity_llm_endpoints(id, json_api_llm_endpoint_patch_document) -Patches JSON web key - used to verify JSON web tokens (Jwts) +Patch LLM endpoint entity ### Example @@ -11368,8 +12668,8 @@ Patches JSON web key - used to verify JSON web tokens (Jwts) import time import gooddata_api_client from gooddata_api_client.api import entities_api -from gooddata_api_client.model.json_api_jwk_patch_document import JsonApiJwkPatchDocument -from gooddata_api_client.model.json_api_jwk_out_document import JsonApiJwkOutDocument +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument +from gooddata_api_client.model.json_api_llm_endpoint_patch_document import JsonApiLlmEndpointPatchDocument from pprint import pprint # Defining the host is optional and defaults to http://localhost # See configuration.py for a list of all supported configuration parameters. @@ -11383,33 +12683,39 @@ with gooddata_api_client.ApiClient() as api_client: # Create an instance of the API class api_instance = entities_api.EntitiesApi(api_client) id = "/6bUUGjjNSwg0_bs" # str | - json_api_jwk_patch_document = JsonApiJwkPatchDocument( - data=JsonApiJwkPatch( - attributes=JsonApiJwkInAttributes( - content=JsonApiJwkInAttributesContent(), + json_api_llm_endpoint_patch_document = JsonApiLlmEndpointPatchDocument( + data=JsonApiLlmEndpointPatch( + attributes=JsonApiLlmEndpointPatchAttributes( + base_url="base_url_example", + description="description_example", + llm_model="llm_model_example", + llm_organization="llm_organization_example", + provider="OPENAI", + title="title_example", + token="token_example", ), id="id1", - type="jwk", + type="llmEndpoint", ), - ) # JsonApiJwkPatchDocument | - filter = "filter=content==JwkSpecificationValue" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + ) # JsonApiLlmEndpointPatchDocument | + filter = "filter=title==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) # example passing only required values which don't have defaults set try: - # Patch Jwk - api_response = api_instance.patch_entity_jwks(id, json_api_jwk_patch_document) + # Patch LLM endpoint entity + api_response = api_instance.patch_entity_llm_endpoints(id, json_api_llm_endpoint_patch_document) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling EntitiesApi->patch_entity_jwks: %s\n" % e) + print("Exception when calling EntitiesApi->patch_entity_llm_endpoints: %s\n" % e) # example passing only required values which don't have defaults set # and optional values try: - # Patch Jwk - api_response = api_instance.patch_entity_jwks(id, json_api_jwk_patch_document, filter=filter) + # Patch LLM endpoint entity + api_response = api_instance.patch_entity_llm_endpoints(id, json_api_llm_endpoint_patch_document, filter=filter) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling EntitiesApi->patch_entity_jwks: %s\n" % e) + print("Exception when calling EntitiesApi->patch_entity_llm_endpoints: %s\n" % e) ``` @@ -11418,12 +12724,12 @@ with gooddata_api_client.ApiClient() as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **id** | **str**| | - **json_api_jwk_patch_document** | [**JsonApiJwkPatchDocument**](JsonApiJwkPatchDocument.md)| | + **json_api_llm_endpoint_patch_document** | [**JsonApiLlmEndpointPatchDocument**](JsonApiLlmEndpointPatchDocument.md)| | **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] ### Return type -[**JsonApiJwkOutDocument**](JsonApiJwkOutDocument.md) +[**JsonApiLlmEndpointOutDocument**](JsonApiLlmEndpointOutDocument.md) ### Authorization @@ -11575,19 +12881,12 @@ with gooddata_api_client.ApiClient() as api_client: json_api_notification_channel_patch_document = JsonApiNotificationChannelPatchDocument( data=JsonApiNotificationChannelPatch( attributes=JsonApiNotificationChannelInAttributes( + allowed_recipients="CREATOR", + custom_dashboard_url="custom_dashboard_url_example", description="description_example", + destination=JsonApiNotificationChannelInAttributesDestination(None), + destination_type="WEBHOOK", name="name_example", - triggers=[ - JsonApiNotificationChannelInAttributesTriggersInner( - metadata=JsonNode(), - type="SCHEDULE", - ), - ], - webhook=JsonApiNotificationChannelInAttributesWebhook( - has_token=True, - token="token_example", - url="https://example.com/webhook", - ), ), id="id1", type="notificationChannel", @@ -11966,7 +13265,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiUserDataFilterInRelationships( - user=JsonApiOrganizationOutRelationshipsBootstrapUser( + user=JsonApiFilterViewInRelationshipsUser( data=JsonApiUserToOneLinkage(None), ), user_group=JsonApiOrganizationOutRelationshipsBootstrapUserGroup( @@ -12977,16 +14276,31 @@ with gooddata_api_client.ApiClient() as api_client: json_api_automation_in_document = JsonApiAutomationInDocument( data=JsonApiAutomationIn( attributes=JsonApiAutomationInAttributes( + alert=JsonApiAutomationInAttributesAlert( + condition=AlertCondition(), + execution=AlertAfm( + filters=[ + FilterDefinition(), + ], + measures=[ + MeasureItem( + definition=MeasureDefinition(), + local_identifier="metric_1", + ), + ], + ), + trigger="ALWAYS", + ), are_relations_valid=True, description="description_example", details=None, metadata={}, schedule=JsonApiAutomationInAttributesSchedule( cron="0 */30 9-17 ? * MON-FRI", - cron_description="cron_description_example", first_run=dateutil_parser('2025-01-01T12:00:00Z'), timezone="Europe/Prague", ), + state="ACTIVE", tags=[ "tags_example", ], @@ -12994,6 +14308,9 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiAutomationInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), export_definitions=JsonApiAutomationInRelationshipsExportDefinitions( data=JsonApiExportDefinitionToManyLinkage([ JsonApiExportDefinitionLinkage( @@ -13017,9 +14334,9 @@ with gooddata_api_client.ApiClient() as api_client: type="automation", ), ) # JsonApiAutomationInDocument | - filter = "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) # example passing only required values which don't have defaults set @@ -13674,7 +14991,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiExportDefinitionInRelationships( - analytical_dashboard=JsonApiExportDefinitionInRelationshipsAnalyticalDashboard( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( data=JsonApiAnalyticalDashboardToOneLinkage(None), ), visualization_object=JsonApiExportDefinitionInRelationshipsVisualizationObject( @@ -13686,7 +15003,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiExportDefinitionInDocument | filter = "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) # example passing only required values which don't have defaults set @@ -13831,6 +15148,203 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **update_entity_filter_views** +> JsonApiFilterViewOutDocument update_entity_filter_views(workspace_id, object_id, json_api_filter_view_in_document) + +Put Filter views + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_filter_view_in_document import JsonApiFilterViewInDocument +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + workspace_id = "workspaceId_example" # str | + object_id = "objectId_example" # str | + json_api_filter_view_in_document = JsonApiFilterViewInDocument( + data=JsonApiFilterViewIn( + attributes=JsonApiFilterViewInAttributes( + are_relations_valid=True, + content={}, + description="description_example", + is_default=True, + tags=[ + "tags_example", + ], + title="title_example", + ), + id="id1", + relationships=JsonApiFilterViewInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), + user=JsonApiFilterViewInRelationshipsUser( + data=JsonApiUserToOneLinkage(None), + ), + ), + type="filterView", + ), + ) # JsonApiFilterViewInDocument | + filter = "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + include = [ + "include=analyticalDashboard,user", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + + # example passing only required values which don't have defaults set + try: + # Put Filter views + api_response = api_instance.update_entity_filter_views(workspace_id, object_id, json_api_filter_view_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->update_entity_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Put Filter views + api_response = api_instance.update_entity_filter_views(workspace_id, object_id, json_api_filter_view_in_document, filter=filter, include=include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->update_entity_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **object_id** | **str**| | + **json_api_filter_view_in_document** | [**JsonApiFilterViewInDocument**](JsonApiFilterViewInDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + +### Return type + +[**JsonApiFilterViewOutDocument**](JsonApiFilterViewOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **update_entity_identity_providers** +> JsonApiIdentityProviderOutDocument update_entity_identity_providers(id, json_api_identity_provider_in_document) + +Put Identity Provider + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument +from gooddata_api_client.model.json_api_identity_provider_in_document import JsonApiIdentityProviderInDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + json_api_identity_provider_in_document = JsonApiIdentityProviderInDocument( + data=JsonApiIdentityProviderIn( + attributes=JsonApiIdentityProviderInAttributes( + identifiers=["gooddata.com"], + specification=JsonApiIdentityProviderInAttributesSpecification(), + type="SAML", + ), + id="id1", + type="identityProvider", + ), + ) # JsonApiIdentityProviderInDocument | + filter = "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Put Identity Provider + api_response = api_instance.update_entity_identity_providers(id, json_api_identity_provider_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->update_entity_identity_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Put Identity Provider + api_response = api_instance.update_entity_identity_providers(id, json_api_identity_provider_in_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->update_entity_identity_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_identity_provider_in_document** | [**JsonApiIdentityProviderInDocument**](JsonApiIdentityProviderInDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiIdentityProviderOutDocument**](JsonApiIdentityProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -13920,6 +15434,99 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **update_entity_llm_endpoints** +> JsonApiLlmEndpointOutDocument update_entity_llm_endpoints(id, json_api_llm_endpoint_in_document) + +PUT LLM endpoint entity + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_llm_endpoint_in_document import JsonApiLlmEndpointInDocument +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = entities_api.EntitiesApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + json_api_llm_endpoint_in_document = JsonApiLlmEndpointInDocument( + data=JsonApiLlmEndpointIn( + attributes=JsonApiLlmEndpointInAttributes( + base_url="base_url_example", + description="description_example", + llm_model="llm_model_example", + llm_organization="llm_organization_example", + provider="OPENAI", + title="title_example", + token="token_example", + ), + id="id1", + type="llmEndpoint", + ), + ) # JsonApiLlmEndpointInDocument | + filter = "filter=title==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # PUT LLM endpoint entity + api_response = api_instance.update_entity_llm_endpoints(id, json_api_llm_endpoint_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->update_entity_llm_endpoints: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # PUT LLM endpoint entity + api_response = api_instance.update_entity_llm_endpoints(id, json_api_llm_endpoint_in_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->update_entity_llm_endpoints: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_llm_endpoint_in_document** | [**JsonApiLlmEndpointInDocument**](JsonApiLlmEndpointInDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiLlmEndpointOutDocument**](JsonApiLlmEndpointOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -14060,19 +15667,12 @@ with gooddata_api_client.ApiClient() as api_client: json_api_notification_channel_in_document = JsonApiNotificationChannelInDocument( data=JsonApiNotificationChannelIn( attributes=JsonApiNotificationChannelInAttributes( + allowed_recipients="CREATOR", + custom_dashboard_url="custom_dashboard_url_example", description="description_example", + destination=JsonApiNotificationChannelInAttributesDestination(None), + destination_type="WEBHOOK", name="name_example", - triggers=[ - JsonApiNotificationChannelInAttributesTriggersInner( - metadata=JsonNode(), - type="SCHEDULE", - ), - ], - webhook=JsonApiNotificationChannelInAttributesWebhook( - has_token=True, - token="token_example", - url="https://example.com/webhook", - ), ), id="id1", type="notificationChannel", @@ -14451,7 +16051,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiUserDataFilterInRelationships( - user=JsonApiOrganizationOutRelationshipsBootstrapUser( + user=JsonApiFilterViewInRelationshipsUser( data=JsonApiUserToOneLinkage(None), ), user_group=JsonApiOrganizationOutRelationshipsBootstrapUserGroup( diff --git a/gooddata-api-client/docs/ExportDefinitionsApi.md b/gooddata-api-client/docs/ExportDefinitionsApi.md index b26722682..c92605819 100644 --- a/gooddata-api-client/docs/ExportDefinitionsApi.md +++ b/gooddata-api-client/docs/ExportDefinitionsApi.md @@ -52,7 +52,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiExportDefinitionInRelationships( - analytical_dashboard=JsonApiExportDefinitionInRelationshipsAnalyticalDashboard( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( data=JsonApiAnalyticalDashboardToOneLinkage(None), ), visualization_object=JsonApiExportDefinitionInRelationshipsVisualizationObject( @@ -63,7 +63,7 @@ with gooddata_api_client.ApiClient() as api_client: ), ) # JsonApiExportDefinitionPostOptionalIdDocument | include = [ - "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) meta_include = [ "metaInclude=origin,all", @@ -223,7 +223,7 @@ with gooddata_api_client.ApiClient() as api_client: origin = "ALL" # str | (optional) if omitted the server will use the default value of "ALL" filter = "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 @@ -319,7 +319,7 @@ with gooddata_api_client.ApiClient() as api_client: object_id = "objectId_example" # str | filter = "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) x_gdc_validate_relations = False # bool | (optional) if omitted the server will use the default value of False meta_include = [ @@ -419,7 +419,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiExportDefinitionInRelationships( - analytical_dashboard=JsonApiExportDefinitionInRelationshipsAnalyticalDashboard( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( data=JsonApiAnalyticalDashboardToOneLinkage(None), ), visualization_object=JsonApiExportDefinitionInRelationshipsVisualizationObject( @@ -431,7 +431,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiExportDefinitionPatchDocument | filter = "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) # example passing only required values which don't have defaults set @@ -526,7 +526,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiExportDefinitionInRelationships( - analytical_dashboard=JsonApiExportDefinitionInRelationshipsAnalyticalDashboard( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( data=JsonApiAnalyticalDashboardToOneLinkage(None), ), visualization_object=JsonApiExportDefinitionInRelationshipsVisualizationObject( @@ -538,7 +538,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiExportDefinitionInDocument | filter = "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) # example passing only required values which don't have defaults set diff --git a/gooddata-api-client/docs/FilterViewsApi.md b/gooddata-api-client/docs/FilterViewsApi.md new file mode 100644 index 000000000..de7964544 --- /dev/null +++ b/gooddata-api-client/docs/FilterViewsApi.md @@ -0,0 +1,589 @@ +# gooddata_api_client.FilterViewsApi + +All URIs are relative to *http://localhost* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**create_entity_filter_views**](FilterViewsApi.md#create_entity_filter_views) | **POST** /api/v1/entities/workspaces/{workspaceId}/filterViews | Post Filter views +[**delete_entity_filter_views**](FilterViewsApi.md#delete_entity_filter_views) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Delete Filter view +[**get_all_entities_filter_views**](FilterViewsApi.md#get_all_entities_filter_views) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterViews | Get all Filter views +[**get_entity_filter_views**](FilterViewsApi.md#get_entity_filter_views) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Get Filter view +[**patch_entity_filter_views**](FilterViewsApi.md#patch_entity_filter_views) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Patch Filter view +[**update_entity_filter_views**](FilterViewsApi.md#update_entity_filter_views) | **PUT** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Put Filter views + + +# **create_entity_filter_views** +> JsonApiFilterViewOutDocument create_entity_filter_views(workspace_id, json_api_filter_view_in_document) + +Post Filter views + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import filter_views_api +from gooddata_api_client.model.json_api_filter_view_in_document import JsonApiFilterViewInDocument +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = filter_views_api.FilterViewsApi(api_client) + workspace_id = "workspaceId_example" # str | + json_api_filter_view_in_document = JsonApiFilterViewInDocument( + data=JsonApiFilterViewIn( + attributes=JsonApiFilterViewInAttributes( + are_relations_valid=True, + content={}, + description="description_example", + is_default=True, + tags=[ + "tags_example", + ], + title="title_example", + ), + id="id1", + relationships=JsonApiFilterViewInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), + user=JsonApiFilterViewInRelationshipsUser( + data=JsonApiUserToOneLinkage(None), + ), + ), + type="filterView", + ), + ) # JsonApiFilterViewInDocument | + include = [ + "include=analyticalDashboard,user", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + + # example passing only required values which don't have defaults set + try: + # Post Filter views + api_response = api_instance.create_entity_filter_views(workspace_id, json_api_filter_view_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling FilterViewsApi->create_entity_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Post Filter views + api_response = api_instance.create_entity_filter_views(workspace_id, json_api_filter_view_in_document, include=include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling FilterViewsApi->create_entity_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **json_api_filter_view_in_document** | [**JsonApiFilterViewInDocument**](JsonApiFilterViewInDocument.md)| | + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + +### Return type + +[**JsonApiFilterViewOutDocument**](JsonApiFilterViewOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**201** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **delete_entity_filter_views** +> delete_entity_filter_views(workspace_id, object_id) + +Delete Filter view + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import filter_views_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = filter_views_api.FilterViewsApi(api_client) + workspace_id = "workspaceId_example" # str | + object_id = "objectId_example" # str | + filter = "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Delete Filter view + api_instance.delete_entity_filter_views(workspace_id, object_id) + except gooddata_api_client.ApiException as e: + print("Exception when calling FilterViewsApi->delete_entity_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Delete Filter view + api_instance.delete_entity_filter_views(workspace_id, object_id, filter=filter) + except gooddata_api_client.ApiException as e: + print("Exception when calling FilterViewsApi->delete_entity_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **object_id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | Successfully deleted | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_all_entities_filter_views** +> JsonApiFilterViewOutList get_all_entities_filter_views(workspace_id) + +Get all Filter views + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import filter_views_api +from gooddata_api_client.model.json_api_filter_view_out_list import JsonApiFilterViewOutList +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = filter_views_api.FilterViewsApi(api_client) + workspace_id = "workspaceId_example" # str | + origin = "ALL" # str | (optional) if omitted the server will use the default value of "ALL" + filter = "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + include = [ + "include=analyticalDashboard,user", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 + size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 + sort = [ + "sort_example", + ] # [str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) + x_gdc_validate_relations = False # bool | (optional) if omitted the server will use the default value of False + meta_include = [ + "metaInclude=page,all", + ] # [str] | Include Meta objects. (optional) + + # example passing only required values which don't have defaults set + try: + # Get all Filter views + api_response = api_instance.get_all_entities_filter_views(workspace_id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling FilterViewsApi->get_all_entities_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get all Filter views + api_response = api_instance.get_all_entities_filter_views(workspace_id, origin=origin, filter=filter, include=include, page=page, size=size, sort=sort, x_gdc_validate_relations=x_gdc_validate_relations, meta_include=meta_include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling FilterViewsApi->get_all_entities_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **origin** | **str**| | [optional] if omitted the server will use the default value of "ALL" + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + **page** | **int**| Zero-based page index (0..N) | [optional] if omitted the server will use the default value of 0 + **size** | **int**| The size of the page to be returned | [optional] if omitted the server will use the default value of 20 + **sort** | **[str]**| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **x_gdc_validate_relations** | **bool**| | [optional] if omitted the server will use the default value of False + **meta_include** | **[str]**| Include Meta objects. | [optional] + +### Return type + +[**JsonApiFilterViewOutList**](JsonApiFilterViewOutList.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_entity_filter_views** +> JsonApiFilterViewOutDocument get_entity_filter_views(workspace_id, object_id) + +Get Filter view + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import filter_views_api +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = filter_views_api.FilterViewsApi(api_client) + workspace_id = "workspaceId_example" # str | + object_id = "objectId_example" # str | + filter = "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + include = [ + "include=analyticalDashboard,user", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + x_gdc_validate_relations = False # bool | (optional) if omitted the server will use the default value of False + + # example passing only required values which don't have defaults set + try: + # Get Filter view + api_response = api_instance.get_entity_filter_views(workspace_id, object_id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling FilterViewsApi->get_entity_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get Filter view + api_response = api_instance.get_entity_filter_views(workspace_id, object_id, filter=filter, include=include, x_gdc_validate_relations=x_gdc_validate_relations) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling FilterViewsApi->get_entity_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **object_id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + **x_gdc_validate_relations** | **bool**| | [optional] if omitted the server will use the default value of False + +### Return type + +[**JsonApiFilterViewOutDocument**](JsonApiFilterViewOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **patch_entity_filter_views** +> JsonApiFilterViewOutDocument patch_entity_filter_views(workspace_id, object_id, json_api_filter_view_patch_document) + +Patch Filter view + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import filter_views_api +from gooddata_api_client.model.json_api_filter_view_patch_document import JsonApiFilterViewPatchDocument +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = filter_views_api.FilterViewsApi(api_client) + workspace_id = "workspaceId_example" # str | + object_id = "objectId_example" # str | + json_api_filter_view_patch_document = JsonApiFilterViewPatchDocument( + data=JsonApiFilterViewPatch( + attributes=JsonApiFilterViewPatchAttributes( + are_relations_valid=True, + content={}, + description="description_example", + is_default=True, + tags=[ + "tags_example", + ], + title="title_example", + ), + id="id1", + relationships=JsonApiFilterViewInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), + user=JsonApiFilterViewInRelationshipsUser( + data=JsonApiUserToOneLinkage(None), + ), + ), + type="filterView", + ), + ) # JsonApiFilterViewPatchDocument | + filter = "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + include = [ + "include=analyticalDashboard,user", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + + # example passing only required values which don't have defaults set + try: + # Patch Filter view + api_response = api_instance.patch_entity_filter_views(workspace_id, object_id, json_api_filter_view_patch_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling FilterViewsApi->patch_entity_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Patch Filter view + api_response = api_instance.patch_entity_filter_views(workspace_id, object_id, json_api_filter_view_patch_document, filter=filter, include=include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling FilterViewsApi->patch_entity_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **object_id** | **str**| | + **json_api_filter_view_patch_document** | [**JsonApiFilterViewPatchDocument**](JsonApiFilterViewPatchDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + +### Return type + +[**JsonApiFilterViewOutDocument**](JsonApiFilterViewOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **update_entity_filter_views** +> JsonApiFilterViewOutDocument update_entity_filter_views(workspace_id, object_id, json_api_filter_view_in_document) + +Put Filter views + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import filter_views_api +from gooddata_api_client.model.json_api_filter_view_in_document import JsonApiFilterViewInDocument +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = filter_views_api.FilterViewsApi(api_client) + workspace_id = "workspaceId_example" # str | + object_id = "objectId_example" # str | + json_api_filter_view_in_document = JsonApiFilterViewInDocument( + data=JsonApiFilterViewIn( + attributes=JsonApiFilterViewInAttributes( + are_relations_valid=True, + content={}, + description="description_example", + is_default=True, + tags=[ + "tags_example", + ], + title="title_example", + ), + id="id1", + relationships=JsonApiFilterViewInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), + user=JsonApiFilterViewInRelationshipsUser( + data=JsonApiUserToOneLinkage(None), + ), + ), + type="filterView", + ), + ) # JsonApiFilterViewInDocument | + filter = "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + include = [ + "include=analyticalDashboard,user", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + + # example passing only required values which don't have defaults set + try: + # Put Filter views + api_response = api_instance.update_entity_filter_views(workspace_id, object_id, json_api_filter_view_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling FilterViewsApi->update_entity_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Put Filter views + api_response = api_instance.update_entity_filter_views(workspace_id, object_id, json_api_filter_view_in_document, filter=filter, include=include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling FilterViewsApi->update_entity_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **object_id** | **str**| | + **json_api_filter_view_in_document** | [**JsonApiFilterViewInDocument**](JsonApiFilterViewInDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + +### Return type + +[**JsonApiFilterViewOutDocument**](JsonApiFilterViewOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/gooddata-api-client/docs/FoundObjects.md b/gooddata-api-client/docs/FoundObjects.md new file mode 100644 index 000000000..b442f0d40 --- /dev/null +++ b/gooddata-api-client/docs/FoundObjects.md @@ -0,0 +1,14 @@ +# FoundObjects + +List of objects found by similarity search and post-processed by LLM. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**objects** | [**[SearchResultObject]**](SearchResultObject.md) | List of objects found with a similarity search. | +**reasoning** | **str** | Reasoning from LLM. Description of how and why the answer was generated. | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/IdentityProvidersApi.md b/gooddata-api-client/docs/IdentityProvidersApi.md new file mode 100644 index 000000000..1605ed275 --- /dev/null +++ b/gooddata-api-client/docs/IdentityProvidersApi.md @@ -0,0 +1,495 @@ +# gooddata_api_client.IdentityProvidersApi + +All URIs are relative to *http://localhost* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**create_entity_identity_providers**](IdentityProvidersApi.md#create_entity_identity_providers) | **POST** /api/v1/entities/identityProviders | Post Identity Providers +[**delete_entity_identity_providers**](IdentityProvidersApi.md#delete_entity_identity_providers) | **DELETE** /api/v1/entities/identityProviders/{id} | Delete Identity Provider +[**get_all_entities_identity_providers**](IdentityProvidersApi.md#get_all_entities_identity_providers) | **GET** /api/v1/entities/identityProviders | Get all Identity Providers +[**get_entity_identity_providers**](IdentityProvidersApi.md#get_entity_identity_providers) | **GET** /api/v1/entities/identityProviders/{id} | Get Identity Provider +[**patch_entity_identity_providers**](IdentityProvidersApi.md#patch_entity_identity_providers) | **PATCH** /api/v1/entities/identityProviders/{id} | Patch Identity Provider +[**update_entity_identity_providers**](IdentityProvidersApi.md#update_entity_identity_providers) | **PUT** /api/v1/entities/identityProviders/{id} | Put Identity Provider + + +# **create_entity_identity_providers** +> JsonApiIdentityProviderOutDocument create_entity_identity_providers(json_api_identity_provider_in_document) + +Post Identity Providers + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import identity_providers_api +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument +from gooddata_api_client.model.json_api_identity_provider_in_document import JsonApiIdentityProviderInDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = identity_providers_api.IdentityProvidersApi(api_client) + json_api_identity_provider_in_document = JsonApiIdentityProviderInDocument( + data=JsonApiIdentityProviderIn( + attributes=JsonApiIdentityProviderInAttributes( + identifiers=["gooddata.com"], + specification=JsonApiIdentityProviderInAttributesSpecification(), + type="SAML", + ), + id="id1", + type="identityProvider", + ), + ) # JsonApiIdentityProviderInDocument | + + # example passing only required values which don't have defaults set + try: + # Post Identity Providers + api_response = api_instance.create_entity_identity_providers(json_api_identity_provider_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling IdentityProvidersApi->create_entity_identity_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **json_api_identity_provider_in_document** | [**JsonApiIdentityProviderInDocument**](JsonApiIdentityProviderInDocument.md)| | + +### Return type + +[**JsonApiIdentityProviderOutDocument**](JsonApiIdentityProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**201** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **delete_entity_identity_providers** +> delete_entity_identity_providers(id) + +Delete Identity Provider + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import identity_providers_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = identity_providers_api.IdentityProvidersApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + filter = "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Delete Identity Provider + api_instance.delete_entity_identity_providers(id) + except gooddata_api_client.ApiException as e: + print("Exception when calling IdentityProvidersApi->delete_entity_identity_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Delete Identity Provider + api_instance.delete_entity_identity_providers(id, filter=filter) + except gooddata_api_client.ApiException as e: + print("Exception when calling IdentityProvidersApi->delete_entity_identity_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | Successfully deleted | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_all_entities_identity_providers** +> JsonApiIdentityProviderOutList get_all_entities_identity_providers() + +Get all Identity Providers + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import identity_providers_api +from gooddata_api_client.model.json_api_identity_provider_out_list import JsonApiIdentityProviderOutList +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = identity_providers_api.IdentityProvidersApi(api_client) + filter = "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 + size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 + sort = [ + "sort_example", + ] # [str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) + meta_include = [ + "metaInclude=page,all", + ] # [str] | Include Meta objects. (optional) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get all Identity Providers + api_response = api_instance.get_all_entities_identity_providers(filter=filter, page=page, size=size, sort=sort, meta_include=meta_include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling IdentityProvidersApi->get_all_entities_identity_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **page** | **int**| Zero-based page index (0..N) | [optional] if omitted the server will use the default value of 0 + **size** | **int**| The size of the page to be returned | [optional] if omitted the server will use the default value of 20 + **sort** | **[str]**| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **meta_include** | **[str]**| Include Meta objects. | [optional] + +### Return type + +[**JsonApiIdentityProviderOutList**](JsonApiIdentityProviderOutList.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_entity_identity_providers** +> JsonApiIdentityProviderOutDocument get_entity_identity_providers(id) + +Get Identity Provider + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import identity_providers_api +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = identity_providers_api.IdentityProvidersApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + filter = "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Get Identity Provider + api_response = api_instance.get_entity_identity_providers(id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling IdentityProvidersApi->get_entity_identity_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get Identity Provider + api_response = api_instance.get_entity_identity_providers(id, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling IdentityProvidersApi->get_entity_identity_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiIdentityProviderOutDocument**](JsonApiIdentityProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **patch_entity_identity_providers** +> JsonApiIdentityProviderOutDocument patch_entity_identity_providers(id, json_api_identity_provider_patch_document) + +Patch Identity Provider + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import identity_providers_api +from gooddata_api_client.model.json_api_identity_provider_patch_document import JsonApiIdentityProviderPatchDocument +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = identity_providers_api.IdentityProvidersApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + json_api_identity_provider_patch_document = JsonApiIdentityProviderPatchDocument( + data=JsonApiIdentityProviderPatch( + attributes=JsonApiIdentityProviderPatchAttributes( + identifiers=["gooddata.com"], + specification=JsonApiIdentityProviderInAttributesSpecification(), + type="SAML", + ), + id="id1", + type="identityProvider", + ), + ) # JsonApiIdentityProviderPatchDocument | + filter = "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Patch Identity Provider + api_response = api_instance.patch_entity_identity_providers(id, json_api_identity_provider_patch_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling IdentityProvidersApi->patch_entity_identity_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Patch Identity Provider + api_response = api_instance.patch_entity_identity_providers(id, json_api_identity_provider_patch_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling IdentityProvidersApi->patch_entity_identity_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_identity_provider_patch_document** | [**JsonApiIdentityProviderPatchDocument**](JsonApiIdentityProviderPatchDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiIdentityProviderOutDocument**](JsonApiIdentityProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **update_entity_identity_providers** +> JsonApiIdentityProviderOutDocument update_entity_identity_providers(id, json_api_identity_provider_in_document) + +Put Identity Provider + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import identity_providers_api +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument +from gooddata_api_client.model.json_api_identity_provider_in_document import JsonApiIdentityProviderInDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = identity_providers_api.IdentityProvidersApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + json_api_identity_provider_in_document = JsonApiIdentityProviderInDocument( + data=JsonApiIdentityProviderIn( + attributes=JsonApiIdentityProviderInAttributes( + identifiers=["gooddata.com"], + specification=JsonApiIdentityProviderInAttributesSpecification(), + type="SAML", + ), + id="id1", + type="identityProvider", + ), + ) # JsonApiIdentityProviderInDocument | + filter = "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Put Identity Provider + api_response = api_instance.update_entity_identity_providers(id, json_api_identity_provider_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling IdentityProvidersApi->update_entity_identity_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Put Identity Provider + api_response = api_instance.update_entity_identity_providers(id, json_api_identity_provider_in_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling IdentityProvidersApi->update_entity_identity_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_identity_provider_in_document** | [**JsonApiIdentityProviderInDocument**](JsonApiIdentityProviderInDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiIdentityProviderOutDocument**](JsonApiIdentityProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/gooddata-api-client/docs/JsonApiAutomationInAttributes.md b/gooddata-api-client/docs/JsonApiAutomationInAttributes.md index 26c934e0b..70555f8c3 100644 --- a/gooddata-api-client/docs/JsonApiAutomationInAttributes.md +++ b/gooddata-api-client/docs/JsonApiAutomationInAttributes.md @@ -4,11 +4,13 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- +**alert** | [**JsonApiAutomationInAttributesAlert**](JsonApiAutomationInAttributesAlert.md) | | [optional] **are_relations_valid** | **bool** | | [optional] **description** | **str** | | [optional] **details** | **bool, date, datetime, dict, float, int, list, str, none_type** | Additional details to be included in the automated message. | [optional] **metadata** | **{str: (bool, date, datetime, dict, float, int, list, str, none_type)}, none_type** | Additional information for the automation. | [optional] **schedule** | [**JsonApiAutomationInAttributesSchedule**](JsonApiAutomationInAttributesSchedule.md) | | [optional] +**state** | **str** | Current state of the automation. | [optional] **tags** | **[str]** | | [optional] **title** | **str** | | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/gooddata-api-client/docs/JsonApiAutomationInAttributesAlert.md b/gooddata-api-client/docs/JsonApiAutomationInAttributesAlert.md new file mode 100644 index 000000000..4e60a9baa --- /dev/null +++ b/gooddata-api-client/docs/JsonApiAutomationInAttributesAlert.md @@ -0,0 +1,14 @@ +# JsonApiAutomationInAttributesAlert + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**condition** | [**AlertCondition**](AlertCondition.md) | | +**execution** | [**AlertAfm**](AlertAfm.md) | | +**trigger** | **str** | Trigger behavior for the alert. ALWAYS - alert is triggered every time the condition is met. ONCE - alert is triggered only once when the condition is met. | [optional] if omitted the server will use the default value of "ALWAYS" +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiAutomationInAttributesSchedule.md b/gooddata-api-client/docs/JsonApiAutomationInAttributesSchedule.md index 7f154ae47..adc7a2027 100644 --- a/gooddata-api-client/docs/JsonApiAutomationInAttributesSchedule.md +++ b/gooddata-api-client/docs/JsonApiAutomationInAttributesSchedule.md @@ -5,7 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **cron** | **str** | Cron expression defining the schedule of the automation. The format is SECOND MINUTE HOUR DAY-OF-MONTH MONTH DAY-OF-WEEK (YEAR). The example expression signifies an action every 30 minutes from 9:00 to 17:00 on workdays. | -**cron_description** | **str** | Human-readable description of the cron expression. | [optional] +**cron_description** | **str** | Human-readable description of the cron expression. | [optional] [readonly] **first_run** | **datetime** | Timestamp of the first scheduled action. If not provided default to the next scheduled time. | [optional] **timezone** | **str** | Timezone in which the schedule is defined. | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/gooddata-api-client/docs/JsonApiAutomationInRelationships.md b/gooddata-api-client/docs/JsonApiAutomationInRelationships.md index e75fdd2a2..91d9e94ce 100644 --- a/gooddata-api-client/docs/JsonApiAutomationInRelationships.md +++ b/gooddata-api-client/docs/JsonApiAutomationInRelationships.md @@ -4,6 +4,7 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- +**analytical_dashboard** | [**JsonApiAutomationInRelationshipsAnalyticalDashboard**](JsonApiAutomationInRelationshipsAnalyticalDashboard.md) | | [optional] **export_definitions** | [**JsonApiAutomationInRelationshipsExportDefinitions**](JsonApiAutomationInRelationshipsExportDefinitions.md) | | [optional] **notification_channel** | [**JsonApiAutomationInRelationshipsNotificationChannel**](JsonApiAutomationInRelationshipsNotificationChannel.md) | | [optional] **recipients** | [**JsonApiAutomationInRelationshipsRecipients**](JsonApiAutomationInRelationshipsRecipients.md) | | [optional] diff --git a/gooddata-api-client/docs/JsonApiExportDefinitionInRelationshipsAnalyticalDashboard.md b/gooddata-api-client/docs/JsonApiAutomationInRelationshipsAnalyticalDashboard.md similarity index 90% rename from gooddata-api-client/docs/JsonApiExportDefinitionInRelationshipsAnalyticalDashboard.md rename to gooddata-api-client/docs/JsonApiAutomationInRelationshipsAnalyticalDashboard.md index 9847f53f0..ad6b396fc 100644 --- a/gooddata-api-client/docs/JsonApiExportDefinitionInRelationshipsAnalyticalDashboard.md +++ b/gooddata-api-client/docs/JsonApiAutomationInRelationshipsAnalyticalDashboard.md @@ -1,4 +1,4 @@ -# JsonApiExportDefinitionInRelationshipsAnalyticalDashboard +# JsonApiAutomationInRelationshipsAnalyticalDashboard ## Properties diff --git a/gooddata-api-client/docs/JsonApiAutomationLinkage.md b/gooddata-api-client/docs/JsonApiAutomationLinkage.md new file mode 100644 index 000000000..a38d932cd --- /dev/null +++ b/gooddata-api-client/docs/JsonApiAutomationLinkage.md @@ -0,0 +1,14 @@ +# JsonApiAutomationLinkage + +The \\\"type\\\" and \\\"id\\\" to non-empty members. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **str** | | +**type** | **str** | | defaults to "automation" +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiAutomationOutAttributes.md b/gooddata-api-client/docs/JsonApiAutomationOutAttributes.md index 481d4740a..9334c35e3 100644 --- a/gooddata-api-client/docs/JsonApiAutomationOutAttributes.md +++ b/gooddata-api-client/docs/JsonApiAutomationOutAttributes.md @@ -4,6 +4,7 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- +**alert** | [**JsonApiAutomationInAttributesAlert**](JsonApiAutomationInAttributesAlert.md) | | [optional] **are_relations_valid** | **bool** | | [optional] **created_at** | **datetime** | | [optional] **description** | **str** | | [optional] @@ -11,6 +12,7 @@ Name | Type | Description | Notes **metadata** | **{str: (bool, date, datetime, dict, float, int, list, str, none_type)}, none_type** | Additional information for the automation. | [optional] **modified_at** | **datetime** | | [optional] **schedule** | [**JsonApiAutomationInAttributesSchedule**](JsonApiAutomationInAttributesSchedule.md) | | [optional] +**state** | **str** | Current state of the automation. | [optional] **tags** | **[str]** | | [optional] **title** | **str** | | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/gooddata-api-client/docs/JsonApiAutomationOutIncludes.md b/gooddata-api-client/docs/JsonApiAutomationOutIncludes.md index e045047e3..0615b6175 100644 --- a/gooddata-api-client/docs/JsonApiAutomationOutIncludes.md +++ b/gooddata-api-client/docs/JsonApiAutomationOutIncludes.md @@ -4,10 +4,10 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**attributes** | [**JsonApiUserInAttributes**](JsonApiUserInAttributes.md) | | [optional] **links** | [**ObjectLinks**](ObjectLinks.md) | | [optional] **meta** | [**JsonApiAttributeHierarchyOutMeta**](JsonApiAttributeHierarchyOutMeta.md) | | [optional] **relationships** | [**JsonApiUserInRelationships**](JsonApiUserInRelationships.md) | | [optional] +**attributes** | [**JsonApiUserInAttributes**](JsonApiUserInAttributes.md) | | [optional] **id** | **str** | API identifier of an object | [optional] **type** | **str** | Object type | [optional] if omitted the server will use the default value of "user" **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/gooddata-api-client/docs/JsonApiAutomationOutRelationships.md b/gooddata-api-client/docs/JsonApiAutomationOutRelationships.md index 81950ec3d..787ff4e56 100644 --- a/gooddata-api-client/docs/JsonApiAutomationOutRelationships.md +++ b/gooddata-api-client/docs/JsonApiAutomationOutRelationships.md @@ -4,6 +4,7 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- +**analytical_dashboard** | [**JsonApiAutomationInRelationshipsAnalyticalDashboard**](JsonApiAutomationInRelationshipsAnalyticalDashboard.md) | | [optional] **created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] **export_definitions** | [**JsonApiAutomationInRelationshipsExportDefinitions**](JsonApiAutomationInRelationshipsExportDefinitions.md) | | [optional] **modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] diff --git a/gooddata-api-client/docs/JsonApiAutomationToOneLinkage.md b/gooddata-api-client/docs/JsonApiAutomationToOneLinkage.md new file mode 100644 index 000000000..c7631d2b3 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiAutomationToOneLinkage.md @@ -0,0 +1,14 @@ +# JsonApiAutomationToOneLinkage + +References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **str** | | [optional] +**type** | **str** | | [optional] if omitted the server will use the default value of "automation" +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiExportDefinitionInRelationships.md b/gooddata-api-client/docs/JsonApiExportDefinitionInRelationships.md index 6cab32a04..dbd3b075e 100644 --- a/gooddata-api-client/docs/JsonApiExportDefinitionInRelationships.md +++ b/gooddata-api-client/docs/JsonApiExportDefinitionInRelationships.md @@ -4,7 +4,7 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**analytical_dashboard** | [**JsonApiExportDefinitionInRelationshipsAnalyticalDashboard**](JsonApiExportDefinitionInRelationshipsAnalyticalDashboard.md) | | [optional] +**analytical_dashboard** | [**JsonApiAutomationInRelationshipsAnalyticalDashboard**](JsonApiAutomationInRelationshipsAnalyticalDashboard.md) | | [optional] **visualization_object** | [**JsonApiExportDefinitionInRelationshipsVisualizationObject**](JsonApiExportDefinitionInRelationshipsVisualizationObject.md) | | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/gooddata-api-client/docs/JsonApiExportDefinitionOutIncludes.md b/gooddata-api-client/docs/JsonApiExportDefinitionOutIncludes.md index cfe3059d8..341296a06 100644 --- a/gooddata-api-client/docs/JsonApiExportDefinitionOutIncludes.md +++ b/gooddata-api-client/docs/JsonApiExportDefinitionOutIncludes.md @@ -4,8 +4,8 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**meta** | [**JsonApiAnalyticalDashboardOutMeta**](JsonApiAnalyticalDashboardOutMeta.md) | | [optional] -**relationships** | [**JsonApiAnalyticalDashboardOutRelationships**](JsonApiAnalyticalDashboardOutRelationships.md) | | [optional] +**meta** | [**JsonApiAttributeHierarchyOutMeta**](JsonApiAttributeHierarchyOutMeta.md) | | [optional] +**relationships** | [**JsonApiAutomationOutRelationships**](JsonApiAutomationOutRelationships.md) | | [optional] **links** | [**ObjectLinks**](ObjectLinks.md) | | [optional] **attributes** | [**JsonApiUserIdentifierOutAttributes**](JsonApiUserIdentifierOutAttributes.md) | | [optional] **id** | **str** | API identifier of an object | [optional] diff --git a/gooddata-api-client/docs/JsonApiExportDefinitionOutRelationships.md b/gooddata-api-client/docs/JsonApiExportDefinitionOutRelationships.md index 2c063eb31..cf83ee346 100644 --- a/gooddata-api-client/docs/JsonApiExportDefinitionOutRelationships.md +++ b/gooddata-api-client/docs/JsonApiExportDefinitionOutRelationships.md @@ -4,7 +4,8 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**analytical_dashboard** | [**JsonApiExportDefinitionInRelationshipsAnalyticalDashboard**](JsonApiExportDefinitionInRelationshipsAnalyticalDashboard.md) | | [optional] +**analytical_dashboard** | [**JsonApiAutomationInRelationshipsAnalyticalDashboard**](JsonApiAutomationInRelationshipsAnalyticalDashboard.md) | | [optional] +**automation** | [**JsonApiExportDefinitionOutRelationshipsAutomation**](JsonApiExportDefinitionOutRelationshipsAutomation.md) | | [optional] **created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] **modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] **visualization_object** | [**JsonApiExportDefinitionInRelationshipsVisualizationObject**](JsonApiExportDefinitionInRelationshipsVisualizationObject.md) | | [optional] diff --git a/gooddata-api-client/docs/JsonApiExportDefinitionOutRelationshipsAutomation.md b/gooddata-api-client/docs/JsonApiExportDefinitionOutRelationshipsAutomation.md new file mode 100644 index 000000000..193df7670 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiExportDefinitionOutRelationshipsAutomation.md @@ -0,0 +1,12 @@ +# JsonApiExportDefinitionOutRelationshipsAutomation + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**JsonApiAutomationToOneLinkage**](JsonApiAutomationToOneLinkage.md) | | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiFilterViewIn.md b/gooddata-api-client/docs/JsonApiFilterViewIn.md new file mode 100644 index 000000000..b9faee61a --- /dev/null +++ b/gooddata-api-client/docs/JsonApiFilterViewIn.md @@ -0,0 +1,16 @@ +# JsonApiFilterViewIn + +JSON:API representation of filterView entity. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiFilterViewInAttributes**](JsonApiFilterViewInAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "filterView" +**relationships** | [**JsonApiFilterViewInRelationships**](JsonApiFilterViewInRelationships.md) | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiFilterViewInAttributes.md b/gooddata-api-client/docs/JsonApiFilterViewInAttributes.md new file mode 100644 index 000000000..80cbfe69e --- /dev/null +++ b/gooddata-api-client/docs/JsonApiFilterViewInAttributes.md @@ -0,0 +1,17 @@ +# JsonApiFilterViewInAttributes + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**content** | **{str: (bool, date, datetime, dict, float, int, list, str, none_type)}** | The respective filter context. | +**title** | **str** | | +**are_relations_valid** | **bool** | | [optional] +**description** | **str** | | [optional] +**is_default** | **bool** | Indicator whether the filter view should by applied by default. | [optional] +**tags** | **[str]** | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiFilterViewInDocument.md b/gooddata-api-client/docs/JsonApiFilterViewInDocument.md new file mode 100644 index 000000000..2abbd2c0c --- /dev/null +++ b/gooddata-api-client/docs/JsonApiFilterViewInDocument.md @@ -0,0 +1,12 @@ +# JsonApiFilterViewInDocument + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**JsonApiFilterViewIn**](JsonApiFilterViewIn.md) | | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiFilterViewInRelationships.md b/gooddata-api-client/docs/JsonApiFilterViewInRelationships.md new file mode 100644 index 000000000..564c72722 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiFilterViewInRelationships.md @@ -0,0 +1,13 @@ +# JsonApiFilterViewInRelationships + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**analytical_dashboard** | [**JsonApiAutomationInRelationshipsAnalyticalDashboard**](JsonApiAutomationInRelationshipsAnalyticalDashboard.md) | | [optional] +**user** | [**JsonApiFilterViewInRelationshipsUser**](JsonApiFilterViewInRelationshipsUser.md) | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiOrganizationOutRelationshipsBootstrapUser.md b/gooddata-api-client/docs/JsonApiFilterViewInRelationshipsUser.md similarity index 91% rename from gooddata-api-client/docs/JsonApiOrganizationOutRelationshipsBootstrapUser.md rename to gooddata-api-client/docs/JsonApiFilterViewInRelationshipsUser.md index 06ef9a8d5..8857b492e 100644 --- a/gooddata-api-client/docs/JsonApiOrganizationOutRelationshipsBootstrapUser.md +++ b/gooddata-api-client/docs/JsonApiFilterViewInRelationshipsUser.md @@ -1,4 +1,4 @@ -# JsonApiOrganizationOutRelationshipsBootstrapUser +# JsonApiFilterViewInRelationshipsUser ## Properties diff --git a/gooddata-api-client/docs/JsonApiFilterViewOut.md b/gooddata-api-client/docs/JsonApiFilterViewOut.md new file mode 100644 index 000000000..83f887096 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiFilterViewOut.md @@ -0,0 +1,16 @@ +# JsonApiFilterViewOut + +JSON:API representation of filterView entity. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiFilterViewInAttributes**](JsonApiFilterViewInAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "filterView" +**relationships** | [**JsonApiFilterViewInRelationships**](JsonApiFilterViewInRelationships.md) | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiFilterViewOutDocument.md b/gooddata-api-client/docs/JsonApiFilterViewOutDocument.md new file mode 100644 index 000000000..db60b2251 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiFilterViewOutDocument.md @@ -0,0 +1,14 @@ +# JsonApiFilterViewOutDocument + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**JsonApiFilterViewOut**](JsonApiFilterViewOut.md) | | +**included** | [**[JsonApiFilterViewOutIncludes]**](JsonApiFilterViewOutIncludes.md) | Included resources | [optional] +**links** | [**ObjectLinks**](ObjectLinks.md) | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiFilterViewOutIncludes.md b/gooddata-api-client/docs/JsonApiFilterViewOutIncludes.md new file mode 100644 index 000000000..dfdfbee9a --- /dev/null +++ b/gooddata-api-client/docs/JsonApiFilterViewOutIncludes.md @@ -0,0 +1,17 @@ +# JsonApiFilterViewOutIncludes + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**meta** | [**JsonApiAnalyticalDashboardOutMeta**](JsonApiAnalyticalDashboardOutMeta.md) | | [optional] +**relationships** | [**JsonApiUserInRelationships**](JsonApiUserInRelationships.md) | | [optional] +**links** | [**ObjectLinks**](ObjectLinks.md) | | [optional] +**attributes** | [**JsonApiUserInAttributes**](JsonApiUserInAttributes.md) | | [optional] +**id** | **str** | API identifier of an object | [optional] +**type** | **str** | Object type | [optional] if omitted the server will use the default value of "user" +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiFilterViewOutList.md b/gooddata-api-client/docs/JsonApiFilterViewOutList.md new file mode 100644 index 000000000..c220bb3e0 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiFilterViewOutList.md @@ -0,0 +1,16 @@ +# JsonApiFilterViewOutList + +A JSON:API document with a list of resources + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**[JsonApiFilterViewOutWithLinks]**](JsonApiFilterViewOutWithLinks.md) | | +**included** | [**[JsonApiFilterViewOutIncludes]**](JsonApiFilterViewOutIncludes.md) | Included resources | [optional] +**links** | [**ListLinks**](ListLinks.md) | | [optional] +**meta** | [**JsonApiAnalyticalDashboardOutListMeta**](JsonApiAnalyticalDashboardOutListMeta.md) | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiFilterViewOutWithLinks.md b/gooddata-api-client/docs/JsonApiFilterViewOutWithLinks.md new file mode 100644 index 000000000..c95ee780f --- /dev/null +++ b/gooddata-api-client/docs/JsonApiFilterViewOutWithLinks.md @@ -0,0 +1,16 @@ +# JsonApiFilterViewOutWithLinks + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiFilterViewInAttributes**](JsonApiFilterViewInAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "filterView" +**relationships** | [**JsonApiFilterViewInRelationships**](JsonApiFilterViewInRelationships.md) | | [optional] +**links** | [**ObjectLinks**](ObjectLinks.md) | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiFilterViewPatch.md b/gooddata-api-client/docs/JsonApiFilterViewPatch.md new file mode 100644 index 000000000..ba121fa3d --- /dev/null +++ b/gooddata-api-client/docs/JsonApiFilterViewPatch.md @@ -0,0 +1,16 @@ +# JsonApiFilterViewPatch + +JSON:API representation of patching filterView entity. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiFilterViewPatchAttributes**](JsonApiFilterViewPatchAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "filterView" +**relationships** | [**JsonApiFilterViewInRelationships**](JsonApiFilterViewInRelationships.md) | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiFilterViewPatchAttributes.md b/gooddata-api-client/docs/JsonApiFilterViewPatchAttributes.md new file mode 100644 index 000000000..017769086 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiFilterViewPatchAttributes.md @@ -0,0 +1,17 @@ +# JsonApiFilterViewPatchAttributes + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**are_relations_valid** | **bool** | | [optional] +**content** | **{str: (bool, date, datetime, dict, float, int, list, str, none_type)}** | The respective filter context. | [optional] +**description** | **str** | | [optional] +**is_default** | **bool** | Indicator whether the filter view should by applied by default. | [optional] +**tags** | **[str]** | | [optional] +**title** | **str** | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiFilterViewPatchDocument.md b/gooddata-api-client/docs/JsonApiFilterViewPatchDocument.md new file mode 100644 index 000000000..671830268 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiFilterViewPatchDocument.md @@ -0,0 +1,12 @@ +# JsonApiFilterViewPatchDocument + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**JsonApiFilterViewPatch**](JsonApiFilterViewPatch.md) | | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiIdentityProviderIn.md b/gooddata-api-client/docs/JsonApiIdentityProviderIn.md new file mode 100644 index 000000000..bfe50f746 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiIdentityProviderIn.md @@ -0,0 +1,15 @@ +# JsonApiIdentityProviderIn + +JSON:API representation of identityProvider entity. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiIdentityProviderInAttributes**](JsonApiIdentityProviderInAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "identityProvider" +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiIdentityProviderInAttributes.md b/gooddata-api-client/docs/JsonApiIdentityProviderInAttributes.md new file mode 100644 index 000000000..2df531e4c --- /dev/null +++ b/gooddata-api-client/docs/JsonApiIdentityProviderInAttributes.md @@ -0,0 +1,14 @@ +# JsonApiIdentityProviderInAttributes + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**specification** | [**JsonApiIdentityProviderInAttributesSpecification**](JsonApiIdentityProviderInAttributesSpecification.md) | | +**type** | **str** | Type of the identity provider. | +**identifiers** | **[str]** | List of identifiers for this IdP, where an identifier is a domain name. Users with email addresses belonging to these domains will be authenticated by this IdP. In multiple provider setup, this field is mandatory. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiIdentityProviderInAttributesSpecification.md b/gooddata-api-client/docs/JsonApiIdentityProviderInAttributesSpecification.md new file mode 100644 index 000000000..d9e23b7d5 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiIdentityProviderInAttributesSpecification.md @@ -0,0 +1,18 @@ +# JsonApiIdentityProviderInAttributesSpecification + +Specification of the identity provider. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**metadata** | **str** | Base64 encoded xml document with SAML metadata. This document is issued by your SAML provider. It includes the issuer's name, expiration information, and keys that can be used to validate the response from the identity provider. | [optional] +**oauth_client_id** | **str** | | [optional] +**oauth_client_secret** | **str** | | [optional] +**oauth_issuer_id** | **str** | Any string identifying the OIDC provider. This value is used as suffix for OAuth2 callback (redirect) URL. If not defined, the standard callback URL is used. This value is valid only for external OIDC providers, not for the internal DEX provider. | [optional] +**oauth_issuer_location** | **str** | | [optional] +**oauth_subject_id_claim** | **str** | Any string identifying the claim in ID token, that should be used for user identification. The default value is 'sub'. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiIdentityProviderInDocument.md b/gooddata-api-client/docs/JsonApiIdentityProviderInDocument.md new file mode 100644 index 000000000..98a3633d8 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiIdentityProviderInDocument.md @@ -0,0 +1,12 @@ +# JsonApiIdentityProviderInDocument + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**JsonApiIdentityProviderIn**](JsonApiIdentityProviderIn.md) | | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiIdentityProviderOut.md b/gooddata-api-client/docs/JsonApiIdentityProviderOut.md new file mode 100644 index 000000000..0898e9ef9 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiIdentityProviderOut.md @@ -0,0 +1,15 @@ +# JsonApiIdentityProviderOut + +JSON:API representation of identityProvider entity. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiIdentityProviderInAttributes**](JsonApiIdentityProviderInAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "identityProvider" +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiIdentityProviderOutDocument.md b/gooddata-api-client/docs/JsonApiIdentityProviderOutDocument.md new file mode 100644 index 000000000..2fe176211 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiIdentityProviderOutDocument.md @@ -0,0 +1,13 @@ +# JsonApiIdentityProviderOutDocument + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**JsonApiIdentityProviderOut**](JsonApiIdentityProviderOut.md) | | +**links** | [**ObjectLinks**](ObjectLinks.md) | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiIdentityProviderOutList.md b/gooddata-api-client/docs/JsonApiIdentityProviderOutList.md new file mode 100644 index 000000000..be3b2ca75 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiIdentityProviderOutList.md @@ -0,0 +1,15 @@ +# JsonApiIdentityProviderOutList + +A JSON:API document with a list of resources + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**[JsonApiIdentityProviderOutWithLinks]**](JsonApiIdentityProviderOutWithLinks.md) | | +**links** | [**ListLinks**](ListLinks.md) | | [optional] +**meta** | [**JsonApiAnalyticalDashboardOutListMeta**](JsonApiAnalyticalDashboardOutListMeta.md) | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiIdentityProviderOutWithLinks.md b/gooddata-api-client/docs/JsonApiIdentityProviderOutWithLinks.md new file mode 100644 index 000000000..ffb7f286b --- /dev/null +++ b/gooddata-api-client/docs/JsonApiIdentityProviderOutWithLinks.md @@ -0,0 +1,15 @@ +# JsonApiIdentityProviderOutWithLinks + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiIdentityProviderInAttributes**](JsonApiIdentityProviderInAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "identityProvider" +**links** | [**ObjectLinks**](ObjectLinks.md) | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiIdentityProviderPatch.md b/gooddata-api-client/docs/JsonApiIdentityProviderPatch.md new file mode 100644 index 000000000..b4d1f99b5 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiIdentityProviderPatch.md @@ -0,0 +1,15 @@ +# JsonApiIdentityProviderPatch + +JSON:API representation of patching identityProvider entity. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiIdentityProviderPatchAttributes**](JsonApiIdentityProviderPatchAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "identityProvider" +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiIdentityProviderPatchAttributes.md b/gooddata-api-client/docs/JsonApiIdentityProviderPatchAttributes.md new file mode 100644 index 000000000..f03937e4d --- /dev/null +++ b/gooddata-api-client/docs/JsonApiIdentityProviderPatchAttributes.md @@ -0,0 +1,14 @@ +# JsonApiIdentityProviderPatchAttributes + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**identifiers** | **[str]** | List of identifiers for this IdP, where an identifier is a domain name. Users with email addresses belonging to these domains will be authenticated by this IdP. In multiple provider setup, this field is mandatory. | [optional] +**specification** | [**JsonApiIdentityProviderInAttributesSpecification**](JsonApiIdentityProviderInAttributesSpecification.md) | | [optional] +**type** | **str** | Type of the identity provider. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiIdentityProviderPatchDocument.md b/gooddata-api-client/docs/JsonApiIdentityProviderPatchDocument.md new file mode 100644 index 000000000..4810ecc80 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiIdentityProviderPatchDocument.md @@ -0,0 +1,12 @@ +# JsonApiIdentityProviderPatchDocument + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**JsonApiIdentityProviderPatch**](JsonApiIdentityProviderPatch.md) | | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiLlmEndpointIn.md b/gooddata-api-client/docs/JsonApiLlmEndpointIn.md new file mode 100644 index 000000000..4f48db219 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmEndpointIn.md @@ -0,0 +1,15 @@ +# JsonApiLlmEndpointIn + +JSON:API representation of llmEndpoint entity. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiLlmEndpointInAttributes**](JsonApiLlmEndpointInAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "llmEndpoint" +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiLlmEndpointInAttributes.md b/gooddata-api-client/docs/JsonApiLlmEndpointInAttributes.md new file mode 100644 index 000000000..85895147a --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmEndpointInAttributes.md @@ -0,0 +1,18 @@ +# JsonApiLlmEndpointInAttributes + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**title** | **str** | User-facing title of the LLM Provider. | +**token** | **str** | The token to use to connect to the LLM provider. | +**provider** | **str** | LLM Provider. | defaults to "OPENAI" +**base_url** | **str, none_type** | Custom LLM endpoint. | [optional] +**description** | **str, none_type** | User-facing description of the LLM Provider. | [optional] +**llm_model** | **str, none_type** | LLM Model. We provide a default model for each provider, but you can override it here. | [optional] +**llm_organization** | **str, none_type** | Organization in LLM provider. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiLlmEndpointInDocument.md b/gooddata-api-client/docs/JsonApiLlmEndpointInDocument.md new file mode 100644 index 000000000..926ffde18 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmEndpointInDocument.md @@ -0,0 +1,12 @@ +# JsonApiLlmEndpointInDocument + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**JsonApiLlmEndpointIn**](JsonApiLlmEndpointIn.md) | | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiLlmEndpointOut.md b/gooddata-api-client/docs/JsonApiLlmEndpointOut.md new file mode 100644 index 000000000..0911e7fc9 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmEndpointOut.md @@ -0,0 +1,15 @@ +# JsonApiLlmEndpointOut + +JSON:API representation of llmEndpoint entity. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiLlmEndpointOutAttributes**](JsonApiLlmEndpointOutAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "llmEndpoint" +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiLlmEndpointOutAttributes.md b/gooddata-api-client/docs/JsonApiLlmEndpointOutAttributes.md new file mode 100644 index 000000000..b39af4f49 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmEndpointOutAttributes.md @@ -0,0 +1,17 @@ +# JsonApiLlmEndpointOutAttributes + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**title** | **str** | User-facing title of the LLM Provider. | +**provider** | **str** | LLM Provider. | defaults to "OPENAI" +**base_url** | **str, none_type** | Custom LLM endpoint. | [optional] +**description** | **str, none_type** | User-facing description of the LLM Provider. | [optional] +**llm_model** | **str, none_type** | LLM Model. We provide a default model for each provider, but you can override it here. | [optional] +**llm_organization** | **str, none_type** | Organization in LLM provider. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiLlmEndpointOutDocument.md b/gooddata-api-client/docs/JsonApiLlmEndpointOutDocument.md new file mode 100644 index 000000000..a9b7aea19 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmEndpointOutDocument.md @@ -0,0 +1,13 @@ +# JsonApiLlmEndpointOutDocument + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**JsonApiLlmEndpointOut**](JsonApiLlmEndpointOut.md) | | +**links** | [**ObjectLinks**](ObjectLinks.md) | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiLlmEndpointOutList.md b/gooddata-api-client/docs/JsonApiLlmEndpointOutList.md new file mode 100644 index 000000000..7df1c443e --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmEndpointOutList.md @@ -0,0 +1,15 @@ +# JsonApiLlmEndpointOutList + +A JSON:API document with a list of resources + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**[JsonApiLlmEndpointOutWithLinks]**](JsonApiLlmEndpointOutWithLinks.md) | | +**links** | [**ListLinks**](ListLinks.md) | | [optional] +**meta** | [**JsonApiAnalyticalDashboardOutListMeta**](JsonApiAnalyticalDashboardOutListMeta.md) | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiLlmEndpointOutWithLinks.md b/gooddata-api-client/docs/JsonApiLlmEndpointOutWithLinks.md new file mode 100644 index 000000000..8dbd65202 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmEndpointOutWithLinks.md @@ -0,0 +1,15 @@ +# JsonApiLlmEndpointOutWithLinks + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiLlmEndpointOutAttributes**](JsonApiLlmEndpointOutAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "llmEndpoint" +**links** | [**ObjectLinks**](ObjectLinks.md) | | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiLlmEndpointPatch.md b/gooddata-api-client/docs/JsonApiLlmEndpointPatch.md new file mode 100644 index 000000000..3ec8d0815 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmEndpointPatch.md @@ -0,0 +1,15 @@ +# JsonApiLlmEndpointPatch + +JSON:API representation of patching llmEndpoint entity. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiLlmEndpointPatchAttributes**](JsonApiLlmEndpointPatchAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "llmEndpoint" +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiLlmEndpointPatchAttributes.md b/gooddata-api-client/docs/JsonApiLlmEndpointPatchAttributes.md new file mode 100644 index 000000000..9f1f80348 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmEndpointPatchAttributes.md @@ -0,0 +1,18 @@ +# JsonApiLlmEndpointPatchAttributes + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**base_url** | **str, none_type** | Custom LLM endpoint. | [optional] +**description** | **str, none_type** | User-facing description of the LLM Provider. | [optional] +**llm_model** | **str, none_type** | LLM Model. We provide a default model for each provider, but you can override it here. | [optional] +**llm_organization** | **str, none_type** | Organization in LLM provider. | [optional] +**provider** | **str** | LLM Provider. | [optional] if omitted the server will use the default value of "OPENAI" +**title** | **str** | User-facing title of the LLM Provider. | [optional] +**token** | **str** | The token to use to connect to the LLM provider. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiLlmEndpointPatchDocument.md b/gooddata-api-client/docs/JsonApiLlmEndpointPatchDocument.md new file mode 100644 index 000000000..8712dada6 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmEndpointPatchDocument.md @@ -0,0 +1,12 @@ +# JsonApiLlmEndpointPatchDocument + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**JsonApiLlmEndpointPatch**](JsonApiLlmEndpointPatch.md) | | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiNotificationChannelInAttributes.md b/gooddata-api-client/docs/JsonApiNotificationChannelInAttributes.md index f849ea557..06e8e126f 100644 --- a/gooddata-api-client/docs/JsonApiNotificationChannelInAttributes.md +++ b/gooddata-api-client/docs/JsonApiNotificationChannelInAttributes.md @@ -4,10 +4,12 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- +**allowed_recipients** | **str** | Allowed recipients of notifications from this channel. CREATOR - only the creator INTERNAL - all users within the organization | [optional] +**custom_dashboard_url** | **str** | Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}. | [optional] **description** | **str, none_type** | | [optional] +**destination** | [**JsonApiNotificationChannelInAttributesDestination**](JsonApiNotificationChannelInAttributesDestination.md) | | [optional] +**destination_type** | **str, none_type** | | [optional] **name** | **str, none_type** | | [optional] -**triggers** | [**[JsonApiNotificationChannelInAttributesTriggersInner]**](JsonApiNotificationChannelInAttributesTriggersInner.md) | The triggers that are to be used to send notifications to the channel. | [optional] -**webhook** | [**JsonApiNotificationChannelInAttributesWebhook**](JsonApiNotificationChannelInAttributesWebhook.md) | | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/gooddata-api-client/docs/JsonApiNotificationChannelInAttributesDestination.md b/gooddata-api-client/docs/JsonApiNotificationChannelInAttributesDestination.md new file mode 100644 index 000000000..833abd72a --- /dev/null +++ b/gooddata-api-client/docs/JsonApiNotificationChannelInAttributesDestination.md @@ -0,0 +1,22 @@ +# JsonApiNotificationChannelInAttributesDestination + +The destination where the notifications are to be sent. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**from_email** | **str** | E-mail address to send notifications from. | [optional] if omitted the server will use the default value of "no-reply@gooddata.com" +**from_email_name** | **str** | An optional e-mail name to send notifications from. | [optional] if omitted the server will use the default value of "GoodData" +**host** | **str** | The SMTP server address. | [optional] +**password** | **str** | The SMTP server password. | [optional] +**port** | **int** | The SMTP server port. | [optional] +**username** | **str** | The SMTP server username. | [optional] +**has_token** | **bool, none_type** | Flag indicating if webhook has a token. | [optional] [readonly] +**token** | **str, none_type** | Bearer token for the webhook. | [optional] +**url** | **str** | The webhook URL. | [optional] +**type** | **str** | The destination type. | [optional] if omitted the server will use the default value of "WEBHOOK" +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/JsonApiOrganizationOutRelationships.md b/gooddata-api-client/docs/JsonApiOrganizationOutRelationships.md index f9bbc3ca1..11b9f425d 100644 --- a/gooddata-api-client/docs/JsonApiOrganizationOutRelationships.md +++ b/gooddata-api-client/docs/JsonApiOrganizationOutRelationships.md @@ -4,7 +4,7 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**bootstrap_user** | [**JsonApiOrganizationOutRelationshipsBootstrapUser**](JsonApiOrganizationOutRelationshipsBootstrapUser.md) | | [optional] +**bootstrap_user** | [**JsonApiFilterViewInRelationshipsUser**](JsonApiFilterViewInRelationshipsUser.md) | | [optional] **bootstrap_user_group** | [**JsonApiOrganizationOutRelationshipsBootstrapUserGroup**](JsonApiOrganizationOutRelationshipsBootstrapUserGroup.md) | | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/gooddata-api-client/docs/JsonApiUserDataFilterInRelationships.md b/gooddata-api-client/docs/JsonApiUserDataFilterInRelationships.md index 240454339..fda96c238 100644 --- a/gooddata-api-client/docs/JsonApiUserDataFilterInRelationships.md +++ b/gooddata-api-client/docs/JsonApiUserDataFilterInRelationships.md @@ -4,7 +4,7 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**user** | [**JsonApiOrganizationOutRelationshipsBootstrapUser**](JsonApiOrganizationOutRelationshipsBootstrapUser.md) | | [optional] +**user** | [**JsonApiFilterViewInRelationshipsUser**](JsonApiFilterViewInRelationshipsUser.md) | | [optional] **user_group** | [**JsonApiOrganizationOutRelationshipsBootstrapUserGroup**](JsonApiOrganizationOutRelationshipsBootstrapUserGroup.md) | | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/gooddata-api-client/docs/JsonApiUserDataFilterOutRelationships.md b/gooddata-api-client/docs/JsonApiUserDataFilterOutRelationships.md index a4bd84f3c..9ca9927ac 100644 --- a/gooddata-api-client/docs/JsonApiUserDataFilterOutRelationships.md +++ b/gooddata-api-client/docs/JsonApiUserDataFilterOutRelationships.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **facts** | [**JsonApiDatasetOutRelationshipsFacts**](JsonApiDatasetOutRelationshipsFacts.md) | | [optional] **labels** | [**JsonApiAnalyticalDashboardOutRelationshipsLabels**](JsonApiAnalyticalDashboardOutRelationshipsLabels.md) | | [optional] **metrics** | [**JsonApiAnalyticalDashboardOutRelationshipsMetrics**](JsonApiAnalyticalDashboardOutRelationshipsMetrics.md) | | [optional] -**user** | [**JsonApiOrganizationOutRelationshipsBootstrapUser**](JsonApiOrganizationOutRelationshipsBootstrapUser.md) | | [optional] +**user** | [**JsonApiFilterViewInRelationshipsUser**](JsonApiFilterViewInRelationshipsUser.md) | | [optional] **user_group** | [**JsonApiOrganizationOutRelationshipsBootstrapUserGroup**](JsonApiOrganizationOutRelationshipsBootstrapUserGroup.md) | | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/gooddata-api-client/docs/LLMEndpointsApi.md b/gooddata-api-client/docs/LLMEndpointsApi.md new file mode 100644 index 000000000..2cf88ff4b --- /dev/null +++ b/gooddata-api-client/docs/LLMEndpointsApi.md @@ -0,0 +1,505 @@ +# gooddata_api_client.LLMEndpointsApi + +All URIs are relative to *http://localhost* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**create_entity_llm_endpoints**](LLMEndpointsApi.md#create_entity_llm_endpoints) | **POST** /api/v1/entities/llmEndpoints | Post LLM endpoint entities +[**delete_entity_llm_endpoints**](LLMEndpointsApi.md#delete_entity_llm_endpoints) | **DELETE** /api/v1/entities/llmEndpoints/{id} | +[**get_all_entities_llm_endpoints**](LLMEndpointsApi.md#get_all_entities_llm_endpoints) | **GET** /api/v1/entities/llmEndpoints | Get all LLM endpoint entities +[**get_entity_llm_endpoints**](LLMEndpointsApi.md#get_entity_llm_endpoints) | **GET** /api/v1/entities/llmEndpoints/{id} | Get LLM endpoint entity +[**patch_entity_llm_endpoints**](LLMEndpointsApi.md#patch_entity_llm_endpoints) | **PATCH** /api/v1/entities/llmEndpoints/{id} | Patch LLM endpoint entity +[**update_entity_llm_endpoints**](LLMEndpointsApi.md#update_entity_llm_endpoints) | **PUT** /api/v1/entities/llmEndpoints/{id} | PUT LLM endpoint entity + + +# **create_entity_llm_endpoints** +> JsonApiLlmEndpointOutDocument create_entity_llm_endpoints(json_api_llm_endpoint_in_document) + +Post LLM endpoint entities + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import llm_endpoints_api +from gooddata_api_client.model.json_api_llm_endpoint_in_document import JsonApiLlmEndpointInDocument +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = llm_endpoints_api.LLMEndpointsApi(api_client) + json_api_llm_endpoint_in_document = JsonApiLlmEndpointInDocument( + data=JsonApiLlmEndpointIn( + attributes=JsonApiLlmEndpointInAttributes( + base_url="base_url_example", + description="description_example", + llm_model="llm_model_example", + llm_organization="llm_organization_example", + provider="OPENAI", + title="title_example", + token="token_example", + ), + id="id1", + type="llmEndpoint", + ), + ) # JsonApiLlmEndpointInDocument | + + # example passing only required values which don't have defaults set + try: + # Post LLM endpoint entities + api_response = api_instance.create_entity_llm_endpoints(json_api_llm_endpoint_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMEndpointsApi->create_entity_llm_endpoints: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **json_api_llm_endpoint_in_document** | [**JsonApiLlmEndpointInDocument**](JsonApiLlmEndpointInDocument.md)| | + +### Return type + +[**JsonApiLlmEndpointOutDocument**](JsonApiLlmEndpointOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**201** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **delete_entity_llm_endpoints** +> delete_entity_llm_endpoints(id) + + + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import llm_endpoints_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = llm_endpoints_api.LLMEndpointsApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + filter = "filter=title==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + api_instance.delete_entity_llm_endpoints(id) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMEndpointsApi->delete_entity_llm_endpoints: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + api_instance.delete_entity_llm_endpoints(id, filter=filter) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMEndpointsApi->delete_entity_llm_endpoints: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | Successfully deleted | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_all_entities_llm_endpoints** +> JsonApiLlmEndpointOutList get_all_entities_llm_endpoints() + +Get all LLM endpoint entities + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import llm_endpoints_api +from gooddata_api_client.model.json_api_llm_endpoint_out_list import JsonApiLlmEndpointOutList +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = llm_endpoints_api.LLMEndpointsApi(api_client) + filter = "filter=title==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 + size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 + sort = [ + "sort_example", + ] # [str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) + meta_include = [ + "metaInclude=page,all", + ] # [str] | Include Meta objects. (optional) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get all LLM endpoint entities + api_response = api_instance.get_all_entities_llm_endpoints(filter=filter, page=page, size=size, sort=sort, meta_include=meta_include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMEndpointsApi->get_all_entities_llm_endpoints: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **page** | **int**| Zero-based page index (0..N) | [optional] if omitted the server will use the default value of 0 + **size** | **int**| The size of the page to be returned | [optional] if omitted the server will use the default value of 20 + **sort** | **[str]**| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **meta_include** | **[str]**| Include Meta objects. | [optional] + +### Return type + +[**JsonApiLlmEndpointOutList**](JsonApiLlmEndpointOutList.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_entity_llm_endpoints** +> JsonApiLlmEndpointOutDocument get_entity_llm_endpoints(id) + +Get LLM endpoint entity + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import llm_endpoints_api +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = llm_endpoints_api.LLMEndpointsApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + filter = "filter=title==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Get LLM endpoint entity + api_response = api_instance.get_entity_llm_endpoints(id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMEndpointsApi->get_entity_llm_endpoints: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get LLM endpoint entity + api_response = api_instance.get_entity_llm_endpoints(id, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMEndpointsApi->get_entity_llm_endpoints: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiLlmEndpointOutDocument**](JsonApiLlmEndpointOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **patch_entity_llm_endpoints** +> JsonApiLlmEndpointOutDocument patch_entity_llm_endpoints(id, json_api_llm_endpoint_patch_document) + +Patch LLM endpoint entity + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import llm_endpoints_api +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument +from gooddata_api_client.model.json_api_llm_endpoint_patch_document import JsonApiLlmEndpointPatchDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = llm_endpoints_api.LLMEndpointsApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + json_api_llm_endpoint_patch_document = JsonApiLlmEndpointPatchDocument( + data=JsonApiLlmEndpointPatch( + attributes=JsonApiLlmEndpointPatchAttributes( + base_url="base_url_example", + description="description_example", + llm_model="llm_model_example", + llm_organization="llm_organization_example", + provider="OPENAI", + title="title_example", + token="token_example", + ), + id="id1", + type="llmEndpoint", + ), + ) # JsonApiLlmEndpointPatchDocument | + filter = "filter=title==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Patch LLM endpoint entity + api_response = api_instance.patch_entity_llm_endpoints(id, json_api_llm_endpoint_patch_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMEndpointsApi->patch_entity_llm_endpoints: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Patch LLM endpoint entity + api_response = api_instance.patch_entity_llm_endpoints(id, json_api_llm_endpoint_patch_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMEndpointsApi->patch_entity_llm_endpoints: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_llm_endpoint_patch_document** | [**JsonApiLlmEndpointPatchDocument**](JsonApiLlmEndpointPatchDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiLlmEndpointOutDocument**](JsonApiLlmEndpointOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **update_entity_llm_endpoints** +> JsonApiLlmEndpointOutDocument update_entity_llm_endpoints(id, json_api_llm_endpoint_in_document) + +PUT LLM endpoint entity + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import llm_endpoints_api +from gooddata_api_client.model.json_api_llm_endpoint_in_document import JsonApiLlmEndpointInDocument +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = llm_endpoints_api.LLMEndpointsApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + json_api_llm_endpoint_in_document = JsonApiLlmEndpointInDocument( + data=JsonApiLlmEndpointIn( + attributes=JsonApiLlmEndpointInAttributes( + base_url="base_url_example", + description="description_example", + llm_model="llm_model_example", + llm_organization="llm_organization_example", + provider="OPENAI", + title="title_example", + token="token_example", + ), + id="id1", + type="llmEndpoint", + ), + ) # JsonApiLlmEndpointInDocument | + filter = "filter=title==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # PUT LLM endpoint entity + api_response = api_instance.update_entity_llm_endpoints(id, json_api_llm_endpoint_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMEndpointsApi->update_entity_llm_endpoints: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # PUT LLM endpoint entity + api_response = api_instance.update_entity_llm_endpoints(id, json_api_llm_endpoint_in_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMEndpointsApi->update_entity_llm_endpoints: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_llm_endpoint_in_document** | [**JsonApiLlmEndpointInDocument**](JsonApiLlmEndpointInDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiLlmEndpointOutDocument**](JsonApiLlmEndpointOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/gooddata-api-client/docs/LayoutApi.md b/gooddata-api-client/docs/LayoutApi.md index ad5d39777..da8b674b8 100644 --- a/gooddata-api-client/docs/LayoutApi.md +++ b/gooddata-api-client/docs/LayoutApi.md @@ -5,9 +5,11 @@ All URIs are relative to *http://localhost* Method | HTTP request | Description ------------- | ------------- | ------------- [**get_analytics_model**](LayoutApi.md#get_analytics_model) | **GET** /api/v1/layout/workspaces/{workspaceId}/analyticsModel | Get analytics model +[**get_automations**](LayoutApi.md#get_automations) | **GET** /api/v1/layout/workspaces/{workspaceId}/automations | Get automations [**get_data_source_permissions**](LayoutApi.md#get_data_source_permissions) | **GET** /api/v1/layout/dataSources/{dataSourceId}/permissions | Get permissions for the data source [**get_data_sources_layout**](LayoutApi.md#get_data_sources_layout) | **GET** /api/v1/layout/dataSources | Get all data sources [**get_logical_model**](LayoutApi.md#get_logical_model) | **GET** /api/v1/layout/workspaces/{workspaceId}/logicalModel | Get logical model +[**get_notification_channels_layout**](LayoutApi.md#get_notification_channels_layout) | **GET** /api/v1/layout/notificationChannels | Get all notification channels layout [**get_organization_layout**](LayoutApi.md#get_organization_layout) | **GET** /api/v1/layout/organization | Get organization layout [**get_organization_permissions**](LayoutApi.md#get_organization_permissions) | **GET** /api/v1/layout/organization/permissions | Get organization permissions [**get_user_data_filters**](LayoutApi.md#get_user_data_filters) | **GET** /api/v1/layout/workspaces/{workspaceId}/userDataFilters | Get user data filters @@ -26,8 +28,10 @@ Method | HTTP request | Description [**put_users_user_groups_layout**](LayoutApi.md#put_users_user_groups_layout) | **PUT** /api/v1/layout/usersAndUserGroups | Put all users and user groups [**put_workspace_layout**](LayoutApi.md#put_workspace_layout) | **PUT** /api/v1/layout/workspaces/{workspaceId} | Set workspace layout [**set_analytics_model**](LayoutApi.md#set_analytics_model) | **PUT** /api/v1/layout/workspaces/{workspaceId}/analyticsModel | Set analytics model +[**set_automations**](LayoutApi.md#set_automations) | **PUT** /api/v1/layout/workspaces/{workspaceId}/automations | Set automations [**set_data_source_permissions**](LayoutApi.md#set_data_source_permissions) | **PUT** /api/v1/layout/dataSources/{dataSourceId}/permissions | Set data source permissions. [**set_logical_model**](LayoutApi.md#set_logical_model) | **PUT** /api/v1/layout/workspaces/{workspaceId}/logicalModel | Set logical model +[**set_notification_channels**](LayoutApi.md#set_notification_channels) | **PUT** /api/v1/layout/notificationChannels | Set all notification channels [**set_organization_layout**](LayoutApi.md#set_organization_layout) | **PUT** /api/v1/layout/organization | Set organization layout [**set_organization_permissions**](LayoutApi.md#set_organization_permissions) | **PUT** /api/v1/layout/organization/permissions | Set organization permissions [**set_user_data_filters**](LayoutApi.md#set_user_data_filters) | **PUT** /api/v1/layout/workspaces/{workspaceId}/userDataFilters | Set user data filters @@ -118,6 +122,86 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) +# **get_automations** +> [DeclarativeAutomation] get_automations(workspace_id) + +Get automations + +Retrieve automations for the specific workspace + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import layout_api +from gooddata_api_client.model.declarative_automation import DeclarativeAutomation +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = layout_api.LayoutApi(api_client) + workspace_id = "workspaceId_example" # str | + exclude = [ + "ACTIVITY_INFO", + ] # [str] | (optional) + + # example passing only required values which don't have defaults set + try: + # Get automations + api_response = api_instance.get_automations(workspace_id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LayoutApi->get_automations: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get automations + api_response = api_instance.get_automations(workspace_id, exclude=exclude) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LayoutApi->get_automations: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **exclude** | **[str]**| | [optional] + +### Return type + +[**[DeclarativeAutomation]**](DeclarativeAutomation.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Retrieved automations. | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + # **get_data_source_permissions** > DeclarativeDataSourcePermissions get_data_source_permissions(data_source_id) @@ -326,6 +410,69 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) +# **get_notification_channels_layout** +> DeclarativeNotificationChannels get_notification_channels_layout() + +Get all notification channels layout + +Gets complete layout of notification channels. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import layout_api +from gooddata_api_client.model.declarative_notification_channels import DeclarativeNotificationChannels +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = layout_api.LayoutApi(api_client) + + # example, this endpoint has no required or optional parameters + try: + # Get all notification channels layout + api_response = api_instance.get_notification_channels_layout() + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LayoutApi->get_notification_channels_layout: %s\n" % e) +``` + + +### Parameters +This endpoint does not need any parameter. + +### Return type + +[**DeclarativeNotificationChannels**](DeclarativeNotificationChannels.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Retrieved layout of all notification channels. | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + # **get_organization_layout** > DeclarativeOrganization get_organization_layout() @@ -2079,6 +2226,119 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) +# **set_automations** +> set_automations(workspace_id, declarative_automation) + +Set automations + +Set automations for the specific workspace. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import layout_api +from gooddata_api_client.model.declarative_automation import DeclarativeAutomation +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = layout_api.LayoutApi(api_client) + workspace_id = "workspaceId_example" # str | + declarative_automation = [ + DeclarativeAutomation( + created_at="2023-07-20 12:30", + created_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), + description="description_example", + details={ + "key": "key_example", + }, + export_definitions=[ + DeclarativeExportDefinitionIdentifier( + id="export123", + type="exportDefinition", + ), + ], + id="/6bUUGjjNSwg0_bs", + metadata=JsonNode(), + modified_at="2023-07-20 12:30", + modified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), + notification_channel=DeclarativeNotificationChannelIdentifier( + id="webhook123", + type="notificationChannel", + ), + recipients=[ + DeclarativeUserIdentifier( + id="employee123", + type="user", + ), + ], + schedule=AutomationSchedule( + cron="0 */30 9-17 ? * MON-FRI", + first_run=dateutil_parser('2025-01-01T12:00:00Z'), + timezone="Europe/Prague", + ), + state="ACTIVE", + tags=[ + "["Revenue","Sales"]", + ], + title="title_example", + ), + ] # [DeclarativeAutomation] | + + # example passing only required values which don't have defaults set + try: + # Set automations + api_instance.set_automations(workspace_id, declarative_automation) + except gooddata_api_client.ApiException as e: + print("Exception when calling LayoutApi->set_automations: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **declarative_automation** | [**[DeclarativeAutomation]**](DeclarativeAutomation.md)| | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | Automations successfully set. | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + # **set_data_source_permissions** > set_data_source_permissions(data_source_id, declarative_data_source_permissions) @@ -2358,6 +2618,83 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) +# **set_notification_channels** +> set_notification_channels(declarative_notification_channels) + +Set all notification channels + +Sets notification channels in organization. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import layout_api +from gooddata_api_client.model.declarative_notification_channels import DeclarativeNotificationChannels +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = layout_api.LayoutApi(api_client) + declarative_notification_channels = DeclarativeNotificationChannels( + notification_channels=[ + DeclarativeNotificationChannel( + custom_dashboard_url="custom_dashboard_url_example", + description="This is a channel", + destination=DeclarativeNotificationChannelDestination(None), + enable_multiple_recipients=True, + id="notification-channel-1", + name="channel", + ), + ], + ) # DeclarativeNotificationChannels | + + # example passing only required values which don't have defaults set + try: + # Set all notification channels + api_instance.set_notification_channels(declarative_notification_channels) + except gooddata_api_client.ApiException as e: + print("Exception when calling LayoutApi->set_notification_channels: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **declarative_notification_channels** | [**DeclarativeNotificationChannels**](DeclarativeNotificationChannels.md)| | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | All notification channels set. | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + # **set_organization_layout** > set_organization_layout(declarative_organization) @@ -2430,20 +2767,12 @@ with gooddata_api_client.ApiClient() as api_client: ], notification_channels=[ DeclarativeNotificationChannel( + custom_dashboard_url="custom_dashboard_url_example", description="This is a channel", + destination=DeclarativeNotificationChannelDestination(None), + enable_multiple_recipients=True, id="notification-channel-1", name="channel", - triggers=[ - NotificationTrigger( - metadata=JsonNode(), - type="SCHEDULE", - ), - ], - webhook=Webhook( - has_token=True, - token="token_example", - url="https://example.com/webhook", - ), ), ], organization=DeclarativeOrganizationInfo( @@ -2613,11 +2942,13 @@ with gooddata_api_client.ApiClient() as api_client: ], schedule=AutomationSchedule( cron="0 */30 9-17 ? * MON-FRI", - cron_description="cron_description_example", first_run=dateutil_parser('2025-01-01T12:00:00Z'), timezone="Europe/Prague", ), - tags=["Revenues"], + state="ACTIVE", + tags=[ + "["Revenue","Sales"]", + ], title="title_example", ), ], @@ -3584,11 +3915,13 @@ with gooddata_api_client.ApiClient() as api_client: ], schedule=AutomationSchedule( cron="0 */30 9-17 ? * MON-FRI", - cron_description="cron_description_example", first_run=dateutil_parser('2025-01-01T12:00:00Z'), timezone="Europe/Prague", ), - tags=["Revenues"], + state="ACTIVE", + tags=[ + "["Revenue","Sales"]", + ], title="title_example", ), ], diff --git a/gooddata-api-client/docs/LocalIdentifier.md b/gooddata-api-client/docs/LocalIdentifier.md new file mode 100644 index 000000000..e6764f04d --- /dev/null +++ b/gooddata-api-client/docs/LocalIdentifier.md @@ -0,0 +1,14 @@ +# LocalIdentifier + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**local_identifier** | **str** | Local identifier of the metric to be compared. | +**format** | **str, none_type** | Metric format. | [optional] if omitted the server will use the default value of "#,##0.00" +**title** | **str, none_type** | Metric title. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/ManageDashboardPermissionsRequestInner.md b/gooddata-api-client/docs/ManageDashboardPermissionsRequestInner.md index 79b1be80b..3f5f809c1 100644 --- a/gooddata-api-client/docs/ManageDashboardPermissionsRequestInner.md +++ b/gooddata-api-client/docs/ManageDashboardPermissionsRequestInner.md @@ -4,7 +4,6 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**permissions** | **[str]** | | [optional] **assignee_identifier** | [**AssigneeIdentifier**](AssigneeIdentifier.md) | | [optional] **assignee_rule** | [**AssigneeRule**](AssigneeRule.md) | | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/gooddata-api-client/docs/MetadataSyncApi.md b/gooddata-api-client/docs/MetadataSyncApi.md new file mode 100644 index 000000000..bc6a8d307 --- /dev/null +++ b/gooddata-api-client/docs/MetadataSyncApi.md @@ -0,0 +1,136 @@ +# gooddata_api_client.MetadataSyncApi + +All URIs are relative to *http://localhost* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**metadata_sync**](MetadataSyncApi.md#metadata_sync) | **POST** /api/v1/actions/workspaces/{workspaceId}/metadataSync | (BETA) Sync Metadata to other services +[**metadata_sync_organization**](MetadataSyncApi.md#metadata_sync_organization) | **POST** /api/v1/actions/organization/metadataSync | (BETA) Sync organization scope Metadata to other services + + +# **metadata_sync** +> metadata_sync(workspace_id) + +(BETA) Sync Metadata to other services + +(BETA) Temporary solution. Later relevant metadata actions will trigger it in its scope only. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import metadata_sync_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = metadata_sync_api.MetadataSyncApi(api_client) + workspace_id = "workspaceId_example" # str | + + # example passing only required values which don't have defaults set + try: + # (BETA) Sync Metadata to other services + api_instance.metadata_sync(workspace_id) + except gooddata_api_client.ApiException as e: + print("Exception when calling MetadataSyncApi->metadata_sync: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **metadata_sync_organization** +> metadata_sync_organization() + +(BETA) Sync organization scope Metadata to other services + +(BETA) Temporary solution. Later relevant metadata actions will trigger sync in their scope only. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import metadata_sync_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = metadata_sync_api.MetadataSyncApi(api_client) + + # example, this endpoint has no required or optional parameters + try: + # (BETA) Sync organization scope Metadata to other services + api_instance.metadata_sync_organization() + except gooddata_api_client.ApiException as e: + print("Exception when calling MetadataSyncApi->metadata_sync_organization: %s\n" % e) +``` + + +### Parameters +This endpoint does not need any parameter. + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/gooddata-api-client/docs/Metric.md b/gooddata-api-client/docs/Metric.md new file mode 100644 index 000000000..0cdeb463c --- /dev/null +++ b/gooddata-api-client/docs/Metric.md @@ -0,0 +1,15 @@ +# Metric + +List of metrics to be used in the new visualization + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **str** | ID of the object | +**type** | **str** | Object type | +**agg_function** | **str** | Agg function. Empty if a stored metric is used. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/NotificationChannelDestination.md b/gooddata-api-client/docs/NotificationChannelDestination.md new file mode 100644 index 000000000..a2fdfe532 --- /dev/null +++ b/gooddata-api-client/docs/NotificationChannelDestination.md @@ -0,0 +1,21 @@ +# NotificationChannelDestination + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**type** | **str** | | +**has_token** | **bool, none_type** | Flag indicating if webhook has a token. | [optional] [readonly] +**token** | **str, none_type** | Bearer token for the webhook. | [optional] +**url** | **str** | The webhook URL. | [optional] +**from_email** | **str** | E-mail address to send notifications from. Currently this does not have any effect. E-mail 'no-reply@gooddata.com' is used instead. | [optional] if omitted the server will use the default value of "no-reply@gooddata.com" +**from_email_name** | **str** | An optional e-mail name to send notifications from. Currently this does not have any effect. E-mail from name 'GoodData' is used instead. | [optional] if omitted the server will use the default value of "GoodData" +**host** | **str** | The SMTP server address. | [optional] +**password** | **str** | The SMTP server password. | [optional] +**port** | **int** | The SMTP server port. | [optional] +**username** | **str** | The SMTP server username. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/NotificationChannelsApi.md b/gooddata-api-client/docs/NotificationChannelsApi.md index 7e9d25eab..ce66293ca 100644 --- a/gooddata-api-client/docs/NotificationChannelsApi.md +++ b/gooddata-api-client/docs/NotificationChannelsApi.md @@ -5,7 +5,7 @@ All URIs are relative to *http://localhost* Method | HTTP request | Description ------------- | ------------- | ------------- [**create_entity_notification_channels**](NotificationChannelsApi.md#create_entity_notification_channels) | **POST** /api/v1/entities/notificationChannels | Post Notification Channel entities -[**delete_entity_notification_channels**](NotificationChannelsApi.md#delete_entity_notification_channels) | **DELETE** /api/v1/entities/notificationChannels/{id} | +[**delete_entity_notification_channels**](NotificationChannelsApi.md#delete_entity_notification_channels) | **DELETE** /api/v1/entities/notificationChannels/{id} | Delete Notification Channel entity [**get_all_entities_notification_channels**](NotificationChannelsApi.md#get_all_entities_notification_channels) | **GET** /api/v1/entities/notificationChannels | Get all Notification Channel entities [**get_entity_notification_channels**](NotificationChannelsApi.md#get_entity_notification_channels) | **GET** /api/v1/entities/notificationChannels/{id} | Get Notification Channel entity [**patch_entity_notification_channels**](NotificationChannelsApi.md#patch_entity_notification_channels) | **PATCH** /api/v1/entities/notificationChannels/{id} | Patch Notification Channel entity @@ -41,19 +41,12 @@ with gooddata_api_client.ApiClient() as api_client: json_api_notification_channel_post_optional_id_document = JsonApiNotificationChannelPostOptionalIdDocument( data=JsonApiNotificationChannelPostOptionalId( attributes=JsonApiNotificationChannelInAttributes( + allowed_recipients="CREATOR", + custom_dashboard_url="custom_dashboard_url_example", description="description_example", + destination=JsonApiNotificationChannelInAttributesDestination(None), + destination_type="WEBHOOK", name="name_example", - triggers=[ - JsonApiNotificationChannelInAttributesTriggersInner( - metadata=JsonNode(), - type="SCHEDULE", - ), - ], - webhook=JsonApiNotificationChannelInAttributesWebhook( - has_token=True, - token="token_example", - url="https://example.com/webhook", - ), ), id="id1", type="notificationChannel", @@ -101,7 +94,7 @@ No authorization required # **delete_entity_notification_channels** > delete_entity_notification_channels(id) - +Delete Notification Channel entity ### Example @@ -127,6 +120,7 @@ with gooddata_api_client.ApiClient() as api_client: # example passing only required values which don't have defaults set try: + # Delete Notification Channel entity api_instance.delete_entity_notification_channels(id) except gooddata_api_client.ApiException as e: print("Exception when calling NotificationChannelsApi->delete_entity_notification_channels: %s\n" % e) @@ -134,6 +128,7 @@ with gooddata_api_client.ApiClient() as api_client: # example passing only required values which don't have defaults set # and optional values try: + # Delete Notification Channel entity api_instance.delete_entity_notification_channels(id, filter=filter) except gooddata_api_client.ApiException as e: print("Exception when calling NotificationChannelsApi->delete_entity_notification_channels: %s\n" % e) @@ -353,19 +348,12 @@ with gooddata_api_client.ApiClient() as api_client: json_api_notification_channel_patch_document = JsonApiNotificationChannelPatchDocument( data=JsonApiNotificationChannelPatch( attributes=JsonApiNotificationChannelInAttributes( + allowed_recipients="CREATOR", + custom_dashboard_url="custom_dashboard_url_example", description="description_example", + destination=JsonApiNotificationChannelInAttributesDestination(None), + destination_type="WEBHOOK", name="name_example", - triggers=[ - JsonApiNotificationChannelInAttributesTriggersInner( - metadata=JsonNode(), - type="SCHEDULE", - ), - ], - webhook=JsonApiNotificationChannelInAttributesWebhook( - has_token=True, - token="token_example", - url="https://example.com/webhook", - ), ), id="id1", type="notificationChannel", @@ -452,19 +440,12 @@ with gooddata_api_client.ApiClient() as api_client: json_api_notification_channel_in_document = JsonApiNotificationChannelInDocument( data=JsonApiNotificationChannelIn( attributes=JsonApiNotificationChannelInAttributes( + allowed_recipients="CREATOR", + custom_dashboard_url="custom_dashboard_url_example", description="description_example", + destination=JsonApiNotificationChannelInAttributesDestination(None), + destination_type="WEBHOOK", name="name_example", - triggers=[ - JsonApiNotificationChannelInAttributesTriggersInner( - metadata=JsonNode(), - type="SCHEDULE", - ), - ], - webhook=JsonApiNotificationChannelInAttributesWebhook( - has_token=True, - token="token_example", - url="https://example.com/webhook", - ), ), id="id1", type="notificationChannel", diff --git a/gooddata-api-client/docs/OidcIdpSpecification.md b/gooddata-api-client/docs/OidcIdpSpecification.md new file mode 100644 index 000000000..86eb999f6 --- /dev/null +++ b/gooddata-api-client/docs/OidcIdpSpecification.md @@ -0,0 +1,17 @@ +# OidcIdpSpecification + +Specification of an OIDC identity provider + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**oauth_client_id** | **str** | | +**oauth_client_secret** | **str** | | +**oauth_issuer_id** | **str** | Any string identifying the OIDC provider. This value is used as suffix for OAuth2 callback (redirect) URL. If not defined, the standard callback URL is used. This value is valid only for external OIDC providers, not for the internal DEX provider. | +**oauth_issuer_location** | **str** | | +**oauth_subject_id_claim** | **str** | Any string identifying the claim in ID token, that should be used for user identification. The default value is 'sub'. | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/OrganizationDeclarativeAPIsApi.md b/gooddata-api-client/docs/OrganizationDeclarativeAPIsApi.md index 1fd7c50a6..998482830 100644 --- a/gooddata-api-client/docs/OrganizationDeclarativeAPIsApi.md +++ b/gooddata-api-client/docs/OrganizationDeclarativeAPIsApi.md @@ -150,20 +150,12 @@ with gooddata_api_client.ApiClient() as api_client: ], notification_channels=[ DeclarativeNotificationChannel( + custom_dashboard_url="custom_dashboard_url_example", description="This is a channel", + destination=DeclarativeNotificationChannelDestination(None), + enable_multiple_recipients=True, id="notification-channel-1", name="channel", - triggers=[ - NotificationTrigger( - metadata=JsonNode(), - type="SCHEDULE", - ), - ], - webhook=Webhook( - has_token=True, - token="token_example", - url="https://example.com/webhook", - ), ), ], organization=DeclarativeOrganizationInfo( @@ -333,11 +325,13 @@ with gooddata_api_client.ApiClient() as api_client: ], schedule=AutomationSchedule( cron="0 */30 9-17 ? * MON-FRI", - cron_description="cron_description_example", first_run=dateutil_parser('2025-01-01T12:00:00Z'), timezone="Europe/Prague", ), - tags=["Revenues"], + state="ACTIVE", + tags=[ + "["Revenue","Sales"]", + ], title="title_example", ), ], diff --git a/gooddata-api-client/docs/OrganizationModelControllerApi.md b/gooddata-api-client/docs/OrganizationModelControllerApi.md index 111ee60ef..8927ad538 100644 --- a/gooddata-api-client/docs/OrganizationModelControllerApi.md +++ b/gooddata-api-client/docs/OrganizationModelControllerApi.md @@ -7,7 +7,9 @@ Method | HTTP request | Description [**create_entity_color_palettes**](OrganizationModelControllerApi.md#create_entity_color_palettes) | **POST** /api/v1/entities/colorPalettes | Post Color Pallettes [**create_entity_csp_directives**](OrganizationModelControllerApi.md#create_entity_csp_directives) | **POST** /api/v1/entities/cspDirectives | Post CSP Directives [**create_entity_data_sources**](OrganizationModelControllerApi.md#create_entity_data_sources) | **POST** /api/v1/entities/dataSources | Post Data Sources +[**create_entity_identity_providers**](OrganizationModelControllerApi.md#create_entity_identity_providers) | **POST** /api/v1/entities/identityProviders | Post Identity Providers [**create_entity_jwks**](OrganizationModelControllerApi.md#create_entity_jwks) | **POST** /api/v1/entities/jwks | Post Jwks +[**create_entity_llm_endpoints**](OrganizationModelControllerApi.md#create_entity_llm_endpoints) | **POST** /api/v1/entities/llmEndpoints | Post LLM endpoint entities [**create_entity_notification_channels**](OrganizationModelControllerApi.md#create_entity_notification_channels) | **POST** /api/v1/entities/notificationChannels | Post Notification Channel entities [**create_entity_organization_settings**](OrganizationModelControllerApi.md#create_entity_organization_settings) | **POST** /api/v1/entities/organizationSettings | Post Organization Setting entities [**create_entity_themes**](OrganizationModelControllerApi.md#create_entity_themes) | **POST** /api/v1/entities/themes | Post Theming @@ -17,8 +19,10 @@ Method | HTTP request | Description [**delete_entity_color_palettes**](OrganizationModelControllerApi.md#delete_entity_color_palettes) | **DELETE** /api/v1/entities/colorPalettes/{id} | Delete a Color Pallette [**delete_entity_csp_directives**](OrganizationModelControllerApi.md#delete_entity_csp_directives) | **DELETE** /api/v1/entities/cspDirectives/{id} | Delete CSP Directives [**delete_entity_data_sources**](OrganizationModelControllerApi.md#delete_entity_data_sources) | **DELETE** /api/v1/entities/dataSources/{id} | Delete Data Source entity +[**delete_entity_identity_providers**](OrganizationModelControllerApi.md#delete_entity_identity_providers) | **DELETE** /api/v1/entities/identityProviders/{id} | Delete Identity Provider [**delete_entity_jwks**](OrganizationModelControllerApi.md#delete_entity_jwks) | **DELETE** /api/v1/entities/jwks/{id} | Delete Jwk -[**delete_entity_notification_channels**](OrganizationModelControllerApi.md#delete_entity_notification_channels) | **DELETE** /api/v1/entities/notificationChannels/{id} | +[**delete_entity_llm_endpoints**](OrganizationModelControllerApi.md#delete_entity_llm_endpoints) | **DELETE** /api/v1/entities/llmEndpoints/{id} | +[**delete_entity_notification_channels**](OrganizationModelControllerApi.md#delete_entity_notification_channels) | **DELETE** /api/v1/entities/notificationChannels/{id} | Delete Notification Channel entity [**delete_entity_organization_settings**](OrganizationModelControllerApi.md#delete_entity_organization_settings) | **DELETE** /api/v1/entities/organizationSettings/{id} | Delete Organization entity [**delete_entity_themes**](OrganizationModelControllerApi.md#delete_entity_themes) | **DELETE** /api/v1/entities/themes/{id} | Delete Theming [**delete_entity_user_groups**](OrganizationModelControllerApi.md#delete_entity_user_groups) | **DELETE** /api/v1/entities/userGroups/{id} | Delete UserGroup entity @@ -29,7 +33,9 @@ Method | HTTP request | Description [**get_all_entities_data_source_identifiers**](OrganizationModelControllerApi.md#get_all_entities_data_source_identifiers) | **GET** /api/v1/entities/dataSourceIdentifiers | Get all Data Source Identifiers [**get_all_entities_data_sources**](OrganizationModelControllerApi.md#get_all_entities_data_sources) | **GET** /api/v1/entities/dataSources | Get Data Source entities [**get_all_entities_entitlements**](OrganizationModelControllerApi.md#get_all_entities_entitlements) | **GET** /api/v1/entities/entitlements | Get Entitlements +[**get_all_entities_identity_providers**](OrganizationModelControllerApi.md#get_all_entities_identity_providers) | **GET** /api/v1/entities/identityProviders | Get all Identity Providers [**get_all_entities_jwks**](OrganizationModelControllerApi.md#get_all_entities_jwks) | **GET** /api/v1/entities/jwks | Get all Jwks +[**get_all_entities_llm_endpoints**](OrganizationModelControllerApi.md#get_all_entities_llm_endpoints) | **GET** /api/v1/entities/llmEndpoints | Get all LLM endpoint entities [**get_all_entities_notification_channels**](OrganizationModelControllerApi.md#get_all_entities_notification_channels) | **GET** /api/v1/entities/notificationChannels | Get all Notification Channel entities [**get_all_entities_organization_settings**](OrganizationModelControllerApi.md#get_all_entities_organization_settings) | **GET** /api/v1/entities/organizationSettings | Get Organization entities [**get_all_entities_themes**](OrganizationModelControllerApi.md#get_all_entities_themes) | **GET** /api/v1/entities/themes | Get all Theming entities @@ -42,7 +48,9 @@ Method | HTTP request | Description [**get_entity_data_source_identifiers**](OrganizationModelControllerApi.md#get_entity_data_source_identifiers) | **GET** /api/v1/entities/dataSourceIdentifiers/{id} | Get Data Source Identifier [**get_entity_data_sources**](OrganizationModelControllerApi.md#get_entity_data_sources) | **GET** /api/v1/entities/dataSources/{id} | Get Data Source entity [**get_entity_entitlements**](OrganizationModelControllerApi.md#get_entity_entitlements) | **GET** /api/v1/entities/entitlements/{id} | Get Entitlement +[**get_entity_identity_providers**](OrganizationModelControllerApi.md#get_entity_identity_providers) | **GET** /api/v1/entities/identityProviders/{id} | Get Identity Provider [**get_entity_jwks**](OrganizationModelControllerApi.md#get_entity_jwks) | **GET** /api/v1/entities/jwks/{id} | Get Jwk +[**get_entity_llm_endpoints**](OrganizationModelControllerApi.md#get_entity_llm_endpoints) | **GET** /api/v1/entities/llmEndpoints/{id} | Get LLM endpoint entity [**get_entity_notification_channels**](OrganizationModelControllerApi.md#get_entity_notification_channels) | **GET** /api/v1/entities/notificationChannels/{id} | Get Notification Channel entity [**get_entity_organization_settings**](OrganizationModelControllerApi.md#get_entity_organization_settings) | **GET** /api/v1/entities/organizationSettings/{id} | Get Organization entity [**get_entity_themes**](OrganizationModelControllerApi.md#get_entity_themes) | **GET** /api/v1/entities/themes/{id} | Get Theming @@ -53,7 +61,9 @@ Method | HTTP request | Description [**patch_entity_color_palettes**](OrganizationModelControllerApi.md#patch_entity_color_palettes) | **PATCH** /api/v1/entities/colorPalettes/{id} | Patch Color Pallette [**patch_entity_csp_directives**](OrganizationModelControllerApi.md#patch_entity_csp_directives) | **PATCH** /api/v1/entities/cspDirectives/{id} | Patch CSP Directives [**patch_entity_data_sources**](OrganizationModelControllerApi.md#patch_entity_data_sources) | **PATCH** /api/v1/entities/dataSources/{id} | Patch Data Source entity +[**patch_entity_identity_providers**](OrganizationModelControllerApi.md#patch_entity_identity_providers) | **PATCH** /api/v1/entities/identityProviders/{id} | Patch Identity Provider [**patch_entity_jwks**](OrganizationModelControllerApi.md#patch_entity_jwks) | **PATCH** /api/v1/entities/jwks/{id} | Patch Jwk +[**patch_entity_llm_endpoints**](OrganizationModelControllerApi.md#patch_entity_llm_endpoints) | **PATCH** /api/v1/entities/llmEndpoints/{id} | Patch LLM endpoint entity [**patch_entity_notification_channels**](OrganizationModelControllerApi.md#patch_entity_notification_channels) | **PATCH** /api/v1/entities/notificationChannels/{id} | Patch Notification Channel entity [**patch_entity_organization_settings**](OrganizationModelControllerApi.md#patch_entity_organization_settings) | **PATCH** /api/v1/entities/organizationSettings/{id} | Patch Organization entity [**patch_entity_themes**](OrganizationModelControllerApi.md#patch_entity_themes) | **PATCH** /api/v1/entities/themes/{id} | Patch Theming @@ -63,7 +73,9 @@ Method | HTTP request | Description [**update_entity_color_palettes**](OrganizationModelControllerApi.md#update_entity_color_palettes) | **PUT** /api/v1/entities/colorPalettes/{id} | Put Color Pallette [**update_entity_csp_directives**](OrganizationModelControllerApi.md#update_entity_csp_directives) | **PUT** /api/v1/entities/cspDirectives/{id} | Put CSP Directives [**update_entity_data_sources**](OrganizationModelControllerApi.md#update_entity_data_sources) | **PUT** /api/v1/entities/dataSources/{id} | Put Data Source entity +[**update_entity_identity_providers**](OrganizationModelControllerApi.md#update_entity_identity_providers) | **PUT** /api/v1/entities/identityProviders/{id} | Put Identity Provider [**update_entity_jwks**](OrganizationModelControllerApi.md#update_entity_jwks) | **PUT** /api/v1/entities/jwks/{id} | Put Jwk +[**update_entity_llm_endpoints**](OrganizationModelControllerApi.md#update_entity_llm_endpoints) | **PUT** /api/v1/entities/llmEndpoints/{id} | PUT LLM endpoint entity [**update_entity_notification_channels**](OrganizationModelControllerApi.md#update_entity_notification_channels) | **PUT** /api/v1/entities/notificationChannels/{id} | Put Notification Channel entity [**update_entity_organization_settings**](OrganizationModelControllerApi.md#update_entity_organization_settings) | **PUT** /api/v1/entities/organizationSettings/{id} | Put Organization entity [**update_entity_themes**](OrganizationModelControllerApi.md#update_entity_themes) | **PUT** /api/v1/entities/themes/{id} | Put Theming @@ -321,6 +333,82 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**201** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **create_entity_identity_providers** +> JsonApiIdentityProviderOutDocument create_entity_identity_providers(json_api_identity_provider_in_document) + +Post Identity Providers + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import organization_model_controller_api +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument +from gooddata_api_client.model.json_api_identity_provider_in_document import JsonApiIdentityProviderInDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) + json_api_identity_provider_in_document = JsonApiIdentityProviderInDocument( + data=JsonApiIdentityProviderIn( + attributes=JsonApiIdentityProviderInAttributes( + identifiers=["gooddata.com"], + specification=JsonApiIdentityProviderInAttributesSpecification(), + type="SAML", + ), + id="id1", + type="identityProvider", + ), + ) # JsonApiIdentityProviderInDocument | + + # example passing only required values which don't have defaults set + try: + # Post Identity Providers + api_response = api_instance.create_entity_identity_providers(json_api_identity_provider_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->create_entity_identity_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **json_api_identity_provider_in_document** | [**JsonApiIdentityProviderInDocument**](JsonApiIdentityProviderInDocument.md)| | + +### Return type + +[**JsonApiIdentityProviderOutDocument**](JsonApiIdentityProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -397,6 +485,86 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**201** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **create_entity_llm_endpoints** +> JsonApiLlmEndpointOutDocument create_entity_llm_endpoints(json_api_llm_endpoint_in_document) + +Post LLM endpoint entities + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import organization_model_controller_api +from gooddata_api_client.model.json_api_llm_endpoint_in_document import JsonApiLlmEndpointInDocument +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) + json_api_llm_endpoint_in_document = JsonApiLlmEndpointInDocument( + data=JsonApiLlmEndpointIn( + attributes=JsonApiLlmEndpointInAttributes( + base_url="base_url_example", + description="description_example", + llm_model="llm_model_example", + llm_organization="llm_organization_example", + provider="OPENAI", + title="title_example", + token="token_example", + ), + id="id1", + type="llmEndpoint", + ), + ) # JsonApiLlmEndpointInDocument | + + # example passing only required values which don't have defaults set + try: + # Post LLM endpoint entities + api_response = api_instance.create_entity_llm_endpoints(json_api_llm_endpoint_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->create_entity_llm_endpoints: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **json_api_llm_endpoint_in_document** | [**JsonApiLlmEndpointInDocument**](JsonApiLlmEndpointInDocument.md)| | + +### Return type + +[**JsonApiLlmEndpointOutDocument**](JsonApiLlmEndpointOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -434,19 +602,12 @@ with gooddata_api_client.ApiClient() as api_client: json_api_notification_channel_post_optional_id_document = JsonApiNotificationChannelPostOptionalIdDocument( data=JsonApiNotificationChannelPostOptionalId( attributes=JsonApiNotificationChannelInAttributes( + allowed_recipients="CREATOR", + custom_dashboard_url="custom_dashboard_url_example", description="description_example", + destination=JsonApiNotificationChannelInAttributesDestination(None), + destination_type="WEBHOOK", name="name_example", - triggers=[ - JsonApiNotificationChannelInAttributesTriggersInner( - metadata=JsonNode(), - type="SCHEDULE", - ), - ], - webhook=JsonApiNotificationChannelInAttributesWebhook( - has_token=True, - token="token_example", - url="https://example.com/webhook", - ), ), id="id1", type="notificationChannel", @@ -1147,6 +1308,79 @@ with gooddata_api_client.ApiClient() as api_client: ``` +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | Successfully deleted | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **delete_entity_identity_providers** +> delete_entity_identity_providers(id) + +Delete Identity Provider + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import organization_model_controller_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + filter = "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Delete Identity Provider + api_instance.delete_entity_identity_providers(id) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->delete_entity_identity_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Delete Identity Provider + api_instance.delete_entity_identity_providers(id, filter=filter) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->delete_entity_identity_providers: %s\n" % e) +``` + + ### Parameters Name | Type | Description | Notes @@ -1222,6 +1456,77 @@ with gooddata_api_client.ApiClient() as api_client: ``` +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | Successfully deleted | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **delete_entity_llm_endpoints** +> delete_entity_llm_endpoints(id) + + + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import organization_model_controller_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + filter = "filter=title==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + api_instance.delete_entity_llm_endpoints(id) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->delete_entity_llm_endpoints: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + api_instance.delete_entity_llm_endpoints(id, filter=filter) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->delete_entity_llm_endpoints: %s\n" % e) +``` + + ### Parameters Name | Type | Description | Notes @@ -1254,7 +1559,7 @@ No authorization required # **delete_entity_notification_channels** > delete_entity_notification_channels(id) - +Delete Notification Channel entity ### Example @@ -1280,6 +1585,7 @@ with gooddata_api_client.ApiClient() as api_client: # example passing only required values which don't have defaults set try: + # Delete Notification Channel entity api_instance.delete_entity_notification_channels(id) except gooddata_api_client.ApiException as e: print("Exception when calling OrganizationModelControllerApi->delete_entity_notification_channels: %s\n" % e) @@ -1287,6 +1593,7 @@ with gooddata_api_client.ApiClient() as api_client: # example passing only required values which don't have defaults set # and optional values try: + # Delete Notification Channel entity api_instance.delete_entity_notification_channels(id, filter=filter) except gooddata_api_client.ApiException as e: print("Exception when calling OrganizationModelControllerApi->delete_entity_notification_channels: %s\n" % e) @@ -2089,12 +2396,10 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **get_all_entities_jwks** -> JsonApiJwkOutList get_all_entities_jwks() - -Get all Jwks +# **get_all_entities_identity_providers** +> JsonApiIdentityProviderOutList get_all_entities_identity_providers() -Returns all JSON web keys - used to verify JSON web tokens (Jwts) +Get all Identity Providers ### Example @@ -2103,7 +2408,7 @@ Returns all JSON web keys - used to verify JSON web tokens (Jwts) import time import gooddata_api_client from gooddata_api_client.api import organization_model_controller_api -from gooddata_api_client.model.json_api_jwk_out_list import JsonApiJwkOutList +from gooddata_api_client.model.json_api_identity_provider_out_list import JsonApiIdentityProviderOutList from pprint import pprint # Defining the host is optional and defaults to http://localhost # See configuration.py for a list of all supported configuration parameters. @@ -2116,7 +2421,87 @@ configuration = gooddata_api_client.Configuration( with gooddata_api_client.ApiClient() as api_client: # Create an instance of the API class api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) - filter = "filter=content==JwkSpecificationValue" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 + size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 + sort = [ + "sort_example", + ] # [str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) + meta_include = [ + "metaInclude=page,all", + ] # [str] | Include Meta objects. (optional) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get all Identity Providers + api_response = api_instance.get_all_entities_identity_providers(filter=filter, page=page, size=size, sort=sort, meta_include=meta_include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->get_all_entities_identity_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **page** | **int**| Zero-based page index (0..N) | [optional] if omitted the server will use the default value of 0 + **size** | **int**| The size of the page to be returned | [optional] if omitted the server will use the default value of 20 + **sort** | **[str]**| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **meta_include** | **[str]**| Include Meta objects. | [optional] + +### Return type + +[**JsonApiIdentityProviderOutList**](JsonApiIdentityProviderOutList.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_all_entities_jwks** +> JsonApiJwkOutList get_all_entities_jwks() + +Get all Jwks + +Returns all JSON web keys - used to verify JSON web tokens (Jwts) + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import organization_model_controller_api +from gooddata_api_client.model.json_api_jwk_out_list import JsonApiJwkOutList +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) + filter = "filter=content==JwkSpecificationValue" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 sort = [ @@ -2161,6 +2546,84 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_all_entities_llm_endpoints** +> JsonApiLlmEndpointOutList get_all_entities_llm_endpoints() + +Get all LLM endpoint entities + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import organization_model_controller_api +from gooddata_api_client.model.json_api_llm_endpoint_out_list import JsonApiLlmEndpointOutList +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) + filter = "filter=title==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 + size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 + sort = [ + "sort_example", + ] # [str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) + meta_include = [ + "metaInclude=page,all", + ] # [str] | Include Meta objects. (optional) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get all LLM endpoint entities + api_response = api_instance.get_all_entities_llm_endpoints(filter=filter, page=page, size=size, sort=sort, meta_include=meta_include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->get_all_entities_llm_endpoints: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **page** | **int**| Zero-based page index (0..N) | [optional] if omitted the server will use the default value of 0 + **size** | **int**| The size of the page to be returned | [optional] if omitted the server will use the default value of 20 + **sort** | **[str]**| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **meta_include** | **[str]**| Include Meta objects. | [optional] + +### Return type + +[**JsonApiLlmEndpointOutList**](JsonApiLlmEndpointOutList.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -3129,12 +3592,10 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **get_entity_jwks** -> JsonApiJwkOutDocument get_entity_jwks(id) - -Get Jwk +# **get_entity_identity_providers** +> JsonApiIdentityProviderOutDocument get_entity_identity_providers(id) -Returns JSON web key - used to verify JSON web tokens (Jwts) +Get Identity Provider ### Example @@ -3143,7 +3604,7 @@ Returns JSON web key - used to verify JSON web tokens (Jwts) import time import gooddata_api_client from gooddata_api_client.api import organization_model_controller_api -from gooddata_api_client.model.json_api_jwk_out_document import JsonApiJwkOutDocument +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument from pprint import pprint # Defining the host is optional and defaults to http://localhost # See configuration.py for a list of all supported configuration parameters. @@ -3157,24 +3618,24 @@ with gooddata_api_client.ApiClient() as api_client: # Create an instance of the API class api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) id = "/6bUUGjjNSwg0_bs" # str | - filter = "filter=content==JwkSpecificationValue" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) # example passing only required values which don't have defaults set try: - # Get Jwk - api_response = api_instance.get_entity_jwks(id) + # Get Identity Provider + api_response = api_instance.get_entity_identity_providers(id) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling OrganizationModelControllerApi->get_entity_jwks: %s\n" % e) + print("Exception when calling OrganizationModelControllerApi->get_entity_identity_providers: %s\n" % e) # example passing only required values which don't have defaults set # and optional values try: - # Get Jwk - api_response = api_instance.get_entity_jwks(id, filter=filter) + # Get Identity Provider + api_response = api_instance.get_entity_identity_providers(id, filter=filter) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling OrganizationModelControllerApi->get_entity_jwks: %s\n" % e) + print("Exception when calling OrganizationModelControllerApi->get_entity_identity_providers: %s\n" % e) ``` @@ -3187,7 +3648,7 @@ Name | Type | Description | Notes ### Return type -[**JsonApiJwkOutDocument**](JsonApiJwkOutDocument.md) +[**JsonApiIdentityProviderOutDocument**](JsonApiIdentityProviderOutDocument.md) ### Authorization @@ -3207,10 +3668,12 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **get_entity_notification_channels** -> JsonApiNotificationChannelOutDocument get_entity_notification_channels(id) +# **get_entity_jwks** +> JsonApiJwkOutDocument get_entity_jwks(id) -Get Notification Channel entity +Get Jwk + +Returns JSON web key - used to verify JSON web tokens (Jwts) ### Example @@ -3219,7 +3682,7 @@ Get Notification Channel entity import time import gooddata_api_client from gooddata_api_client.api import organization_model_controller_api -from gooddata_api_client.model.json_api_notification_channel_out_document import JsonApiNotificationChannelOutDocument +from gooddata_api_client.model.json_api_jwk_out_document import JsonApiJwkOutDocument from pprint import pprint # Defining the host is optional and defaults to http://localhost # See configuration.py for a list of all supported configuration parameters. @@ -3233,24 +3696,24 @@ with gooddata_api_client.ApiClient() as api_client: # Create an instance of the API class api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) id = "/6bUUGjjNSwg0_bs" # str | - filter = "filter=name==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=content==JwkSpecificationValue" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) # example passing only required values which don't have defaults set try: - # Get Notification Channel entity - api_response = api_instance.get_entity_notification_channels(id) + # Get Jwk + api_response = api_instance.get_entity_jwks(id) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling OrganizationModelControllerApi->get_entity_notification_channels: %s\n" % e) + print("Exception when calling OrganizationModelControllerApi->get_entity_jwks: %s\n" % e) # example passing only required values which don't have defaults set # and optional values try: - # Get Notification Channel entity - api_response = api_instance.get_entity_notification_channels(id, filter=filter) + # Get Jwk + api_response = api_instance.get_entity_jwks(id, filter=filter) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling OrganizationModelControllerApi->get_entity_notification_channels: %s\n" % e) + print("Exception when calling OrganizationModelControllerApi->get_entity_jwks: %s\n" % e) ``` @@ -3263,7 +3726,7 @@ Name | Type | Description | Notes ### Return type -[**JsonApiNotificationChannelOutDocument**](JsonApiNotificationChannelOutDocument.md) +[**JsonApiJwkOutDocument**](JsonApiJwkOutDocument.md) ### Authorization @@ -3283,10 +3746,10 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **get_entity_organization_settings** -> JsonApiOrganizationSettingOutDocument get_entity_organization_settings(id) +# **get_entity_llm_endpoints** +> JsonApiLlmEndpointOutDocument get_entity_llm_endpoints(id) -Get Organization entity +Get LLM endpoint entity ### Example @@ -3295,7 +3758,7 @@ Get Organization entity import time import gooddata_api_client from gooddata_api_client.api import organization_model_controller_api -from gooddata_api_client.model.json_api_organization_setting_out_document import JsonApiOrganizationSettingOutDocument +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument from pprint import pprint # Defining the host is optional and defaults to http://localhost # See configuration.py for a list of all supported configuration parameters. @@ -3309,24 +3772,24 @@ with gooddata_api_client.ApiClient() as api_client: # Create an instance of the API class api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) id = "/6bUUGjjNSwg0_bs" # str | - filter = "filter=content==JsonNodeValue;type==SettingTypeValue" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) # example passing only required values which don't have defaults set try: - # Get Organization entity - api_response = api_instance.get_entity_organization_settings(id) + # Get LLM endpoint entity + api_response = api_instance.get_entity_llm_endpoints(id) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling OrganizationModelControllerApi->get_entity_organization_settings: %s\n" % e) + print("Exception when calling OrganizationModelControllerApi->get_entity_llm_endpoints: %s\n" % e) # example passing only required values which don't have defaults set # and optional values try: - # Get Organization entity - api_response = api_instance.get_entity_organization_settings(id, filter=filter) + # Get LLM endpoint entity + api_response = api_instance.get_entity_llm_endpoints(id, filter=filter) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling OrganizationModelControllerApi->get_entity_organization_settings: %s\n" % e) + print("Exception when calling OrganizationModelControllerApi->get_entity_llm_endpoints: %s\n" % e) ``` @@ -3339,7 +3802,7 @@ Name | Type | Description | Notes ### Return type -[**JsonApiOrganizationSettingOutDocument**](JsonApiOrganizationSettingOutDocument.md) +[**JsonApiLlmEndpointOutDocument**](JsonApiLlmEndpointOutDocument.md) ### Authorization @@ -3359,10 +3822,10 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **get_entity_themes** -> JsonApiThemeOutDocument get_entity_themes(id) +# **get_entity_notification_channels** +> JsonApiNotificationChannelOutDocument get_entity_notification_channels(id) -Get Theming +Get Notification Channel entity ### Example @@ -3371,7 +3834,7 @@ Get Theming import time import gooddata_api_client from gooddata_api_client.api import organization_model_controller_api -from gooddata_api_client.model.json_api_theme_out_document import JsonApiThemeOutDocument +from gooddata_api_client.model.json_api_notification_channel_out_document import JsonApiNotificationChannelOutDocument from pprint import pprint # Defining the host is optional and defaults to http://localhost # See configuration.py for a list of all supported configuration parameters. @@ -3385,24 +3848,24 @@ with gooddata_api_client.ApiClient() as api_client: # Create an instance of the API class api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) id = "/6bUUGjjNSwg0_bs" # str | - filter = "filter=name==someString;content==JsonNodeValue" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=name==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) # example passing only required values which don't have defaults set try: - # Get Theming - api_response = api_instance.get_entity_themes(id) + # Get Notification Channel entity + api_response = api_instance.get_entity_notification_channels(id) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling OrganizationModelControllerApi->get_entity_themes: %s\n" % e) + print("Exception when calling OrganizationModelControllerApi->get_entity_notification_channels: %s\n" % e) # example passing only required values which don't have defaults set # and optional values try: - # Get Theming - api_response = api_instance.get_entity_themes(id, filter=filter) + # Get Notification Channel entity + api_response = api_instance.get_entity_notification_channels(id, filter=filter) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling OrganizationModelControllerApi->get_entity_themes: %s\n" % e) + print("Exception when calling OrganizationModelControllerApi->get_entity_notification_channels: %s\n" % e) ``` @@ -3415,7 +3878,7 @@ Name | Type | Description | Notes ### Return type -[**JsonApiThemeOutDocument**](JsonApiThemeOutDocument.md) +[**JsonApiNotificationChannelOutDocument**](JsonApiNotificationChannelOutDocument.md) ### Authorization @@ -3435,12 +3898,10 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **get_entity_user_groups** -> JsonApiUserGroupOutDocument get_entity_user_groups(id) - -Get UserGroup entity +# **get_entity_organization_settings** +> JsonApiOrganizationSettingOutDocument get_entity_organization_settings(id) -User Group - creates tree-like structure for categorizing users +Get Organization entity ### Example @@ -3449,7 +3910,7 @@ User Group - creates tree-like structure for categorizing users import time import gooddata_api_client from gooddata_api_client.api import organization_model_controller_api -from gooddata_api_client.model.json_api_user_group_out_document import JsonApiUserGroupOutDocument +from gooddata_api_client.model.json_api_organization_setting_out_document import JsonApiOrganizationSettingOutDocument from pprint import pprint # Defining the host is optional and defaults to http://localhost # See configuration.py for a list of all supported configuration parameters. @@ -3463,27 +3924,24 @@ with gooddata_api_client.ApiClient() as api_client: # Create an instance of the API class api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) id = "/6bUUGjjNSwg0_bs" # str | - filter = "filter=name==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) - include = [ - "include=parents", - ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + filter = "filter=content==JsonNodeValue;type==SettingTypeValue" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) # example passing only required values which don't have defaults set try: - # Get UserGroup entity - api_response = api_instance.get_entity_user_groups(id) + # Get Organization entity + api_response = api_instance.get_entity_organization_settings(id) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling OrganizationModelControllerApi->get_entity_user_groups: %s\n" % e) + print("Exception when calling OrganizationModelControllerApi->get_entity_organization_settings: %s\n" % e) # example passing only required values which don't have defaults set # and optional values try: - # Get UserGroup entity - api_response = api_instance.get_entity_user_groups(id, filter=filter, include=include) + # Get Organization entity + api_response = api_instance.get_entity_organization_settings(id, filter=filter) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling OrganizationModelControllerApi->get_entity_user_groups: %s\n" % e) + print("Exception when calling OrganizationModelControllerApi->get_entity_organization_settings: %s\n" % e) ``` @@ -3493,11 +3951,10 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **id** | **str**| | **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] - **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] ### Return type -[**JsonApiUserGroupOutDocument**](JsonApiUserGroupOutDocument.md) +[**JsonApiOrganizationSettingOutDocument**](JsonApiOrganizationSettingOutDocument.md) ### Authorization @@ -3517,10 +3974,168 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **get_entity_user_identifiers** -> JsonApiUserIdentifierOutDocument get_entity_user_identifiers(id) +# **get_entity_themes** +> JsonApiThemeOutDocument get_entity_themes(id) -Get UserIdentifier entity +Get Theming + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import organization_model_controller_api +from gooddata_api_client.model.json_api_theme_out_document import JsonApiThemeOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + filter = "filter=name==someString;content==JsonNodeValue" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Get Theming + api_response = api_instance.get_entity_themes(id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->get_entity_themes: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get Theming + api_response = api_instance.get_entity_themes(id, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->get_entity_themes: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiThemeOutDocument**](JsonApiThemeOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_entity_user_groups** +> JsonApiUserGroupOutDocument get_entity_user_groups(id) + +Get UserGroup entity + +User Group - creates tree-like structure for categorizing users + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import organization_model_controller_api +from gooddata_api_client.model.json_api_user_group_out_document import JsonApiUserGroupOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + filter = "filter=name==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + include = [ + "include=parents", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + + # example passing only required values which don't have defaults set + try: + # Get UserGroup entity + api_response = api_instance.get_entity_user_groups(id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->get_entity_user_groups: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get UserGroup entity + api_response = api_instance.get_entity_user_groups(id, filter=filter, include=include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->get_entity_user_groups: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + +### Return type + +[**JsonApiUserGroupOutDocument**](JsonApiUserGroupOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_entity_user_identifiers** +> JsonApiUserIdentifierOutDocument get_entity_user_identifiers(id) + +Get UserIdentifier entity UserIdentifier - represents basic information about entity interacting with platform @@ -4038,6 +4653,95 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **patch_entity_identity_providers** +> JsonApiIdentityProviderOutDocument patch_entity_identity_providers(id, json_api_identity_provider_patch_document) + +Patch Identity Provider + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import organization_model_controller_api +from gooddata_api_client.model.json_api_identity_provider_patch_document import JsonApiIdentityProviderPatchDocument +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + json_api_identity_provider_patch_document = JsonApiIdentityProviderPatchDocument( + data=JsonApiIdentityProviderPatch( + attributes=JsonApiIdentityProviderPatchAttributes( + identifiers=["gooddata.com"], + specification=JsonApiIdentityProviderInAttributesSpecification(), + type="SAML", + ), + id="id1", + type="identityProvider", + ), + ) # JsonApiIdentityProviderPatchDocument | + filter = "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Patch Identity Provider + api_response = api_instance.patch_entity_identity_providers(id, json_api_identity_provider_patch_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->patch_entity_identity_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Patch Identity Provider + api_response = api_instance.patch_entity_identity_providers(id, json_api_identity_provider_patch_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->patch_entity_identity_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_identity_provider_patch_document** | [**JsonApiIdentityProviderPatchDocument**](JsonApiIdentityProviderPatchDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiIdentityProviderOutDocument**](JsonApiIdentityProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -4127,6 +4831,99 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **patch_entity_llm_endpoints** +> JsonApiLlmEndpointOutDocument patch_entity_llm_endpoints(id, json_api_llm_endpoint_patch_document) + +Patch LLM endpoint entity + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import organization_model_controller_api +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument +from gooddata_api_client.model.json_api_llm_endpoint_patch_document import JsonApiLlmEndpointPatchDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + json_api_llm_endpoint_patch_document = JsonApiLlmEndpointPatchDocument( + data=JsonApiLlmEndpointPatch( + attributes=JsonApiLlmEndpointPatchAttributes( + base_url="base_url_example", + description="description_example", + llm_model="llm_model_example", + llm_organization="llm_organization_example", + provider="OPENAI", + title="title_example", + token="token_example", + ), + id="id1", + type="llmEndpoint", + ), + ) # JsonApiLlmEndpointPatchDocument | + filter = "filter=title==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Patch LLM endpoint entity + api_response = api_instance.patch_entity_llm_endpoints(id, json_api_llm_endpoint_patch_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->patch_entity_llm_endpoints: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Patch LLM endpoint entity + api_response = api_instance.patch_entity_llm_endpoints(id, json_api_llm_endpoint_patch_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->patch_entity_llm_endpoints: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_llm_endpoint_patch_document** | [**JsonApiLlmEndpointPatchDocument**](JsonApiLlmEndpointPatchDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiLlmEndpointOutDocument**](JsonApiLlmEndpointOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -4165,19 +4962,12 @@ with gooddata_api_client.ApiClient() as api_client: json_api_notification_channel_patch_document = JsonApiNotificationChannelPatchDocument( data=JsonApiNotificationChannelPatch( attributes=JsonApiNotificationChannelInAttributes( + allowed_recipients="CREATOR", + custom_dashboard_url="custom_dashboard_url_example", description="description_example", + destination=JsonApiNotificationChannelInAttributesDestination(None), + destination_type="WEBHOOK", name="name_example", - triggers=[ - JsonApiNotificationChannelInAttributesTriggersInner( - metadata=JsonNode(), - type="SCHEDULE", - ), - ], - webhook=JsonApiNotificationChannelInAttributesWebhook( - has_token=True, - token="token_example", - url="https://example.com/webhook", - ), ), id="id1", type="notificationChannel", @@ -5005,6 +5795,95 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **update_entity_identity_providers** +> JsonApiIdentityProviderOutDocument update_entity_identity_providers(id, json_api_identity_provider_in_document) + +Put Identity Provider + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import organization_model_controller_api +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument +from gooddata_api_client.model.json_api_identity_provider_in_document import JsonApiIdentityProviderInDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + json_api_identity_provider_in_document = JsonApiIdentityProviderInDocument( + data=JsonApiIdentityProviderIn( + attributes=JsonApiIdentityProviderInAttributes( + identifiers=["gooddata.com"], + specification=JsonApiIdentityProviderInAttributesSpecification(), + type="SAML", + ), + id="id1", + type="identityProvider", + ), + ) # JsonApiIdentityProviderInDocument | + filter = "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Put Identity Provider + api_response = api_instance.update_entity_identity_providers(id, json_api_identity_provider_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->update_entity_identity_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Put Identity Provider + api_response = api_instance.update_entity_identity_providers(id, json_api_identity_provider_in_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->update_entity_identity_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_identity_provider_in_document** | [**JsonApiIdentityProviderInDocument**](JsonApiIdentityProviderInDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiIdentityProviderOutDocument**](JsonApiIdentityProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -5094,6 +5973,99 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **update_entity_llm_endpoints** +> JsonApiLlmEndpointOutDocument update_entity_llm_endpoints(id, json_api_llm_endpoint_in_document) + +PUT LLM endpoint entity + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import organization_model_controller_api +from gooddata_api_client.model.json_api_llm_endpoint_in_document import JsonApiLlmEndpointInDocument +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = organization_model_controller_api.OrganizationModelControllerApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + json_api_llm_endpoint_in_document = JsonApiLlmEndpointInDocument( + data=JsonApiLlmEndpointIn( + attributes=JsonApiLlmEndpointInAttributes( + base_url="base_url_example", + description="description_example", + llm_model="llm_model_example", + llm_organization="llm_organization_example", + provider="OPENAI", + title="title_example", + token="token_example", + ), + id="id1", + type="llmEndpoint", + ), + ) # JsonApiLlmEndpointInDocument | + filter = "filter=title==someString;description==someString" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # PUT LLM endpoint entity + api_response = api_instance.update_entity_llm_endpoints(id, json_api_llm_endpoint_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->update_entity_llm_endpoints: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # PUT LLM endpoint entity + api_response = api_instance.update_entity_llm_endpoints(id, json_api_llm_endpoint_in_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->update_entity_llm_endpoints: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_llm_endpoint_in_document** | [**JsonApiLlmEndpointInDocument**](JsonApiLlmEndpointInDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +[**JsonApiLlmEndpointOutDocument**](JsonApiLlmEndpointOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -5132,19 +6104,12 @@ with gooddata_api_client.ApiClient() as api_client: json_api_notification_channel_in_document = JsonApiNotificationChannelInDocument( data=JsonApiNotificationChannelIn( attributes=JsonApiNotificationChannelInAttributes( + allowed_recipients="CREATOR", + custom_dashboard_url="custom_dashboard_url_example", description="description_example", + destination=JsonApiNotificationChannelInAttributesDestination(None), + destination_type="WEBHOOK", name="name_example", - triggers=[ - JsonApiNotificationChannelInAttributesTriggersInner( - metadata=JsonNode(), - type="SCHEDULE", - ), - ], - webhook=JsonApiNotificationChannelInAttributesWebhook( - has_token=True, - token="token_example", - url="https://example.com/webhook", - ), ), id="id1", type="notificationChannel", diff --git a/gooddata-api-client/docs/PermissionsForAssignee.md b/gooddata-api-client/docs/PermissionsForAssignee.md index 9d9f840b1..e0e841217 100644 --- a/gooddata-api-client/docs/PermissionsForAssignee.md +++ b/gooddata-api-client/docs/PermissionsForAssignee.md @@ -5,7 +5,6 @@ Desired levels of permissions for an assignee identified by an identifier. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**permissions** | **[str]** | | **assignee_identifier** | [**AssigneeIdentifier**](AssigneeIdentifier.md) | | **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/gooddata-api-client/docs/PermissionsForAssigneeRule.md b/gooddata-api-client/docs/PermissionsForAssigneeRule.md index 25029abb9..405f990aa 100644 --- a/gooddata-api-client/docs/PermissionsForAssigneeRule.md +++ b/gooddata-api-client/docs/PermissionsForAssigneeRule.md @@ -5,7 +5,6 @@ Desired levels of permissions for a collection of assignees identified by a rule ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**permissions** | **[str]** | | **assignee_rule** | [**AssigneeRule**](AssigneeRule.md) | | **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/gooddata-api-client/docs/Range.md b/gooddata-api-client/docs/Range.md new file mode 100644 index 000000000..c75b9fd80 --- /dev/null +++ b/gooddata-api-client/docs/Range.md @@ -0,0 +1,15 @@ +# Range + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**_from** | [**Value**](Value.md) | | +**measure** | [**LocalIdentifier**](LocalIdentifier.md) | | +**operator** | **str** | | +**to** | [**Value**](Value.md) | | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/RangeWrapper.md b/gooddata-api-client/docs/RangeWrapper.md new file mode 100644 index 000000000..344dc4bd3 --- /dev/null +++ b/gooddata-api-client/docs/RangeWrapper.md @@ -0,0 +1,12 @@ +# RangeWrapper + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**range** | [**Range**](Range.md) | | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/Relative.md b/gooddata-api-client/docs/Relative.md new file mode 100644 index 000000000..53b65f279 --- /dev/null +++ b/gooddata-api-client/docs/Relative.md @@ -0,0 +1,14 @@ +# Relative + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**measure** | [**ArithmeticMeasure**](ArithmeticMeasure.md) | | +**operator** | **str** | Relative condition operator. INCREASES_BY - the metric increases by the specified value. DECREASES_BY - the metric decreases by the specified value. CHANGES_BY - the metric increases or decreases by the specified value. | +**threshold** | [**Value**](Value.md) | | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/RelativeWrapper.md b/gooddata-api-client/docs/RelativeWrapper.md new file mode 100644 index 000000000..1baff6884 --- /dev/null +++ b/gooddata-api-client/docs/RelativeWrapper.md @@ -0,0 +1,12 @@ +# RelativeWrapper + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**relative** | [**Relative**](Relative.md) | | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/RouteRequest.md b/gooddata-api-client/docs/RouteRequest.md new file mode 100644 index 000000000..d1122df39 --- /dev/null +++ b/gooddata-api-client/docs/RouteRequest.md @@ -0,0 +1,12 @@ +# RouteRequest + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**question** | **str** | Route to supported use cases based on this input query. | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/RouteResult.md b/gooddata-api-client/docs/RouteResult.md new file mode 100644 index 000000000..bcac81e2e --- /dev/null +++ b/gooddata-api-client/docs/RouteResult.md @@ -0,0 +1,13 @@ +# RouteResult + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**reasoning** | **str** | Explanation why LLM picked this use case. | +**use_case** | **str** | Use case where LLM routed based on question. | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/SamlIdpSpecification.md b/gooddata-api-client/docs/SamlIdpSpecification.md new file mode 100644 index 000000000..4322968d9 --- /dev/null +++ b/gooddata-api-client/docs/SamlIdpSpecification.md @@ -0,0 +1,13 @@ +# SamlIdpSpecification + +Specification of a SAML identity provider + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**metadata** | **str** | Base64 encoded xml document with SAML metadata. This document is issued by your SAML provider. It includes the issuer's name, expiration information, and keys that can be used to validate the response from the identity provider. | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/SearchRequest.md b/gooddata-api-client/docs/SearchRequest.md index 0c736b153..890991dcb 100644 --- a/gooddata-api-client/docs/SearchRequest.md +++ b/gooddata-api-client/docs/SearchRequest.md @@ -8,6 +8,7 @@ Name | Type | Description | Notes **deep_search** | **bool** | Turn on deep search. If true, content of complex objects will be searched as well, e.g. metrics in visualizations. | [optional] if omitted the server will use the default value of False **limit** | **int** | Maximum number of results to return. There is a hard limit and the actual number of returned results may be lower than what is requested. | [optional] if omitted the server will use the default value of 10 **object_types** | **[str]** | List of object types to search for. | [optional] +**relevant_score_threshold** | **float** | Score, above which we return found objects. Below this score objects are not relevant. | [optional] if omitted the server will use the default value of 0.3 **title_to_descriptor_ratio** | **float** | Temporary for experiments. Ratio of title score to descriptor score. | [optional] if omitted the server will use the default value of 0.7 **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/gooddata-api-client/docs/SearchResultObject.md b/gooddata-api-client/docs/SearchResultObject.md index daf2a62ef..1779a11e6 100644 --- a/gooddata-api-client/docs/SearchResultObject.md +++ b/gooddata-api-client/docs/SearchResultObject.md @@ -4,18 +4,19 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**created_at** | **str** | Timestamp when object was created. | -**description** | **str** | Object description. | **id** | **str** | Object ID. | -**modified_at** | **str** | Timestamp when object was last modified. | -**score** | **float** | Result score calculated by a similarity search algorithm (cosine_distance). | -**score_descriptor** | **float** | Result score for descriptor containing(now) description and tags. | -**score_exact_match** | **int** | Result score for exact match(id/title). 1/1000. Other scores are multiplied by this. | -**score_title** | **float** | Result score for object title. | -**tags** | **[str]** | | **title** | **str** | Object title. | **type** | **str** | Object type, e.g. dashboard. | -**visualization_url** | **str** | If the object is visualization, this field defines the type of visualization. | +**workspace_id** | **str** | Workspace ID. | +**created_at** | **datetime** | Timestamp when object was created. | [optional] +**description** | **str** | Object description. | [optional] +**modified_at** | **datetime** | Timestamp when object was last modified. | [optional] +**score** | **float** | Result score calculated by a similarity search algorithm (cosine_distance). | [optional] +**score_descriptor** | **float** | Result score for descriptor containing(now) description and tags. | [optional] +**score_exact_match** | **int** | Result score for exact match(id/title). 1/1000. Other scores are multiplied by this. | [optional] +**score_title** | **float** | Result score for object title. | [optional] +**tags** | **[str]** | | [optional] +**visualization_url** | **str** | If the object is visualization, this field defines the type of visualization. | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/gooddata-api-client/docs/SmartFunctionsApi.md b/gooddata-api-client/docs/SmartFunctionsApi.md index 2b62ba312..17f04a613 100644 --- a/gooddata-api-client/docs/SmartFunctionsApi.md +++ b/gooddata-api-client/docs/SmartFunctionsApi.md @@ -4,6 +4,9 @@ All URIs are relative to *http://localhost* Method | HTTP request | Description ------------- | ------------- | ------------- +[**ai_chat**](SmartFunctionsApi.md#ai_chat) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/chat | (BETA) Chat with AI +[**ai_chat_history**](SmartFunctionsApi.md#ai_chat_history) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/chatHistory | (BETA) Get Chat History +[**ai_route**](SmartFunctionsApi.md#ai_route) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/route | (BETA) Route to supported use cases based on this input query. [**ai_search**](SmartFunctionsApi.md#ai_search) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/search | (BETA) Semantic Search in Metadata [**anomaly_detection**](SmartFunctionsApi.md#anomaly_detection) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/functions/anomalyDetection/{resultId} | (EXPERIMENTAL) Smart functions - Anomaly Detection [**anomaly_detection_result**](SmartFunctionsApi.md#anomaly_detection_result) | **GET** /api/v1/actions/workspaces/{workspaceId}/execution/functions/anomalyDetection/result/{resultId} | (EXPERIMENTAL) Smart functions - Anomaly Detection Result @@ -13,6 +16,239 @@ Method | HTTP request | Description [**forecast_result**](SmartFunctionsApi.md#forecast_result) | **GET** /api/v1/actions/workspaces/{workspaceId}/execution/functions/forecast/result/{resultId} | (BETA) Smart functions - Forecast Result +# **ai_chat** +> ChatResult ai_chat(workspace_id, chat_request) + +(BETA) Chat with AI + +(BETA) Combines multiple use cases such as search, create visualizations, ... + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import smart_functions_api +from gooddata_api_client.model.chat_result import ChatResult +from gooddata_api_client.model.chat_request import ChatRequest +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = smart_functions_api.SmartFunctionsApi(api_client) + workspace_id = "/6bUUGjjNSwg0_bs" # str | Workspace identifier + chat_request = ChatRequest( + chat_history_thread_id="chat_history_thread_id_example", + limit_create=3, + limit_create_context=10, + limit_search=5, + question="question_example", + relevant_score_threshold=0.4, + search_score_threshold=0.9, + title_to_descriptor_ratio=0.7, + user_context=UserContext( + active_object=ActiveObjectIdentification( + id="id_example", + type="type_example", + workspace_id="workspace_id_example", + ), + ), + ) # ChatRequest | + + # example passing only required values which don't have defaults set + try: + # (BETA) Chat with AI + api_response = api_instance.ai_chat(workspace_id, chat_request) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling SmartFunctionsApi->ai_chat: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **chat_request** | [**ChatRequest**](ChatRequest.md)| | + +### Return type + +[**ChatResult**](ChatResult.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **ai_chat_history** +> ChatHistoryResult ai_chat_history(workspace_id, chat_history_request) + +(BETA) Get Chat History + +(BETA) Post thread ID (and optionally interaction ID) to get full/partial chat history. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import smart_functions_api +from gooddata_api_client.model.chat_history_result import ChatHistoryResult +from gooddata_api_client.model.chat_history_request import ChatHistoryRequest +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = smart_functions_api.SmartFunctionsApi(api_client) + workspace_id = "/6bUUGjjNSwg0_bs" # str | Workspace identifier + chat_history_request = ChatHistoryRequest( + chat_history_interaction_id=1, + chat_history_thread_id="chat_history_thread_id_example", + reset=True, + user_feedback="POSITIVE", + ) # ChatHistoryRequest | + + # example passing only required values which don't have defaults set + try: + # (BETA) Get Chat History + api_response = api_instance.ai_chat_history(workspace_id, chat_history_request) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling SmartFunctionsApi->ai_chat_history: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **chat_history_request** | [**ChatHistoryRequest**](ChatHistoryRequest.md)| | + +### Return type + +[**ChatHistoryResult**](ChatHistoryResult.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **ai_route** +> RouteResult ai_route(workspace_id, route_request) + +(BETA) Route to supported use cases based on this input query. + +(BETA) Uses similarity (e.g. cosine distance) to find most similar use cases. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import smart_functions_api +from gooddata_api_client.model.route_result import RouteResult +from gooddata_api_client.model.route_request import RouteRequest +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = smart_functions_api.SmartFunctionsApi(api_client) + workspace_id = "/6bUUGjjNSwg0_bs" # str | Workspace identifier + route_request = RouteRequest( + question="question_example", + ) # RouteRequest | + + # example passing only required values which don't have defaults set + try: + # (BETA) Route to supported use cases based on this input query. + api_response = api_instance.ai_route(workspace_id, route_request) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling SmartFunctionsApi->ai_route: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **route_request** | [**RouteRequest**](RouteRequest.md)| | + +### Return type + +[**RouteResult**](RouteResult.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + # **ai_search** > SearchResult ai_search(workspace_id, search_request) @@ -49,6 +285,7 @@ with gooddata_api_client.ApiClient() as api_client: "attribute", ], question="question_example", + relevant_score_threshold=0.3, title_to_descriptor_ratio=0.7, ) # SearchRequest | diff --git a/gooddata-api-client/docs/Smtp.md b/gooddata-api-client/docs/Smtp.md new file mode 100644 index 000000000..fd7925d9b --- /dev/null +++ b/gooddata-api-client/docs/Smtp.md @@ -0,0 +1,19 @@ +# Smtp + +Custom SMTP destination for notifications. The properties host, port, username, and password are required on create and update + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**type** | **str** | The destination type. | defaults to "SMTP" +**from_email** | **str** | E-mail address to send notifications from. | [optional] if omitted the server will use the default value of "no-reply@gooddata.com" +**from_email_name** | **str** | An optional e-mail name to send notifications from. | [optional] if omitted the server will use the default value of "GoodData" +**host** | **str** | The SMTP server address. | [optional] +**password** | **str** | The SMTP server password. | [optional] +**port** | **int** | The SMTP server port. | [optional] +**username** | **str** | The SMTP server username. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/SmtpAllOf.md b/gooddata-api-client/docs/SmtpAllOf.md new file mode 100644 index 000000000..17166734f --- /dev/null +++ b/gooddata-api-client/docs/SmtpAllOf.md @@ -0,0 +1,18 @@ +# SmtpAllOf + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**from_email** | **str** | E-mail address to send notifications from. | [optional] if omitted the server will use the default value of "no-reply@gooddata.com" +**from_email_name** | **str** | An optional e-mail name to send notifications from. | [optional] if omitted the server will use the default value of "GoodData" +**host** | **str** | The SMTP server address. | [optional] +**password** | **str** | The SMTP server password. | [optional] +**port** | **int** | The SMTP server port. | [optional] +**type** | **str** | The destination type. | [optional] if omitted the server will use the default value of "SMTP" +**username** | **str** | The SMTP server username. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/UnsubscribeApi.md b/gooddata-api-client/docs/UnsubscribeApi.md new file mode 100644 index 000000000..e77eb125d --- /dev/null +++ b/gooddata-api-client/docs/UnsubscribeApi.md @@ -0,0 +1,198 @@ +# gooddata_api_client.UnsubscribeApi + +All URIs are relative to *http://localhost* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**unsubscribe_all_automations**](UnsubscribeApi.md#unsubscribe_all_automations) | **DELETE** /api/v1/actions/organization/automations/unsubscribe | Unsubscribe from all automations in all workspaces +[**unsubscribe_automation**](UnsubscribeApi.md#unsubscribe_automation) | **DELETE** /api/v1/actions/workspaces/{workspaceId}/automations/{automationId}/unsubscribe | Unsubscribe from an automation +[**unsubscribe_workspace_automations**](UnsubscribeApi.md#unsubscribe_workspace_automations) | **DELETE** /api/v1/actions/workspaces/{workspaceId}/automations/unsubscribe | Unsubscribe from all automations in the workspace + + +# **unsubscribe_all_automations** +> unsubscribe_all_automations() + +Unsubscribe from all automations in all workspaces + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import unsubscribe_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = unsubscribe_api.UnsubscribeApi(api_client) + + # example, this endpoint has no required or optional parameters + try: + # Unsubscribe from all automations in all workspaces + api_instance.unsubscribe_all_automations() + except gooddata_api_client.ApiException as e: + print("Exception when calling UnsubscribeApi->unsubscribe_all_automations: %s\n" % e) +``` + + +### Parameters +This endpoint does not need any parameter. + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | No Content | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **unsubscribe_automation** +> unsubscribe_automation(workspace_id, automation_id) + +Unsubscribe from an automation + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import unsubscribe_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = unsubscribe_api.UnsubscribeApi(api_client) + workspace_id = "workspaceId_example" # str | + automation_id = "automationId_example" # str | + + # example passing only required values which don't have defaults set + try: + # Unsubscribe from an automation + api_instance.unsubscribe_automation(workspace_id, automation_id) + except gooddata_api_client.ApiException as e: + print("Exception when calling UnsubscribeApi->unsubscribe_automation: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **automation_id** | **str**| | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | No Content | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **unsubscribe_workspace_automations** +> unsubscribe_workspace_automations(workspace_id) + +Unsubscribe from all automations in the workspace + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import unsubscribe_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = unsubscribe_api.UnsubscribeApi(api_client) + workspace_id = "workspaceId_example" # str | + + # example passing only required values which don't have defaults set + try: + # Unsubscribe from all automations in the workspace + api_instance.unsubscribe_workspace_automations(workspace_id) + except gooddata_api_client.ApiException as e: + print("Exception when calling UnsubscribeApi->unsubscribe_workspace_automations: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | No Content | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/gooddata-api-client/docs/UserContext.md b/gooddata-api-client/docs/UserContext.md new file mode 100644 index 000000000..887cb2b08 --- /dev/null +++ b/gooddata-api-client/docs/UserContext.md @@ -0,0 +1,13 @@ +# UserContext + +User context, which can affect the behavior of the underlying AI features. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**active_object** | [**ActiveObjectIdentification**](ActiveObjectIdentification.md) | | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/Value.md b/gooddata-api-client/docs/Value.md new file mode 100644 index 000000000..b793f9d1d --- /dev/null +++ b/gooddata-api-client/docs/Value.md @@ -0,0 +1,12 @@ +# Value + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**value** | **float** | Value of the alert threshold to compare the metric to. | +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/Webhook.md b/gooddata-api-client/docs/Webhook.md index 17545c776..81cc3adc8 100644 --- a/gooddata-api-client/docs/Webhook.md +++ b/gooddata-api-client/docs/Webhook.md @@ -1,12 +1,14 @@ # Webhook +Webhook destination for notifications. The property url is required on create and update. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**url** | **str** | The webhook URL. | -**has_token** | **bool** | | [optional] +**type** | **str** | The destination type. | defaults to "WEBHOOK" +**has_token** | **bool, none_type** | Flag indicating if webhook has a token. | [optional] [readonly] **token** | **str, none_type** | Bearer token for the webhook. | [optional] +**url** | **str** | The webhook URL. | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/gooddata-api-client/docs/WebhookAllOf.md b/gooddata-api-client/docs/WebhookAllOf.md new file mode 100644 index 000000000..1da385e28 --- /dev/null +++ b/gooddata-api-client/docs/WebhookAllOf.md @@ -0,0 +1,15 @@ +# WebhookAllOf + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**has_token** | **bool, none_type** | Flag indicating if webhook has a token. | [optional] [readonly] +**token** | **str, none_type** | Bearer token for the webhook. | [optional] +**type** | **str** | The destination type. | [optional] if omitted the server will use the default value of "WEBHOOK" +**url** | **str** | The webhook URL. | [optional] +**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/gooddata-api-client/docs/WorkspaceObjectControllerApi.md b/gooddata-api-client/docs/WorkspaceObjectControllerApi.md index 7df8d2046..85916d695 100644 --- a/gooddata-api-client/docs/WorkspaceObjectControllerApi.md +++ b/gooddata-api-client/docs/WorkspaceObjectControllerApi.md @@ -11,6 +11,7 @@ Method | HTTP request | Description [**create_entity_dashboard_plugins**](WorkspaceObjectControllerApi.md#create_entity_dashboard_plugins) | **POST** /api/v1/entities/workspaces/{workspaceId}/dashboardPlugins | Post Plugins [**create_entity_export_definitions**](WorkspaceObjectControllerApi.md#create_entity_export_definitions) | **POST** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions | Post Export Definitions [**create_entity_filter_contexts**](WorkspaceObjectControllerApi.md#create_entity_filter_contexts) | **POST** /api/v1/entities/workspaces/{workspaceId}/filterContexts | Post Context Filters +[**create_entity_filter_views**](WorkspaceObjectControllerApi.md#create_entity_filter_views) | **POST** /api/v1/entities/workspaces/{workspaceId}/filterViews | Post Filter views [**create_entity_metrics**](WorkspaceObjectControllerApi.md#create_entity_metrics) | **POST** /api/v1/entities/workspaces/{workspaceId}/metrics | Post Metrics [**create_entity_user_data_filters**](WorkspaceObjectControllerApi.md#create_entity_user_data_filters) | **POST** /api/v1/entities/workspaces/{workspaceId}/userDataFilters | Post User Data Filters [**create_entity_visualization_objects**](WorkspaceObjectControllerApi.md#create_entity_visualization_objects) | **POST** /api/v1/entities/workspaces/{workspaceId}/visualizationObjects | Post Visualization Objects @@ -24,6 +25,7 @@ Method | HTTP request | Description [**delete_entity_dashboard_plugins**](WorkspaceObjectControllerApi.md#delete_entity_dashboard_plugins) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/dashboardPlugins/{objectId} | Delete a Plugin [**delete_entity_export_definitions**](WorkspaceObjectControllerApi.md#delete_entity_export_definitions) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Delete an Export Definition [**delete_entity_filter_contexts**](WorkspaceObjectControllerApi.md#delete_entity_filter_contexts) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Delete a Context Filter +[**delete_entity_filter_views**](WorkspaceObjectControllerApi.md#delete_entity_filter_views) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Delete Filter view [**delete_entity_metrics**](WorkspaceObjectControllerApi.md#delete_entity_metrics) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Delete a Metric [**delete_entity_user_data_filters**](WorkspaceObjectControllerApi.md#delete_entity_user_data_filters) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/userDataFilters/{objectId} | Delete a User Data Filter [**delete_entity_visualization_objects**](WorkspaceObjectControllerApi.md#delete_entity_visualization_objects) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/visualizationObjects/{objectId} | Delete a Visualization Object @@ -40,6 +42,7 @@ Method | HTTP request | Description [**get_all_entities_export_definitions**](WorkspaceObjectControllerApi.md#get_all_entities_export_definitions) | **GET** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions | Get all Export Definitions [**get_all_entities_facts**](WorkspaceObjectControllerApi.md#get_all_entities_facts) | **GET** /api/v1/entities/workspaces/{workspaceId}/facts | Get all Facts [**get_all_entities_filter_contexts**](WorkspaceObjectControllerApi.md#get_all_entities_filter_contexts) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterContexts | Get all Context Filters +[**get_all_entities_filter_views**](WorkspaceObjectControllerApi.md#get_all_entities_filter_views) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterViews | Get all Filter views [**get_all_entities_labels**](WorkspaceObjectControllerApi.md#get_all_entities_labels) | **GET** /api/v1/entities/workspaces/{workspaceId}/labels | Get all Labels [**get_all_entities_metrics**](WorkspaceObjectControllerApi.md#get_all_entities_metrics) | **GET** /api/v1/entities/workspaces/{workspaceId}/metrics | Get all Metrics [**get_all_entities_user_data_filters**](WorkspaceObjectControllerApi.md#get_all_entities_user_data_filters) | **GET** /api/v1/entities/workspaces/{workspaceId}/userDataFilters | Get all User Data Filters @@ -57,6 +60,7 @@ Method | HTTP request | Description [**get_entity_export_definitions**](WorkspaceObjectControllerApi.md#get_entity_export_definitions) | **GET** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Get an Export Definition [**get_entity_facts**](WorkspaceObjectControllerApi.md#get_entity_facts) | **GET** /api/v1/entities/workspaces/{workspaceId}/facts/{objectId} | Get a Fact [**get_entity_filter_contexts**](WorkspaceObjectControllerApi.md#get_entity_filter_contexts) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Get a Context Filter +[**get_entity_filter_views**](WorkspaceObjectControllerApi.md#get_entity_filter_views) | **GET** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Get Filter view [**get_entity_labels**](WorkspaceObjectControllerApi.md#get_entity_labels) | **GET** /api/v1/entities/workspaces/{workspaceId}/labels/{objectId} | Get a Label [**get_entity_metrics**](WorkspaceObjectControllerApi.md#get_entity_metrics) | **GET** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Get a Metric [**get_entity_user_data_filters**](WorkspaceObjectControllerApi.md#get_entity_user_data_filters) | **GET** /api/v1/entities/workspaces/{workspaceId}/userDataFilters/{objectId} | Get a User Data Filter @@ -71,6 +75,7 @@ Method | HTTP request | Description [**patch_entity_dashboard_plugins**](WorkspaceObjectControllerApi.md#patch_entity_dashboard_plugins) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/dashboardPlugins/{objectId} | Patch a Plugin [**patch_entity_export_definitions**](WorkspaceObjectControllerApi.md#patch_entity_export_definitions) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Patch an Export Definition [**patch_entity_filter_contexts**](WorkspaceObjectControllerApi.md#patch_entity_filter_contexts) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Patch a Context Filter +[**patch_entity_filter_views**](WorkspaceObjectControllerApi.md#patch_entity_filter_views) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Patch Filter view [**patch_entity_metrics**](WorkspaceObjectControllerApi.md#patch_entity_metrics) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Patch a Metric [**patch_entity_user_data_filters**](WorkspaceObjectControllerApi.md#patch_entity_user_data_filters) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/userDataFilters/{objectId} | Patch a User Data Filter [**patch_entity_visualization_objects**](WorkspaceObjectControllerApi.md#patch_entity_visualization_objects) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/visualizationObjects/{objectId} | Patch a Visualization Object @@ -84,6 +89,7 @@ Method | HTTP request | Description [**update_entity_dashboard_plugins**](WorkspaceObjectControllerApi.md#update_entity_dashboard_plugins) | **PUT** /api/v1/entities/workspaces/{workspaceId}/dashboardPlugins/{objectId} | Put a Plugin [**update_entity_export_definitions**](WorkspaceObjectControllerApi.md#update_entity_export_definitions) | **PUT** /api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId} | Put an Export Definition [**update_entity_filter_contexts**](WorkspaceObjectControllerApi.md#update_entity_filter_contexts) | **PUT** /api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId} | Put a Context Filter +[**update_entity_filter_views**](WorkspaceObjectControllerApi.md#update_entity_filter_views) | **PUT** /api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId} | Put Filter views [**update_entity_metrics**](WorkspaceObjectControllerApi.md#update_entity_metrics) | **PUT** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Put a Metric [**update_entity_user_data_filters**](WorkspaceObjectControllerApi.md#update_entity_user_data_filters) | **PUT** /api/v1/entities/workspaces/{workspaceId}/userDataFilters/{objectId} | Put a User Data Filter [**update_entity_visualization_objects**](WorkspaceObjectControllerApi.md#update_entity_visualization_objects) | **PUT** /api/v1/entities/workspaces/{workspaceId}/visualizationObjects/{objectId} | Put a Visualization Object @@ -320,16 +326,31 @@ with gooddata_api_client.ApiClient() as api_client: json_api_automation_in_document = JsonApiAutomationInDocument( data=JsonApiAutomationIn( attributes=JsonApiAutomationInAttributes( + alert=JsonApiAutomationInAttributesAlert( + condition=AlertCondition(), + execution=AlertAfm( + filters=[ + FilterDefinition(), + ], + measures=[ + MeasureItem( + definition=MeasureDefinition(), + local_identifier="metric_1", + ), + ], + ), + trigger="ALWAYS", + ), are_relations_valid=True, description="description_example", details=None, metadata={}, schedule=JsonApiAutomationInAttributesSchedule( cron="0 */30 9-17 ? * MON-FRI", - cron_description="cron_description_example", first_run=dateutil_parser('2025-01-01T12:00:00Z'), timezone="Europe/Prague", ), + state="ACTIVE", tags=[ "tags_example", ], @@ -337,6 +358,9 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiAutomationInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), export_definitions=JsonApiAutomationInRelationshipsExportDefinitions( data=JsonApiExportDefinitionToManyLinkage([ JsonApiExportDefinitionLinkage( @@ -361,7 +385,7 @@ with gooddata_api_client.ApiClient() as api_client: ), ) # JsonApiAutomationInDocument | include = [ - "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) meta_include = [ "metaInclude=origin,all", @@ -646,7 +670,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiExportDefinitionInRelationships( - analytical_dashboard=JsonApiExportDefinitionInRelationshipsAnalyticalDashboard( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( data=JsonApiAnalyticalDashboardToOneLinkage(None), ), visualization_object=JsonApiExportDefinitionInRelationshipsVisualizationObject( @@ -657,7 +681,7 @@ with gooddata_api_client.ApiClient() as api_client: ), ) # JsonApiExportDefinitionPostOptionalIdDocument | include = [ - "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) meta_include = [ "metaInclude=origin,all", @@ -804,6 +828,110 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**201** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **create_entity_filter_views** +> JsonApiFilterViewOutDocument create_entity_filter_views(workspace_id, json_api_filter_view_in_document) + +Post Filter views + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import workspace_object_controller_api +from gooddata_api_client.model.json_api_filter_view_in_document import JsonApiFilterViewInDocument +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = workspace_object_controller_api.WorkspaceObjectControllerApi(api_client) + workspace_id = "workspaceId_example" # str | + json_api_filter_view_in_document = JsonApiFilterViewInDocument( + data=JsonApiFilterViewIn( + attributes=JsonApiFilterViewInAttributes( + are_relations_valid=True, + content={}, + description="description_example", + is_default=True, + tags=[ + "tags_example", + ], + title="title_example", + ), + id="id1", + relationships=JsonApiFilterViewInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), + user=JsonApiFilterViewInRelationshipsUser( + data=JsonApiUserToOneLinkage(None), + ), + ), + type="filterView", + ), + ) # JsonApiFilterViewInDocument | + include = [ + "include=analyticalDashboard,user", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + + # example passing only required values which don't have defaults set + try: + # Post Filter views + api_response = api_instance.create_entity_filter_views(workspace_id, json_api_filter_view_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling WorkspaceObjectControllerApi->create_entity_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Post Filter views + api_response = api_instance.create_entity_filter_views(workspace_id, json_api_filter_view_in_document, include=include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling WorkspaceObjectControllerApi->create_entity_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **json_api_filter_view_in_document** | [**JsonApiFilterViewInDocument**](JsonApiFilterViewInDocument.md)| | + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + +### Return type + +[**JsonApiFilterViewOutDocument**](JsonApiFilterViewOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -954,7 +1082,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiUserDataFilterInRelationships( - user=JsonApiOrganizationOutRelationshipsBootstrapUser( + user=JsonApiFilterViewInRelationshipsUser( data=JsonApiUserToOneLinkage(None), ), user_group=JsonApiOrganizationOutRelationshipsBootstrapUserGroup( @@ -1593,7 +1721,7 @@ with gooddata_api_client.ApiClient() as api_client: api_instance = workspace_object_controller_api.WorkspaceObjectControllerApi(api_client) workspace_id = "workspaceId_example" # str | object_id = "objectId_example" # str | - filter = "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) # example passing only required values which don't have defaults set try: @@ -1912,6 +2040,81 @@ with gooddata_api_client.ApiClient() as api_client: ``` +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **object_id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | Successfully deleted | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **delete_entity_filter_views** +> delete_entity_filter_views(workspace_id, object_id) + +Delete Filter view + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import workspace_object_controller_api +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = workspace_object_controller_api.WorkspaceObjectControllerApi(api_client) + workspace_id = "workspaceId_example" # str | + object_id = "objectId_example" # str | + filter = "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + + # example passing only required values which don't have defaults set + try: + # Delete Filter view + api_instance.delete_entity_filter_views(workspace_id, object_id) + except gooddata_api_client.ApiException as e: + print("Exception when calling WorkspaceObjectControllerApi->delete_entity_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Delete Filter view + api_instance.delete_entity_filter_views(workspace_id, object_id, filter=filter) + except gooddata_api_client.ApiException as e: + print("Exception when calling WorkspaceObjectControllerApi->delete_entity_filter_views: %s\n" % e) +``` + + ### Parameters Name | Type | Description | Notes @@ -2707,9 +2910,9 @@ with gooddata_api_client.ApiClient() as api_client: api_instance = workspace_object_controller_api.WorkspaceObjectControllerApi(api_client) workspace_id = "workspaceId_example" # str | origin = "ALL" # str | (optional) if omitted the server will use the default value of "ALL" - filter = "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 @@ -3089,7 +3292,7 @@ with gooddata_api_client.ApiClient() as api_client: origin = "ALL" # str | (optional) if omitted the server will use the default value of "ALL" filter = "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 @@ -3340,6 +3543,102 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_all_entities_filter_views** +> JsonApiFilterViewOutList get_all_entities_filter_views(workspace_id) + +Get all Filter views + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import workspace_object_controller_api +from gooddata_api_client.model.json_api_filter_view_out_list import JsonApiFilterViewOutList +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = workspace_object_controller_api.WorkspaceObjectControllerApi(api_client) + workspace_id = "workspaceId_example" # str | + origin = "ALL" # str | (optional) if omitted the server will use the default value of "ALL" + filter = "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + include = [ + "include=analyticalDashboard,user", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + page = 0 # int | Zero-based page index (0..N) (optional) if omitted the server will use the default value of 0 + size = 20 # int | The size of the page to be returned (optional) if omitted the server will use the default value of 20 + sort = [ + "sort_example", + ] # [str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) + x_gdc_validate_relations = False # bool | (optional) if omitted the server will use the default value of False + meta_include = [ + "metaInclude=page,all", + ] # [str] | Include Meta objects. (optional) + + # example passing only required values which don't have defaults set + try: + # Get all Filter views + api_response = api_instance.get_all_entities_filter_views(workspace_id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling WorkspaceObjectControllerApi->get_all_entities_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get all Filter views + api_response = api_instance.get_all_entities_filter_views(workspace_id, origin=origin, filter=filter, include=include, page=page, size=size, sort=sort, x_gdc_validate_relations=x_gdc_validate_relations, meta_include=meta_include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling WorkspaceObjectControllerApi->get_all_entities_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **origin** | **str**| | [optional] if omitted the server will use the default value of "ALL" + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + **page** | **int**| Zero-based page index (0..N) | [optional] if omitted the server will use the default value of 0 + **size** | **int**| The size of the page to be returned | [optional] if omitted the server will use the default value of 20 + **sort** | **[str]**| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **x_gdc_validate_relations** | **bool**| | [optional] if omitted the server will use the default value of False + **meta_include** | **[str]**| Include Meta objects. | [optional] + +### Return type + +[**JsonApiFilterViewOutList**](JsonApiFilterViewOutList.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -4307,9 +4606,9 @@ with gooddata_api_client.ApiClient() as api_client: api_instance = workspace_object_controller_api.WorkspaceObjectControllerApi(api_client) workspace_id = "workspaceId_example" # str | object_id = "objectId_example" # str | - filter = "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) x_gdc_validate_relations = False # bool | (optional) if omitted the server will use the default value of False meta_include = [ @@ -4657,7 +4956,7 @@ with gooddata_api_client.ApiClient() as api_client: object_id = "objectId_example" # str | filter = "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) x_gdc_validate_relations = False # bool | (optional) if omitted the server will use the default value of False meta_include = [ @@ -4884,6 +5183,90 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_entity_filter_views** +> JsonApiFilterViewOutDocument get_entity_filter_views(workspace_id, object_id) + +Get Filter view + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import workspace_object_controller_api +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = workspace_object_controller_api.WorkspaceObjectControllerApi(api_client) + workspace_id = "workspaceId_example" # str | + object_id = "objectId_example" # str | + filter = "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + include = [ + "include=analyticalDashboard,user", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + x_gdc_validate_relations = False # bool | (optional) if omitted the server will use the default value of False + + # example passing only required values which don't have defaults set + try: + # Get Filter view + api_response = api_instance.get_entity_filter_views(workspace_id, object_id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling WorkspaceObjectControllerApi->get_entity_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get Filter view + api_response = api_instance.get_entity_filter_views(workspace_id, object_id, filter=filter, include=include, x_gdc_validate_relations=x_gdc_validate_relations) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling WorkspaceObjectControllerApi->get_entity_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **object_id** | **str**| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + **x_gdc_validate_relations** | **bool**| | [optional] if omitted the server will use the default value of False + +### Return type + +[**JsonApiFilterViewOutDocument**](JsonApiFilterViewOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -5733,16 +6116,31 @@ with gooddata_api_client.ApiClient() as api_client: json_api_automation_patch_document = JsonApiAutomationPatchDocument( data=JsonApiAutomationPatch( attributes=JsonApiAutomationInAttributes( + alert=JsonApiAutomationInAttributesAlert( + condition=AlertCondition(), + execution=AlertAfm( + filters=[ + FilterDefinition(), + ], + measures=[ + MeasureItem( + definition=MeasureDefinition(), + local_identifier="metric_1", + ), + ], + ), + trigger="ALWAYS", + ), are_relations_valid=True, description="description_example", details=None, metadata={}, schedule=JsonApiAutomationInAttributesSchedule( cron="0 */30 9-17 ? * MON-FRI", - cron_description="cron_description_example", first_run=dateutil_parser('2025-01-01T12:00:00Z'), timezone="Europe/Prague", ), + state="ACTIVE", tags=[ "tags_example", ], @@ -5750,6 +6148,9 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiAutomationInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), export_definitions=JsonApiAutomationInRelationshipsExportDefinitions( data=JsonApiExportDefinitionToManyLinkage([ JsonApiExportDefinitionLinkage( @@ -5773,9 +6174,9 @@ with gooddata_api_client.ApiClient() as api_client: type="automation", ), ) # JsonApiAutomationPatchDocument | - filter = "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) # example passing only required values which don't have defaults set @@ -6059,7 +6460,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiExportDefinitionInRelationships( - analytical_dashboard=JsonApiExportDefinitionInRelationshipsAnalyticalDashboard( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( data=JsonApiAnalyticalDashboardToOneLinkage(None), ), visualization_object=JsonApiExportDefinitionInRelationshipsVisualizationObject( @@ -6071,7 +6472,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiExportDefinitionPatchDocument | filter = "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) # example passing only required values which don't have defaults set @@ -6216,6 +6617,114 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **patch_entity_filter_views** +> JsonApiFilterViewOutDocument patch_entity_filter_views(workspace_id, object_id, json_api_filter_view_patch_document) + +Patch Filter view + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import workspace_object_controller_api +from gooddata_api_client.model.json_api_filter_view_patch_document import JsonApiFilterViewPatchDocument +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = workspace_object_controller_api.WorkspaceObjectControllerApi(api_client) + workspace_id = "workspaceId_example" # str | + object_id = "objectId_example" # str | + json_api_filter_view_patch_document = JsonApiFilterViewPatchDocument( + data=JsonApiFilterViewPatch( + attributes=JsonApiFilterViewPatchAttributes( + are_relations_valid=True, + content={}, + description="description_example", + is_default=True, + tags=[ + "tags_example", + ], + title="title_example", + ), + id="id1", + relationships=JsonApiFilterViewInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), + user=JsonApiFilterViewInRelationshipsUser( + data=JsonApiUserToOneLinkage(None), + ), + ), + type="filterView", + ), + ) # JsonApiFilterViewPatchDocument | + filter = "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + include = [ + "include=analyticalDashboard,user", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + + # example passing only required values which don't have defaults set + try: + # Patch Filter view + api_response = api_instance.patch_entity_filter_views(workspace_id, object_id, json_api_filter_view_patch_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling WorkspaceObjectControllerApi->patch_entity_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Patch Filter view + api_response = api_instance.patch_entity_filter_views(workspace_id, object_id, json_api_filter_view_patch_document, filter=filter, include=include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling WorkspaceObjectControllerApi->patch_entity_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **object_id** | **str**| | + **json_api_filter_view_patch_document** | [**JsonApiFilterViewPatchDocument**](JsonApiFilterViewPatchDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + +### Return type + +[**JsonApiFilterViewOutDocument**](JsonApiFilterViewOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -6367,7 +6876,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiUserDataFilterInRelationships( - user=JsonApiOrganizationOutRelationshipsBootstrapUser( + user=JsonApiFilterViewInRelationshipsUser( data=JsonApiUserToOneLinkage(None), ), user_group=JsonApiOrganizationOutRelationshipsBootstrapUserGroup( @@ -7058,16 +7567,31 @@ with gooddata_api_client.ApiClient() as api_client: json_api_automation_in_document = JsonApiAutomationInDocument( data=JsonApiAutomationIn( attributes=JsonApiAutomationInAttributes( + alert=JsonApiAutomationInAttributesAlert( + condition=AlertCondition(), + execution=AlertAfm( + filters=[ + FilterDefinition(), + ], + measures=[ + MeasureItem( + definition=MeasureDefinition(), + local_identifier="metric_1", + ), + ], + ), + trigger="ALWAYS", + ), are_relations_valid=True, description="description_example", details=None, metadata={}, schedule=JsonApiAutomationInAttributesSchedule( cron="0 */30 9-17 ? * MON-FRI", - cron_description="cron_description_example", first_run=dateutil_parser('2025-01-01T12:00:00Z'), timezone="Europe/Prague", ), + state="ACTIVE", tags=[ "tags_example", ], @@ -7075,6 +7599,9 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiAutomationInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), export_definitions=JsonApiAutomationInRelationshipsExportDefinitions( data=JsonApiExportDefinitionToManyLinkage([ JsonApiExportDefinitionLinkage( @@ -7098,9 +7625,9 @@ with gooddata_api_client.ApiClient() as api_client: type="automation", ), ) # JsonApiAutomationInDocument | - filter = "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + filter = "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) # example passing only required values which don't have defaults set @@ -7384,7 +7911,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiExportDefinitionInRelationships( - analytical_dashboard=JsonApiExportDefinitionInRelationshipsAnalyticalDashboard( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( data=JsonApiAnalyticalDashboardToOneLinkage(None), ), visualization_object=JsonApiExportDefinitionInRelationshipsVisualizationObject( @@ -7396,7 +7923,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiExportDefinitionInDocument | filter = "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) include = [ - "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) # example passing only required values which don't have defaults set @@ -7541,6 +8068,114 @@ No authorization required - **Accept**: application/vnd.gooddata.api+json +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Request successfully processed | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **update_entity_filter_views** +> JsonApiFilterViewOutDocument update_entity_filter_views(workspace_id, object_id, json_api_filter_view_in_document) + +Put Filter views + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import workspace_object_controller_api +from gooddata_api_client.model.json_api_filter_view_in_document import JsonApiFilterViewInDocument +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from pprint import pprint +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = gooddata_api_client.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with gooddata_api_client.ApiClient() as api_client: + # Create an instance of the API class + api_instance = workspace_object_controller_api.WorkspaceObjectControllerApi(api_client) + workspace_id = "workspaceId_example" # str | + object_id = "objectId_example" # str | + json_api_filter_view_in_document = JsonApiFilterViewInDocument( + data=JsonApiFilterViewIn( + attributes=JsonApiFilterViewInAttributes( + are_relations_valid=True, + content={}, + description="description_example", + is_default=True, + tags=[ + "tags_example", + ], + title="title_example", + ), + id="id1", + relationships=JsonApiFilterViewInRelationships( + analytical_dashboard=JsonApiAutomationInRelationshipsAnalyticalDashboard( + data=JsonApiAnalyticalDashboardToOneLinkage(None), + ), + user=JsonApiFilterViewInRelationshipsUser( + data=JsonApiUserToOneLinkage(None), + ), + ), + type="filterView", + ), + ) # JsonApiFilterViewInDocument | + filter = "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321" # str | Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). (optional) + include = [ + "include=analyticalDashboard,user", + ] # [str] | Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. (optional) + + # example passing only required values which don't have defaults set + try: + # Put Filter views + api_response = api_instance.update_entity_filter_views(workspace_id, object_id, json_api_filter_view_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling WorkspaceObjectControllerApi->update_entity_filter_views: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Put Filter views + api_response = api_instance.update_entity_filter_views(workspace_id, object_id, json_api_filter_view_in_document, filter=filter, include=include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling WorkspaceObjectControllerApi->update_entity_filter_views: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **object_id** | **str**| | + **json_api_filter_view_in_document** | [**JsonApiFilterViewInDocument**](JsonApiFilterViewInDocument.md)| | + **filter** | **str**| Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123'). | [optional] + **include** | **[str]**| Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together. | [optional] + +### Return type + +[**JsonApiFilterViewOutDocument**](JsonApiFilterViewOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/vnd.gooddata.api+json + - **Accept**: application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -7692,7 +8327,7 @@ with gooddata_api_client.ApiClient() as api_client: ), id="id1", relationships=JsonApiUserDataFilterInRelationships( - user=JsonApiOrganizationOutRelationshipsBootstrapUser( + user=JsonApiFilterViewInRelationshipsUser( data=JsonApiUserToOneLinkage(None), ), user_group=JsonApiOrganizationOutRelationshipsBootstrapUserGroup( diff --git a/gooddata-api-client/docs/WorkspacesDeclarativeAPIsApi.md b/gooddata-api-client/docs/WorkspacesDeclarativeAPIsApi.md index e22e3ac79..caa19de11 100644 --- a/gooddata-api-client/docs/WorkspacesDeclarativeAPIsApi.md +++ b/gooddata-api-client/docs/WorkspacesDeclarativeAPIsApi.md @@ -587,11 +587,13 @@ with gooddata_api_client.ApiClient() as api_client: ], schedule=AutomationSchedule( cron="0 */30 9-17 ? * MON-FRI", - cron_description="cron_description_example", first_run=dateutil_parser('2025-01-01T12:00:00Z'), timezone="Europe/Prague", ), - tags=["Revenues"], + state="ACTIVE", + tags=[ + "["Revenue","Sales"]", + ], title="title_example", ), ], diff --git a/gooddata-api-client/gooddata_api_client/api/actions_api.py b/gooddata-api-client/gooddata_api_client/api/actions_api.py index 1a0d17e04..92709f4e7 100644 --- a/gooddata-api-client/gooddata_api_client/api/actions_api.py +++ b/gooddata-api-client/gooddata_api_client/api/actions_api.py @@ -32,6 +32,10 @@ from gooddata_api_client.model.anomaly_detection_result import AnomalyDetectionResult from gooddata_api_client.model.api_entitlement import ApiEntitlement from gooddata_api_client.model.available_assignees import AvailableAssignees +from gooddata_api_client.model.chat_history_request import ChatHistoryRequest +from gooddata_api_client.model.chat_history_result import ChatHistoryResult +from gooddata_api_client.model.chat_request import ChatRequest +from gooddata_api_client.model.chat_result import ChatResult from gooddata_api_client.model.clustering_request import ClusteringRequest from gooddata_api_client.model.clustering_result import ClusteringResult from gooddata_api_client.model.column_statistics_request import ColumnStatisticsRequest @@ -63,6 +67,8 @@ from gooddata_api_client.model.resolve_settings_request import ResolveSettingsRequest from gooddata_api_client.model.resolved_setting import ResolvedSetting from gooddata_api_client.model.result_cache_metadata import ResultCacheMetadata +from gooddata_api_client.model.route_request import RouteRequest +from gooddata_api_client.model.route_result import RouteResult from gooddata_api_client.model.scan_request import ScanRequest from gooddata_api_client.model.scan_result_pdm import ScanResultPdm from gooddata_api_client.model.scan_sql_request import ScanSqlRequest @@ -92,6 +98,195 @@ def __init__(self, api_client=None): if api_client is None: api_client = ApiClient() self.api_client = api_client + self.ai_chat_endpoint = _Endpoint( + settings={ + 'response_type': (ChatResult,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/chat', + 'operation_id': 'ai_chat', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'chat_request', + ], + 'required': [ + 'workspace_id', + 'chat_request', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'workspace_id', + ] + }, + root_map={ + 'validations': { + ('workspace_id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'chat_request': + (ChatRequest,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'chat_request': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) + self.ai_chat_history_endpoint = _Endpoint( + settings={ + 'response_type': (ChatHistoryResult,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/chatHistory', + 'operation_id': 'ai_chat_history', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'chat_history_request', + ], + 'required': [ + 'workspace_id', + 'chat_history_request', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'workspace_id', + ] + }, + root_map={ + 'validations': { + ('workspace_id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'chat_history_request': + (ChatHistoryRequest,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'chat_history_request': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) + self.ai_route_endpoint = _Endpoint( + settings={ + 'response_type': (RouteResult,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/route', + 'operation_id': 'ai_route', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'route_request', + ], + 'required': [ + 'workspace_id', + 'route_request', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'workspace_id', + ] + }, + root_map={ + 'validations': { + ('workspace_id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'route_request': + (RouteRequest,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'route_request': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) self.ai_search_endpoint = _Endpoint( settings={ 'response_type': (SearchResult,), @@ -2460,6 +2655,46 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.metadata_sync_organization_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/actions/organization/metadataSync', + 'operation_id': 'metadata_sync_organization', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + }, + 'attribute_map': { + }, + 'location_map': { + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) self.overridden_child_entities_endpoint = _Endpoint( settings={ 'response_type': ([IdentifierDuplications],), @@ -3281,22 +3516,19 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.workspace_resolve_all_settings_endpoint = _Endpoint( + self.unsubscribe_all_automations_endpoint = _Endpoint( settings={ - 'response_type': ([ResolvedSetting],), + 'response_type': None, 'auth': [], - 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/resolveSettings', - 'operation_id': 'workspace_resolve_all_settings', - 'http_method': 'GET', + 'endpoint_path': '/api/v1/actions/organization/automations/unsubscribe', + 'operation_id': 'unsubscribe_all_automations', + 'http_method': 'DELETE', 'servers': None, }, params_map={ 'all': [ - 'workspace_id', - ], - 'required': [ - 'workspace_id', ], + 'required': [], 'nullable': [ ], 'enum': [ @@ -3310,43 +3542,37 @@ def __init__(self, api_client=None): 'allowed_values': { }, 'openapi_types': { - 'workspace_id': - (str,), }, 'attribute_map': { - 'workspace_id': 'workspaceId', }, 'location_map': { - 'workspace_id': 'path', }, 'collection_format_map': { } }, headers_map={ - 'accept': [ - 'application/json' - ], + 'accept': [], 'content_type': [], }, api_client=api_client ) - self.workspace_resolve_settings_endpoint = _Endpoint( + self.unsubscribe_automation_endpoint = _Endpoint( settings={ - 'response_type': ([ResolvedSetting],), + 'response_type': None, 'auth': [], - 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/resolveSettings', - 'operation_id': 'workspace_resolve_settings', - 'http_method': 'POST', + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/automations/{automationId}/unsubscribe', + 'operation_id': 'unsubscribe_automation', + 'http_method': 'DELETE', 'servers': None, }, params_map={ 'all': [ 'workspace_id', - 'resolve_settings_request', + 'automation_id', ], 'required': [ 'workspace_id', - 'resolve_settings_request', + 'automation_id', ], 'nullable': [ ], @@ -3363,47 +3589,457 @@ def __init__(self, api_client=None): 'openapi_types': { 'workspace_id': (str,), - 'resolve_settings_request': - (ResolveSettingsRequest,), + 'automation_id': + (str,), }, 'attribute_map': { 'workspace_id': 'workspaceId', + 'automation_id': 'automationId', }, 'location_map': { 'workspace_id': 'path', - 'resolve_settings_request': 'body', + 'automation_id': 'path', }, 'collection_format_map': { } }, headers_map={ - 'accept': [ - 'application/json' - ], - 'content_type': [ - 'application/json' - ] + 'accept': [], + 'content_type': [], }, api_client=api_client ) - - def ai_search( - self, - workspace_id, - search_request, - **kwargs - ): - """(BETA) Semantic Search in Metadata # noqa: E501 - - (BETA) Uses similarity (e.g. cosine distance) search to find top X most similar metadata objects. # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - - >>> thread = api.ai_search(workspace_id, search_request, async_req=True) - >>> result = thread.get() - - Args: - workspace_id (str): Workspace identifier + self.unsubscribe_workspace_automations_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/automations/unsubscribe', + 'operation_id': 'unsubscribe_workspace_automations', + 'http_method': 'DELETE', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + ], + 'required': [ + 'workspace_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) + self.workspace_resolve_all_settings_endpoint = _Endpoint( + settings={ + 'response_type': ([ResolvedSetting],), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/resolveSettings', + 'operation_id': 'workspace_resolve_all_settings', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + ], + 'required': [ + 'workspace_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.workspace_resolve_settings_endpoint = _Endpoint( + settings={ + 'response_type': ([ResolvedSetting],), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/resolveSettings', + 'operation_id': 'workspace_resolve_settings', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'resolve_settings_request', + ], + 'required': [ + 'workspace_id', + 'resolve_settings_request', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'resolve_settings_request': + (ResolveSettingsRequest,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'resolve_settings_request': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) + + def ai_chat( + self, + workspace_id, + chat_request, + **kwargs + ): + """(BETA) Chat with AI # noqa: E501 + + (BETA) Combines multiple use cases such as search, create visualizations, ... # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.ai_chat(workspace_id, chat_request, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): Workspace identifier + chat_request (ChatRequest): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + ChatResult + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['chat_request'] = \ + chat_request + return self.ai_chat_endpoint.call_with_http_info(**kwargs) + + def ai_chat_history( + self, + workspace_id, + chat_history_request, + **kwargs + ): + """(BETA) Get Chat History # noqa: E501 + + (BETA) Post thread ID (and optionally interaction ID) to get full/partial chat history. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.ai_chat_history(workspace_id, chat_history_request, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): Workspace identifier + chat_history_request (ChatHistoryRequest): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + ChatHistoryResult + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['chat_history_request'] = \ + chat_history_request + return self.ai_chat_history_endpoint.call_with_http_info(**kwargs) + + def ai_route( + self, + workspace_id, + route_request, + **kwargs + ): + """(BETA) Route to supported use cases based on this input query. # noqa: E501 + + (BETA) Uses similarity (e.g. cosine distance) to find most similar use cases. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.ai_route(workspace_id, route_request, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): Workspace identifier + route_request (RouteRequest): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + RouteResult + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['route_request'] = \ + route_request + return self.ai_route_endpoint.call_with_http_info(**kwargs) + + def ai_search( + self, + workspace_id, + search_request, + **kwargs + ): + """(BETA) Semantic Search in Metadata # noqa: E501 + + (BETA) Uses similarity (e.g. cosine distance) search to find top X most similar metadata objects. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.ai_search(workspace_id, search_request, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): Workspace identifier search_request (SearchRequest): Keyword Args: @@ -6600,24 +7236,109 @@ def manage_organization_permissions( organization_permission_assignment return self.manage_organization_permissions_endpoint.call_with_http_info(**kwargs) - def manage_workspace_permissions( + def manage_workspace_permissions( + self, + workspace_id, + workspace_permission_assignment, + **kwargs + ): + """Manage Permissions for a Workspace # noqa: E501 + + Manage Permissions for a Workspace and its Workspace Hierarchy # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.manage_workspace_permissions(workspace_id, workspace_permission_assignment, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + workspace_permission_assignment ([WorkspacePermissionAssignment]): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['workspace_permission_assignment'] = \ + workspace_permission_assignment + return self.manage_workspace_permissions_endpoint.call_with_http_info(**kwargs) + + def metadata_sync( self, workspace_id, - workspace_permission_assignment, **kwargs ): - """Manage Permissions for a Workspace # noqa: E501 + """(BETA) Sync Metadata to other services # noqa: E501 - Manage Permissions for a Workspace and its Workspace Hierarchy # noqa: E501 + (BETA) Temporary solution. Later relevant metadata actions will trigger it in its scope only. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.manage_workspace_permissions(workspace_id, workspace_permission_assignment, async_req=True) + >>> thread = api.metadata_sync(workspace_id, async_req=True) >>> result = thread.get() Args: workspace_id (str): - workspace_permission_assignment ([WorkspacePermissionAssignment]): Keyword Args: _return_http_data_only (bool): response data without head status @@ -6683,26 +7404,21 @@ def manage_workspace_permissions( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['workspace_id'] = \ workspace_id - kwargs['workspace_permission_assignment'] = \ - workspace_permission_assignment - return self.manage_workspace_permissions_endpoint.call_with_http_info(**kwargs) + return self.metadata_sync_endpoint.call_with_http_info(**kwargs) - def metadata_sync( + def metadata_sync_organization( self, - workspace_id, **kwargs ): - """(BETA) Sync Metadata to AI services # noqa: E501 + """(BETA) Sync organization scope Metadata to other services # noqa: E501 - (BETA) Temporary solution. Later relevant metadata actions will trigger it in its scope only. # noqa: E501 + (BETA) Temporary solution. Later relevant metadata actions will trigger sync in their scope only. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.metadata_sync(workspace_id, async_req=True) + >>> thread = api.metadata_sync_organization(async_req=True) >>> result = thread.get() - Args: - workspace_id (str): Keyword Args: _return_http_data_only (bool): response data without head status @@ -6766,9 +7482,7 @@ def metadata_sync( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['workspace_id'] = \ - workspace_id - return self.metadata_sync_endpoint.call_with_http_info(**kwargs) + return self.metadata_sync_organization_endpoint.call_with_http_info(**kwargs) def overridden_child_entities( self, @@ -8036,6 +8750,251 @@ def test_data_source_definition( test_definition_request return self.test_data_source_definition_endpoint.call_with_http_info(**kwargs) + def unsubscribe_all_automations( + self, + **kwargs + ): + """Unsubscribe from all automations in all workspaces # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.unsubscribe_all_automations(async_req=True) + >>> result = thread.get() + + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + return self.unsubscribe_all_automations_endpoint.call_with_http_info(**kwargs) + + def unsubscribe_automation( + self, + workspace_id, + automation_id, + **kwargs + ): + """Unsubscribe from an automation # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.unsubscribe_automation(workspace_id, automation_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + automation_id (str): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['automation_id'] = \ + automation_id + return self.unsubscribe_automation_endpoint.call_with_http_info(**kwargs) + + def unsubscribe_workspace_automations( + self, + workspace_id, + **kwargs + ): + """Unsubscribe from all automations in the workspace # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.unsubscribe_workspace_automations(workspace_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + return self.unsubscribe_workspace_automations_endpoint.call_with_http_info(**kwargs) + def workspace_resolve_all_settings( self, workspace_id, diff --git a/gooddata-api-client/gooddata_api_client/api/ai_api.py b/gooddata-api-client/gooddata_api_client/api/ai_api.py index 33351ffb6..bbc3d0d37 100644 --- a/gooddata-api-client/gooddata_api_client/api/ai_api.py +++ b/gooddata-api-client/gooddata_api_client/api/ai_api.py @@ -82,13 +82,53 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.metadata_sync_organization_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/actions/organization/metadataSync', + 'operation_id': 'metadata_sync_organization', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + }, + 'attribute_map': { + }, + 'location_map': { + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) def metadata_sync( self, workspace_id, **kwargs ): - """(BETA) Sync Metadata to AI services # noqa: E501 + """(BETA) Sync Metadata to other services # noqa: E501 (BETA) Temporary solution. Later relevant metadata actions will trigger it in its scope only. # noqa: E501 This method makes a synchronous HTTP request by default. To make an @@ -166,3 +206,81 @@ def metadata_sync( workspace_id return self.metadata_sync_endpoint.call_with_http_info(**kwargs) + def metadata_sync_organization( + self, + **kwargs + ): + """(BETA) Sync organization scope Metadata to other services # noqa: E501 + + (BETA) Temporary solution. Later relevant metadata actions will trigger sync in their scope only. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.metadata_sync_organization(async_req=True) + >>> result = thread.get() + + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + return self.metadata_sync_organization_endpoint.call_with_http_info(**kwargs) + diff --git a/gooddata-api-client/gooddata_api_client/api/automations_api.py b/gooddata-api-client/gooddata_api_client/api/automations_api.py index 03e156e8c..2b0cc0209 100644 --- a/gooddata-api-client/gooddata_api_client/api/automations_api.py +++ b/gooddata-api-client/gooddata_api_client/api/automations_api.py @@ -22,6 +22,7 @@ none_type, validate_and_convert_types ) +from gooddata_api_client.model.declarative_automation import DeclarativeAutomation from gooddata_api_client.model.json_api_automation_in_document import JsonApiAutomationInDocument from gooddata_api_client.model.json_api_automation_out_document import JsonApiAutomationOutDocument from gooddata_api_client.model.json_api_automation_out_list import JsonApiAutomationOutList @@ -79,10 +80,12 @@ def __init__(self, api_client=None): ('include',): { "NOTIFICATIONCHANNELS": "notificationChannels", + "ANALYTICALDASHBOARDS": "analyticalDashboards", "USERIDENTIFIERS": "userIdentifiers", "EXPORTDEFINITIONS": "exportDefinitions", "USERS": "users", "NOTIFICATIONCHANNEL": "notificationChannel", + "ANALYTICALDASHBOARD": "analyticalDashboard", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "RECIPIENTS": "recipients", @@ -240,10 +243,12 @@ def __init__(self, api_client=None): ('include',): { "NOTIFICATIONCHANNELS": "notificationChannels", + "ANALYTICALDASHBOARDS": "analyticalDashboards", "USERIDENTIFIERS": "userIdentifiers", "EXPORTDEFINITIONS": "exportDefinitions", "USERS": "users", "NOTIFICATIONCHANNEL": "notificationChannel", + "ANALYTICALDASHBOARD": "analyticalDashboard", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "RECIPIENTS": "recipients", @@ -313,6 +318,66 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.get_automations_endpoint = _Endpoint( + settings={ + 'response_type': ([DeclarativeAutomation],), + 'auth': [], + 'endpoint_path': '/api/v1/layout/workspaces/{workspaceId}/automations', + 'operation_id': 'get_automations', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'exclude', + ], + 'required': [ + 'workspace_id', + ], + 'nullable': [ + ], + 'enum': [ + 'exclude', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('exclude',): { + + "ACTIVITY_INFO": "ACTIVITY_INFO" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'exclude': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'exclude': 'exclude', + }, + 'location_map': { + 'workspace_id': 'path', + 'exclude': 'query', + }, + 'collection_format_map': { + 'exclude': 'multi', + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client + ) self.get_entity_automations_endpoint = _Endpoint( settings={ 'response_type': (JsonApiAutomationOutDocument,), @@ -355,10 +420,12 @@ def __init__(self, api_client=None): ('include',): { "NOTIFICATIONCHANNELS": "notificationChannels", + "ANALYTICALDASHBOARDS": "analyticalDashboards", "USERIDENTIFIERS": "userIdentifiers", "EXPORTDEFINITIONS": "exportDefinitions", "USERS": "users", "NOTIFICATIONCHANNEL": "notificationChannel", + "ANALYTICALDASHBOARD": "analyticalDashboard", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "RECIPIENTS": "recipients", @@ -451,10 +518,12 @@ def __init__(self, api_client=None): ('include',): { "NOTIFICATIONCHANNELS": "notificationChannels", + "ANALYTICALDASHBOARDS": "analyticalDashboards", "USERIDENTIFIERS": "userIdentifiers", "EXPORTDEFINITIONS": "exportDefinitions", "USERS": "users", "NOTIFICATIONCHANNEL": "notificationChannel", + "ANALYTICALDASHBOARD": "analyticalDashboard", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "RECIPIENTS": "recipients", @@ -500,6 +569,60 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.set_automations_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/layout/workspaces/{workspaceId}/automations', + 'operation_id': 'set_automations', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'declarative_automation', + ], + 'required': [ + 'workspace_id', + 'declarative_automation', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'declarative_automation': + ([DeclarativeAutomation],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'declarative_automation': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) self.update_entity_automations_endpoint = _Endpoint( settings={ 'response_type': (JsonApiAutomationOutDocument,), @@ -537,10 +660,12 @@ def __init__(self, api_client=None): ('include',): { "NOTIFICATIONCHANNELS": "notificationChannels", + "ANALYTICALDASHBOARDS": "analyticalDashboards", "USERIDENTIFIERS": "userIdentifiers", "EXPORTDEFINITIONS": "exportDefinitions", "USERS": "users", "NOTIFICATIONCHANNEL": "notificationChannel", + "ANALYTICALDASHBOARD": "analyticalDashboard", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "RECIPIENTS": "recipients", @@ -852,6 +977,90 @@ def get_all_entities_automations( workspace_id return self.get_all_entities_automations_endpoint.call_with_http_info(**kwargs) + def get_automations( + self, + workspace_id, + **kwargs + ): + """Get automations # noqa: E501 + + Retrieve automations for the specific workspace # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_automations(workspace_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + + Keyword Args: + exclude ([str]): [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + [DeclarativeAutomation] + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + return self.get_automations_endpoint.call_with_http_info(**kwargs) + def get_entity_automations( self, workspace_id, @@ -1034,6 +1243,93 @@ def patch_entity_automations( json_api_automation_patch_document return self.patch_entity_automations_endpoint.call_with_http_info(**kwargs) + def set_automations( + self, + workspace_id, + declarative_automation, + **kwargs + ): + """Set automations # noqa: E501 + + Set automations for the specific workspace. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.set_automations(workspace_id, declarative_automation, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + declarative_automation ([DeclarativeAutomation]): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['declarative_automation'] = \ + declarative_automation + return self.set_automations_endpoint.call_with_http_info(**kwargs) + def update_entity_automations( self, workspace_id, diff --git a/gooddata-api-client/gooddata_api_client/api/entities_api.py b/gooddata-api-client/gooddata_api_client/api/entities_api.py index 9db1c5fe6..63deec780 100644 --- a/gooddata-api-client/gooddata_api_client/api/entities_api.py +++ b/gooddata-api-client/gooddata_api_client/api/entities_api.py @@ -83,12 +83,24 @@ from gooddata_api_client.model.json_api_filter_context_out_list import JsonApiFilterContextOutList from gooddata_api_client.model.json_api_filter_context_patch_document import JsonApiFilterContextPatchDocument from gooddata_api_client.model.json_api_filter_context_post_optional_id_document import JsonApiFilterContextPostOptionalIdDocument +from gooddata_api_client.model.json_api_filter_view_in_document import JsonApiFilterViewInDocument +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from gooddata_api_client.model.json_api_filter_view_out_list import JsonApiFilterViewOutList +from gooddata_api_client.model.json_api_filter_view_patch_document import JsonApiFilterViewPatchDocument +from gooddata_api_client.model.json_api_identity_provider_in_document import JsonApiIdentityProviderInDocument +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument +from gooddata_api_client.model.json_api_identity_provider_out_list import JsonApiIdentityProviderOutList +from gooddata_api_client.model.json_api_identity_provider_patch_document import JsonApiIdentityProviderPatchDocument from gooddata_api_client.model.json_api_jwk_in_document import JsonApiJwkInDocument from gooddata_api_client.model.json_api_jwk_out_document import JsonApiJwkOutDocument from gooddata_api_client.model.json_api_jwk_out_list import JsonApiJwkOutList from gooddata_api_client.model.json_api_jwk_patch_document import JsonApiJwkPatchDocument from gooddata_api_client.model.json_api_label_out_document import JsonApiLabelOutDocument from gooddata_api_client.model.json_api_label_out_list import JsonApiLabelOutList +from gooddata_api_client.model.json_api_llm_endpoint_in_document import JsonApiLlmEndpointInDocument +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument +from gooddata_api_client.model.json_api_llm_endpoint_out_list import JsonApiLlmEndpointOutList +from gooddata_api_client.model.json_api_llm_endpoint_patch_document import JsonApiLlmEndpointPatchDocument from gooddata_api_client.model.json_api_metric_in_document import JsonApiMetricInDocument from gooddata_api_client.model.json_api_metric_out_document import JsonApiMetricOutDocument from gooddata_api_client.model.json_api_metric_out_list import JsonApiMetricOutList @@ -443,10 +455,12 @@ def __init__(self, api_client=None): ('include',): { "NOTIFICATIONCHANNELS": "notificationChannels", + "ANALYTICALDASHBOARDS": "analyticalDashboards", "USERIDENTIFIERS": "userIdentifiers", "EXPORTDEFINITIONS": "exportDefinitions", "USERS": "users", "NOTIFICATIONCHANNEL": "notificationChannel", + "ANALYTICALDASHBOARD": "analyticalDashboard", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "RECIPIENTS": "recipients", @@ -863,9 +877,11 @@ def __init__(self, api_client=None): "VISUALIZATIONOBJECTS": "visualizationObjects", "ANALYTICALDASHBOARDS": "analyticalDashboards", + "AUTOMATIONS": "automations", "USERIDENTIFIERS": "userIdentifiers", "VISUALIZATIONOBJECT": "visualizationObject", "ANALYTICALDASHBOARD": "analyticalDashboard", + "AUTOMATION": "automation", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "ALL": "ALL" @@ -1000,6 +1016,127 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.create_entity_filter_views_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiFilterViewOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews', + 'operation_id': 'create_entity_filter_views', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'json_api_filter_view_in_document', + 'include', + ], + 'required': [ + 'workspace_id', + 'json_api_filter_view_in_document', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('include',): { + + "ANALYTICALDASHBOARDS": "analyticalDashboards", + "USERS": "users", + "ANALYTICALDASHBOARD": "analyticalDashboard", + "USER": "user", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'json_api_filter_view_in_document': + (JsonApiFilterViewInDocument,), + 'include': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'include': 'include', + }, + 'location_map': { + 'workspace_id': 'path', + 'json_api_filter_view_in_document': 'body', + 'include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.create_entity_identity_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiIdentityProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/identityProviders', + 'operation_id': 'create_entity_identity_providers', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'json_api_identity_provider_in_document', + ], + 'required': [ + 'json_api_identity_provider_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'json_api_identity_provider_in_document': + (JsonApiIdentityProviderInDocument,), + }, + 'attribute_map': { + }, + 'location_map': { + 'json_api_identity_provider_in_document': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) self.create_entity_jwks_endpoint = _Endpoint( settings={ 'response_type': (JsonApiJwkOutDocument,), @@ -1050,6 +1187,56 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.create_entity_llm_endpoints_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmEndpointOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmEndpoints', + 'operation_id': 'create_entity_llm_endpoints', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'json_api_llm_endpoint_in_document', + ], + 'required': [ + 'json_api_llm_endpoint_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'json_api_llm_endpoint_in_document': + (JsonApiLlmEndpointInDocument,), + }, + 'attribute_map': { + }, + 'location_map': { + 'json_api_llm_endpoint_in_document': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) self.create_entity_metrics_endpoint = _Endpoint( settings={ 'response_type': (JsonApiMetricOutDocument,), @@ -2634,71 +2821,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.delete_entity_jwks_endpoint = _Endpoint( - settings={ - 'response_type': None, - 'auth': [], - 'endpoint_path': '/api/v1/entities/jwks/{id}', - 'operation_id': 'delete_entity_jwks', - 'http_method': 'DELETE', - 'servers': None, - }, - params_map={ - 'all': [ - 'id', - 'filter', - ], - 'required': [ - 'id', - ], - 'nullable': [ - ], - 'enum': [ - ], - 'validation': [ - 'id', - ] - }, - root_map={ - 'validations': { - ('id',): { - - 'regex': { - 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 - }, - }, - }, - 'allowed_values': { - }, - 'openapi_types': { - 'id': - (str,), - 'filter': - (str,), - }, - 'attribute_map': { - 'id': 'id', - 'filter': 'filter', - }, - 'location_map': { - 'id': 'path', - 'filter': 'query', - }, - 'collection_format_map': { - } - }, - headers_map={ - 'accept': [], - 'content_type': [], - }, - api_client=api_client - ) - self.delete_entity_metrics_endpoint = _Endpoint( + self.delete_entity_filter_views_endpoint = _Endpoint( settings={ 'response_type': None, 'auth': [], - 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/metrics/{objectId}', - 'operation_id': 'delete_entity_metrics', + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId}', + 'operation_id': 'delete_entity_filter_views', 'http_method': 'DELETE', 'servers': None, }, @@ -2751,12 +2879,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.delete_entity_notification_channels_endpoint = _Endpoint( + self.delete_entity_identity_providers_endpoint = _Endpoint( settings={ 'response_type': None, 'auth': [], - 'endpoint_path': '/api/v1/entities/notificationChannels/{id}', - 'operation_id': 'delete_entity_notification_channels', + 'endpoint_path': '/api/v1/entities/identityProviders/{id}', + 'operation_id': 'delete_entity_identity_providers', 'http_method': 'DELETE', 'servers': None, }, @@ -2810,12 +2938,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.delete_entity_organization_settings_endpoint = _Endpoint( + self.delete_entity_jwks_endpoint = _Endpoint( settings={ 'response_type': None, 'auth': [], - 'endpoint_path': '/api/v1/entities/organizationSettings/{id}', - 'operation_id': 'delete_entity_organization_settings', + 'endpoint_path': '/api/v1/entities/jwks/{id}', + 'operation_id': 'delete_entity_jwks', 'http_method': 'DELETE', 'servers': None, }, @@ -2869,12 +2997,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.delete_entity_themes_endpoint = _Endpoint( + self.delete_entity_llm_endpoints_endpoint = _Endpoint( settings={ 'response_type': None, 'auth': [], - 'endpoint_path': '/api/v1/entities/themes/{id}', - 'operation_id': 'delete_entity_themes', + 'endpoint_path': '/api/v1/entities/llmEndpoints/{id}', + 'operation_id': 'delete_entity_llm_endpoints', 'http_method': 'DELETE', 'servers': None, }, @@ -2928,12 +3056,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.delete_entity_user_data_filters_endpoint = _Endpoint( + self.delete_entity_metrics_endpoint = _Endpoint( settings={ 'response_type': None, 'auth': [], - 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/userDataFilters/{objectId}', - 'operation_id': 'delete_entity_user_data_filters', + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/metrics/{objectId}', + 'operation_id': 'delete_entity_metrics', 'http_method': 'DELETE', 'servers': None, }, @@ -2986,12 +3114,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.delete_entity_user_groups_endpoint = _Endpoint( + self.delete_entity_notification_channels_endpoint = _Endpoint( settings={ 'response_type': None, 'auth': [], - 'endpoint_path': '/api/v1/entities/userGroups/{id}', - 'operation_id': 'delete_entity_user_groups', + 'endpoint_path': '/api/v1/entities/notificationChannels/{id}', + 'operation_id': 'delete_entity_notification_channels', 'http_method': 'DELETE', 'servers': None, }, @@ -3045,23 +3173,21 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.delete_entity_user_settings_endpoint = _Endpoint( + self.delete_entity_organization_settings_endpoint = _Endpoint( settings={ 'response_type': None, 'auth': [], - 'endpoint_path': '/api/v1/entities/users/{userId}/userSettings/{id}', - 'operation_id': 'delete_entity_user_settings', + 'endpoint_path': '/api/v1/entities/organizationSettings/{id}', + 'operation_id': 'delete_entity_organization_settings', 'http_method': 'DELETE', 'servers': None, }, params_map={ 'all': [ - 'user_id', 'id', 'filter', ], 'required': [ - 'user_id', 'id', ], 'nullable': [ @@ -3084,20 +3210,16 @@ def __init__(self, api_client=None): 'allowed_values': { }, 'openapi_types': { - 'user_id': - (str,), 'id': (str,), 'filter': (str,), }, 'attribute_map': { - 'user_id': 'userId', 'id': 'id', 'filter': 'filter', }, 'location_map': { - 'user_id': 'path', 'id': 'path', 'filter': 'query', }, @@ -3110,12 +3232,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.delete_entity_users_endpoint = _Endpoint( + self.delete_entity_themes_endpoint = _Endpoint( settings={ 'response_type': None, 'auth': [], - 'endpoint_path': '/api/v1/entities/users/{id}', - 'operation_id': 'delete_entity_users', + 'endpoint_path': '/api/v1/entities/themes/{id}', + 'operation_id': 'delete_entity_themes', 'http_method': 'DELETE', 'servers': None, }, @@ -3169,12 +3291,253 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.delete_entity_visualization_objects_endpoint = _Endpoint( + self.delete_entity_user_data_filters_endpoint = _Endpoint( settings={ 'response_type': None, 'auth': [], - 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/visualizationObjects/{objectId}', - 'operation_id': 'delete_entity_visualization_objects', + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/userDataFilters/{objectId}', + 'operation_id': 'delete_entity_user_data_filters', + 'http_method': 'DELETE', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'object_id', + 'filter', + ], + 'required': [ + 'workspace_id', + 'object_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'object_id': + (str,), + 'filter': + (str,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'object_id': 'objectId', + 'filter': 'filter', + }, + 'location_map': { + 'workspace_id': 'path', + 'object_id': 'path', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) + self.delete_entity_user_groups_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/entities/userGroups/{id}', + 'operation_id': 'delete_entity_user_groups', + 'http_method': 'DELETE', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'filter', + ], + 'required': [ + 'id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) + self.delete_entity_user_settings_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/entities/users/{userId}/userSettings/{id}', + 'operation_id': 'delete_entity_user_settings', + 'http_method': 'DELETE', + 'servers': None, + }, + params_map={ + 'all': [ + 'user_id', + 'id', + 'filter', + ], + 'required': [ + 'user_id', + 'id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'user_id': + (str,), + 'id': + (str,), + 'filter': + (str,), + }, + 'attribute_map': { + 'user_id': 'userId', + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'user_id': 'path', + 'id': 'path', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) + self.delete_entity_users_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/entities/users/{id}', + 'operation_id': 'delete_entity_users', + 'http_method': 'DELETE', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'filter', + ], + 'required': [ + 'id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) + self.delete_entity_visualization_objects_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/visualizationObjects/{objectId}', + 'operation_id': 'delete_entity_visualization_objects', 'http_method': 'DELETE', 'servers': None, }, @@ -3967,10 +4330,12 @@ def __init__(self, api_client=None): ('include',): { "NOTIFICATIONCHANNELS": "notificationChannels", + "ANALYTICALDASHBOARDS": "analyticalDashboards", "USERIDENTIFIERS": "userIdentifiers", "EXPORTDEFINITIONS": "exportDefinitions", "USERS": "users", "NOTIFICATIONCHANNEL": "notificationChannel", + "ANALYTICALDASHBOARD": "analyticalDashboard", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "RECIPIENTS": "recipients", @@ -4839,9 +5204,11 @@ def __init__(self, api_client=None): "VISUALIZATIONOBJECTS": "visualizationObjects", "ANALYTICALDASHBOARDS": "analyticalDashboards", + "AUTOMATIONS": "automations", "USERIDENTIFIERS": "userIdentifiers", "VISUALIZATIONOBJECT": "visualizationObject", "ANALYTICALDASHBOARD": "analyticalDashboard", + "AUTOMATION": "automation", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "ALL": "ALL" @@ -5147,28 +5514,227 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_all_entities_jwks_endpoint = _Endpoint( + self.get_all_entities_filter_views_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiJwkOutList,), + 'response_type': (JsonApiFilterViewOutList,), 'auth': [], - 'endpoint_path': '/api/v1/entities/jwks', - 'operation_id': 'get_all_entities_jwks', + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews', + 'operation_id': 'get_all_entities_filter_views', 'http_method': 'GET', 'servers': None, }, params_map={ 'all': [ + 'workspace_id', + 'origin', 'filter', + 'include', 'page', 'size', 'sort', + 'x_gdc_validate_relations', 'meta_include', ], - 'required': [], + 'required': [ + 'workspace_id', + ], 'nullable': [ ], 'enum': [ - 'meta_include', + 'origin', + 'include', + 'meta_include', + ], + 'validation': [ + 'meta_include', + ] + }, + root_map={ + 'validations': { + ('meta_include',): { + + }, + }, + 'allowed_values': { + ('origin',): { + + "ALL": "ALL", + "PARENTS": "PARENTS", + "NATIVE": "NATIVE" + }, + ('include',): { + + "ANALYTICALDASHBOARDS": "analyticalDashboards", + "USERS": "users", + "ANALYTICALDASHBOARD": "analyticalDashboard", + "USER": "user", + "ALL": "ALL" + }, + ('meta_include',): { + + "PAGE": "page", + "ALL": "all", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'origin': + (str,), + 'filter': + (str,), + 'include': + ([str],), + 'page': + (int,), + 'size': + (int,), + 'sort': + ([str],), + 'x_gdc_validate_relations': + (bool,), + 'meta_include': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'origin': 'origin', + 'filter': 'filter', + 'include': 'include', + 'page': 'page', + 'size': 'size', + 'sort': 'sort', + 'x_gdc_validate_relations': 'X-GDC-VALIDATE-RELATIONS', + 'meta_include': 'metaInclude', + }, + 'location_map': { + 'workspace_id': 'path', + 'origin': 'query', + 'filter': 'query', + 'include': 'query', + 'page': 'query', + 'size': 'query', + 'sort': 'query', + 'x_gdc_validate_relations': 'header', + 'meta_include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + 'sort': 'multi', + 'meta_include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.get_all_entities_identity_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiIdentityProviderOutList,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/identityProviders', + 'operation_id': 'get_all_entities_identity_providers', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'filter', + 'page', + 'size', + 'sort', + 'meta_include', + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + 'meta_include', + ], + 'validation': [ + 'meta_include', + ] + }, + root_map={ + 'validations': { + ('meta_include',): { + + }, + }, + 'allowed_values': { + ('meta_include',): { + + "PAGE": "page", + "ALL": "all", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'filter': + (str,), + 'page': + (int,), + 'size': + (int,), + 'sort': + ([str],), + 'meta_include': + ([str],), + }, + 'attribute_map': { + 'filter': 'filter', + 'page': 'page', + 'size': 'size', + 'sort': 'sort', + 'meta_include': 'metaInclude', + }, + 'location_map': { + 'filter': 'query', + 'page': 'query', + 'size': 'query', + 'sort': 'query', + 'meta_include': 'query', + }, + 'collection_format_map': { + 'sort': 'multi', + 'meta_include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.get_all_entities_jwks_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiJwkOutList,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/jwks', + 'operation_id': 'get_all_entities_jwks', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'filter', + 'page', + 'size', + 'sort', + 'meta_include', + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + 'meta_include', ], 'validation': [ 'meta_include', @@ -5345,6 +5911,86 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.get_all_entities_llm_endpoints_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmEndpointOutList,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmEndpoints', + 'operation_id': 'get_all_entities_llm_endpoints', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'filter', + 'page', + 'size', + 'sort', + 'meta_include', + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + 'meta_include', + ], + 'validation': [ + 'meta_include', + ] + }, + root_map={ + 'validations': { + ('meta_include',): { + + }, + }, + 'allowed_values': { + ('meta_include',): { + + "PAGE": "page", + "ALL": "all", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'filter': + (str,), + 'page': + (int,), + 'size': + (int,), + 'sort': + ([str],), + 'meta_include': + ([str],), + }, + 'attribute_map': { + 'filter': 'filter', + 'page': 'page', + 'size': 'size', + 'sort': 'sort', + 'meta_include': 'metaInclude', + }, + 'location_map': { + 'filter': 'query', + 'page': 'query', + 'size': 'query', + 'sort': 'query', + 'meta_include': 'query', + }, + 'collection_format_map': { + 'sort': 'multi', + 'meta_include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) self.get_all_entities_metrics_endpoint = _Endpoint( settings={ 'response_type': (JsonApiMetricOutList,), @@ -7241,10 +7887,12 @@ def __init__(self, api_client=None): ('include',): { "NOTIFICATIONCHANNELS": "notificationChannels", + "ANALYTICALDASHBOARDS": "analyticalDashboards", "USERIDENTIFIERS": "userIdentifiers", "EXPORTDEFINITIONS": "exportDefinitions", "USERS": "users", "NOTIFICATIONCHANNEL": "notificationChannel", + "ANALYTICALDASHBOARD": "analyticalDashboard", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "RECIPIENTS": "recipients", @@ -8019,9 +8667,11 @@ def __init__(self, api_client=None): "VISUALIZATIONOBJECTS": "visualizationObjects", "ANALYTICALDASHBOARDS": "analyticalDashboards", + "AUTOMATIONS": "automations", "USERIDENTIFIERS": "userIdentifiers", "VISUALIZATIONOBJECT": "visualizationObject", "ANALYTICALDASHBOARD": "analyticalDashboard", + "AUTOMATION": "automation", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "ALL": "ALL" @@ -8267,6 +8917,147 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.get_entity_filter_views_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiFilterViewOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId}', + 'operation_id': 'get_entity_filter_views', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'object_id', + 'filter', + 'include', + 'x_gdc_validate_relations', + ], + 'required': [ + 'workspace_id', + 'object_id', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('include',): { + + "ANALYTICALDASHBOARDS": "analyticalDashboards", + "USERS": "users", + "ANALYTICALDASHBOARD": "analyticalDashboard", + "USER": "user", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'object_id': + (str,), + 'filter': + (str,), + 'include': + ([str],), + 'x_gdc_validate_relations': + (bool,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'object_id': 'objectId', + 'filter': 'filter', + 'include': 'include', + 'x_gdc_validate_relations': 'X-GDC-VALIDATE-RELATIONS', + }, + 'location_map': { + 'workspace_id': 'path', + 'object_id': 'path', + 'filter': 'query', + 'include': 'query', + 'x_gdc_validate_relations': 'header', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.get_entity_identity_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiIdentityProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/identityProviders/{id}', + 'operation_id': 'get_entity_identity_providers', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'filter', + ], + 'required': [ + 'id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) self.get_entity_jwks_endpoint = _Endpoint( settings={ 'response_type': (JsonApiJwkOutDocument,), @@ -8347,72 +9138,133 @@ def __init__(self, api_client=None): 'meta_include', ], 'required': [ - 'workspace_id', - 'object_id', + 'workspace_id', + 'object_id', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + 'meta_include', + ], + 'validation': [ + 'meta_include', + ] + }, + root_map={ + 'validations': { + ('meta_include',): { + + }, + }, + 'allowed_values': { + ('include',): { + + "ATTRIBUTES": "attributes", + "ATTRIBUTE": "attribute", + "ALL": "ALL" + }, + ('meta_include',): { + + "ORIGIN": "origin", + "ALL": "all", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'object_id': + (str,), + 'filter': + (str,), + 'include': + ([str],), + 'x_gdc_validate_relations': + (bool,), + 'meta_include': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'object_id': 'objectId', + 'filter': 'filter', + 'include': 'include', + 'x_gdc_validate_relations': 'X-GDC-VALIDATE-RELATIONS', + 'meta_include': 'metaInclude', + }, + 'location_map': { + 'workspace_id': 'path', + 'object_id': 'path', + 'filter': 'query', + 'include': 'query', + 'x_gdc_validate_relations': 'header', + 'meta_include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + 'meta_include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.get_entity_llm_endpoints_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmEndpointOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmEndpoints/{id}', + 'operation_id': 'get_entity_llm_endpoints', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'filter', + ], + 'required': [ + 'id', ], 'nullable': [ ], 'enum': [ - 'include', - 'meta_include', ], 'validation': [ - 'meta_include', + 'id', ] }, root_map={ 'validations': { - ('meta_include',): { + ('id',): { + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, }, }, 'allowed_values': { - ('include',): { - - "ATTRIBUTES": "attributes", - "ATTRIBUTE": "attribute", - "ALL": "ALL" - }, - ('meta_include',): { - - "ORIGIN": "origin", - "ALL": "all", - "ALL": "ALL" - }, }, 'openapi_types': { - 'workspace_id': - (str,), - 'object_id': + 'id': (str,), 'filter': (str,), - 'include': - ([str],), - 'x_gdc_validate_relations': - (bool,), - 'meta_include': - ([str],), }, 'attribute_map': { - 'workspace_id': 'workspaceId', - 'object_id': 'objectId', + 'id': 'id', 'filter': 'filter', - 'include': 'include', - 'x_gdc_validate_relations': 'X-GDC-VALIDATE-RELATIONS', - 'meta_include': 'metaInclude', }, 'location_map': { - 'workspace_id': 'path', - 'object_id': 'path', + 'id': 'path', 'filter': 'query', - 'include': 'query', - 'x_gdc_validate_relations': 'header', - 'meta_include': 'query', }, 'collection_format_map': { - 'include': 'csv', - 'meta_include': 'csv', } }, headers_map={ @@ -9907,10 +10759,12 @@ def __init__(self, api_client=None): ('include',): { "NOTIFICATIONCHANNELS": "notificationChannels", + "ANALYTICALDASHBOARDS": "analyticalDashboards", "USERIDENTIFIERS": "userIdentifiers", "EXPORTDEFINITIONS": "exportDefinitions", "USERS": "users", "NOTIFICATIONCHANNEL": "notificationChannel", + "ANALYTICALDASHBOARD": "analyticalDashboard", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "RECIPIENTS": "recipients", @@ -10414,9 +11268,11 @@ def __init__(self, api_client=None): "VISUALIZATIONOBJECTS": "visualizationObjects", "ANALYTICALDASHBOARDS": "analyticalDashboards", + "AUTOMATIONS": "automations", "USERIDENTIFIERS": "userIdentifiers", "VISUALIZATIONOBJECT": "visualizationObject", "ANALYTICALDASHBOARD": "analyticalDashboard", + "AUTOMATION": "automation", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "ALL": "ALL" @@ -10486,50 +11342,268 @@ def __init__(self, api_client=None): 'nullable': [ ], 'enum': [ - 'include', + 'include', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('include',): { + + "ATTRIBUTES": "attributes", + "DATASETS": "datasets", + "LABELS": "labels", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'object_id': + (str,), + 'json_api_filter_context_patch_document': + (JsonApiFilterContextPatchDocument,), + 'filter': + (str,), + 'include': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'object_id': 'objectId', + 'filter': 'filter', + 'include': 'include', + }, + 'location_map': { + 'workspace_id': 'path', + 'object_id': 'path', + 'json_api_filter_context_patch_document': 'body', + 'filter': 'query', + 'include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.patch_entity_filter_views_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiFilterViewOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId}', + 'operation_id': 'patch_entity_filter_views', + 'http_method': 'PATCH', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'object_id', + 'json_api_filter_view_patch_document', + 'filter', + 'include', + ], + 'required': [ + 'workspace_id', + 'object_id', + 'json_api_filter_view_patch_document', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('include',): { + + "ANALYTICALDASHBOARDS": "analyticalDashboards", + "USERS": "users", + "ANALYTICALDASHBOARD": "analyticalDashboard", + "USER": "user", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'object_id': + (str,), + 'json_api_filter_view_patch_document': + (JsonApiFilterViewPatchDocument,), + 'filter': + (str,), + 'include': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'object_id': 'objectId', + 'filter': 'filter', + 'include': 'include', + }, + 'location_map': { + 'workspace_id': 'path', + 'object_id': 'path', + 'json_api_filter_view_patch_document': 'body', + 'filter': 'query', + 'include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.patch_entity_identity_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiIdentityProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/identityProviders/{id}', + 'operation_id': 'patch_entity_identity_providers', + 'http_method': 'PATCH', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_identity_provider_patch_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_identity_provider_patch_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'json_api_identity_provider_patch_document': + (JsonApiIdentityProviderPatchDocument,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'json_api_identity_provider_patch_document': 'body', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.patch_entity_jwks_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiJwkOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/jwks/{id}', + 'operation_id': 'patch_entity_jwks', + 'http_method': 'PATCH', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_jwk_patch_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_jwk_patch_document', + ], + 'nullable': [ + ], + 'enum': [ ], 'validation': [ + 'id', ] }, root_map={ 'validations': { - }, - 'allowed_values': { - ('include',): { + ('id',): { - "ATTRIBUTES": "attributes", - "DATASETS": "datasets", - "LABELS": "labels", - "ALL": "ALL" + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, }, }, + 'allowed_values': { + }, 'openapi_types': { - 'workspace_id': - (str,), - 'object_id': + 'id': (str,), - 'json_api_filter_context_patch_document': - (JsonApiFilterContextPatchDocument,), + 'json_api_jwk_patch_document': + (JsonApiJwkPatchDocument,), 'filter': (str,), - 'include': - ([str],), }, 'attribute_map': { - 'workspace_id': 'workspaceId', - 'object_id': 'objectId', + 'id': 'id', 'filter': 'filter', - 'include': 'include', }, 'location_map': { - 'workspace_id': 'path', - 'object_id': 'path', - 'json_api_filter_context_patch_document': 'body', + 'id': 'path', + 'json_api_jwk_patch_document': 'body', 'filter': 'query', - 'include': 'query', }, 'collection_format_map': { - 'include': 'csv', } }, headers_map={ @@ -10542,24 +11616,24 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.patch_entity_jwks_endpoint = _Endpoint( + self.patch_entity_llm_endpoints_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiJwkOutDocument,), + 'response_type': (JsonApiLlmEndpointOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/jwks/{id}', - 'operation_id': 'patch_entity_jwks', + 'endpoint_path': '/api/v1/entities/llmEndpoints/{id}', + 'operation_id': 'patch_entity_llm_endpoints', 'http_method': 'PATCH', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_jwk_patch_document', + 'json_api_llm_endpoint_patch_document', 'filter', ], 'required': [ 'id', - 'json_api_jwk_patch_document', + 'json_api_llm_endpoint_patch_document', ], 'nullable': [ ], @@ -10583,8 +11657,8 @@ def __init__(self, api_client=None): 'openapi_types': { 'id': (str,), - 'json_api_jwk_patch_document': - (JsonApiJwkPatchDocument,), + 'json_api_llm_endpoint_patch_document': + (JsonApiLlmEndpointPatchDocument,), 'filter': (str,), }, @@ -10594,7 +11668,7 @@ def __init__(self, api_client=None): }, 'location_map': { 'id': 'path', - 'json_api_jwk_patch_document': 'body', + 'json_api_llm_endpoint_patch_document': 'body', 'filter': 'query', }, 'collection_format_map': { @@ -11832,10 +12906,12 @@ def __init__(self, api_client=None): ('include',): { "NOTIFICATIONCHANNELS": "notificationChannels", + "ANALYTICALDASHBOARDS": "analyticalDashboards", "USERIDENTIFIERS": "userIdentifiers", "EXPORTDEFINITIONS": "exportDefinitions", "USERS": "users", "NOTIFICATIONCHANNEL": "notificationChannel", + "ANALYTICALDASHBOARD": "analyticalDashboard", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "RECIPIENTS": "recipients", @@ -12339,9 +13415,11 @@ def __init__(self, api_client=None): "VISUALIZATIONOBJECTS": "visualizationObjects", "ANALYTICALDASHBOARDS": "analyticalDashboards", + "AUTOMATIONS": "automations", "USERIDENTIFIERS": "userIdentifiers", "VISUALIZATIONOBJECT": "visualizationObject", "ANALYTICALDASHBOARD": "analyticalDashboard", + "AUTOMATION": "automation", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "ALL": "ALL" @@ -12433,28 +13511,246 @@ def __init__(self, api_client=None): (str,), 'object_id': (str,), - 'json_api_filter_context_in_document': - (JsonApiFilterContextInDocument,), + 'json_api_filter_context_in_document': + (JsonApiFilterContextInDocument,), + 'filter': + (str,), + 'include': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'object_id': 'objectId', + 'filter': 'filter', + 'include': 'include', + }, + 'location_map': { + 'workspace_id': 'path', + 'object_id': 'path', + 'json_api_filter_context_in_document': 'body', + 'filter': 'query', + 'include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.update_entity_filter_views_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiFilterViewOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId}', + 'operation_id': 'update_entity_filter_views', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'object_id', + 'json_api_filter_view_in_document', + 'filter', + 'include', + ], + 'required': [ + 'workspace_id', + 'object_id', + 'json_api_filter_view_in_document', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('include',): { + + "ANALYTICALDASHBOARDS": "analyticalDashboards", + "USERS": "users", + "ANALYTICALDASHBOARD": "analyticalDashboard", + "USER": "user", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'object_id': + (str,), + 'json_api_filter_view_in_document': + (JsonApiFilterViewInDocument,), + 'filter': + (str,), + 'include': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'object_id': 'objectId', + 'filter': 'filter', + 'include': 'include', + }, + 'location_map': { + 'workspace_id': 'path', + 'object_id': 'path', + 'json_api_filter_view_in_document': 'body', + 'filter': 'query', + 'include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.update_entity_identity_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiIdentityProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/identityProviders/{id}', + 'operation_id': 'update_entity_identity_providers', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_identity_provider_in_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_identity_provider_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'json_api_identity_provider_in_document': + (JsonApiIdentityProviderInDocument,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'json_api_identity_provider_in_document': 'body', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.update_entity_jwks_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiJwkOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/jwks/{id}', + 'operation_id': 'update_entity_jwks', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_jwk_in_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_jwk_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'json_api_jwk_in_document': + (JsonApiJwkInDocument,), 'filter': (str,), - 'include': - ([str],), }, 'attribute_map': { - 'workspace_id': 'workspaceId', - 'object_id': 'objectId', + 'id': 'id', 'filter': 'filter', - 'include': 'include', }, 'location_map': { - 'workspace_id': 'path', - 'object_id': 'path', - 'json_api_filter_context_in_document': 'body', + 'id': 'path', + 'json_api_jwk_in_document': 'body', 'filter': 'query', - 'include': 'query', }, 'collection_format_map': { - 'include': 'csv', } }, headers_map={ @@ -12467,24 +13763,24 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.update_entity_jwks_endpoint = _Endpoint( + self.update_entity_llm_endpoints_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiJwkOutDocument,), + 'response_type': (JsonApiLlmEndpointOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/jwks/{id}', - 'operation_id': 'update_entity_jwks', + 'endpoint_path': '/api/v1/entities/llmEndpoints/{id}', + 'operation_id': 'update_entity_llm_endpoints', 'http_method': 'PUT', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_jwk_in_document', + 'json_api_llm_endpoint_in_document', 'filter', ], 'required': [ 'id', - 'json_api_jwk_in_document', + 'json_api_llm_endpoint_in_document', ], 'nullable': [ ], @@ -12508,8 +13804,8 @@ def __init__(self, api_client=None): 'openapi_types': { 'id': (str,), - 'json_api_jwk_in_document': - (JsonApiJwkInDocument,), + 'json_api_llm_endpoint_in_document': + (JsonApiLlmEndpointInDocument,), 'filter': (str,), }, @@ -12519,7 +13815,7 @@ def __init__(self, api_client=None): }, 'location_map': { 'id': 'path', - 'json_api_jwk_in_document': 'body', + 'json_api_llm_endpoint_in_document': 'body', 'filter': 'query', }, 'collection_format_map': { @@ -14575,22 +15871,273 @@ def create_entity_filter_contexts( json_api_filter_context_post_optional_id_document return self.create_entity_filter_contexts_endpoint.call_with_http_info(**kwargs) - def create_entity_jwks( + def create_entity_filter_views( + self, + workspace_id, + json_api_filter_view_in_document, + **kwargs + ): + """Post Filter views # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_filter_views(workspace_id, json_api_filter_view_in_document, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + json_api_filter_view_in_document (JsonApiFilterViewInDocument): + + Keyword Args: + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiFilterViewOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['json_api_filter_view_in_document'] = \ + json_api_filter_view_in_document + return self.create_entity_filter_views_endpoint.call_with_http_info(**kwargs) + + def create_entity_identity_providers( + self, + json_api_identity_provider_in_document, + **kwargs + ): + """Post Identity Providers # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_identity_providers(json_api_identity_provider_in_document, async_req=True) + >>> result = thread.get() + + Args: + json_api_identity_provider_in_document (JsonApiIdentityProviderInDocument): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiIdentityProviderOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['json_api_identity_provider_in_document'] = \ + json_api_identity_provider_in_document + return self.create_entity_identity_providers_endpoint.call_with_http_info(**kwargs) + + def create_entity_jwks( + self, + json_api_jwk_in_document, + **kwargs + ): + """Post Jwks # noqa: E501 + + Creates JSON web key - used to verify JSON web tokens (Jwts) # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_jwks(json_api_jwk_in_document, async_req=True) + >>> result = thread.get() + + Args: + json_api_jwk_in_document (JsonApiJwkInDocument): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiJwkOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['json_api_jwk_in_document'] = \ + json_api_jwk_in_document + return self.create_entity_jwks_endpoint.call_with_http_info(**kwargs) + + def create_entity_llm_endpoints( self, - json_api_jwk_in_document, + json_api_llm_endpoint_in_document, **kwargs ): - """Post Jwks # noqa: E501 + """Post LLM endpoint entities # noqa: E501 - Creates JSON web key - used to verify JSON web tokens (Jwts) # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_entity_jwks(json_api_jwk_in_document, async_req=True) + >>> thread = api.create_entity_llm_endpoints(json_api_llm_endpoint_in_document, async_req=True) >>> result = thread.get() Args: - json_api_jwk_in_document (JsonApiJwkInDocument): + json_api_llm_endpoint_in_document (JsonApiLlmEndpointInDocument): Keyword Args: _return_http_data_only (bool): response data without head status @@ -14625,7 +16172,7 @@ def create_entity_jwks( async_req (bool): execute request asynchronously Returns: - JsonApiJwkOutDocument + JsonApiLlmEndpointOutDocument If the method is called asynchronously, returns the request thread. """ @@ -14654,9 +16201,9 @@ def create_entity_jwks( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['json_api_jwk_in_document'] = \ - json_api_jwk_in_document - return self.create_entity_jwks_endpoint.call_with_http_info(**kwargs) + kwargs['json_api_llm_endpoint_in_document'] = \ + json_api_llm_endpoint_in_document + return self.create_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) def create_entity_metrics( self, @@ -16717,18 +18264,271 @@ def delete_entity_filter_contexts( object_id return self.delete_entity_filter_contexts_endpoint.call_with_http_info(**kwargs) - def delete_entity_jwks( + def delete_entity_filter_views( + self, + workspace_id, + object_id, + **kwargs + ): + """Delete Filter view # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.delete_entity_filter_views(workspace_id, object_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + object_id (str): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['object_id'] = \ + object_id + return self.delete_entity_filter_views_endpoint.call_with_http_info(**kwargs) + + def delete_entity_identity_providers( + self, + id, + **kwargs + ): + """Delete Identity Provider # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.delete_entity_identity_providers(id, async_req=True) + >>> result = thread.get() + + Args: + id (str): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + return self.delete_entity_identity_providers_endpoint.call_with_http_info(**kwargs) + + def delete_entity_jwks( + self, + id, + **kwargs + ): + """Delete Jwk # noqa: E501 + + Deletes JSON web key - used to verify JSON web tokens (Jwts) # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.delete_entity_jwks(id, async_req=True) + >>> result = thread.get() + + Args: + id (str): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + return self.delete_entity_jwks_endpoint.call_with_http_info(**kwargs) + + def delete_entity_llm_endpoints( self, id, **kwargs ): - """Delete Jwk # noqa: E501 + """delete_entity_llm_endpoints # noqa: E501 - Deletes JSON web key - used to verify JSON web tokens (Jwts) # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_entity_jwks(id, async_req=True) + >>> thread = api.delete_entity_llm_endpoints(id, async_req=True) >>> result = thread.get() Args: @@ -16799,7 +18599,7 @@ def delete_entity_jwks( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.delete_entity_jwks_endpoint.call_with_http_info(**kwargs) + return self.delete_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) def delete_entity_metrics( self, @@ -16893,7 +18693,7 @@ def delete_entity_notification_channels( id, **kwargs ): - """delete_entity_notification_channels # noqa: E501 + """Delete Notification Channel entity # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True @@ -19310,6 +21110,178 @@ def get_all_entities_filter_contexts( workspace_id return self.get_all_entities_filter_contexts_endpoint.call_with_http_info(**kwargs) + def get_all_entities_filter_views( + self, + workspace_id, + **kwargs + ): + """Get all Filter views # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_all_entities_filter_views(workspace_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + + Keyword Args: + origin (str): [optional] if omitted the server will use the default value of "ALL" + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 + size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 + sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] + x_gdc_validate_relations (bool): [optional] if omitted the server will use the default value of False + meta_include ([str]): Include Meta objects.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiFilterViewOutList + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + return self.get_all_entities_filter_views_endpoint.call_with_http_info(**kwargs) + + def get_all_entities_identity_providers( + self, + **kwargs + ): + """Get all Identity Providers # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_all_entities_identity_providers(async_req=True) + >>> result = thread.get() + + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 + size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 + sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] + meta_include ([str]): Include Meta objects.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiIdentityProviderOutList + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + return self.get_all_entities_identity_providers_endpoint.call_with_http_info(**kwargs) + def get_all_entities_jwks( self, **kwargs @@ -19410,13 +21382,97 @@ def get_all_entities_labels( workspace_id (str): Keyword Args: - origin (str): [optional] if omitted the server will use the default value of "ALL" + origin (str): [optional] if omitted the server will use the default value of "ALL" + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 + size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 + sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] + x_gdc_validate_relations (bool): [optional] if omitted the server will use the default value of False + meta_include ([str]): Include Meta objects.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiLabelOutList + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + return self.get_all_entities_labels_endpoint.call_with_http_info(**kwargs) + + def get_all_entities_llm_endpoints( + self, + **kwargs + ): + """Get all LLM endpoint entities # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_all_entities_llm_endpoints(async_req=True) + >>> result = thread.get() + + + Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] - include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] - x_gdc_validate_relations (bool): [optional] if omitted the server will use the default value of False meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. @@ -19450,7 +21506,7 @@ def get_all_entities_labels( async_req (bool): execute request asynchronously Returns: - JsonApiLabelOutList + JsonApiLlmEndpointOutList If the method is called asynchronously, returns the request thread. """ @@ -19479,9 +21535,7 @@ def get_all_entities_labels( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['workspace_id'] = \ - workspace_id - return self.get_all_entities_labels_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_llm_endpoints_endpoint.call_with_http_info(**kwargs) def get_all_entities_metrics( self, @@ -22335,6 +24389,178 @@ def get_entity_filter_contexts( object_id return self.get_entity_filter_contexts_endpoint.call_with_http_info(**kwargs) + def get_entity_filter_views( + self, + workspace_id, + object_id, + **kwargs + ): + """Get Filter view # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_entity_filter_views(workspace_id, object_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + object_id (str): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + x_gdc_validate_relations (bool): [optional] if omitted the server will use the default value of False + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiFilterViewOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['object_id'] = \ + object_id + return self.get_entity_filter_views_endpoint.call_with_http_info(**kwargs) + + def get_entity_identity_providers( + self, + id, + **kwargs + ): + """Get Identity Provider # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_entity_identity_providers(id, async_req=True) + >>> result = thread.get() + + Args: + id (str): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiIdentityProviderOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + return self.get_entity_identity_providers_endpoint.call_with_http_info(**kwargs) + def get_entity_jwks( self, id, @@ -22434,14 +24660,99 @@ def get_entity_labels( >>> result = thread.get() Args: - workspace_id (str): - object_id (str): + workspace_id (str): + object_id (str): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + x_gdc_validate_relations (bool): [optional] if omitted the server will use the default value of False + meta_include ([str]): Include Meta objects.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiLabelOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['object_id'] = \ + object_id + return self.get_entity_labels_endpoint.call_with_http_info(**kwargs) + + def get_entity_llm_endpoints( + self, + id, + **kwargs + ): + """Get LLM endpoint entity # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_entity_llm_endpoints(id, async_req=True) + >>> result = thread.get() + + Args: + id (str): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] - include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] - x_gdc_validate_relations (bool): [optional] if omitted the server will use the default value of False - meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -22474,7 +24785,7 @@ def get_entity_labels( async_req (bool): execute request asynchronously Returns: - JsonApiLabelOutDocument + JsonApiLlmEndpointOutDocument If the method is called asynchronously, returns the request thread. """ @@ -22503,11 +24814,9 @@ def get_entity_labels( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['workspace_id'] = \ - workspace_id - kwargs['object_id'] = \ - object_id - return self.get_entity_labels_endpoint.call_with_http_info(**kwargs) + kwargs['id'] = \ + id + return self.get_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) def get_entity_metrics( self, @@ -24881,24 +27190,290 @@ def patch_entity_filter_contexts( json_api_filter_context_patch_document return self.patch_entity_filter_contexts_endpoint.call_with_http_info(**kwargs) - def patch_entity_jwks( + def patch_entity_filter_views( + self, + workspace_id, + object_id, + json_api_filter_view_patch_document, + **kwargs + ): + """Patch Filter view # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.patch_entity_filter_views(workspace_id, object_id, json_api_filter_view_patch_document, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + object_id (str): + json_api_filter_view_patch_document (JsonApiFilterViewPatchDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiFilterViewOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['object_id'] = \ + object_id + kwargs['json_api_filter_view_patch_document'] = \ + json_api_filter_view_patch_document + return self.patch_entity_filter_views_endpoint.call_with_http_info(**kwargs) + + def patch_entity_identity_providers( + self, + id, + json_api_identity_provider_patch_document, + **kwargs + ): + """Patch Identity Provider # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.patch_entity_identity_providers(id, json_api_identity_provider_patch_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_identity_provider_patch_document (JsonApiIdentityProviderPatchDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiIdentityProviderOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + kwargs['json_api_identity_provider_patch_document'] = \ + json_api_identity_provider_patch_document + return self.patch_entity_identity_providers_endpoint.call_with_http_info(**kwargs) + + def patch_entity_jwks( + self, + id, + json_api_jwk_patch_document, + **kwargs + ): + """Patch Jwk # noqa: E501 + + Patches JSON web key - used to verify JSON web tokens (Jwts) # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.patch_entity_jwks(id, json_api_jwk_patch_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_jwk_patch_document (JsonApiJwkPatchDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiJwkOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + kwargs['json_api_jwk_patch_document'] = \ + json_api_jwk_patch_document + return self.patch_entity_jwks_endpoint.call_with_http_info(**kwargs) + + def patch_entity_llm_endpoints( self, id, - json_api_jwk_patch_document, + json_api_llm_endpoint_patch_document, **kwargs ): - """Patch Jwk # noqa: E501 + """Patch LLM endpoint entity # noqa: E501 - Patches JSON web key - used to verify JSON web tokens (Jwts) # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.patch_entity_jwks(id, json_api_jwk_patch_document, async_req=True) + >>> thread = api.patch_entity_llm_endpoints(id, json_api_llm_endpoint_patch_document, async_req=True) >>> result = thread.get() Args: id (str): - json_api_jwk_patch_document (JsonApiJwkPatchDocument): + json_api_llm_endpoint_patch_document (JsonApiLlmEndpointPatchDocument): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] @@ -24934,7 +27509,7 @@ def patch_entity_jwks( async_req (bool): execute request asynchronously Returns: - JsonApiJwkOutDocument + JsonApiLlmEndpointOutDocument If the method is called asynchronously, returns the request thread. """ @@ -24965,9 +27540,9 @@ def patch_entity_jwks( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - kwargs['json_api_jwk_patch_document'] = \ - json_api_jwk_patch_document - return self.patch_entity_jwks_endpoint.call_with_http_info(**kwargs) + kwargs['json_api_llm_endpoint_patch_document'] = \ + json_api_llm_endpoint_patch_document + return self.patch_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) def patch_entity_metrics( self, @@ -27129,6 +29704,185 @@ def update_entity_filter_contexts( json_api_filter_context_in_document return self.update_entity_filter_contexts_endpoint.call_with_http_info(**kwargs) + def update_entity_filter_views( + self, + workspace_id, + object_id, + json_api_filter_view_in_document, + **kwargs + ): + """Put Filter views # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.update_entity_filter_views(workspace_id, object_id, json_api_filter_view_in_document, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + object_id (str): + json_api_filter_view_in_document (JsonApiFilterViewInDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiFilterViewOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['object_id'] = \ + object_id + kwargs['json_api_filter_view_in_document'] = \ + json_api_filter_view_in_document + return self.update_entity_filter_views_endpoint.call_with_http_info(**kwargs) + + def update_entity_identity_providers( + self, + id, + json_api_identity_provider_in_document, + **kwargs + ): + """Put Identity Provider # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.update_entity_identity_providers(id, json_api_identity_provider_in_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_identity_provider_in_document (JsonApiIdentityProviderInDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiIdentityProviderOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + kwargs['json_api_identity_provider_in_document'] = \ + json_api_identity_provider_in_document + return self.update_entity_identity_providers_endpoint.call_with_http_info(**kwargs) + def update_entity_jwks( self, id, @@ -27217,6 +29971,93 @@ def update_entity_jwks( json_api_jwk_in_document return self.update_entity_jwks_endpoint.call_with_http_info(**kwargs) + def update_entity_llm_endpoints( + self, + id, + json_api_llm_endpoint_in_document, + **kwargs + ): + """PUT LLM endpoint entity # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.update_entity_llm_endpoints(id, json_api_llm_endpoint_in_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_llm_endpoint_in_document (JsonApiLlmEndpointInDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiLlmEndpointOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + kwargs['json_api_llm_endpoint_in_document'] = \ + json_api_llm_endpoint_in_document + return self.update_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + def update_entity_metrics( self, workspace_id, diff --git a/gooddata-api-client/gooddata_api_client/api/export_definitions_api.py b/gooddata-api-client/gooddata_api_client/api/export_definitions_api.py index bddc1b910..374bb9649 100644 --- a/gooddata-api-client/gooddata_api_client/api/export_definitions_api.py +++ b/gooddata-api-client/gooddata_api_client/api/export_definitions_api.py @@ -81,9 +81,11 @@ def __init__(self, api_client=None): "VISUALIZATIONOBJECTS": "visualizationObjects", "ANALYTICALDASHBOARDS": "analyticalDashboards", + "AUTOMATIONS": "automations", "USERIDENTIFIERS": "userIdentifiers", "VISUALIZATIONOBJECT": "visualizationObject", "ANALYTICALDASHBOARD": "analyticalDashboard", + "AUTOMATION": "automation", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "ALL": "ALL" @@ -241,9 +243,11 @@ def __init__(self, api_client=None): "VISUALIZATIONOBJECTS": "visualizationObjects", "ANALYTICALDASHBOARDS": "analyticalDashboards", + "AUTOMATIONS": "automations", "USERIDENTIFIERS": "userIdentifiers", "VISUALIZATIONOBJECT": "visualizationObject", "ANALYTICALDASHBOARD": "analyticalDashboard", + "AUTOMATION": "automation", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "ALL": "ALL" @@ -355,9 +359,11 @@ def __init__(self, api_client=None): "VISUALIZATIONOBJECTS": "visualizationObjects", "ANALYTICALDASHBOARDS": "analyticalDashboards", + "AUTOMATIONS": "automations", "USERIDENTIFIERS": "userIdentifiers", "VISUALIZATIONOBJECT": "visualizationObject", "ANALYTICALDASHBOARD": "analyticalDashboard", + "AUTOMATION": "automation", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "ALL": "ALL" @@ -450,9 +456,11 @@ def __init__(self, api_client=None): "VISUALIZATIONOBJECTS": "visualizationObjects", "ANALYTICALDASHBOARDS": "analyticalDashboards", + "AUTOMATIONS": "automations", "USERIDENTIFIERS": "userIdentifiers", "VISUALIZATIONOBJECT": "visualizationObject", "ANALYTICALDASHBOARD": "analyticalDashboard", + "AUTOMATION": "automation", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "ALL": "ALL" @@ -535,9 +543,11 @@ def __init__(self, api_client=None): "VISUALIZATIONOBJECTS": "visualizationObjects", "ANALYTICALDASHBOARDS": "analyticalDashboards", + "AUTOMATIONS": "automations", "USERIDENTIFIERS": "userIdentifiers", "VISUALIZATIONOBJECT": "visualizationObject", "ANALYTICALDASHBOARD": "analyticalDashboard", + "AUTOMATION": "automation", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "ALL": "ALL" diff --git a/gooddata-api-client/gooddata_api_client/api/filter_views_api.py b/gooddata-api-client/gooddata_api_client/api/filter_views_api.py new file mode 100644 index 000000000..c239a4e80 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/api/filter_views_api.py @@ -0,0 +1,1071 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.api_client import ApiClient, Endpoint as _Endpoint +from gooddata_api_client.model_utils import ( # noqa: F401 + check_allowed_values, + check_validations, + date, + datetime, + file_type, + none_type, + validate_and_convert_types +) +from gooddata_api_client.model.json_api_filter_view_in_document import JsonApiFilterViewInDocument +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from gooddata_api_client.model.json_api_filter_view_out_list import JsonApiFilterViewOutList +from gooddata_api_client.model.json_api_filter_view_patch_document import JsonApiFilterViewPatchDocument + + +class FilterViewsApi(object): + """NOTE: This class is auto generated by OpenAPI Generator + Ref: https://openapi-generator.tech + + Do not edit the class manually. + """ + + def __init__(self, api_client=None): + if api_client is None: + api_client = ApiClient() + self.api_client = api_client + self.create_entity_filter_views_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiFilterViewOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews', + 'operation_id': 'create_entity_filter_views', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'json_api_filter_view_in_document', + 'include', + ], + 'required': [ + 'workspace_id', + 'json_api_filter_view_in_document', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('include',): { + + "ANALYTICALDASHBOARDS": "analyticalDashboards", + "USERS": "users", + "ANALYTICALDASHBOARD": "analyticalDashboard", + "USER": "user", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'json_api_filter_view_in_document': + (JsonApiFilterViewInDocument,), + 'include': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'include': 'include', + }, + 'location_map': { + 'workspace_id': 'path', + 'json_api_filter_view_in_document': 'body', + 'include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.delete_entity_filter_views_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId}', + 'operation_id': 'delete_entity_filter_views', + 'http_method': 'DELETE', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'object_id', + 'filter', + ], + 'required': [ + 'workspace_id', + 'object_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'object_id': + (str,), + 'filter': + (str,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'object_id': 'objectId', + 'filter': 'filter', + }, + 'location_map': { + 'workspace_id': 'path', + 'object_id': 'path', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) + self.get_all_entities_filter_views_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiFilterViewOutList,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews', + 'operation_id': 'get_all_entities_filter_views', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'origin', + 'filter', + 'include', + 'page', + 'size', + 'sort', + 'x_gdc_validate_relations', + 'meta_include', + ], + 'required': [ + 'workspace_id', + ], + 'nullable': [ + ], + 'enum': [ + 'origin', + 'include', + 'meta_include', + ], + 'validation': [ + 'meta_include', + ] + }, + root_map={ + 'validations': { + ('meta_include',): { + + }, + }, + 'allowed_values': { + ('origin',): { + + "ALL": "ALL", + "PARENTS": "PARENTS", + "NATIVE": "NATIVE" + }, + ('include',): { + + "ANALYTICALDASHBOARDS": "analyticalDashboards", + "USERS": "users", + "ANALYTICALDASHBOARD": "analyticalDashboard", + "USER": "user", + "ALL": "ALL" + }, + ('meta_include',): { + + "PAGE": "page", + "ALL": "all", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'origin': + (str,), + 'filter': + (str,), + 'include': + ([str],), + 'page': + (int,), + 'size': + (int,), + 'sort': + ([str],), + 'x_gdc_validate_relations': + (bool,), + 'meta_include': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'origin': 'origin', + 'filter': 'filter', + 'include': 'include', + 'page': 'page', + 'size': 'size', + 'sort': 'sort', + 'x_gdc_validate_relations': 'X-GDC-VALIDATE-RELATIONS', + 'meta_include': 'metaInclude', + }, + 'location_map': { + 'workspace_id': 'path', + 'origin': 'query', + 'filter': 'query', + 'include': 'query', + 'page': 'query', + 'size': 'query', + 'sort': 'query', + 'x_gdc_validate_relations': 'header', + 'meta_include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + 'sort': 'multi', + 'meta_include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.get_entity_filter_views_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiFilterViewOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId}', + 'operation_id': 'get_entity_filter_views', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'object_id', + 'filter', + 'include', + 'x_gdc_validate_relations', + ], + 'required': [ + 'workspace_id', + 'object_id', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('include',): { + + "ANALYTICALDASHBOARDS": "analyticalDashboards", + "USERS": "users", + "ANALYTICALDASHBOARD": "analyticalDashboard", + "USER": "user", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'object_id': + (str,), + 'filter': + (str,), + 'include': + ([str],), + 'x_gdc_validate_relations': + (bool,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'object_id': 'objectId', + 'filter': 'filter', + 'include': 'include', + 'x_gdc_validate_relations': 'X-GDC-VALIDATE-RELATIONS', + }, + 'location_map': { + 'workspace_id': 'path', + 'object_id': 'path', + 'filter': 'query', + 'include': 'query', + 'x_gdc_validate_relations': 'header', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.patch_entity_filter_views_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiFilterViewOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId}', + 'operation_id': 'patch_entity_filter_views', + 'http_method': 'PATCH', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'object_id', + 'json_api_filter_view_patch_document', + 'filter', + 'include', + ], + 'required': [ + 'workspace_id', + 'object_id', + 'json_api_filter_view_patch_document', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('include',): { + + "ANALYTICALDASHBOARDS": "analyticalDashboards", + "USERS": "users", + "ANALYTICALDASHBOARD": "analyticalDashboard", + "USER": "user", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'object_id': + (str,), + 'json_api_filter_view_patch_document': + (JsonApiFilterViewPatchDocument,), + 'filter': + (str,), + 'include': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'object_id': 'objectId', + 'filter': 'filter', + 'include': 'include', + }, + 'location_map': { + 'workspace_id': 'path', + 'object_id': 'path', + 'json_api_filter_view_patch_document': 'body', + 'filter': 'query', + 'include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.update_entity_filter_views_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiFilterViewOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId}', + 'operation_id': 'update_entity_filter_views', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'object_id', + 'json_api_filter_view_in_document', + 'filter', + 'include', + ], + 'required': [ + 'workspace_id', + 'object_id', + 'json_api_filter_view_in_document', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('include',): { + + "ANALYTICALDASHBOARDS": "analyticalDashboards", + "USERS": "users", + "ANALYTICALDASHBOARD": "analyticalDashboard", + "USER": "user", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'object_id': + (str,), + 'json_api_filter_view_in_document': + (JsonApiFilterViewInDocument,), + 'filter': + (str,), + 'include': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'object_id': 'objectId', + 'filter': 'filter', + 'include': 'include', + }, + 'location_map': { + 'workspace_id': 'path', + 'object_id': 'path', + 'json_api_filter_view_in_document': 'body', + 'filter': 'query', + 'include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + + def create_entity_filter_views( + self, + workspace_id, + json_api_filter_view_in_document, + **kwargs + ): + """Post Filter views # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_filter_views(workspace_id, json_api_filter_view_in_document, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + json_api_filter_view_in_document (JsonApiFilterViewInDocument): + + Keyword Args: + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiFilterViewOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['json_api_filter_view_in_document'] = \ + json_api_filter_view_in_document + return self.create_entity_filter_views_endpoint.call_with_http_info(**kwargs) + + def delete_entity_filter_views( + self, + workspace_id, + object_id, + **kwargs + ): + """Delete Filter view # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.delete_entity_filter_views(workspace_id, object_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + object_id (str): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['object_id'] = \ + object_id + return self.delete_entity_filter_views_endpoint.call_with_http_info(**kwargs) + + def get_all_entities_filter_views( + self, + workspace_id, + **kwargs + ): + """Get all Filter views # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_all_entities_filter_views(workspace_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + + Keyword Args: + origin (str): [optional] if omitted the server will use the default value of "ALL" + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 + size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 + sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] + x_gdc_validate_relations (bool): [optional] if omitted the server will use the default value of False + meta_include ([str]): Include Meta objects.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiFilterViewOutList + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + return self.get_all_entities_filter_views_endpoint.call_with_http_info(**kwargs) + + def get_entity_filter_views( + self, + workspace_id, + object_id, + **kwargs + ): + """Get Filter view # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_entity_filter_views(workspace_id, object_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + object_id (str): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + x_gdc_validate_relations (bool): [optional] if omitted the server will use the default value of False + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiFilterViewOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['object_id'] = \ + object_id + return self.get_entity_filter_views_endpoint.call_with_http_info(**kwargs) + + def patch_entity_filter_views( + self, + workspace_id, + object_id, + json_api_filter_view_patch_document, + **kwargs + ): + """Patch Filter view # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.patch_entity_filter_views(workspace_id, object_id, json_api_filter_view_patch_document, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + object_id (str): + json_api_filter_view_patch_document (JsonApiFilterViewPatchDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiFilterViewOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['object_id'] = \ + object_id + kwargs['json_api_filter_view_patch_document'] = \ + json_api_filter_view_patch_document + return self.patch_entity_filter_views_endpoint.call_with_http_info(**kwargs) + + def update_entity_filter_views( + self, + workspace_id, + object_id, + json_api_filter_view_in_document, + **kwargs + ): + """Put Filter views # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.update_entity_filter_views(workspace_id, object_id, json_api_filter_view_in_document, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + object_id (str): + json_api_filter_view_in_document (JsonApiFilterViewInDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiFilterViewOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['object_id'] = \ + object_id + kwargs['json_api_filter_view_in_document'] = \ + json_api_filter_view_in_document + return self.update_entity_filter_views_endpoint.call_with_http_info(**kwargs) + diff --git a/gooddata-api-client/gooddata_api_client/api/identity_providers_api.py b/gooddata-api-client/gooddata_api_client/api/identity_providers_api.py new file mode 100644 index 000000000..7e125ca20 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/api/identity_providers_api.py @@ -0,0 +1,932 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.api_client import ApiClient, Endpoint as _Endpoint +from gooddata_api_client.model_utils import ( # noqa: F401 + check_allowed_values, + check_validations, + date, + datetime, + file_type, + none_type, + validate_and_convert_types +) +from gooddata_api_client.model.json_api_identity_provider_in_document import JsonApiIdentityProviderInDocument +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument +from gooddata_api_client.model.json_api_identity_provider_out_list import JsonApiIdentityProviderOutList +from gooddata_api_client.model.json_api_identity_provider_patch_document import JsonApiIdentityProviderPatchDocument + + +class IdentityProvidersApi(object): + """NOTE: This class is auto generated by OpenAPI Generator + Ref: https://openapi-generator.tech + + Do not edit the class manually. + """ + + def __init__(self, api_client=None): + if api_client is None: + api_client = ApiClient() + self.api_client = api_client + self.create_entity_identity_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiIdentityProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/identityProviders', + 'operation_id': 'create_entity_identity_providers', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'json_api_identity_provider_in_document', + ], + 'required': [ + 'json_api_identity_provider_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'json_api_identity_provider_in_document': + (JsonApiIdentityProviderInDocument,), + }, + 'attribute_map': { + }, + 'location_map': { + 'json_api_identity_provider_in_document': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.delete_entity_identity_providers_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/entities/identityProviders/{id}', + 'operation_id': 'delete_entity_identity_providers', + 'http_method': 'DELETE', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'filter', + ], + 'required': [ + 'id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) + self.get_all_entities_identity_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiIdentityProviderOutList,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/identityProviders', + 'operation_id': 'get_all_entities_identity_providers', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'filter', + 'page', + 'size', + 'sort', + 'meta_include', + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + 'meta_include', + ], + 'validation': [ + 'meta_include', + ] + }, + root_map={ + 'validations': { + ('meta_include',): { + + }, + }, + 'allowed_values': { + ('meta_include',): { + + "PAGE": "page", + "ALL": "all", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'filter': + (str,), + 'page': + (int,), + 'size': + (int,), + 'sort': + ([str],), + 'meta_include': + ([str],), + }, + 'attribute_map': { + 'filter': 'filter', + 'page': 'page', + 'size': 'size', + 'sort': 'sort', + 'meta_include': 'metaInclude', + }, + 'location_map': { + 'filter': 'query', + 'page': 'query', + 'size': 'query', + 'sort': 'query', + 'meta_include': 'query', + }, + 'collection_format_map': { + 'sort': 'multi', + 'meta_include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.get_entity_identity_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiIdentityProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/identityProviders/{id}', + 'operation_id': 'get_entity_identity_providers', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'filter', + ], + 'required': [ + 'id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.patch_entity_identity_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiIdentityProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/identityProviders/{id}', + 'operation_id': 'patch_entity_identity_providers', + 'http_method': 'PATCH', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_identity_provider_patch_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_identity_provider_patch_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'json_api_identity_provider_patch_document': + (JsonApiIdentityProviderPatchDocument,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'json_api_identity_provider_patch_document': 'body', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.update_entity_identity_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiIdentityProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/identityProviders/{id}', + 'operation_id': 'update_entity_identity_providers', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_identity_provider_in_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_identity_provider_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'json_api_identity_provider_in_document': + (JsonApiIdentityProviderInDocument,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'json_api_identity_provider_in_document': 'body', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + + def create_entity_identity_providers( + self, + json_api_identity_provider_in_document, + **kwargs + ): + """Post Identity Providers # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_identity_providers(json_api_identity_provider_in_document, async_req=True) + >>> result = thread.get() + + Args: + json_api_identity_provider_in_document (JsonApiIdentityProviderInDocument): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiIdentityProviderOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['json_api_identity_provider_in_document'] = \ + json_api_identity_provider_in_document + return self.create_entity_identity_providers_endpoint.call_with_http_info(**kwargs) + + def delete_entity_identity_providers( + self, + id, + **kwargs + ): + """Delete Identity Provider # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.delete_entity_identity_providers(id, async_req=True) + >>> result = thread.get() + + Args: + id (str): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + return self.delete_entity_identity_providers_endpoint.call_with_http_info(**kwargs) + + def get_all_entities_identity_providers( + self, + **kwargs + ): + """Get all Identity Providers # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_all_entities_identity_providers(async_req=True) + >>> result = thread.get() + + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 + size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 + sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] + meta_include ([str]): Include Meta objects.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiIdentityProviderOutList + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + return self.get_all_entities_identity_providers_endpoint.call_with_http_info(**kwargs) + + def get_entity_identity_providers( + self, + id, + **kwargs + ): + """Get Identity Provider # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_entity_identity_providers(id, async_req=True) + >>> result = thread.get() + + Args: + id (str): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiIdentityProviderOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + return self.get_entity_identity_providers_endpoint.call_with_http_info(**kwargs) + + def patch_entity_identity_providers( + self, + id, + json_api_identity_provider_patch_document, + **kwargs + ): + """Patch Identity Provider # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.patch_entity_identity_providers(id, json_api_identity_provider_patch_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_identity_provider_patch_document (JsonApiIdentityProviderPatchDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiIdentityProviderOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + kwargs['json_api_identity_provider_patch_document'] = \ + json_api_identity_provider_patch_document + return self.patch_entity_identity_providers_endpoint.call_with_http_info(**kwargs) + + def update_entity_identity_providers( + self, + id, + json_api_identity_provider_in_document, + **kwargs + ): + """Put Identity Provider # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.update_entity_identity_providers(id, json_api_identity_provider_in_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_identity_provider_in_document (JsonApiIdentityProviderInDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiIdentityProviderOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + kwargs['json_api_identity_provider_in_document'] = \ + json_api_identity_provider_in_document + return self.update_entity_identity_providers_endpoint.call_with_http_info(**kwargs) + diff --git a/gooddata-api-client/gooddata_api_client/api/layout_api.py b/gooddata-api-client/gooddata_api_client/api/layout_api.py index 2261ade54..1836879e0 100644 --- a/gooddata-api-client/gooddata_api_client/api/layout_api.py +++ b/gooddata-api-client/gooddata_api_client/api/layout_api.py @@ -23,9 +23,11 @@ validate_and_convert_types ) from gooddata_api_client.model.declarative_analytics import DeclarativeAnalytics +from gooddata_api_client.model.declarative_automation import DeclarativeAutomation from gooddata_api_client.model.declarative_data_source_permissions import DeclarativeDataSourcePermissions from gooddata_api_client.model.declarative_data_sources import DeclarativeDataSources from gooddata_api_client.model.declarative_model import DeclarativeModel +from gooddata_api_client.model.declarative_notification_channels import DeclarativeNotificationChannels from gooddata_api_client.model.declarative_organization import DeclarativeOrganization from gooddata_api_client.model.declarative_organization_permission import DeclarativeOrganizationPermission from gooddata_api_client.model.declarative_user_data_filters import DeclarativeUserDataFilters @@ -111,6 +113,66 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.get_automations_endpoint = _Endpoint( + settings={ + 'response_type': ([DeclarativeAutomation],), + 'auth': [], + 'endpoint_path': '/api/v1/layout/workspaces/{workspaceId}/automations', + 'operation_id': 'get_automations', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'exclude', + ], + 'required': [ + 'workspace_id', + ], + 'nullable': [ + ], + 'enum': [ + 'exclude', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('exclude',): { + + "ACTIVITY_INFO": "ACTIVITY_INFO" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'exclude': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'exclude': 'exclude', + }, + 'location_map': { + 'workspace_id': 'path', + 'exclude': 'query', + }, + 'collection_format_map': { + 'exclude': 'multi', + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client + ) self.get_data_source_permissions_endpoint = _Endpoint( settings={ 'response_type': (DeclarativeDataSourcePermissions,), @@ -256,6 +318,48 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.get_notification_channels_layout_endpoint = _Endpoint( + settings={ + 'response_type': (DeclarativeNotificationChannels,), + 'auth': [], + 'endpoint_path': '/api/v1/layout/notificationChannels', + 'operation_id': 'get_notification_channels_layout', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + }, + 'attribute_map': { + }, + 'location_map': { + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client + ) self.get_organization_layout_endpoint = _Endpoint( settings={ 'response_type': (DeclarativeOrganization,), @@ -1128,6 +1232,60 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.set_automations_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/layout/workspaces/{workspaceId}/automations', + 'operation_id': 'set_automations', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'declarative_automation', + ], + 'required': [ + 'workspace_id', + 'declarative_automation', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'declarative_automation': + ([DeclarativeAutomation],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'declarative_automation': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) self.set_data_source_permissions_endpoint = _Endpoint( settings={ 'response_type': None, @@ -1236,6 +1394,54 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.set_notification_channels_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/layout/notificationChannels', + 'operation_id': 'set_notification_channels', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'declarative_notification_channels', + ], + 'required': [ + 'declarative_notification_channels', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'declarative_notification_channels': + (DeclarativeNotificationChannels,), + }, + 'attribute_map': { + }, + 'location_map': { + 'declarative_notification_channels': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) self.set_organization_layout_endpoint = _Endpoint( settings={ 'response_type': None, @@ -1729,6 +1935,90 @@ def get_analytics_model( workspace_id return self.get_analytics_model_endpoint.call_with_http_info(**kwargs) + def get_automations( + self, + workspace_id, + **kwargs + ): + """Get automations # noqa: E501 + + Retrieve automations for the specific workspace # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_automations(workspace_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + + Keyword Args: + exclude ([str]): [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + [DeclarativeAutomation] + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + return self.get_automations_endpoint.call_with_http_info(**kwargs) + def get_data_source_permissions( self, data_source_id, @@ -1974,6 +2264,84 @@ def get_logical_model( workspace_id return self.get_logical_model_endpoint.call_with_http_info(**kwargs) + def get_notification_channels_layout( + self, + **kwargs + ): + """Get all notification channels layout # noqa: E501 + + Gets complete layout of notification channels. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_notification_channels_layout(async_req=True) + >>> result = thread.get() + + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + DeclarativeNotificationChannels + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + return self.get_notification_channels_layout_endpoint.call_with_http_info(**kwargs) + def get_organization_layout( self, **kwargs @@ -3444,6 +3812,93 @@ def set_analytics_model( declarative_analytics return self.set_analytics_model_endpoint.call_with_http_info(**kwargs) + def set_automations( + self, + workspace_id, + declarative_automation, + **kwargs + ): + """Set automations # noqa: E501 + + Set automations for the specific workspace. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.set_automations(workspace_id, declarative_automation, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + declarative_automation ([DeclarativeAutomation]): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['declarative_automation'] = \ + declarative_automation + return self.set_automations_endpoint.call_with_http_info(**kwargs) + def set_data_source_permissions( self, data_source_id, @@ -3618,6 +4073,89 @@ def set_logical_model( declarative_model return self.set_logical_model_endpoint.call_with_http_info(**kwargs) + def set_notification_channels( + self, + declarative_notification_channels, + **kwargs + ): + """Set all notification channels # noqa: E501 + + Sets notification channels in organization. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.set_notification_channels(declarative_notification_channels, async_req=True) + >>> result = thread.get() + + Args: + declarative_notification_channels (DeclarativeNotificationChannels): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['declarative_notification_channels'] = \ + declarative_notification_channels + return self.set_notification_channels_endpoint.call_with_http_info(**kwargs) + def set_organization_layout( self, declarative_organization, diff --git a/gooddata-api-client/gooddata_api_client/api/llm_endpoints_api.py b/gooddata-api-client/gooddata_api_client/api/llm_endpoints_api.py new file mode 100644 index 000000000..833edfedc --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/api/llm_endpoints_api.py @@ -0,0 +1,932 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.api_client import ApiClient, Endpoint as _Endpoint +from gooddata_api_client.model_utils import ( # noqa: F401 + check_allowed_values, + check_validations, + date, + datetime, + file_type, + none_type, + validate_and_convert_types +) +from gooddata_api_client.model.json_api_llm_endpoint_in_document import JsonApiLlmEndpointInDocument +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument +from gooddata_api_client.model.json_api_llm_endpoint_out_list import JsonApiLlmEndpointOutList +from gooddata_api_client.model.json_api_llm_endpoint_patch_document import JsonApiLlmEndpointPatchDocument + + +class LLMEndpointsApi(object): + """NOTE: This class is auto generated by OpenAPI Generator + Ref: https://openapi-generator.tech + + Do not edit the class manually. + """ + + def __init__(self, api_client=None): + if api_client is None: + api_client = ApiClient() + self.api_client = api_client + self.create_entity_llm_endpoints_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmEndpointOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmEndpoints', + 'operation_id': 'create_entity_llm_endpoints', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'json_api_llm_endpoint_in_document', + ], + 'required': [ + 'json_api_llm_endpoint_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'json_api_llm_endpoint_in_document': + (JsonApiLlmEndpointInDocument,), + }, + 'attribute_map': { + }, + 'location_map': { + 'json_api_llm_endpoint_in_document': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.delete_entity_llm_endpoints_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmEndpoints/{id}', + 'operation_id': 'delete_entity_llm_endpoints', + 'http_method': 'DELETE', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'filter', + ], + 'required': [ + 'id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) + self.get_all_entities_llm_endpoints_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmEndpointOutList,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmEndpoints', + 'operation_id': 'get_all_entities_llm_endpoints', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'filter', + 'page', + 'size', + 'sort', + 'meta_include', + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + 'meta_include', + ], + 'validation': [ + 'meta_include', + ] + }, + root_map={ + 'validations': { + ('meta_include',): { + + }, + }, + 'allowed_values': { + ('meta_include',): { + + "PAGE": "page", + "ALL": "all", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'filter': + (str,), + 'page': + (int,), + 'size': + (int,), + 'sort': + ([str],), + 'meta_include': + ([str],), + }, + 'attribute_map': { + 'filter': 'filter', + 'page': 'page', + 'size': 'size', + 'sort': 'sort', + 'meta_include': 'metaInclude', + }, + 'location_map': { + 'filter': 'query', + 'page': 'query', + 'size': 'query', + 'sort': 'query', + 'meta_include': 'query', + }, + 'collection_format_map': { + 'sort': 'multi', + 'meta_include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.get_entity_llm_endpoints_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmEndpointOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmEndpoints/{id}', + 'operation_id': 'get_entity_llm_endpoints', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'filter', + ], + 'required': [ + 'id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.patch_entity_llm_endpoints_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmEndpointOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmEndpoints/{id}', + 'operation_id': 'patch_entity_llm_endpoints', + 'http_method': 'PATCH', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_llm_endpoint_patch_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_llm_endpoint_patch_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'json_api_llm_endpoint_patch_document': + (JsonApiLlmEndpointPatchDocument,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'json_api_llm_endpoint_patch_document': 'body', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.update_entity_llm_endpoints_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmEndpointOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmEndpoints/{id}', + 'operation_id': 'update_entity_llm_endpoints', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_llm_endpoint_in_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_llm_endpoint_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'json_api_llm_endpoint_in_document': + (JsonApiLlmEndpointInDocument,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'json_api_llm_endpoint_in_document': 'body', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + + def create_entity_llm_endpoints( + self, + json_api_llm_endpoint_in_document, + **kwargs + ): + """Post LLM endpoint entities # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_llm_endpoints(json_api_llm_endpoint_in_document, async_req=True) + >>> result = thread.get() + + Args: + json_api_llm_endpoint_in_document (JsonApiLlmEndpointInDocument): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiLlmEndpointOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['json_api_llm_endpoint_in_document'] = \ + json_api_llm_endpoint_in_document + return self.create_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + + def delete_entity_llm_endpoints( + self, + id, + **kwargs + ): + """delete_entity_llm_endpoints # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.delete_entity_llm_endpoints(id, async_req=True) + >>> result = thread.get() + + Args: + id (str): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + return self.delete_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + + def get_all_entities_llm_endpoints( + self, + **kwargs + ): + """Get all LLM endpoint entities # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_all_entities_llm_endpoints(async_req=True) + >>> result = thread.get() + + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 + size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 + sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] + meta_include ([str]): Include Meta objects.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiLlmEndpointOutList + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + return self.get_all_entities_llm_endpoints_endpoint.call_with_http_info(**kwargs) + + def get_entity_llm_endpoints( + self, + id, + **kwargs + ): + """Get LLM endpoint entity # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_entity_llm_endpoints(id, async_req=True) + >>> result = thread.get() + + Args: + id (str): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiLlmEndpointOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + return self.get_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + + def patch_entity_llm_endpoints( + self, + id, + json_api_llm_endpoint_patch_document, + **kwargs + ): + """Patch LLM endpoint entity # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.patch_entity_llm_endpoints(id, json_api_llm_endpoint_patch_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_llm_endpoint_patch_document (JsonApiLlmEndpointPatchDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiLlmEndpointOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + kwargs['json_api_llm_endpoint_patch_document'] = \ + json_api_llm_endpoint_patch_document + return self.patch_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + + def update_entity_llm_endpoints( + self, + id, + json_api_llm_endpoint_in_document, + **kwargs + ): + """PUT LLM endpoint entity # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.update_entity_llm_endpoints(id, json_api_llm_endpoint_in_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_llm_endpoint_in_document (JsonApiLlmEndpointInDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiLlmEndpointOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + kwargs['json_api_llm_endpoint_in_document'] = \ + json_api_llm_endpoint_in_document + return self.update_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + diff --git a/gooddata-api-client/gooddata_api_client/api/metadata_sync_api.py b/gooddata-api-client/gooddata_api_client/api/metadata_sync_api.py new file mode 100644 index 000000000..4020a745c --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/api/metadata_sync_api.py @@ -0,0 +1,286 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.api_client import ApiClient, Endpoint as _Endpoint +from gooddata_api_client.model_utils import ( # noqa: F401 + check_allowed_values, + check_validations, + date, + datetime, + file_type, + none_type, + validate_and_convert_types +) + + +class MetadataSyncApi(object): + """NOTE: This class is auto generated by OpenAPI Generator + Ref: https://openapi-generator.tech + + Do not edit the class manually. + """ + + def __init__(self, api_client=None): + if api_client is None: + api_client = ApiClient() + self.api_client = api_client + self.metadata_sync_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/metadataSync', + 'operation_id': 'metadata_sync', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + ], + 'required': [ + 'workspace_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) + self.metadata_sync_organization_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/actions/organization/metadataSync', + 'operation_id': 'metadata_sync_organization', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + }, + 'attribute_map': { + }, + 'location_map': { + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) + + def metadata_sync( + self, + workspace_id, + **kwargs + ): + """(BETA) Sync Metadata to other services # noqa: E501 + + (BETA) Temporary solution. Later relevant metadata actions will trigger it in its scope only. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.metadata_sync(workspace_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + return self.metadata_sync_endpoint.call_with_http_info(**kwargs) + + def metadata_sync_organization( + self, + **kwargs + ): + """(BETA) Sync organization scope Metadata to other services # noqa: E501 + + (BETA) Temporary solution. Later relevant metadata actions will trigger sync in their scope only. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.metadata_sync_organization(async_req=True) + >>> result = thread.get() + + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + return self.metadata_sync_organization_endpoint.call_with_http_info(**kwargs) + diff --git a/gooddata-api-client/gooddata_api_client/api/notification_channels_api.py b/gooddata-api-client/gooddata_api_client/api/notification_channels_api.py index df65fb7c1..88421afb8 100644 --- a/gooddata-api-client/gooddata_api_client/api/notification_channels_api.py +++ b/gooddata-api-client/gooddata_api_client/api/notification_channels_api.py @@ -514,7 +514,7 @@ def delete_entity_notification_channels( id, **kwargs ): - """delete_entity_notification_channels # noqa: E501 + """Delete Notification Channel entity # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True diff --git a/gooddata-api-client/gooddata_api_client/api/organization_model_controller_api.py b/gooddata-api-client/gooddata_api_client/api/organization_model_controller_api.py index d395a6bca..85b17f82e 100644 --- a/gooddata-api-client/gooddata_api_client/api/organization_model_controller_api.py +++ b/gooddata-api-client/gooddata_api_client/api/organization_model_controller_api.py @@ -38,10 +38,18 @@ from gooddata_api_client.model.json_api_data_source_patch_document import JsonApiDataSourcePatchDocument from gooddata_api_client.model.json_api_entitlement_out_document import JsonApiEntitlementOutDocument from gooddata_api_client.model.json_api_entitlement_out_list import JsonApiEntitlementOutList +from gooddata_api_client.model.json_api_identity_provider_in_document import JsonApiIdentityProviderInDocument +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument +from gooddata_api_client.model.json_api_identity_provider_out_list import JsonApiIdentityProviderOutList +from gooddata_api_client.model.json_api_identity_provider_patch_document import JsonApiIdentityProviderPatchDocument from gooddata_api_client.model.json_api_jwk_in_document import JsonApiJwkInDocument from gooddata_api_client.model.json_api_jwk_out_document import JsonApiJwkOutDocument from gooddata_api_client.model.json_api_jwk_out_list import JsonApiJwkOutList from gooddata_api_client.model.json_api_jwk_patch_document import JsonApiJwkPatchDocument +from gooddata_api_client.model.json_api_llm_endpoint_in_document import JsonApiLlmEndpointInDocument +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument +from gooddata_api_client.model.json_api_llm_endpoint_out_list import JsonApiLlmEndpointOutList +from gooddata_api_client.model.json_api_llm_endpoint_patch_document import JsonApiLlmEndpointPatchDocument from gooddata_api_client.model.json_api_notification_channel_in_document import JsonApiNotificationChannelInDocument from gooddata_api_client.model.json_api_notification_channel_out_document import JsonApiNotificationChannelOutDocument from gooddata_api_client.model.json_api_notification_channel_out_list import JsonApiNotificationChannelOutList @@ -249,6 +257,56 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.create_entity_identity_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiIdentityProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/identityProviders', + 'operation_id': 'create_entity_identity_providers', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'json_api_identity_provider_in_document', + ], + 'required': [ + 'json_api_identity_provider_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'json_api_identity_provider_in_document': + (JsonApiIdentityProviderInDocument,), + }, + 'attribute_map': { + }, + 'location_map': { + 'json_api_identity_provider_in_document': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) self.create_entity_jwks_endpoint = _Endpoint( settings={ 'response_type': (JsonApiJwkOutDocument,), @@ -299,6 +357,56 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.create_entity_llm_endpoints_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmEndpointOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmEndpoints', + 'operation_id': 'create_entity_llm_endpoints', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'json_api_llm_endpoint_in_document', + ], + 'required': [ + 'json_api_llm_endpoint_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'json_api_llm_endpoint_in_document': + (JsonApiLlmEndpointInDocument,), + }, + 'attribute_map': { + }, + 'location_map': { + 'json_api_llm_endpoint_in_document': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) self.create_entity_notification_channels_endpoint = _Endpoint( settings={ 'response_type': (JsonApiNotificationChannelOutDocument,), @@ -834,6 +942,65 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.delete_entity_identity_providers_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/entities/identityProviders/{id}', + 'operation_id': 'delete_entity_identity_providers', + 'http_method': 'DELETE', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'filter', + ], + 'required': [ + 'id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) self.delete_entity_jwks_endpoint = _Endpoint( settings={ 'response_type': None, @@ -893,6 +1060,65 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.delete_entity_llm_endpoints_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmEndpoints/{id}', + 'operation_id': 'delete_entity_llm_endpoints', + 'http_method': 'DELETE', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'filter', + ], + 'required': [ + 'id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) self.delete_entity_notification_channels_endpoint = _Endpoint( settings={ 'response_type': None, @@ -1649,12 +1875,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_all_entities_jwks_endpoint = _Endpoint( + self.get_all_entities_identity_providers_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiJwkOutList,), + 'response_type': (JsonApiIdentityProviderOutList,), 'auth': [], - 'endpoint_path': '/api/v1/entities/jwks', - 'operation_id': 'get_all_entities_jwks', + 'endpoint_path': '/api/v1/entities/identityProviders', + 'operation_id': 'get_all_entities_identity_providers', 'http_method': 'GET', 'servers': None, }, @@ -1729,12 +1955,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_all_entities_notification_channels_endpoint = _Endpoint( + self.get_all_entities_jwks_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiNotificationChannelOutList,), + 'response_type': (JsonApiJwkOutList,), 'auth': [], - 'endpoint_path': '/api/v1/entities/notificationChannels', - 'operation_id': 'get_all_entities_notification_channels', + 'endpoint_path': '/api/v1/entities/jwks', + 'operation_id': 'get_all_entities_jwks', 'http_method': 'GET', 'servers': None, }, @@ -1809,12 +2035,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_all_entities_organization_settings_endpoint = _Endpoint( + self.get_all_entities_llm_endpoints_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiOrganizationSettingOutList,), + 'response_type': (JsonApiLlmEndpointOutList,), 'auth': [], - 'endpoint_path': '/api/v1/entities/organizationSettings', - 'operation_id': 'get_all_entities_organization_settings', + 'endpoint_path': '/api/v1/entities/llmEndpoints', + 'operation_id': 'get_all_entities_llm_endpoints', 'http_method': 'GET', 'servers': None, }, @@ -1889,12 +2115,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_all_entities_themes_endpoint = _Endpoint( + self.get_all_entities_notification_channels_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiThemeOutList,), + 'response_type': (JsonApiNotificationChannelOutList,), 'auth': [], - 'endpoint_path': '/api/v1/entities/themes', - 'operation_id': 'get_all_entities_themes', + 'endpoint_path': '/api/v1/entities/notificationChannels', + 'operation_id': 'get_all_entities_notification_channels', 'http_method': 'GET', 'servers': None, }, @@ -1969,19 +2195,18 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_all_entities_user_groups_endpoint = _Endpoint( + self.get_all_entities_organization_settings_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiUserGroupOutList,), + 'response_type': (JsonApiOrganizationSettingOutList,), 'auth': [], - 'endpoint_path': '/api/v1/entities/userGroups', - 'operation_id': 'get_all_entities_user_groups', + 'endpoint_path': '/api/v1/entities/organizationSettings', + 'operation_id': 'get_all_entities_organization_settings', 'http_method': 'GET', 'servers': None, }, params_map={ 'all': [ 'filter', - 'include', 'page', 'size', 'sort', @@ -1991,7 +2216,6 @@ def __init__(self, api_client=None): 'nullable': [ ], 'enum': [ - 'include', 'meta_include', ], 'validation': [ @@ -2005,12 +2229,6 @@ def __init__(self, api_client=None): }, }, 'allowed_values': { - ('include',): { - - "USERGROUPS": "userGroups", - "PARENTS": "parents", - "ALL": "ALL" - }, ('meta_include',): { "PAGE": "page", @@ -2021,8 +2239,6 @@ def __init__(self, api_client=None): 'openapi_types': { 'filter': (str,), - 'include': - ([str],), 'page': (int,), 'size': @@ -2034,7 +2250,6 @@ def __init__(self, api_client=None): }, 'attribute_map': { 'filter': 'filter', - 'include': 'include', 'page': 'page', 'size': 'size', 'sort': 'sort', @@ -2042,14 +2257,12 @@ def __init__(self, api_client=None): }, 'location_map': { 'filter': 'query', - 'include': 'query', 'page': 'query', 'size': 'query', 'sort': 'query', 'meta_include': 'query', }, 'collection_format_map': { - 'include': 'csv', 'sort': 'multi', 'meta_include': 'csv', } @@ -2062,12 +2275,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_all_entities_user_identifiers_endpoint = _Endpoint( + self.get_all_entities_themes_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiUserIdentifierOutList,), + 'response_type': (JsonApiThemeOutList,), 'auth': [], - 'endpoint_path': '/api/v1/entities/userIdentifiers', - 'operation_id': 'get_all_entities_user_identifiers', + 'endpoint_path': '/api/v1/entities/themes', + 'operation_id': 'get_all_entities_themes', 'http_method': 'GET', 'servers': None, }, @@ -2142,12 +2355,185 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_all_entities_users_endpoint = _Endpoint( + self.get_all_entities_user_groups_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiUserOutList,), + 'response_type': (JsonApiUserGroupOutList,), 'auth': [], - 'endpoint_path': '/api/v1/entities/users', - 'operation_id': 'get_all_entities_users', + 'endpoint_path': '/api/v1/entities/userGroups', + 'operation_id': 'get_all_entities_user_groups', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'filter', + 'include', + 'page', + 'size', + 'sort', + 'meta_include', + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + 'include', + 'meta_include', + ], + 'validation': [ + 'meta_include', + ] + }, + root_map={ + 'validations': { + ('meta_include',): { + + }, + }, + 'allowed_values': { + ('include',): { + + "USERGROUPS": "userGroups", + "PARENTS": "parents", + "ALL": "ALL" + }, + ('meta_include',): { + + "PAGE": "page", + "ALL": "all", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'filter': + (str,), + 'include': + ([str],), + 'page': + (int,), + 'size': + (int,), + 'sort': + ([str],), + 'meta_include': + ([str],), + }, + 'attribute_map': { + 'filter': 'filter', + 'include': 'include', + 'page': 'page', + 'size': 'size', + 'sort': 'sort', + 'meta_include': 'metaInclude', + }, + 'location_map': { + 'filter': 'query', + 'include': 'query', + 'page': 'query', + 'size': 'query', + 'sort': 'query', + 'meta_include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + 'sort': 'multi', + 'meta_include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.get_all_entities_user_identifiers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiUserIdentifierOutList,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/userIdentifiers', + 'operation_id': 'get_all_entities_user_identifiers', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'filter', + 'page', + 'size', + 'sort', + 'meta_include', + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + 'meta_include', + ], + 'validation': [ + 'meta_include', + ] + }, + root_map={ + 'validations': { + ('meta_include',): { + + }, + }, + 'allowed_values': { + ('meta_include',): { + + "PAGE": "page", + "ALL": "all", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'filter': + (str,), + 'page': + (int,), + 'size': + (int,), + 'sort': + ([str],), + 'meta_include': + ([str],), + }, + 'attribute_map': { + 'filter': 'filter', + 'page': 'page', + 'size': 'size', + 'sort': 'sort', + 'meta_include': 'metaInclude', + }, + 'location_map': { + 'filter': 'query', + 'page': 'query', + 'size': 'query', + 'sort': 'query', + 'meta_include': 'query', + }, + 'collection_format_map': { + 'sort': 'multi', + 'meta_include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.get_all_entities_users_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiUserOutList,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/users', + 'operation_id': 'get_all_entities_users', 'http_method': 'GET', 'servers': None, }, @@ -2670,12 +3056,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_entity_jwks_endpoint = _Endpoint( + self.get_entity_identity_providers_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiJwkOutDocument,), + 'response_type': (JsonApiIdentityProviderOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/jwks/{id}', - 'operation_id': 'get_entity_jwks', + 'endpoint_path': '/api/v1/entities/identityProviders/{id}', + 'operation_id': 'get_entity_identity_providers', 'http_method': 'GET', 'servers': None, }, @@ -2731,12 +3117,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_entity_notification_channels_endpoint = _Endpoint( + self.get_entity_jwks_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiNotificationChannelOutDocument,), + 'response_type': (JsonApiJwkOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/notificationChannels/{id}', - 'operation_id': 'get_entity_notification_channels', + 'endpoint_path': '/api/v1/entities/jwks/{id}', + 'operation_id': 'get_entity_jwks', 'http_method': 'GET', 'servers': None, }, @@ -2792,12 +3178,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_entity_organization_settings_endpoint = _Endpoint( + self.get_entity_llm_endpoints_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiOrganizationSettingOutDocument,), + 'response_type': (JsonApiLlmEndpointOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/organizationSettings/{id}', - 'operation_id': 'get_entity_organization_settings', + 'endpoint_path': '/api/v1/entities/llmEndpoints/{id}', + 'operation_id': 'get_entity_llm_endpoints', 'http_method': 'GET', 'servers': None, }, @@ -2853,12 +3239,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_entity_themes_endpoint = _Endpoint( + self.get_entity_notification_channels_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiThemeOutDocument,), + 'response_type': (JsonApiNotificationChannelOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/themes/{id}', - 'operation_id': 'get_entity_themes', + 'endpoint_path': '/api/v1/entities/notificationChannels/{id}', + 'operation_id': 'get_entity_notification_channels', 'http_method': 'GET', 'servers': None, }, @@ -2914,12 +3300,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_entity_user_groups_endpoint = _Endpoint( + self.get_entity_organization_settings_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiUserGroupOutDocument,), + 'response_type': (JsonApiOrganizationSettingOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/userGroups/{id}', - 'operation_id': 'get_entity_user_groups', + 'endpoint_path': '/api/v1/entities/organizationSettings/{id}', + 'operation_id': 'get_entity_organization_settings', 'http_method': 'GET', 'servers': None, }, @@ -2927,7 +3313,6 @@ def __init__(self, api_client=None): 'all': [ 'id', 'filter', - 'include', ], 'required': [ 'id', @@ -2935,7 +3320,6 @@ def __init__(self, api_client=None): 'nullable': [ ], 'enum': [ - 'include', ], 'validation': [ 'id', @@ -2951,33 +3335,22 @@ def __init__(self, api_client=None): }, }, 'allowed_values': { - ('include',): { - - "USERGROUPS": "userGroups", - "PARENTS": "parents", - "ALL": "ALL" - }, }, 'openapi_types': { 'id': (str,), 'filter': (str,), - 'include': - ([str],), }, 'attribute_map': { 'id': 'id', 'filter': 'filter', - 'include': 'include', }, 'location_map': { 'id': 'path', 'filter': 'query', - 'include': 'query', }, 'collection_format_map': { - 'include': 'csv', } }, headers_map={ @@ -2988,12 +3361,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_entity_user_identifiers_endpoint = _Endpoint( + self.get_entity_themes_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiUserIdentifierOutDocument,), + 'response_type': (JsonApiThemeOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/userIdentifiers/{id}', - 'operation_id': 'get_entity_user_identifiers', + 'endpoint_path': '/api/v1/entities/themes/{id}', + 'operation_id': 'get_entity_themes', 'http_method': 'GET', 'servers': None, }, @@ -3049,12 +3422,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_entity_users_endpoint = _Endpoint( + self.get_entity_user_groups_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiUserOutDocument,), + 'response_type': (JsonApiUserGroupOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/users/{id}', - 'operation_id': 'get_entity_users', + 'endpoint_path': '/api/v1/entities/userGroups/{id}', + 'operation_id': 'get_entity_user_groups', 'http_method': 'GET', 'servers': None, }, @@ -3089,6 +3462,7 @@ def __init__(self, api_client=None): ('include',): { "USERGROUPS": "userGroups", + "PARENTS": "parents", "ALL": "ALL" }, }, @@ -3122,12 +3496,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_entity_workspaces_endpoint = _Endpoint( + self.get_entity_user_identifiers_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiWorkspaceOutDocument,), + 'response_type': (JsonApiUserIdentifierOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/workspaces/{id}', - 'operation_id': 'get_entity_workspaces', + 'endpoint_path': '/api/v1/entities/userIdentifiers/{id}', + 'operation_id': 'get_entity_user_identifiers', 'http_method': 'GET', 'servers': None, }, @@ -3135,8 +3509,6 @@ def __init__(self, api_client=None): 'all': [ 'id', 'filter', - 'include', - 'meta_include', ], 'required': [ 'id', @@ -3144,12 +3516,9 @@ def __init__(self, api_client=None): 'nullable': [ ], 'enum': [ - 'include', - 'meta_include', ], 'validation': [ 'id', - 'meta_include', ] }, root_map={ @@ -3160,52 +3529,24 @@ def __init__(self, api_client=None): 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 }, }, - ('meta_include',): { - - }, }, 'allowed_values': { - ('include',): { - - "WORKSPACES": "workspaces", - "PARENT": "parent", - "ALL": "ALL" - }, - ('meta_include',): { - - "CONFIG": "config", - "PERMISSIONS": "permissions", - "HIERARCHY": "hierarchy", - "DATAMODELDATASETS": "dataModelDatasets", - "ALL": "all", - "ALL": "ALL" - }, }, 'openapi_types': { 'id': (str,), 'filter': (str,), - 'include': - ([str],), - 'meta_include': - ([str],), }, 'attribute_map': { 'id': 'id', 'filter': 'filter', - 'include': 'include', - 'meta_include': 'metaInclude', }, 'location_map': { 'id': 'path', 'filter': 'query', - 'include': 'query', - 'meta_include': 'query', }, 'collection_format_map': { - 'include': 'csv', - 'meta_include': 'csv', } }, headers_map={ @@ -3216,28 +3557,28 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.patch_entity_color_palettes_endpoint = _Endpoint( + self.get_entity_users_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiColorPaletteOutDocument,), + 'response_type': (JsonApiUserOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/colorPalettes/{id}', - 'operation_id': 'patch_entity_color_palettes', - 'http_method': 'PATCH', + 'endpoint_path': '/api/v1/entities/users/{id}', + 'operation_id': 'get_entity_users', + 'http_method': 'GET', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_color_palette_patch_document', 'filter', + 'include', ], 'required': [ 'id', - 'json_api_color_palette_patch_document', ], 'nullable': [ ], 'enum': [ + 'include', ], 'validation': [ 'id', @@ -3253,62 +3594,70 @@ def __init__(self, api_client=None): }, }, 'allowed_values': { + ('include',): { + + "USERGROUPS": "userGroups", + "ALL": "ALL" + }, }, 'openapi_types': { 'id': (str,), - 'json_api_color_palette_patch_document': - (JsonApiColorPalettePatchDocument,), 'filter': (str,), + 'include': + ([str],), }, 'attribute_map': { 'id': 'id', 'filter': 'filter', + 'include': 'include', }, 'location_map': { 'id': 'path', - 'json_api_color_palette_patch_document': 'body', 'filter': 'query', + 'include': 'query', }, 'collection_format_map': { + 'include': 'csv', } }, headers_map={ 'accept': [ 'application/vnd.gooddata.api+json' ], - 'content_type': [ - 'application/vnd.gooddata.api+json' - ] + 'content_type': [], }, api_client=api_client ) - self.patch_entity_csp_directives_endpoint = _Endpoint( + self.get_entity_workspaces_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiCspDirectiveOutDocument,), + 'response_type': (JsonApiWorkspaceOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/cspDirectives/{id}', - 'operation_id': 'patch_entity_csp_directives', - 'http_method': 'PATCH', + 'endpoint_path': '/api/v1/entities/workspaces/{id}', + 'operation_id': 'get_entity_workspaces', + 'http_method': 'GET', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_csp_directive_patch_document', 'filter', + 'include', + 'meta_include', ], 'required': [ 'id', - 'json_api_csp_directive_patch_document', ], 'nullable': [ ], 'enum': [ + 'include', + 'meta_include', ], 'validation': [ 'id', + 'meta_include', ] }, root_map={ @@ -3319,57 +3668,80 @@ def __init__(self, api_client=None): 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 }, }, + ('meta_include',): { + + }, }, 'allowed_values': { + ('include',): { + + "WORKSPACES": "workspaces", + "PARENT": "parent", + "ALL": "ALL" + }, + ('meta_include',): { + + "CONFIG": "config", + "PERMISSIONS": "permissions", + "HIERARCHY": "hierarchy", + "DATAMODELDATASETS": "dataModelDatasets", + "ALL": "all", + "ALL": "ALL" + }, }, 'openapi_types': { 'id': (str,), - 'json_api_csp_directive_patch_document': - (JsonApiCspDirectivePatchDocument,), 'filter': (str,), + 'include': + ([str],), + 'meta_include': + ([str],), }, 'attribute_map': { 'id': 'id', 'filter': 'filter', + 'include': 'include', + 'meta_include': 'metaInclude', }, 'location_map': { 'id': 'path', - 'json_api_csp_directive_patch_document': 'body', 'filter': 'query', + 'include': 'query', + 'meta_include': 'query', }, 'collection_format_map': { + 'include': 'csv', + 'meta_include': 'csv', } }, headers_map={ 'accept': [ 'application/vnd.gooddata.api+json' ], - 'content_type': [ - 'application/vnd.gooddata.api+json' - ] + 'content_type': [], }, api_client=api_client ) - self.patch_entity_data_sources_endpoint = _Endpoint( + self.patch_entity_color_palettes_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiDataSourceOutDocument,), + 'response_type': (JsonApiColorPaletteOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/dataSources/{id}', - 'operation_id': 'patch_entity_data_sources', + 'endpoint_path': '/api/v1/entities/colorPalettes/{id}', + 'operation_id': 'patch_entity_color_palettes', 'http_method': 'PATCH', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_data_source_patch_document', + 'json_api_color_palette_patch_document', 'filter', ], 'required': [ 'id', - 'json_api_data_source_patch_document', + 'json_api_color_palette_patch_document', ], 'nullable': [ ], @@ -3393,8 +3765,8 @@ def __init__(self, api_client=None): 'openapi_types': { 'id': (str,), - 'json_api_data_source_patch_document': - (JsonApiDataSourcePatchDocument,), + 'json_api_color_palette_patch_document': + (JsonApiColorPalettePatchDocument,), 'filter': (str,), }, @@ -3404,7 +3776,7 @@ def __init__(self, api_client=None): }, 'location_map': { 'id': 'path', - 'json_api_data_source_patch_document': 'body', + 'json_api_color_palette_patch_document': 'body', 'filter': 'query', }, 'collection_format_map': { @@ -3420,24 +3792,24 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.patch_entity_jwks_endpoint = _Endpoint( + self.patch_entity_csp_directives_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiJwkOutDocument,), + 'response_type': (JsonApiCspDirectiveOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/jwks/{id}', - 'operation_id': 'patch_entity_jwks', + 'endpoint_path': '/api/v1/entities/cspDirectives/{id}', + 'operation_id': 'patch_entity_csp_directives', 'http_method': 'PATCH', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_jwk_patch_document', + 'json_api_csp_directive_patch_document', 'filter', ], 'required': [ 'id', - 'json_api_jwk_patch_document', + 'json_api_csp_directive_patch_document', ], 'nullable': [ ], @@ -3461,8 +3833,8 @@ def __init__(self, api_client=None): 'openapi_types': { 'id': (str,), - 'json_api_jwk_patch_document': - (JsonApiJwkPatchDocument,), + 'json_api_csp_directive_patch_document': + (JsonApiCspDirectivePatchDocument,), 'filter': (str,), }, @@ -3472,7 +3844,7 @@ def __init__(self, api_client=None): }, 'location_map': { 'id': 'path', - 'json_api_jwk_patch_document': 'body', + 'json_api_csp_directive_patch_document': 'body', 'filter': 'query', }, 'collection_format_map': { @@ -3488,24 +3860,24 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.patch_entity_notification_channels_endpoint = _Endpoint( + self.patch_entity_data_sources_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiNotificationChannelOutDocument,), + 'response_type': (JsonApiDataSourceOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/notificationChannels/{id}', - 'operation_id': 'patch_entity_notification_channels', + 'endpoint_path': '/api/v1/entities/dataSources/{id}', + 'operation_id': 'patch_entity_data_sources', 'http_method': 'PATCH', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_notification_channel_patch_document', + 'json_api_data_source_patch_document', 'filter', ], 'required': [ 'id', - 'json_api_notification_channel_patch_document', + 'json_api_data_source_patch_document', ], 'nullable': [ ], @@ -3529,8 +3901,8 @@ def __init__(self, api_client=None): 'openapi_types': { 'id': (str,), - 'json_api_notification_channel_patch_document': - (JsonApiNotificationChannelPatchDocument,), + 'json_api_data_source_patch_document': + (JsonApiDataSourcePatchDocument,), 'filter': (str,), }, @@ -3540,7 +3912,7 @@ def __init__(self, api_client=None): }, 'location_map': { 'id': 'path', - 'json_api_notification_channel_patch_document': 'body', + 'json_api_data_source_patch_document': 'body', 'filter': 'query', }, 'collection_format_map': { @@ -3556,24 +3928,24 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.patch_entity_organization_settings_endpoint = _Endpoint( + self.patch_entity_identity_providers_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiOrganizationSettingOutDocument,), + 'response_type': (JsonApiIdentityProviderOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/organizationSettings/{id}', - 'operation_id': 'patch_entity_organization_settings', + 'endpoint_path': '/api/v1/entities/identityProviders/{id}', + 'operation_id': 'patch_entity_identity_providers', 'http_method': 'PATCH', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_organization_setting_patch_document', + 'json_api_identity_provider_patch_document', 'filter', ], 'required': [ 'id', - 'json_api_organization_setting_patch_document', + 'json_api_identity_provider_patch_document', ], 'nullable': [ ], @@ -3597,8 +3969,8 @@ def __init__(self, api_client=None): 'openapi_types': { 'id': (str,), - 'json_api_organization_setting_patch_document': - (JsonApiOrganizationSettingPatchDocument,), + 'json_api_identity_provider_patch_document': + (JsonApiIdentityProviderPatchDocument,), 'filter': (str,), }, @@ -3608,7 +3980,7 @@ def __init__(self, api_client=None): }, 'location_map': { 'id': 'path', - 'json_api_organization_setting_patch_document': 'body', + 'json_api_identity_provider_patch_document': 'body', 'filter': 'query', }, 'collection_format_map': { @@ -3624,24 +3996,24 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.patch_entity_themes_endpoint = _Endpoint( + self.patch_entity_jwks_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiThemeOutDocument,), + 'response_type': (JsonApiJwkOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/themes/{id}', - 'operation_id': 'patch_entity_themes', + 'endpoint_path': '/api/v1/entities/jwks/{id}', + 'operation_id': 'patch_entity_jwks', 'http_method': 'PATCH', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_theme_patch_document', + 'json_api_jwk_patch_document', 'filter', ], 'required': [ 'id', - 'json_api_theme_patch_document', + 'json_api_jwk_patch_document', ], 'nullable': [ ], @@ -3665,8 +4037,8 @@ def __init__(self, api_client=None): 'openapi_types': { 'id': (str,), - 'json_api_theme_patch_document': - (JsonApiThemePatchDocument,), + 'json_api_jwk_patch_document': + (JsonApiJwkPatchDocument,), 'filter': (str,), }, @@ -3676,7 +4048,7 @@ def __init__(self, api_client=None): }, 'location_map': { 'id': 'path', - 'json_api_theme_patch_document': 'body', + 'json_api_jwk_patch_document': 'body', 'filter': 'query', }, 'collection_format_map': { @@ -3692,30 +4064,28 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.patch_entity_user_groups_endpoint = _Endpoint( + self.patch_entity_llm_endpoints_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiUserGroupOutDocument,), + 'response_type': (JsonApiLlmEndpointOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/userGroups/{id}', - 'operation_id': 'patch_entity_user_groups', + 'endpoint_path': '/api/v1/entities/llmEndpoints/{id}', + 'operation_id': 'patch_entity_llm_endpoints', 'http_method': 'PATCH', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_user_group_patch_document', + 'json_api_llm_endpoint_patch_document', 'filter', - 'include', ], 'required': [ 'id', - 'json_api_user_group_patch_document', + 'json_api_llm_endpoint_patch_document', ], 'nullable': [ ], 'enum': [ - 'include', ], 'validation': [ 'id', @@ -3731,36 +4101,25 @@ def __init__(self, api_client=None): }, }, 'allowed_values': { - ('include',): { - - "USERGROUPS": "userGroups", - "PARENTS": "parents", - "ALL": "ALL" - }, }, 'openapi_types': { 'id': (str,), - 'json_api_user_group_patch_document': - (JsonApiUserGroupPatchDocument,), + 'json_api_llm_endpoint_patch_document': + (JsonApiLlmEndpointPatchDocument,), 'filter': (str,), - 'include': - ([str],), }, 'attribute_map': { 'id': 'id', 'filter': 'filter', - 'include': 'include', }, 'location_map': { 'id': 'path', - 'json_api_user_group_patch_document': 'body', + 'json_api_llm_endpoint_patch_document': 'body', 'filter': 'query', - 'include': 'query', }, 'collection_format_map': { - 'include': 'csv', } }, headers_map={ @@ -3773,30 +4132,28 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.patch_entity_users_endpoint = _Endpoint( + self.patch_entity_notification_channels_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiUserOutDocument,), + 'response_type': (JsonApiNotificationChannelOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/users/{id}', - 'operation_id': 'patch_entity_users', + 'endpoint_path': '/api/v1/entities/notificationChannels/{id}', + 'operation_id': 'patch_entity_notification_channels', 'http_method': 'PATCH', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_user_patch_document', + 'json_api_notification_channel_patch_document', 'filter', - 'include', ], 'required': [ 'id', - 'json_api_user_patch_document', + 'json_api_notification_channel_patch_document', ], 'nullable': [ ], 'enum': [ - 'include', ], 'validation': [ 'id', @@ -3812,35 +4169,25 @@ def __init__(self, api_client=None): }, }, 'allowed_values': { - ('include',): { - - "USERGROUPS": "userGroups", - "ALL": "ALL" - }, }, 'openapi_types': { 'id': (str,), - 'json_api_user_patch_document': - (JsonApiUserPatchDocument,), + 'json_api_notification_channel_patch_document': + (JsonApiNotificationChannelPatchDocument,), 'filter': (str,), - 'include': - ([str],), }, 'attribute_map': { 'id': 'id', 'filter': 'filter', - 'include': 'include', }, 'location_map': { 'id': 'path', - 'json_api_user_patch_document': 'body', + 'json_api_notification_channel_patch_document': 'body', 'filter': 'query', - 'include': 'query', }, 'collection_format_map': { - 'include': 'csv', } }, headers_map={ @@ -3853,30 +4200,28 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.patch_entity_workspaces_endpoint = _Endpoint( + self.patch_entity_organization_settings_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiWorkspaceOutDocument,), + 'response_type': (JsonApiOrganizationSettingOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/workspaces/{id}', - 'operation_id': 'patch_entity_workspaces', + 'endpoint_path': '/api/v1/entities/organizationSettings/{id}', + 'operation_id': 'patch_entity_organization_settings', 'http_method': 'PATCH', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_workspace_patch_document', + 'json_api_organization_setting_patch_document', 'filter', - 'include', ], 'required': [ 'id', - 'json_api_workspace_patch_document', + 'json_api_organization_setting_patch_document', ], 'nullable': [ ], 'enum': [ - 'include', ], 'validation': [ 'id', @@ -3892,36 +4237,25 @@ def __init__(self, api_client=None): }, }, 'allowed_values': { - ('include',): { - - "WORKSPACES": "workspaces", - "PARENT": "parent", - "ALL": "ALL" - }, }, 'openapi_types': { 'id': (str,), - 'json_api_workspace_patch_document': - (JsonApiWorkspacePatchDocument,), + 'json_api_organization_setting_patch_document': + (JsonApiOrganizationSettingPatchDocument,), 'filter': (str,), - 'include': - ([str],), }, 'attribute_map': { 'id': 'id', 'filter': 'filter', - 'include': 'include', }, 'location_map': { 'id': 'path', - 'json_api_workspace_patch_document': 'body', + 'json_api_organization_setting_patch_document': 'body', 'filter': 'query', - 'include': 'query', }, 'collection_format_map': { - 'include': 'csv', } }, headers_map={ @@ -3934,24 +4268,24 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.update_entity_color_palettes_endpoint = _Endpoint( + self.patch_entity_themes_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiColorPaletteOutDocument,), + 'response_type': (JsonApiThemeOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/colorPalettes/{id}', - 'operation_id': 'update_entity_color_palettes', - 'http_method': 'PUT', + 'endpoint_path': '/api/v1/entities/themes/{id}', + 'operation_id': 'patch_entity_themes', + 'http_method': 'PATCH', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_color_palette_in_document', + 'json_api_theme_patch_document', 'filter', ], 'required': [ 'id', - 'json_api_color_palette_in_document', + 'json_api_theme_patch_document', ], 'nullable': [ ], @@ -3975,8 +4309,8 @@ def __init__(self, api_client=None): 'openapi_types': { 'id': (str,), - 'json_api_color_palette_in_document': - (JsonApiColorPaletteInDocument,), + 'json_api_theme_patch_document': + (JsonApiThemePatchDocument,), 'filter': (str,), }, @@ -3986,7 +4320,7 @@ def __init__(self, api_client=None): }, 'location_map': { 'id': 'path', - 'json_api_color_palette_in_document': 'body', + 'json_api_theme_patch_document': 'body', 'filter': 'query', }, 'collection_format_map': { @@ -4002,28 +4336,30 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.update_entity_csp_directives_endpoint = _Endpoint( + self.patch_entity_user_groups_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiCspDirectiveOutDocument,), + 'response_type': (JsonApiUserGroupOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/cspDirectives/{id}', - 'operation_id': 'update_entity_csp_directives', - 'http_method': 'PUT', + 'endpoint_path': '/api/v1/entities/userGroups/{id}', + 'operation_id': 'patch_entity_user_groups', + 'http_method': 'PATCH', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_csp_directive_in_document', + 'json_api_user_group_patch_document', 'filter', + 'include', ], 'required': [ 'id', - 'json_api_csp_directive_in_document', + 'json_api_user_group_patch_document', ], 'nullable': [ ], 'enum': [ + 'include', ], 'validation': [ 'id', @@ -4039,25 +4375,36 @@ def __init__(self, api_client=None): }, }, 'allowed_values': { + ('include',): { + + "USERGROUPS": "userGroups", + "PARENTS": "parents", + "ALL": "ALL" + }, }, 'openapi_types': { 'id': (str,), - 'json_api_csp_directive_in_document': - (JsonApiCspDirectiveInDocument,), + 'json_api_user_group_patch_document': + (JsonApiUserGroupPatchDocument,), 'filter': (str,), + 'include': + ([str],), }, 'attribute_map': { 'id': 'id', 'filter': 'filter', + 'include': 'include', }, 'location_map': { 'id': 'path', - 'json_api_csp_directive_in_document': 'body', + 'json_api_user_group_patch_document': 'body', 'filter': 'query', + 'include': 'query', }, 'collection_format_map': { + 'include': 'csv', } }, headers_map={ @@ -4070,28 +4417,30 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.update_entity_data_sources_endpoint = _Endpoint( + self.patch_entity_users_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiDataSourceOutDocument,), + 'response_type': (JsonApiUserOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/dataSources/{id}', - 'operation_id': 'update_entity_data_sources', - 'http_method': 'PUT', + 'endpoint_path': '/api/v1/entities/users/{id}', + 'operation_id': 'patch_entity_users', + 'http_method': 'PATCH', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_data_source_in_document', + 'json_api_user_patch_document', 'filter', + 'include', ], 'required': [ 'id', - 'json_api_data_source_in_document', + 'json_api_user_patch_document', ], 'nullable': [ ], 'enum': [ + 'include', ], 'validation': [ 'id', @@ -4107,25 +4456,35 @@ def __init__(self, api_client=None): }, }, 'allowed_values': { + ('include',): { + + "USERGROUPS": "userGroups", + "ALL": "ALL" + }, }, 'openapi_types': { 'id': (str,), - 'json_api_data_source_in_document': - (JsonApiDataSourceInDocument,), + 'json_api_user_patch_document': + (JsonApiUserPatchDocument,), 'filter': (str,), + 'include': + ([str],), }, 'attribute_map': { 'id': 'id', 'filter': 'filter', + 'include': 'include', }, 'location_map': { 'id': 'path', - 'json_api_data_source_in_document': 'body', + 'json_api_user_patch_document': 'body', 'filter': 'query', + 'include': 'query', }, 'collection_format_map': { + 'include': 'csv', } }, headers_map={ @@ -4138,28 +4497,30 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.update_entity_jwks_endpoint = _Endpoint( + self.patch_entity_workspaces_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiJwkOutDocument,), + 'response_type': (JsonApiWorkspaceOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/jwks/{id}', - 'operation_id': 'update_entity_jwks', - 'http_method': 'PUT', + 'endpoint_path': '/api/v1/entities/workspaces/{id}', + 'operation_id': 'patch_entity_workspaces', + 'http_method': 'PATCH', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_jwk_in_document', + 'json_api_workspace_patch_document', 'filter', + 'include', ], 'required': [ 'id', - 'json_api_jwk_in_document', + 'json_api_workspace_patch_document', ], 'nullable': [ ], 'enum': [ + 'include', ], 'validation': [ 'id', @@ -4175,25 +4536,36 @@ def __init__(self, api_client=None): }, }, 'allowed_values': { + ('include',): { + + "WORKSPACES": "workspaces", + "PARENT": "parent", + "ALL": "ALL" + }, }, 'openapi_types': { 'id': (str,), - 'json_api_jwk_in_document': - (JsonApiJwkInDocument,), + 'json_api_workspace_patch_document': + (JsonApiWorkspacePatchDocument,), 'filter': (str,), + 'include': + ([str],), }, 'attribute_map': { 'id': 'id', 'filter': 'filter', + 'include': 'include', }, 'location_map': { 'id': 'path', - 'json_api_jwk_in_document': 'body', + 'json_api_workspace_patch_document': 'body', 'filter': 'query', + 'include': 'query', }, 'collection_format_map': { + 'include': 'csv', } }, headers_map={ @@ -4206,24 +4578,24 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.update_entity_notification_channels_endpoint = _Endpoint( + self.update_entity_color_palettes_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiNotificationChannelOutDocument,), + 'response_type': (JsonApiColorPaletteOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/notificationChannels/{id}', - 'operation_id': 'update_entity_notification_channels', + 'endpoint_path': '/api/v1/entities/colorPalettes/{id}', + 'operation_id': 'update_entity_color_palettes', 'http_method': 'PUT', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_notification_channel_in_document', + 'json_api_color_palette_in_document', 'filter', ], 'required': [ 'id', - 'json_api_notification_channel_in_document', + 'json_api_color_palette_in_document', ], 'nullable': [ ], @@ -4247,8 +4619,8 @@ def __init__(self, api_client=None): 'openapi_types': { 'id': (str,), - 'json_api_notification_channel_in_document': - (JsonApiNotificationChannelInDocument,), + 'json_api_color_palette_in_document': + (JsonApiColorPaletteInDocument,), 'filter': (str,), }, @@ -4258,7 +4630,7 @@ def __init__(self, api_client=None): }, 'location_map': { 'id': 'path', - 'json_api_notification_channel_in_document': 'body', + 'json_api_color_palette_in_document': 'body', 'filter': 'query', }, 'collection_format_map': { @@ -4274,24 +4646,24 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.update_entity_organization_settings_endpoint = _Endpoint( + self.update_entity_csp_directives_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiOrganizationSettingOutDocument,), + 'response_type': (JsonApiCspDirectiveOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/organizationSettings/{id}', - 'operation_id': 'update_entity_organization_settings', + 'endpoint_path': '/api/v1/entities/cspDirectives/{id}', + 'operation_id': 'update_entity_csp_directives', 'http_method': 'PUT', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_organization_setting_in_document', + 'json_api_csp_directive_in_document', 'filter', ], 'required': [ 'id', - 'json_api_organization_setting_in_document', + 'json_api_csp_directive_in_document', ], 'nullable': [ ], @@ -4315,8 +4687,8 @@ def __init__(self, api_client=None): 'openapi_types': { 'id': (str,), - 'json_api_organization_setting_in_document': - (JsonApiOrganizationSettingInDocument,), + 'json_api_csp_directive_in_document': + (JsonApiCspDirectiveInDocument,), 'filter': (str,), }, @@ -4326,7 +4698,7 @@ def __init__(self, api_client=None): }, 'location_map': { 'id': 'path', - 'json_api_organization_setting_in_document': 'body', + 'json_api_csp_directive_in_document': 'body', 'filter': 'query', }, 'collection_format_map': { @@ -4342,24 +4714,24 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.update_entity_themes_endpoint = _Endpoint( + self.update_entity_data_sources_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiThemeOutDocument,), + 'response_type': (JsonApiDataSourceOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/themes/{id}', - 'operation_id': 'update_entity_themes', + 'endpoint_path': '/api/v1/entities/dataSources/{id}', + 'operation_id': 'update_entity_data_sources', 'http_method': 'PUT', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_theme_in_document', + 'json_api_data_source_in_document', 'filter', ], 'required': [ 'id', - 'json_api_theme_in_document', + 'json_api_data_source_in_document', ], 'nullable': [ ], @@ -4383,8 +4755,8 @@ def __init__(self, api_client=None): 'openapi_types': { 'id': (str,), - 'json_api_theme_in_document': - (JsonApiThemeInDocument,), + 'json_api_data_source_in_document': + (JsonApiDataSourceInDocument,), 'filter': (str,), }, @@ -4394,7 +4766,7 @@ def __init__(self, api_client=None): }, 'location_map': { 'id': 'path', - 'json_api_theme_in_document': 'body', + 'json_api_data_source_in_document': 'body', 'filter': 'query', }, 'collection_format_map': { @@ -4410,30 +4782,28 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.update_entity_user_groups_endpoint = _Endpoint( + self.update_entity_identity_providers_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiUserGroupOutDocument,), + 'response_type': (JsonApiIdentityProviderOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/userGroups/{id}', - 'operation_id': 'update_entity_user_groups', + 'endpoint_path': '/api/v1/entities/identityProviders/{id}', + 'operation_id': 'update_entity_identity_providers', 'http_method': 'PUT', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_user_group_in_document', + 'json_api_identity_provider_in_document', 'filter', - 'include', ], 'required': [ 'id', - 'json_api_user_group_in_document', + 'json_api_identity_provider_in_document', ], 'nullable': [ ], 'enum': [ - 'include', ], 'validation': [ 'id', @@ -4449,36 +4819,25 @@ def __init__(self, api_client=None): }, }, 'allowed_values': { - ('include',): { - - "USERGROUPS": "userGroups", - "PARENTS": "parents", - "ALL": "ALL" - }, }, 'openapi_types': { 'id': (str,), - 'json_api_user_group_in_document': - (JsonApiUserGroupInDocument,), + 'json_api_identity_provider_in_document': + (JsonApiIdentityProviderInDocument,), 'filter': (str,), - 'include': - ([str],), }, 'attribute_map': { 'id': 'id', 'filter': 'filter', - 'include': 'include', }, 'location_map': { 'id': 'path', - 'json_api_user_group_in_document': 'body', + 'json_api_identity_provider_in_document': 'body', 'filter': 'query', - 'include': 'query', }, 'collection_format_map': { - 'include': 'csv', } }, headers_map={ @@ -4491,30 +4850,28 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.update_entity_users_endpoint = _Endpoint( + self.update_entity_jwks_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiUserOutDocument,), + 'response_type': (JsonApiJwkOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/users/{id}', - 'operation_id': 'update_entity_users', + 'endpoint_path': '/api/v1/entities/jwks/{id}', + 'operation_id': 'update_entity_jwks', 'http_method': 'PUT', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_user_in_document', + 'json_api_jwk_in_document', 'filter', - 'include', ], 'required': [ 'id', - 'json_api_user_in_document', + 'json_api_jwk_in_document', ], 'nullable': [ ], 'enum': [ - 'include', ], 'validation': [ 'id', @@ -4530,35 +4887,25 @@ def __init__(self, api_client=None): }, }, 'allowed_values': { - ('include',): { - - "USERGROUPS": "userGroups", - "ALL": "ALL" - }, }, 'openapi_types': { 'id': (str,), - 'json_api_user_in_document': - (JsonApiUserInDocument,), + 'json_api_jwk_in_document': + (JsonApiJwkInDocument,), 'filter': (str,), - 'include': - ([str],), }, 'attribute_map': { 'id': 'id', 'filter': 'filter', - 'include': 'include', }, 'location_map': { 'id': 'path', - 'json_api_user_in_document': 'body', + 'json_api_jwk_in_document': 'body', 'filter': 'query', - 'include': 'query', }, 'collection_format_map': { - 'include': 'csv', } }, headers_map={ @@ -4571,30 +4918,28 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.update_entity_workspaces_endpoint = _Endpoint( + self.update_entity_llm_endpoints_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiWorkspaceOutDocument,), + 'response_type': (JsonApiLlmEndpointOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/workspaces/{id}', - 'operation_id': 'update_entity_workspaces', + 'endpoint_path': '/api/v1/entities/llmEndpoints/{id}', + 'operation_id': 'update_entity_llm_endpoints', 'http_method': 'PUT', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_workspace_in_document', + 'json_api_llm_endpoint_in_document', 'filter', - 'include', ], 'required': [ 'id', - 'json_api_workspace_in_document', + 'json_api_llm_endpoint_in_document', ], 'nullable': [ ], 'enum': [ - 'include', ], 'validation': [ 'id', @@ -4610,36 +4955,25 @@ def __init__(self, api_client=None): }, }, 'allowed_values': { - ('include',): { - - "WORKSPACES": "workspaces", - "PARENT": "parent", - "ALL": "ALL" - }, }, 'openapi_types': { 'id': (str,), - 'json_api_workspace_in_document': - (JsonApiWorkspaceInDocument,), + 'json_api_llm_endpoint_in_document': + (JsonApiLlmEndpointInDocument,), 'filter': (str,), - 'include': - ([str],), }, 'attribute_map': { 'id': 'id', 'filter': 'filter', - 'include': 'include', }, 'location_map': { 'id': 'path', - 'json_api_workspace_in_document': 'body', + 'json_api_llm_endpoint_in_document': 'body', 'filter': 'query', - 'include': 'query', }, 'collection_format_map': { - 'include': 'csv', } }, headers_map={ @@ -4652,24 +4986,1214 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.update_entity_notification_channels_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiNotificationChannelOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/notificationChannels/{id}', + 'operation_id': 'update_entity_notification_channels', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_notification_channel_in_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_notification_channel_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'json_api_notification_channel_in_document': + (JsonApiNotificationChannelInDocument,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'json_api_notification_channel_in_document': 'body', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.update_entity_organization_settings_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiOrganizationSettingOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/organizationSettings/{id}', + 'operation_id': 'update_entity_organization_settings', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_organization_setting_in_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_organization_setting_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'json_api_organization_setting_in_document': + (JsonApiOrganizationSettingInDocument,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'json_api_organization_setting_in_document': 'body', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.update_entity_themes_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiThemeOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/themes/{id}', + 'operation_id': 'update_entity_themes', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_theme_in_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_theme_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'id': + (str,), + 'json_api_theme_in_document': + (JsonApiThemeInDocument,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'json_api_theme_in_document': 'body', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.update_entity_user_groups_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiUserGroupOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/userGroups/{id}', + 'operation_id': 'update_entity_user_groups', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_user_group_in_document', + 'filter', + 'include', + ], + 'required': [ + 'id', + 'json_api_user_group_in_document', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + ('include',): { + + "USERGROUPS": "userGroups", + "PARENTS": "parents", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'id': + (str,), + 'json_api_user_group_in_document': + (JsonApiUserGroupInDocument,), + 'filter': + (str,), + 'include': + ([str],), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + 'include': 'include', + }, + 'location_map': { + 'id': 'path', + 'json_api_user_group_in_document': 'body', + 'filter': 'query', + 'include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.update_entity_users_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiUserOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/users/{id}', + 'operation_id': 'update_entity_users', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_user_in_document', + 'filter', + 'include', + ], + 'required': [ + 'id', + 'json_api_user_in_document', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + ('include',): { + + "USERGROUPS": "userGroups", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'id': + (str,), + 'json_api_user_in_document': + (JsonApiUserInDocument,), + 'filter': + (str,), + 'include': + ([str],), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + 'include': 'include', + }, + 'location_map': { + 'id': 'path', + 'json_api_user_in_document': 'body', + 'filter': 'query', + 'include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.update_entity_workspaces_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiWorkspaceOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{id}', + 'operation_id': 'update_entity_workspaces', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_workspace_in_document', + 'filter', + 'include', + ], + 'required': [ + 'id', + 'json_api_workspace_in_document', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + ], + 'validation': [ + 'id', + ] + }, + root_map={ + 'validations': { + ('id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + ('include',): { + + "WORKSPACES": "workspaces", + "PARENT": "parent", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'id': + (str,), + 'json_api_workspace_in_document': + (JsonApiWorkspaceInDocument,), + 'filter': + (str,), + 'include': + ([str],), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + 'include': 'include', + }, + 'location_map': { + 'id': 'path', + 'json_api_workspace_in_document': 'body', + 'filter': 'query', + 'include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + + def create_entity_color_palettes( + self, + json_api_color_palette_in_document, + **kwargs + ): + """Post Color Pallettes # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_color_palettes(json_api_color_palette_in_document, async_req=True) + >>> result = thread.get() + + Args: + json_api_color_palette_in_document (JsonApiColorPaletteInDocument): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiColorPaletteOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['json_api_color_palette_in_document'] = \ + json_api_color_palette_in_document + return self.create_entity_color_palettes_endpoint.call_with_http_info(**kwargs) + + def create_entity_csp_directives( + self, + json_api_csp_directive_in_document, + **kwargs + ): + """Post CSP Directives # noqa: E501 + + Context Security Police Directive # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_csp_directives(json_api_csp_directive_in_document, async_req=True) + >>> result = thread.get() + + Args: + json_api_csp_directive_in_document (JsonApiCspDirectiveInDocument): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiCspDirectiveOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['json_api_csp_directive_in_document'] = \ + json_api_csp_directive_in_document + return self.create_entity_csp_directives_endpoint.call_with_http_info(**kwargs) + + def create_entity_data_sources( + self, + json_api_data_source_in_document, + **kwargs + ): + """Post Data Sources # noqa: E501 + + Data Source - represents data source for the workspace # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_data_sources(json_api_data_source_in_document, async_req=True) + >>> result = thread.get() + + Args: + json_api_data_source_in_document (JsonApiDataSourceInDocument): + + Keyword Args: + meta_include ([str]): Include Meta objects.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiDataSourceOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['json_api_data_source_in_document'] = \ + json_api_data_source_in_document + return self.create_entity_data_sources_endpoint.call_with_http_info(**kwargs) + + def create_entity_identity_providers( + self, + json_api_identity_provider_in_document, + **kwargs + ): + """Post Identity Providers # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_identity_providers(json_api_identity_provider_in_document, async_req=True) + >>> result = thread.get() + + Args: + json_api_identity_provider_in_document (JsonApiIdentityProviderInDocument): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiIdentityProviderOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['json_api_identity_provider_in_document'] = \ + json_api_identity_provider_in_document + return self.create_entity_identity_providers_endpoint.call_with_http_info(**kwargs) + + def create_entity_jwks( + self, + json_api_jwk_in_document, + **kwargs + ): + """Post Jwks # noqa: E501 + + Creates JSON web key - used to verify JSON web tokens (Jwts) # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_jwks(json_api_jwk_in_document, async_req=True) + >>> result = thread.get() + + Args: + json_api_jwk_in_document (JsonApiJwkInDocument): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiJwkOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['json_api_jwk_in_document'] = \ + json_api_jwk_in_document + return self.create_entity_jwks_endpoint.call_with_http_info(**kwargs) + + def create_entity_llm_endpoints( + self, + json_api_llm_endpoint_in_document, + **kwargs + ): + """Post LLM endpoint entities # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_llm_endpoints(json_api_llm_endpoint_in_document, async_req=True) + >>> result = thread.get() + + Args: + json_api_llm_endpoint_in_document (JsonApiLlmEndpointInDocument): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiLlmEndpointOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['json_api_llm_endpoint_in_document'] = \ + json_api_llm_endpoint_in_document + return self.create_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + + def create_entity_notification_channels( + self, + json_api_notification_channel_post_optional_id_document, + **kwargs + ): + """Post Notification Channel entities # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_notification_channels(json_api_notification_channel_post_optional_id_document, async_req=True) + >>> result = thread.get() + + Args: + json_api_notification_channel_post_optional_id_document (JsonApiNotificationChannelPostOptionalIdDocument): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiNotificationChannelOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['json_api_notification_channel_post_optional_id_document'] = \ + json_api_notification_channel_post_optional_id_document + return self.create_entity_notification_channels_endpoint.call_with_http_info(**kwargs) + + def create_entity_organization_settings( + self, + json_api_organization_setting_in_document, + **kwargs + ): + """Post Organization Setting entities # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_organization_settings(json_api_organization_setting_in_document, async_req=True) + >>> result = thread.get() + + Args: + json_api_organization_setting_in_document (JsonApiOrganizationSettingInDocument): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiOrganizationSettingOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['json_api_organization_setting_in_document'] = \ + json_api_organization_setting_in_document + return self.create_entity_organization_settings_endpoint.call_with_http_info(**kwargs) + + def create_entity_themes( + self, + json_api_theme_in_document, + **kwargs + ): + """Post Theming # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_themes(json_api_theme_in_document, async_req=True) + >>> result = thread.get() + + Args: + json_api_theme_in_document (JsonApiThemeInDocument): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously - def create_entity_color_palettes( + Returns: + JsonApiThemeOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['json_api_theme_in_document'] = \ + json_api_theme_in_document + return self.create_entity_themes_endpoint.call_with_http_info(**kwargs) + + def create_entity_user_groups( self, - json_api_color_palette_in_document, + json_api_user_group_in_document, **kwargs ): - """Post Color Pallettes # noqa: E501 + """Post User Group entities # noqa: E501 + User Group - creates tree-like structure for categorizing users # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_entity_color_palettes(json_api_color_palette_in_document, async_req=True) + >>> thread = api.create_entity_user_groups(json_api_user_group_in_document, async_req=True) >>> result = thread.get() Args: - json_api_color_palette_in_document (JsonApiColorPaletteInDocument): + json_api_user_group_in_document (JsonApiUserGroupInDocument): Keyword Args: + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -4702,7 +6226,7 @@ def create_entity_color_palettes( async_req (bool): execute request asynchronously Returns: - JsonApiColorPaletteOutDocument + JsonApiUserGroupOutDocument If the method is called asynchronously, returns the request thread. """ @@ -4731,28 +6255,29 @@ def create_entity_color_palettes( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['json_api_color_palette_in_document'] = \ - json_api_color_palette_in_document - return self.create_entity_color_palettes_endpoint.call_with_http_info(**kwargs) + kwargs['json_api_user_group_in_document'] = \ + json_api_user_group_in_document + return self.create_entity_user_groups_endpoint.call_with_http_info(**kwargs) - def create_entity_csp_directives( + def create_entity_users( self, - json_api_csp_directive_in_document, + json_api_user_in_document, **kwargs ): - """Post CSP Directives # noqa: E501 + """Post User entities # noqa: E501 - Context Security Police Directive # noqa: E501 + User - represents entity interacting with platform # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_entity_csp_directives(json_api_csp_directive_in_document, async_req=True) + >>> thread = api.create_entity_users(json_api_user_in_document, async_req=True) >>> result = thread.get() Args: - json_api_csp_directive_in_document (JsonApiCspDirectiveInDocument): + json_api_user_in_document (JsonApiUserInDocument): Keyword Args: + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -4785,7 +6310,7 @@ def create_entity_csp_directives( async_req (bool): execute request asynchronously Returns: - JsonApiCspDirectiveOutDocument + JsonApiUserOutDocument If the method is called asynchronously, returns the request thread. """ @@ -4814,28 +6339,29 @@ def create_entity_csp_directives( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['json_api_csp_directive_in_document'] = \ - json_api_csp_directive_in_document - return self.create_entity_csp_directives_endpoint.call_with_http_info(**kwargs) + kwargs['json_api_user_in_document'] = \ + json_api_user_in_document + return self.create_entity_users_endpoint.call_with_http_info(**kwargs) - def create_entity_data_sources( + def create_entity_workspaces( self, - json_api_data_source_in_document, + json_api_workspace_in_document, **kwargs ): - """Post Data Sources # noqa: E501 + """Post Workspace entities # noqa: E501 - Data Source - represents data source for the workspace # noqa: E501 + Space of the shared interest # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_entity_data_sources(json_api_data_source_in_document, async_req=True) + >>> thread = api.create_entity_workspaces(json_api_workspace_in_document, async_req=True) >>> result = thread.get() Args: - json_api_data_source_in_document (JsonApiDataSourceInDocument): + json_api_workspace_in_document (JsonApiWorkspaceInDocument): Keyword Args: + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. @@ -4869,7 +6395,7 @@ def create_entity_data_sources( async_req (bool): execute request asynchronously Returns: - JsonApiDataSourceOutDocument + JsonApiWorkspaceOutDocument If the method is called asynchronously, returns the request thread. """ @@ -4898,28 +6424,28 @@ def create_entity_data_sources( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['json_api_data_source_in_document'] = \ - json_api_data_source_in_document - return self.create_entity_data_sources_endpoint.call_with_http_info(**kwargs) + kwargs['json_api_workspace_in_document'] = \ + json_api_workspace_in_document + return self.create_entity_workspaces_endpoint.call_with_http_info(**kwargs) - def create_entity_jwks( + def delete_entity_color_palettes( self, - json_api_jwk_in_document, + id, **kwargs ): - """Post Jwks # noqa: E501 + """Delete a Color Pallette # noqa: E501 - Creates JSON web key - used to verify JSON web tokens (Jwts) # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_entity_jwks(json_api_jwk_in_document, async_req=True) + >>> thread = api.delete_entity_color_palettes(id, async_req=True) >>> result = thread.get() Args: - json_api_jwk_in_document (JsonApiJwkInDocument): + id (str): Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -4952,7 +6478,7 @@ def create_entity_jwks( async_req (bool): execute request asynchronously Returns: - JsonApiJwkOutDocument + None If the method is called asynchronously, returns the request thread. """ @@ -4981,27 +6507,29 @@ def create_entity_jwks( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['json_api_jwk_in_document'] = \ - json_api_jwk_in_document - return self.create_entity_jwks_endpoint.call_with_http_info(**kwargs) + kwargs['id'] = \ + id + return self.delete_entity_color_palettes_endpoint.call_with_http_info(**kwargs) - def create_entity_notification_channels( + def delete_entity_csp_directives( self, - json_api_notification_channel_post_optional_id_document, + id, **kwargs ): - """Post Notification Channel entities # noqa: E501 + """Delete CSP Directives # noqa: E501 + Context Security Police Directive # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_entity_notification_channels(json_api_notification_channel_post_optional_id_document, async_req=True) + >>> thread = api.delete_entity_csp_directives(id, async_req=True) >>> result = thread.get() Args: - json_api_notification_channel_post_optional_id_document (JsonApiNotificationChannelPostOptionalIdDocument): + id (str): Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -5034,7 +6562,7 @@ def create_entity_notification_channels( async_req (bool): execute request asynchronously Returns: - JsonApiNotificationChannelOutDocument + None If the method is called asynchronously, returns the request thread. """ @@ -5063,27 +6591,29 @@ def create_entity_notification_channels( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['json_api_notification_channel_post_optional_id_document'] = \ - json_api_notification_channel_post_optional_id_document - return self.create_entity_notification_channels_endpoint.call_with_http_info(**kwargs) + kwargs['id'] = \ + id + return self.delete_entity_csp_directives_endpoint.call_with_http_info(**kwargs) - def create_entity_organization_settings( + def delete_entity_data_sources( self, - json_api_organization_setting_in_document, + id, **kwargs ): - """Post Organization Setting entities # noqa: E501 + """Delete Data Source entity # noqa: E501 + Data Source - represents data source for the workspace # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_entity_organization_settings(json_api_organization_setting_in_document, async_req=True) + >>> thread = api.delete_entity_data_sources(id, async_req=True) >>> result = thread.get() Args: - json_api_organization_setting_in_document (JsonApiOrganizationSettingInDocument): + id (str): Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -5116,7 +6646,7 @@ def create_entity_organization_settings( async_req (bool): execute request asynchronously Returns: - JsonApiOrganizationSettingOutDocument + None If the method is called asynchronously, returns the request thread. """ @@ -5145,27 +6675,112 @@ def create_entity_organization_settings( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['json_api_organization_setting_in_document'] = \ - json_api_organization_setting_in_document - return self.create_entity_organization_settings_endpoint.call_with_http_info(**kwargs) + kwargs['id'] = \ + id + return self.delete_entity_data_sources_endpoint.call_with_http_info(**kwargs) - def create_entity_themes( + def delete_entity_identity_providers( self, - json_api_theme_in_document, + id, **kwargs ): - """Post Theming # noqa: E501 + """Delete Identity Provider # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_entity_themes(json_api_theme_in_document, async_req=True) + >>> thread = api.delete_entity_identity_providers(id, async_req=True) + >>> result = thread.get() + + Args: + id (str): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + return self.delete_entity_identity_providers_endpoint.call_with_http_info(**kwargs) + + def delete_entity_jwks( + self, + id, + **kwargs + ): + """Delete Jwk # noqa: E501 + + Deletes JSON web key - used to verify JSON web tokens (Jwts) # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.delete_entity_jwks(id, async_req=True) >>> result = thread.get() Args: - json_api_theme_in_document (JsonApiThemeInDocument): + id (str): Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -5198,7 +6813,7 @@ def create_entity_themes( async_req (bool): execute request asynchronously Returns: - JsonApiThemeOutDocument + None If the method is called asynchronously, returns the request thread. """ @@ -5227,29 +6842,28 @@ def create_entity_themes( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['json_api_theme_in_document'] = \ - json_api_theme_in_document - return self.create_entity_themes_endpoint.call_with_http_info(**kwargs) + kwargs['id'] = \ + id + return self.delete_entity_jwks_endpoint.call_with_http_info(**kwargs) - def create_entity_user_groups( + def delete_entity_llm_endpoints( self, - json_api_user_group_in_document, + id, **kwargs ): - """Post User Group entities # noqa: E501 + """delete_entity_llm_endpoints # noqa: E501 - User Group - creates tree-like structure for categorizing users # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_entity_user_groups(json_api_user_group_in_document, async_req=True) + >>> thread = api.delete_entity_llm_endpoints(id, async_req=True) >>> result = thread.get() Args: - json_api_user_group_in_document (JsonApiUserGroupInDocument): + id (str): Keyword Args: - include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -5282,7 +6896,7 @@ def create_entity_user_groups( async_req (bool): execute request asynchronously Returns: - JsonApiUserGroupOutDocument + None If the method is called asynchronously, returns the request thread. """ @@ -5311,29 +6925,28 @@ def create_entity_user_groups( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['json_api_user_group_in_document'] = \ - json_api_user_group_in_document - return self.create_entity_user_groups_endpoint.call_with_http_info(**kwargs) + kwargs['id'] = \ + id + return self.delete_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) - def create_entity_users( + def delete_entity_notification_channels( self, - json_api_user_in_document, + id, **kwargs ): - """Post User entities # noqa: E501 + """Delete Notification Channel entity # noqa: E501 - User - represents entity interacting with platform # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_entity_users(json_api_user_in_document, async_req=True) + >>> thread = api.delete_entity_notification_channels(id, async_req=True) >>> result = thread.get() Args: - json_api_user_in_document (JsonApiUserInDocument): + id (str): Keyword Args: - include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -5366,7 +6979,7 @@ def create_entity_users( async_req (bool): execute request asynchronously Returns: - JsonApiUserOutDocument + None If the method is called asynchronously, returns the request thread. """ @@ -5395,30 +7008,28 @@ def create_entity_users( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['json_api_user_in_document'] = \ - json_api_user_in_document - return self.create_entity_users_endpoint.call_with_http_info(**kwargs) + kwargs['id'] = \ + id + return self.delete_entity_notification_channels_endpoint.call_with_http_info(**kwargs) - def create_entity_workspaces( + def delete_entity_organization_settings( self, - json_api_workspace_in_document, + id, **kwargs ): - """Post Workspace entities # noqa: E501 + """Delete Organization entity # noqa: E501 - Space of the shared interest # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_entity_workspaces(json_api_workspace_in_document, async_req=True) + >>> thread = api.delete_entity_organization_settings(id, async_req=True) >>> result = thread.get() Args: - json_api_workspace_in_document (JsonApiWorkspaceInDocument): + id (str): Keyword Args: - include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] - meta_include ([str]): Include Meta objects.. [optional] + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -5451,7 +7062,7 @@ def create_entity_workspaces( async_req (bool): execute request asynchronously Returns: - JsonApiWorkspaceOutDocument + None If the method is called asynchronously, returns the request thread. """ @@ -5480,21 +7091,21 @@ def create_entity_workspaces( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['json_api_workspace_in_document'] = \ - json_api_workspace_in_document - return self.create_entity_workspaces_endpoint.call_with_http_info(**kwargs) + kwargs['id'] = \ + id + return self.delete_entity_organization_settings_endpoint.call_with_http_info(**kwargs) - def delete_entity_color_palettes( + def delete_entity_themes( self, id, **kwargs ): - """Delete a Color Pallette # noqa: E501 + """Delete Theming # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_entity_color_palettes(id, async_req=True) + >>> thread = api.delete_entity_themes(id, async_req=True) >>> result = thread.get() Args: @@ -5565,20 +7176,20 @@ def delete_entity_color_palettes( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.delete_entity_color_palettes_endpoint.call_with_http_info(**kwargs) + return self.delete_entity_themes_endpoint.call_with_http_info(**kwargs) - def delete_entity_csp_directives( + def delete_entity_user_groups( self, id, **kwargs ): - """Delete CSP Directives # noqa: E501 + """Delete UserGroup entity # noqa: E501 - Context Security Police Directive # noqa: E501 + User Group - creates tree-like structure for categorizing users # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_entity_csp_directives(id, async_req=True) + >>> thread = api.delete_entity_user_groups(id, async_req=True) >>> result = thread.get() Args: @@ -5649,20 +7260,20 @@ def delete_entity_csp_directives( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.delete_entity_csp_directives_endpoint.call_with_http_info(**kwargs) + return self.delete_entity_user_groups_endpoint.call_with_http_info(**kwargs) - def delete_entity_data_sources( + def delete_entity_users( self, id, **kwargs ): - """Delete Data Source entity # noqa: E501 + """Delete User entity # noqa: E501 - Data Source - represents data source for the workspace # noqa: E501 + User - represents entity interacting with platform # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_entity_data_sources(id, async_req=True) + >>> thread = api.delete_entity_users(id, async_req=True) >>> result = thread.get() Args: @@ -5733,20 +7344,20 @@ def delete_entity_data_sources( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.delete_entity_data_sources_endpoint.call_with_http_info(**kwargs) + return self.delete_entity_users_endpoint.call_with_http_info(**kwargs) - def delete_entity_jwks( + def delete_entity_workspaces( self, id, **kwargs ): - """Delete Jwk # noqa: E501 + """Delete Workspace entity # noqa: E501 - Deletes JSON web key - used to verify JSON web tokens (Jwts) # noqa: E501 + Space of the shared interest # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_entity_jwks(id, async_req=True) + >>> thread = api.delete_entity_workspaces(id, async_req=True) >>> result = thread.get() Args: @@ -5817,26 +7428,27 @@ def delete_entity_jwks( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.delete_entity_jwks_endpoint.call_with_http_info(**kwargs) + return self.delete_entity_workspaces_endpoint.call_with_http_info(**kwargs) - def delete_entity_notification_channels( + def get_all_entities_color_palettes( self, - id, **kwargs ): - """delete_entity_notification_channels # noqa: E501 + """Get all Color Pallettes # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_entity_notification_channels(id, async_req=True) + >>> thread = api.get_all_entities_color_palettes(async_req=True) >>> result = thread.get() - Args: - id (str): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 + size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 + sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] + meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -5869,7 +7481,7 @@ def delete_entity_notification_channels( async_req (bool): execute request asynchronously Returns: - None + JsonApiColorPaletteOutList If the method is called asynchronously, returns the request thread. """ @@ -5898,28 +7510,28 @@ def delete_entity_notification_channels( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['id'] = \ - id - return self.delete_entity_notification_channels_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_color_palettes_endpoint.call_with_http_info(**kwargs) - def delete_entity_organization_settings( + def get_all_entities_csp_directives( self, - id, **kwargs ): - """Delete Organization entity # noqa: E501 + """Get CSP Directives # noqa: E501 + Context Security Police Directive # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_entity_organization_settings(id, async_req=True) + >>> thread = api.get_all_entities_csp_directives(async_req=True) >>> result = thread.get() - Args: - id (str): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 + size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 + sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] + meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -5952,7 +7564,7 @@ def delete_entity_organization_settings( async_req (bool): execute request asynchronously Returns: - None + JsonApiCspDirectiveOutList If the method is called asynchronously, returns the request thread. """ @@ -5981,28 +7593,27 @@ def delete_entity_organization_settings( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['id'] = \ - id - return self.delete_entity_organization_settings_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_csp_directives_endpoint.call_with_http_info(**kwargs) - def delete_entity_themes( + def get_all_entities_data_source_identifiers( self, - id, **kwargs ): - """Delete Theming # noqa: E501 + """Get all Data Source Identifiers # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_entity_themes(id, async_req=True) + >>> thread = api.get_all_entities_data_source_identifiers(async_req=True) >>> result = thread.get() - Args: - id (str): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 + size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 + sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] + meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -6035,7 +7646,7 @@ def delete_entity_themes( async_req (bool): execute request asynchronously Returns: - None + JsonApiDataSourceIdentifierOutList If the method is called asynchronously, returns the request thread. """ @@ -6064,29 +7675,28 @@ def delete_entity_themes( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['id'] = \ - id - return self.delete_entity_themes_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_data_source_identifiers_endpoint.call_with_http_info(**kwargs) - def delete_entity_user_groups( + def get_all_entities_data_sources( self, - id, **kwargs ): - """Delete UserGroup entity # noqa: E501 + """Get Data Source entities # noqa: E501 - User Group - creates tree-like structure for categorizing users # noqa: E501 + Data Source - represents data source for the workspace # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_entity_user_groups(id, async_req=True) + >>> thread = api.get_all_entities_data_sources(async_req=True) >>> result = thread.get() - Args: - id (str): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 + size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 + sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] + meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -6119,7 +7729,7 @@ def delete_entity_user_groups( async_req (bool): execute request asynchronously Returns: - None + JsonApiDataSourceOutList If the method is called asynchronously, returns the request thread. """ @@ -6148,29 +7758,28 @@ def delete_entity_user_groups( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['id'] = \ - id - return self.delete_entity_user_groups_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_data_sources_endpoint.call_with_http_info(**kwargs) - def delete_entity_users( + def get_all_entities_entitlements( self, - id, **kwargs ): - """Delete User entity # noqa: E501 + """Get Entitlements # noqa: E501 - User - represents entity interacting with platform # noqa: E501 + Space of the shared interest # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_entity_users(id, async_req=True) + >>> thread = api.get_all_entities_entitlements(async_req=True) >>> result = thread.get() - Args: - id (str): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 + size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 + sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] + meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -6203,7 +7812,7 @@ def delete_entity_users( async_req (bool): execute request asynchronously Returns: - None + JsonApiEntitlementOutList If the method is called asynchronously, returns the request thread. """ @@ -6232,29 +7841,27 @@ def delete_entity_users( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['id'] = \ - id - return self.delete_entity_users_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_entitlements_endpoint.call_with_http_info(**kwargs) - def delete_entity_workspaces( + def get_all_entities_identity_providers( self, - id, **kwargs ): - """Delete Workspace entity # noqa: E501 + """Get all Identity Providers # noqa: E501 - Space of the shared interest # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_entity_workspaces(id, async_req=True) + >>> thread = api.get_all_entities_identity_providers(async_req=True) >>> result = thread.get() - Args: - id (str): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 + size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 + sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] + meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -6287,7 +7894,7 @@ def delete_entity_workspaces( async_req (bool): execute request asynchronously Returns: - None + JsonApiIdentityProviderOutList If the method is called asynchronously, returns the request thread. """ @@ -6316,20 +7923,19 @@ def delete_entity_workspaces( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['id'] = \ - id - return self.delete_entity_workspaces_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_identity_providers_endpoint.call_with_http_info(**kwargs) - def get_all_entities_color_palettes( + def get_all_entities_jwks( self, **kwargs ): - """Get all Color Pallettes # noqa: E501 + """Get all Jwks # noqa: E501 + Returns all JSON web keys - used to verify JSON web tokens (Jwts) # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_all_entities_color_palettes(async_req=True) + >>> thread = api.get_all_entities_jwks(async_req=True) >>> result = thread.get() @@ -6371,7 +7977,7 @@ def get_all_entities_color_palettes( async_req (bool): execute request asynchronously Returns: - JsonApiColorPaletteOutList + JsonApiJwkOutList If the method is called asynchronously, returns the request thread. """ @@ -6400,19 +8006,18 @@ def get_all_entities_color_palettes( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - return self.get_all_entities_color_palettes_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_jwks_endpoint.call_with_http_info(**kwargs) - def get_all_entities_csp_directives( + def get_all_entities_llm_endpoints( self, **kwargs ): - """Get CSP Directives # noqa: E501 + """Get all LLM endpoint entities # noqa: E501 - Context Security Police Directive # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_all_entities_csp_directives(async_req=True) + >>> thread = api.get_all_entities_llm_endpoints(async_req=True) >>> result = thread.get() @@ -6454,7 +8059,7 @@ def get_all_entities_csp_directives( async_req (bool): execute request asynchronously Returns: - JsonApiCspDirectiveOutList + JsonApiLlmEndpointOutList If the method is called asynchronously, returns the request thread. """ @@ -6483,18 +8088,18 @@ def get_all_entities_csp_directives( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - return self.get_all_entities_csp_directives_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_llm_endpoints_endpoint.call_with_http_info(**kwargs) - def get_all_entities_data_source_identifiers( + def get_all_entities_notification_channels( self, **kwargs ): - """Get all Data Source Identifiers # noqa: E501 + """Get all Notification Channel entities # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_all_entities_data_source_identifiers(async_req=True) + >>> thread = api.get_all_entities_notification_channels(async_req=True) >>> result = thread.get() @@ -6536,7 +8141,7 @@ def get_all_entities_data_source_identifiers( async_req (bool): execute request asynchronously Returns: - JsonApiDataSourceIdentifierOutList + JsonApiNotificationChannelOutList If the method is called asynchronously, returns the request thread. """ @@ -6565,19 +8170,18 @@ def get_all_entities_data_source_identifiers( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - return self.get_all_entities_data_source_identifiers_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_notification_channels_endpoint.call_with_http_info(**kwargs) - def get_all_entities_data_sources( + def get_all_entities_organization_settings( self, **kwargs ): - """Get Data Source entities # noqa: E501 + """Get Organization entities # noqa: E501 - Data Source - represents data source for the workspace # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_all_entities_data_sources(async_req=True) + >>> thread = api.get_all_entities_organization_settings(async_req=True) >>> result = thread.get() @@ -6619,7 +8223,7 @@ def get_all_entities_data_sources( async_req (bool): execute request asynchronously Returns: - JsonApiDataSourceOutList + JsonApiOrganizationSettingOutList If the method is called asynchronously, returns the request thread. """ @@ -6648,19 +8252,18 @@ def get_all_entities_data_sources( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - return self.get_all_entities_data_sources_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_organization_settings_endpoint.call_with_http_info(**kwargs) - def get_all_entities_entitlements( + def get_all_entities_themes( self, **kwargs ): - """Get Entitlements # noqa: E501 + """Get all Theming entities # noqa: E501 - Space of the shared interest # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_all_entities_entitlements(async_req=True) + >>> thread = api.get_all_entities_themes(async_req=True) >>> result = thread.get() @@ -6702,7 +8305,7 @@ def get_all_entities_entitlements( async_req (bool): execute request asynchronously Returns: - JsonApiEntitlementOutList + JsonApiThemeOutList If the method is called asynchronously, returns the request thread. """ @@ -6731,24 +8334,25 @@ def get_all_entities_entitlements( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - return self.get_all_entities_entitlements_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_themes_endpoint.call_with_http_info(**kwargs) - def get_all_entities_jwks( + def get_all_entities_user_groups( self, **kwargs ): - """Get all Jwks # noqa: E501 + """Get UserGroup entities # noqa: E501 - Returns all JSON web keys - used to verify JSON web tokens (Jwts) # noqa: E501 + User Group - creates tree-like structure for categorizing users # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_all_entities_jwks(async_req=True) + >>> thread = api.get_all_entities_user_groups(async_req=True) >>> result = thread.get() Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] @@ -6785,7 +8389,7 @@ def get_all_entities_jwks( async_req (bool): execute request asynchronously Returns: - JsonApiJwkOutList + JsonApiUserGroupOutList If the method is called asynchronously, returns the request thread. """ @@ -6814,18 +8418,19 @@ def get_all_entities_jwks( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - return self.get_all_entities_jwks_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_user_groups_endpoint.call_with_http_info(**kwargs) - def get_all_entities_notification_channels( + def get_all_entities_user_identifiers( self, **kwargs ): - """Get all Notification Channel entities # noqa: E501 + """Get UserIdentifier entities # noqa: E501 + UserIdentifier - represents entity interacting with platform # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_all_entities_notification_channels(async_req=True) + >>> thread = api.get_all_entities_user_identifiers(async_req=True) >>> result = thread.get() @@ -6867,7 +8472,7 @@ def get_all_entities_notification_channels( async_req (bool): execute request asynchronously Returns: - JsonApiNotificationChannelOutList + JsonApiUserIdentifierOutList If the method is called asynchronously, returns the request thread. """ @@ -6896,23 +8501,25 @@ def get_all_entities_notification_channels( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - return self.get_all_entities_notification_channels_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_user_identifiers_endpoint.call_with_http_info(**kwargs) - def get_all_entities_organization_settings( + def get_all_entities_users( self, **kwargs ): - """Get Organization entities # noqa: E501 + """Get User entities # noqa: E501 + User - represents entity interacting with platform # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_all_entities_organization_settings(async_req=True) + >>> thread = api.get_all_entities_users(async_req=True) >>> result = thread.get() Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] @@ -6949,7 +8556,7 @@ def get_all_entities_organization_settings( async_req (bool): execute request asynchronously Returns: - JsonApiOrganizationSettingOutList + JsonApiUserOutList If the method is called asynchronously, returns the request thread. """ @@ -6978,23 +8585,25 @@ def get_all_entities_organization_settings( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - return self.get_all_entities_organization_settings_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_users_endpoint.call_with_http_info(**kwargs) - def get_all_entities_themes( + def get_all_entities_workspaces( self, **kwargs ): - """Get all Theming entities # noqa: E501 + """Get Workspace entities # noqa: E501 + Space of the shared interest # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_all_entities_themes(async_req=True) + >>> thread = api.get_all_entities_workspaces(async_req=True) >>> result = thread.get() Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] @@ -7031,7 +8640,7 @@ def get_all_entities_themes( async_req (bool): execute request asynchronously Returns: - JsonApiThemeOutList + JsonApiWorkspaceOutList If the method is called asynchronously, returns the request thread. """ @@ -7060,29 +8669,26 @@ def get_all_entities_themes( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - return self.get_all_entities_themes_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_workspaces_endpoint.call_with_http_info(**kwargs) - def get_all_entities_user_groups( + def get_entity_color_palettes( self, + id, **kwargs ): - """Get UserGroup entities # noqa: E501 + """Get Color Pallette # noqa: E501 - User Group - creates tree-like structure for categorizing users # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_all_entities_user_groups(async_req=True) + >>> thread = api.get_entity_color_palettes(id, async_req=True) >>> result = thread.get() + Args: + id (str): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] - include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] - page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 - size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 - sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] - meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -7115,7 +8721,7 @@ def get_all_entities_user_groups( async_req (bool): execute request asynchronously Returns: - JsonApiUserGroupOutList + JsonApiColorPaletteOutDocument If the method is called asynchronously, returns the request thread. """ @@ -7144,28 +8750,29 @@ def get_all_entities_user_groups( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - return self.get_all_entities_user_groups_endpoint.call_with_http_info(**kwargs) + kwargs['id'] = \ + id + return self.get_entity_color_palettes_endpoint.call_with_http_info(**kwargs) - def get_all_entities_user_identifiers( + def get_entity_csp_directives( self, + id, **kwargs ): - """Get UserIdentifier entities # noqa: E501 + """Get CSP Directives # noqa: E501 - UserIdentifier - represents entity interacting with platform # noqa: E501 + Context Security Police Directive # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_all_entities_user_identifiers(async_req=True) + >>> thread = api.get_entity_csp_directives(id, async_req=True) >>> result = thread.get() + Args: + id (str): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] - page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 - size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 - sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] - meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -7198,7 +8805,7 @@ def get_all_entities_user_identifiers( async_req (bool): execute request asynchronously Returns: - JsonApiUserIdentifierOutList + JsonApiCspDirectiveOutDocument If the method is called asynchronously, returns the request thread. """ @@ -7227,28 +8834,28 @@ def get_all_entities_user_identifiers( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - return self.get_all_entities_user_identifiers_endpoint.call_with_http_info(**kwargs) + kwargs['id'] = \ + id + return self.get_entity_csp_directives_endpoint.call_with_http_info(**kwargs) - def get_all_entities_users( + def get_entity_data_source_identifiers( self, + id, **kwargs ): - """Get User entities # noqa: E501 + """Get Data Source Identifier # noqa: E501 - User - represents entity interacting with platform # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_all_entities_users(async_req=True) + >>> thread = api.get_entity_data_source_identifiers(id, async_req=True) >>> result = thread.get() + Args: + id (str): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] - include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] - page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 - size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 - sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. @@ -7282,7 +8889,7 @@ def get_all_entities_users( async_req (bool): execute request asynchronously Returns: - JsonApiUserOutList + JsonApiDataSourceIdentifierOutDocument If the method is called asynchronously, returns the request thread. """ @@ -7311,28 +8918,29 @@ def get_all_entities_users( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - return self.get_all_entities_users_endpoint.call_with_http_info(**kwargs) + kwargs['id'] = \ + id + return self.get_entity_data_source_identifiers_endpoint.call_with_http_info(**kwargs) - def get_all_entities_workspaces( + def get_entity_data_sources( self, + id, **kwargs ): - """Get Workspace entities # noqa: E501 + """Get Data Source entity # noqa: E501 - Space of the shared interest # noqa: E501 + Data Source - represents data source for the workspace # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_all_entities_workspaces(async_req=True) + >>> thread = api.get_entity_data_sources(id, async_req=True) >>> result = thread.get() + Args: + id (str): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] - include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] - page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 - size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 - sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. @@ -7366,7 +8974,7 @@ def get_all_entities_workspaces( async_req (bool): execute request asynchronously Returns: - JsonApiWorkspaceOutList + JsonApiDataSourceOutDocument If the method is called asynchronously, returns the request thread. """ @@ -7395,19 +9003,22 @@ def get_all_entities_workspaces( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - return self.get_all_entities_workspaces_endpoint.call_with_http_info(**kwargs) + kwargs['id'] = \ + id + return self.get_entity_data_sources_endpoint.call_with_http_info(**kwargs) - def get_entity_color_palettes( + def get_entity_entitlements( self, id, **kwargs ): - """Get Color Pallette # noqa: E501 + """Get Entitlement # noqa: E501 + Space of the shared interest # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_entity_color_palettes(id, async_req=True) + >>> thread = api.get_entity_entitlements(id, async_req=True) >>> result = thread.get() Args: @@ -7447,7 +9058,7 @@ def get_entity_color_palettes( async_req (bool): execute request asynchronously Returns: - JsonApiColorPaletteOutDocument + JsonApiEntitlementOutDocument If the method is called asynchronously, returns the request thread. """ @@ -7478,20 +9089,19 @@ def get_entity_color_palettes( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.get_entity_color_palettes_endpoint.call_with_http_info(**kwargs) + return self.get_entity_entitlements_endpoint.call_with_http_info(**kwargs) - def get_entity_csp_directives( + def get_entity_identity_providers( self, id, **kwargs ): - """Get CSP Directives # noqa: E501 + """Get Identity Provider # noqa: E501 - Context Security Police Directive # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_entity_csp_directives(id, async_req=True) + >>> thread = api.get_entity_identity_providers(id, async_req=True) >>> result = thread.get() Args: @@ -7531,7 +9141,7 @@ def get_entity_csp_directives( async_req (bool): execute request asynchronously Returns: - JsonApiCspDirectiveOutDocument + JsonApiIdentityProviderOutDocument If the method is called asynchronously, returns the request thread. """ @@ -7562,19 +9172,20 @@ def get_entity_csp_directives( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.get_entity_csp_directives_endpoint.call_with_http_info(**kwargs) + return self.get_entity_identity_providers_endpoint.call_with_http_info(**kwargs) - def get_entity_data_source_identifiers( + def get_entity_jwks( self, id, **kwargs ): - """Get Data Source Identifier # noqa: E501 + """Get Jwk # noqa: E501 + Returns JSON web key - used to verify JSON web tokens (Jwts) # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_entity_data_source_identifiers(id, async_req=True) + >>> thread = api.get_entity_jwks(id, async_req=True) >>> result = thread.get() Args: @@ -7582,7 +9193,6 @@ def get_entity_data_source_identifiers( Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] - meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -7615,7 +9225,7 @@ def get_entity_data_source_identifiers( async_req (bool): execute request asynchronously Returns: - JsonApiDataSourceIdentifierOutDocument + JsonApiJwkOutDocument If the method is called asynchronously, returns the request thread. """ @@ -7646,20 +9256,19 @@ def get_entity_data_source_identifiers( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.get_entity_data_source_identifiers_endpoint.call_with_http_info(**kwargs) + return self.get_entity_jwks_endpoint.call_with_http_info(**kwargs) - def get_entity_data_sources( + def get_entity_llm_endpoints( self, id, **kwargs ): - """Get Data Source entity # noqa: E501 + """Get LLM endpoint entity # noqa: E501 - Data Source - represents data source for the workspace # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_entity_data_sources(id, async_req=True) + >>> thread = api.get_entity_llm_endpoints(id, async_req=True) >>> result = thread.get() Args: @@ -7667,7 +9276,6 @@ def get_entity_data_sources( Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] - meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -7700,7 +9308,7 @@ def get_entity_data_sources( async_req (bool): execute request asynchronously Returns: - JsonApiDataSourceOutDocument + JsonApiLlmEndpointOutDocument If the method is called asynchronously, returns the request thread. """ @@ -7731,20 +9339,19 @@ def get_entity_data_sources( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.get_entity_data_sources_endpoint.call_with_http_info(**kwargs) + return self.get_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) - def get_entity_entitlements( + def get_entity_notification_channels( self, id, **kwargs ): - """Get Entitlement # noqa: E501 + """Get Notification Channel entity # noqa: E501 - Space of the shared interest # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_entity_entitlements(id, async_req=True) + >>> thread = api.get_entity_notification_channels(id, async_req=True) >>> result = thread.get() Args: @@ -7784,7 +9391,7 @@ def get_entity_entitlements( async_req (bool): execute request asynchronously Returns: - JsonApiEntitlementOutDocument + JsonApiNotificationChannelOutDocument If the method is called asynchronously, returns the request thread. """ @@ -7815,20 +9422,19 @@ def get_entity_entitlements( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.get_entity_entitlements_endpoint.call_with_http_info(**kwargs) + return self.get_entity_notification_channels_endpoint.call_with_http_info(**kwargs) - def get_entity_jwks( + def get_entity_organization_settings( self, id, **kwargs ): - """Get Jwk # noqa: E501 + """Get Organization entity # noqa: E501 - Returns JSON web key - used to verify JSON web tokens (Jwts) # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_entity_jwks(id, async_req=True) + >>> thread = api.get_entity_organization_settings(id, async_req=True) >>> result = thread.get() Args: @@ -7868,7 +9474,7 @@ def get_entity_jwks( async_req (bool): execute request asynchronously Returns: - JsonApiJwkOutDocument + JsonApiOrganizationSettingOutDocument If the method is called asynchronously, returns the request thread. """ @@ -7899,19 +9505,19 @@ def get_entity_jwks( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.get_entity_jwks_endpoint.call_with_http_info(**kwargs) + return self.get_entity_organization_settings_endpoint.call_with_http_info(**kwargs) - def get_entity_notification_channels( + def get_entity_themes( self, id, **kwargs ): - """Get Notification Channel entity # noqa: E501 + """Get Theming # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_entity_notification_channels(id, async_req=True) + >>> thread = api.get_entity_themes(id, async_req=True) >>> result = thread.get() Args: @@ -7951,7 +9557,7 @@ def get_entity_notification_channels( async_req (bool): execute request asynchronously Returns: - JsonApiNotificationChannelOutDocument + JsonApiThemeOutDocument If the method is called asynchronously, returns the request thread. """ @@ -7982,19 +9588,20 @@ def get_entity_notification_channels( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.get_entity_notification_channels_endpoint.call_with_http_info(**kwargs) + return self.get_entity_themes_endpoint.call_with_http_info(**kwargs) - def get_entity_organization_settings( + def get_entity_user_groups( self, id, **kwargs ): - """Get Organization entity # noqa: E501 + """Get UserGroup entity # noqa: E501 + User Group - creates tree-like structure for categorizing users # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_entity_organization_settings(id, async_req=True) + >>> thread = api.get_entity_user_groups(id, async_req=True) >>> result = thread.get() Args: @@ -8002,6 +9609,7 @@ def get_entity_organization_settings( Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -8034,7 +9642,7 @@ def get_entity_organization_settings( async_req (bool): execute request asynchronously Returns: - JsonApiOrganizationSettingOutDocument + JsonApiUserGroupOutDocument If the method is called asynchronously, returns the request thread. """ @@ -8065,19 +9673,20 @@ def get_entity_organization_settings( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.get_entity_organization_settings_endpoint.call_with_http_info(**kwargs) + return self.get_entity_user_groups_endpoint.call_with_http_info(**kwargs) - def get_entity_themes( + def get_entity_user_identifiers( self, id, **kwargs ): - """Get Theming # noqa: E501 + """Get UserIdentifier entity # noqa: E501 + UserIdentifier - represents basic information about entity interacting with platform # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_entity_themes(id, async_req=True) + >>> thread = api.get_entity_user_identifiers(id, async_req=True) >>> result = thread.get() Args: @@ -8117,7 +9726,7 @@ def get_entity_themes( async_req (bool): execute request asynchronously Returns: - JsonApiThemeOutDocument + JsonApiUserIdentifierOutDocument If the method is called asynchronously, returns the request thread. """ @@ -8148,20 +9757,20 @@ def get_entity_themes( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.get_entity_themes_endpoint.call_with_http_info(**kwargs) + return self.get_entity_user_identifiers_endpoint.call_with_http_info(**kwargs) - def get_entity_user_groups( + def get_entity_users( self, id, **kwargs ): - """Get UserGroup entity # noqa: E501 + """Get User entity # noqa: E501 - User Group - creates tree-like structure for categorizing users # noqa: E501 + User - represents entity interacting with platform # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_entity_user_groups(id, async_req=True) + >>> thread = api.get_entity_users(id, async_req=True) >>> result = thread.get() Args: @@ -8202,7 +9811,7 @@ def get_entity_user_groups( async_req (bool): execute request asynchronously Returns: - JsonApiUserGroupOutDocument + JsonApiUserOutDocument If the method is called asynchronously, returns the request thread. """ @@ -8233,20 +9842,20 @@ def get_entity_user_groups( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.get_entity_user_groups_endpoint.call_with_http_info(**kwargs) + return self.get_entity_users_endpoint.call_with_http_info(**kwargs) - def get_entity_user_identifiers( + def get_entity_workspaces( self, id, **kwargs ): - """Get UserIdentifier entity # noqa: E501 + """Get Workspace entity # noqa: E501 - UserIdentifier - represents basic information about entity interacting with platform # noqa: E501 + Space of the shared interest # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_entity_user_identifiers(id, async_req=True) + >>> thread = api.get_entity_workspaces(id, async_req=True) >>> result = thread.get() Args: @@ -8254,6 +9863,8 @@ def get_entity_user_identifiers( Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -8286,7 +9897,7 @@ def get_entity_user_identifiers( async_req (bool): execute request asynchronously Returns: - JsonApiUserIdentifierOutDocument + JsonApiWorkspaceOutDocument If the method is called asynchronously, returns the request thread. """ @@ -8317,28 +9928,28 @@ def get_entity_user_identifiers( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.get_entity_user_identifiers_endpoint.call_with_http_info(**kwargs) + return self.get_entity_workspaces_endpoint.call_with_http_info(**kwargs) - def get_entity_users( + def patch_entity_color_palettes( self, id, + json_api_color_palette_patch_document, **kwargs ): - """Get User entity # noqa: E501 + """Patch Color Pallette # noqa: E501 - User - represents entity interacting with platform # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_entity_users(id, async_req=True) + >>> thread = api.patch_entity_color_palettes(id, json_api_color_palette_patch_document, async_req=True) >>> result = thread.get() Args: id (str): + json_api_color_palette_patch_document (JsonApiColorPalettePatchDocument): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] - include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -8371,7 +9982,7 @@ def get_entity_users( async_req (bool): execute request asynchronously Returns: - JsonApiUserOutDocument + JsonApiColorPaletteOutDocument If the method is called asynchronously, returns the request thread. """ @@ -8402,29 +10013,31 @@ def get_entity_users( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.get_entity_users_endpoint.call_with_http_info(**kwargs) + kwargs['json_api_color_palette_patch_document'] = \ + json_api_color_palette_patch_document + return self.patch_entity_color_palettes_endpoint.call_with_http_info(**kwargs) - def get_entity_workspaces( + def patch_entity_csp_directives( self, id, + json_api_csp_directive_patch_document, **kwargs ): - """Get Workspace entity # noqa: E501 + """Patch CSP Directives # noqa: E501 - Space of the shared interest # noqa: E501 + Context Security Police Directive # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_entity_workspaces(id, async_req=True) + >>> thread = api.patch_entity_csp_directives(id, json_api_csp_directive_patch_document, async_req=True) >>> result = thread.get() Args: id (str): + json_api_csp_directive_patch_document (JsonApiCspDirectivePatchDocument): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] - include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] - meta_include ([str]): Include Meta objects.. [optional] _return_http_data_only (bool): response data without head status code and headers. Default is True. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -8457,7 +10070,7 @@ def get_entity_workspaces( async_req (bool): execute request asynchronously Returns: - JsonApiWorkspaceOutDocument + JsonApiCspDirectiveOutDocument If the method is called asynchronously, returns the request thread. """ @@ -8488,25 +10101,28 @@ def get_entity_workspaces( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.get_entity_workspaces_endpoint.call_with_http_info(**kwargs) + kwargs['json_api_csp_directive_patch_document'] = \ + json_api_csp_directive_patch_document + return self.patch_entity_csp_directives_endpoint.call_with_http_info(**kwargs) - def patch_entity_color_palettes( + def patch_entity_data_sources( self, id, - json_api_color_palette_patch_document, + json_api_data_source_patch_document, **kwargs ): - """Patch Color Pallette # noqa: E501 + """Patch Data Source entity # noqa: E501 + Data Source - represents data source for the workspace # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.patch_entity_color_palettes(id, json_api_color_palette_patch_document, async_req=True) + >>> thread = api.patch_entity_data_sources(id, json_api_data_source_patch_document, async_req=True) >>> result = thread.get() Args: id (str): - json_api_color_palette_patch_document (JsonApiColorPalettePatchDocument): + json_api_data_source_patch_document (JsonApiDataSourcePatchDocument): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] @@ -8542,7 +10158,7 @@ def patch_entity_color_palettes( async_req (bool): execute request asynchronously Returns: - JsonApiColorPaletteOutDocument + JsonApiDataSourceOutDocument If the method is called asynchronously, returns the request thread. """ @@ -8573,28 +10189,27 @@ def patch_entity_color_palettes( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - kwargs['json_api_color_palette_patch_document'] = \ - json_api_color_palette_patch_document - return self.patch_entity_color_palettes_endpoint.call_with_http_info(**kwargs) + kwargs['json_api_data_source_patch_document'] = \ + json_api_data_source_patch_document + return self.patch_entity_data_sources_endpoint.call_with_http_info(**kwargs) - def patch_entity_csp_directives( + def patch_entity_identity_providers( self, id, - json_api_csp_directive_patch_document, + json_api_identity_provider_patch_document, **kwargs ): - """Patch CSP Directives # noqa: E501 + """Patch Identity Provider # noqa: E501 - Context Security Police Directive # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.patch_entity_csp_directives(id, json_api_csp_directive_patch_document, async_req=True) + >>> thread = api.patch_entity_identity_providers(id, json_api_identity_provider_patch_document, async_req=True) >>> result = thread.get() Args: id (str): - json_api_csp_directive_patch_document (JsonApiCspDirectivePatchDocument): + json_api_identity_provider_patch_document (JsonApiIdentityProviderPatchDocument): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] @@ -8630,7 +10245,7 @@ def patch_entity_csp_directives( async_req (bool): execute request asynchronously Returns: - JsonApiCspDirectiveOutDocument + JsonApiIdentityProviderOutDocument If the method is called asynchronously, returns the request thread. """ @@ -8661,28 +10276,28 @@ def patch_entity_csp_directives( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - kwargs['json_api_csp_directive_patch_document'] = \ - json_api_csp_directive_patch_document - return self.patch_entity_csp_directives_endpoint.call_with_http_info(**kwargs) + kwargs['json_api_identity_provider_patch_document'] = \ + json_api_identity_provider_patch_document + return self.patch_entity_identity_providers_endpoint.call_with_http_info(**kwargs) - def patch_entity_data_sources( + def patch_entity_jwks( self, id, - json_api_data_source_patch_document, + json_api_jwk_patch_document, **kwargs ): - """Patch Data Source entity # noqa: E501 + """Patch Jwk # noqa: E501 - Data Source - represents data source for the workspace # noqa: E501 + Patches JSON web key - used to verify JSON web tokens (Jwts) # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.patch_entity_data_sources(id, json_api_data_source_patch_document, async_req=True) + >>> thread = api.patch_entity_jwks(id, json_api_jwk_patch_document, async_req=True) >>> result = thread.get() Args: id (str): - json_api_data_source_patch_document (JsonApiDataSourcePatchDocument): + json_api_jwk_patch_document (JsonApiJwkPatchDocument): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] @@ -8718,7 +10333,7 @@ def patch_entity_data_sources( async_req (bool): execute request asynchronously Returns: - JsonApiDataSourceOutDocument + JsonApiJwkOutDocument If the method is called asynchronously, returns the request thread. """ @@ -8749,28 +10364,27 @@ def patch_entity_data_sources( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - kwargs['json_api_data_source_patch_document'] = \ - json_api_data_source_patch_document - return self.patch_entity_data_sources_endpoint.call_with_http_info(**kwargs) + kwargs['json_api_jwk_patch_document'] = \ + json_api_jwk_patch_document + return self.patch_entity_jwks_endpoint.call_with_http_info(**kwargs) - def patch_entity_jwks( + def patch_entity_llm_endpoints( self, id, - json_api_jwk_patch_document, + json_api_llm_endpoint_patch_document, **kwargs ): - """Patch Jwk # noqa: E501 + """Patch LLM endpoint entity # noqa: E501 - Patches JSON web key - used to verify JSON web tokens (Jwts) # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.patch_entity_jwks(id, json_api_jwk_patch_document, async_req=True) + >>> thread = api.patch_entity_llm_endpoints(id, json_api_llm_endpoint_patch_document, async_req=True) >>> result = thread.get() Args: id (str): - json_api_jwk_patch_document (JsonApiJwkPatchDocument): + json_api_llm_endpoint_patch_document (JsonApiLlmEndpointPatchDocument): Keyword Args: filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] @@ -8806,7 +10420,7 @@ def patch_entity_jwks( async_req (bool): execute request asynchronously Returns: - JsonApiJwkOutDocument + JsonApiLlmEndpointOutDocument If the method is called asynchronously, returns the request thread. """ @@ -8837,9 +10451,9 @@ def patch_entity_jwks( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - kwargs['json_api_jwk_patch_document'] = \ - json_api_jwk_patch_document - return self.patch_entity_jwks_endpoint.call_with_http_info(**kwargs) + kwargs['json_api_llm_endpoint_patch_document'] = \ + json_api_llm_endpoint_patch_document + return self.patch_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) def patch_entity_notification_channels( self, @@ -9632,6 +11246,93 @@ def update_entity_data_sources( json_api_data_source_in_document return self.update_entity_data_sources_endpoint.call_with_http_info(**kwargs) + def update_entity_identity_providers( + self, + id, + json_api_identity_provider_in_document, + **kwargs + ): + """Put Identity Provider # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.update_entity_identity_providers(id, json_api_identity_provider_in_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_identity_provider_in_document (JsonApiIdentityProviderInDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiIdentityProviderOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + kwargs['json_api_identity_provider_in_document'] = \ + json_api_identity_provider_in_document + return self.update_entity_identity_providers_endpoint.call_with_http_info(**kwargs) + def update_entity_jwks( self, id, @@ -9720,6 +11421,93 @@ def update_entity_jwks( json_api_jwk_in_document return self.update_entity_jwks_endpoint.call_with_http_info(**kwargs) + def update_entity_llm_endpoints( + self, + id, + json_api_llm_endpoint_in_document, + **kwargs + ): + """PUT LLM endpoint entity # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.update_entity_llm_endpoints(id, json_api_llm_endpoint_in_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_llm_endpoint_in_document (JsonApiLlmEndpointInDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiLlmEndpointOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['id'] = \ + id + kwargs['json_api_llm_endpoint_in_document'] = \ + json_api_llm_endpoint_in_document + return self.update_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + def update_entity_notification_channels( self, id, diff --git a/gooddata-api-client/gooddata_api_client/api/smart_functions_api.py b/gooddata-api-client/gooddata_api_client/api/smart_functions_api.py index c516cb250..dff32b0e1 100644 --- a/gooddata-api-client/gooddata_api_client/api/smart_functions_api.py +++ b/gooddata-api-client/gooddata_api_client/api/smart_functions_api.py @@ -24,10 +24,16 @@ ) from gooddata_api_client.model.anomaly_detection_request import AnomalyDetectionRequest from gooddata_api_client.model.anomaly_detection_result import AnomalyDetectionResult +from gooddata_api_client.model.chat_history_request import ChatHistoryRequest +from gooddata_api_client.model.chat_history_result import ChatHistoryResult +from gooddata_api_client.model.chat_request import ChatRequest +from gooddata_api_client.model.chat_result import ChatResult from gooddata_api_client.model.clustering_request import ClusteringRequest from gooddata_api_client.model.clustering_result import ClusteringResult from gooddata_api_client.model.forecast_request import ForecastRequest from gooddata_api_client.model.forecast_result import ForecastResult +from gooddata_api_client.model.route_request import RouteRequest +from gooddata_api_client.model.route_result import RouteResult from gooddata_api_client.model.search_request import SearchRequest from gooddata_api_client.model.search_result import SearchResult from gooddata_api_client.model.smart_function_response import SmartFunctionResponse @@ -44,6 +50,195 @@ def __init__(self, api_client=None): if api_client is None: api_client = ApiClient() self.api_client = api_client + self.ai_chat_endpoint = _Endpoint( + settings={ + 'response_type': (ChatResult,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/chat', + 'operation_id': 'ai_chat', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'chat_request', + ], + 'required': [ + 'workspace_id', + 'chat_request', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'workspace_id', + ] + }, + root_map={ + 'validations': { + ('workspace_id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'chat_request': + (ChatRequest,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'chat_request': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) + self.ai_chat_history_endpoint = _Endpoint( + settings={ + 'response_type': (ChatHistoryResult,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/chatHistory', + 'operation_id': 'ai_chat_history', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'chat_history_request', + ], + 'required': [ + 'workspace_id', + 'chat_history_request', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'workspace_id', + ] + }, + root_map={ + 'validations': { + ('workspace_id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'chat_history_request': + (ChatHistoryRequest,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'chat_history_request': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) + self.ai_route_endpoint = _Endpoint( + settings={ + 'response_type': (RouteResult,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/route', + 'operation_id': 'ai_route', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'route_request', + ], + 'required': [ + 'workspace_id', + 'route_request', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'workspace_id', + ] + }, + root_map={ + 'validations': { + ('workspace_id',): { + + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'route_request': + (RouteRequest,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'route_request': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) self.ai_search_endpoint = _Endpoint( settings={ 'response_type': (SearchResult,), @@ -546,6 +741,267 @@ def __init__(self, api_client=None): api_client=api_client ) + def ai_chat( + self, + workspace_id, + chat_request, + **kwargs + ): + """(BETA) Chat with AI # noqa: E501 + + (BETA) Combines multiple use cases such as search, create visualizations, ... # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.ai_chat(workspace_id, chat_request, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): Workspace identifier + chat_request (ChatRequest): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + ChatResult + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['chat_request'] = \ + chat_request + return self.ai_chat_endpoint.call_with_http_info(**kwargs) + + def ai_chat_history( + self, + workspace_id, + chat_history_request, + **kwargs + ): + """(BETA) Get Chat History # noqa: E501 + + (BETA) Post thread ID (and optionally interaction ID) to get full/partial chat history. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.ai_chat_history(workspace_id, chat_history_request, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): Workspace identifier + chat_history_request (ChatHistoryRequest): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + ChatHistoryResult + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['chat_history_request'] = \ + chat_history_request + return self.ai_chat_history_endpoint.call_with_http_info(**kwargs) + + def ai_route( + self, + workspace_id, + route_request, + **kwargs + ): + """(BETA) Route to supported use cases based on this input query. # noqa: E501 + + (BETA) Uses similarity (e.g. cosine distance) to find most similar use cases. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.ai_route(workspace_id, route_request, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): Workspace identifier + route_request (RouteRequest): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + RouteResult + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['route_request'] = \ + route_request + return self.ai_route_endpoint.call_with_http_info(**kwargs) + def ai_search( self, workspace_id, diff --git a/gooddata-api-client/gooddata_api_client/api/unsubscribe_api.py b/gooddata-api-client/gooddata_api_client/api/unsubscribe_api.py new file mode 100644 index 000000000..0a5c50d02 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/api/unsubscribe_api.py @@ -0,0 +1,423 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.api_client import ApiClient, Endpoint as _Endpoint +from gooddata_api_client.model_utils import ( # noqa: F401 + check_allowed_values, + check_validations, + date, + datetime, + file_type, + none_type, + validate_and_convert_types +) + + +class UnsubscribeApi(object): + """NOTE: This class is auto generated by OpenAPI Generator + Ref: https://openapi-generator.tech + + Do not edit the class manually. + """ + + def __init__(self, api_client=None): + if api_client is None: + api_client = ApiClient() + self.api_client = api_client + self.unsubscribe_all_automations_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/actions/organization/automations/unsubscribe', + 'operation_id': 'unsubscribe_all_automations', + 'http_method': 'DELETE', + 'servers': None, + }, + params_map={ + 'all': [ + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + }, + 'attribute_map': { + }, + 'location_map': { + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) + self.unsubscribe_automation_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/automations/{automationId}/unsubscribe', + 'operation_id': 'unsubscribe_automation', + 'http_method': 'DELETE', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'automation_id', + ], + 'required': [ + 'workspace_id', + 'automation_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'automation_id': + (str,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'automation_id': 'automationId', + }, + 'location_map': { + 'workspace_id': 'path', + 'automation_id': 'path', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) + self.unsubscribe_workspace_automations_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/automations/unsubscribe', + 'operation_id': 'unsubscribe_workspace_automations', + 'http_method': 'DELETE', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + ], + 'required': [ + 'workspace_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) + + def unsubscribe_all_automations( + self, + **kwargs + ): + """Unsubscribe from all automations in all workspaces # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.unsubscribe_all_automations(async_req=True) + >>> result = thread.get() + + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + return self.unsubscribe_all_automations_endpoint.call_with_http_info(**kwargs) + + def unsubscribe_automation( + self, + workspace_id, + automation_id, + **kwargs + ): + """Unsubscribe from an automation # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.unsubscribe_automation(workspace_id, automation_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + automation_id (str): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['automation_id'] = \ + automation_id + return self.unsubscribe_automation_endpoint.call_with_http_info(**kwargs) + + def unsubscribe_workspace_automations( + self, + workspace_id, + **kwargs + ): + """Unsubscribe from all automations in the workspace # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.unsubscribe_workspace_automations(workspace_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + + Keyword Args: + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + return self.unsubscribe_workspace_automations_endpoint.call_with_http_info(**kwargs) + diff --git a/gooddata-api-client/gooddata_api_client/api/workspace_object_controller_api.py b/gooddata-api-client/gooddata_api_client/api/workspace_object_controller_api.py index ef92a2a93..1f639dcf5 100644 --- a/gooddata-api-client/gooddata_api_client/api/workspace_object_controller_api.py +++ b/gooddata-api-client/gooddata_api_client/api/workspace_object_controller_api.py @@ -61,6 +61,10 @@ from gooddata_api_client.model.json_api_filter_context_out_list import JsonApiFilterContextOutList from gooddata_api_client.model.json_api_filter_context_patch_document import JsonApiFilterContextPatchDocument from gooddata_api_client.model.json_api_filter_context_post_optional_id_document import JsonApiFilterContextPostOptionalIdDocument +from gooddata_api_client.model.json_api_filter_view_in_document import JsonApiFilterViewInDocument +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from gooddata_api_client.model.json_api_filter_view_out_list import JsonApiFilterViewOutList +from gooddata_api_client.model.json_api_filter_view_patch_document import JsonApiFilterViewPatchDocument from gooddata_api_client.model.json_api_label_out_document import JsonApiLabelOutDocument from gooddata_api_client.model.json_api_label_out_list import JsonApiLabelOutList from gooddata_api_client.model.json_api_metric_in_document import JsonApiMetricInDocument @@ -328,10 +332,12 @@ def __init__(self, api_client=None): ('include',): { "NOTIFICATIONCHANNELS": "notificationChannels", + "ANALYTICALDASHBOARDS": "analyticalDashboards", "USERIDENTIFIERS": "userIdentifiers", "EXPORTDEFINITIONS": "exportDefinitions", "USERS": "users", "NOTIFICATIONCHANNEL": "notificationChannel", + "ANALYTICALDASHBOARD": "analyticalDashboard", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "RECIPIENTS": "recipients", @@ -581,9 +587,11 @@ def __init__(self, api_client=None): "VISUALIZATIONOBJECTS": "visualizationObjects", "ANALYTICALDASHBOARDS": "analyticalDashboards", + "AUTOMATIONS": "automations", "USERIDENTIFIERS": "userIdentifiers", "VISUALIZATIONOBJECT": "visualizationObject", "ANALYTICALDASHBOARD": "analyticalDashboard", + "AUTOMATION": "automation", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "ALL": "ALL" @@ -718,6 +726,77 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.create_entity_filter_views_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiFilterViewOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews', + 'operation_id': 'create_entity_filter_views', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'json_api_filter_view_in_document', + 'include', + ], + 'required': [ + 'workspace_id', + 'json_api_filter_view_in_document', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('include',): { + + "ANALYTICALDASHBOARDS": "analyticalDashboards", + "USERS": "users", + "ANALYTICALDASHBOARD": "analyticalDashboard", + "USER": "user", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'json_api_filter_view_in_document': + (JsonApiFilterViewInDocument,), + 'include': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'include': 'include', + }, + 'location_map': { + 'workspace_id': 'path', + 'json_api_filter_view_in_document': 'body', + 'include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) self.create_entity_metrics_endpoint = _Endpoint( settings={ 'response_type': (JsonApiMetricOutDocument,), @@ -1646,6 +1725,64 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.delete_entity_filter_views_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId}', + 'operation_id': 'delete_entity_filter_views', + 'http_method': 'DELETE', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'object_id', + 'filter', + ], + 'required': [ + 'workspace_id', + 'object_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'object_id': + (str,), + 'filter': + (str,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'object_id': 'objectId', + 'filter': 'filter', + }, + 'location_map': { + 'workspace_id': 'path', + 'object_id': 'path', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client + ) self.delete_entity_metrics_endpoint = _Endpoint( settings={ 'response_type': None, @@ -2414,10 +2551,12 @@ def __init__(self, api_client=None): ('include',): { "NOTIFICATIONCHANNELS": "notificationChannels", + "ANALYTICALDASHBOARDS": "analyticalDashboards", "USERIDENTIFIERS": "userIdentifiers", "EXPORTDEFINITIONS": "exportDefinitions", "USERS": "users", "NOTIFICATIONCHANNEL": "notificationChannel", + "ANALYTICALDASHBOARD": "analyticalDashboard", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "RECIPIENTS": "recipients", @@ -2884,9 +3023,11 @@ def __init__(self, api_client=None): "VISUALIZATIONOBJECTS": "visualizationObjects", "ANALYTICALDASHBOARDS": "analyticalDashboards", + "AUTOMATIONS": "automations", "USERIDENTIFIERS": "userIdentifiers", "VISUALIZATIONOBJECT": "visualizationObject", "ANALYTICALDASHBOARD": "analyticalDashboard", + "AUTOMATION": "automation", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "ALL": "ALL" @@ -3192,6 +3333,125 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.get_all_entities_filter_views_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiFilterViewOutList,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews', + 'operation_id': 'get_all_entities_filter_views', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'origin', + 'filter', + 'include', + 'page', + 'size', + 'sort', + 'x_gdc_validate_relations', + 'meta_include', + ], + 'required': [ + 'workspace_id', + ], + 'nullable': [ + ], + 'enum': [ + 'origin', + 'include', + 'meta_include', + ], + 'validation': [ + 'meta_include', + ] + }, + root_map={ + 'validations': { + ('meta_include',): { + + }, + }, + 'allowed_values': { + ('origin',): { + + "ALL": "ALL", + "PARENTS": "PARENTS", + "NATIVE": "NATIVE" + }, + ('include',): { + + "ANALYTICALDASHBOARDS": "analyticalDashboards", + "USERS": "users", + "ANALYTICALDASHBOARD": "analyticalDashboard", + "USER": "user", + "ALL": "ALL" + }, + ('meta_include',): { + + "PAGE": "page", + "ALL": "all", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'origin': + (str,), + 'filter': + (str,), + 'include': + ([str],), + 'page': + (int,), + 'size': + (int,), + 'sort': + ([str],), + 'x_gdc_validate_relations': + (bool,), + 'meta_include': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'origin': 'origin', + 'filter': 'filter', + 'include': 'include', + 'page': 'page', + 'size': 'size', + 'sort': 'sort', + 'x_gdc_validate_relations': 'X-GDC-VALIDATE-RELATIONS', + 'meta_include': 'metaInclude', + }, + 'location_map': { + 'workspace_id': 'path', + 'origin': 'query', + 'filter': 'query', + 'include': 'query', + 'page': 'query', + 'size': 'query', + 'sort': 'query', + 'x_gdc_validate_relations': 'header', + 'meta_include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + 'sort': 'multi', + 'meta_include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) self.get_all_entities_labels_endpoint = _Endpoint( settings={ 'response_type': (JsonApiLabelOutList,), @@ -4366,10 +4626,12 @@ def __init__(self, api_client=None): ('include',): { "NOTIFICATIONCHANNELS": "notificationChannels", + "ANALYTICALDASHBOARDS": "analyticalDashboards", "USERIDENTIFIERS": "userIdentifiers", "EXPORTDEFINITIONS": "exportDefinitions", "USERS": "users", "NOTIFICATIONCHANNEL": "notificationChannel", + "ANALYTICALDASHBOARD": "analyticalDashboard", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "RECIPIENTS": "recipients", @@ -4744,9 +5006,11 @@ def __init__(self, api_client=None): "VISUALIZATIONOBJECTS": "visualizationObjects", "ANALYTICALDASHBOARDS": "analyticalDashboards", + "AUTOMATIONS": "automations", "USERIDENTIFIERS": "userIdentifiers", "VISUALIZATIONOBJECT": "visualizationObject", "ANALYTICALDASHBOARD": "analyticalDashboard", + "AUTOMATION": "automation", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "ALL": "ALL" @@ -4992,12 +5256,12 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_entity_labels_endpoint = _Endpoint( + self.get_entity_filter_views_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiLabelOutDocument,), + 'response_type': (JsonApiFilterViewOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/labels/{objectId}', - 'operation_id': 'get_entity_labels', + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId}', + 'operation_id': 'get_entity_filter_views', 'http_method': 'GET', 'servers': None, }, @@ -5008,7 +5272,6 @@ def __init__(self, api_client=None): 'filter', 'include', 'x_gdc_validate_relations', - 'meta_include', ], 'required': [ 'workspace_id', @@ -5018,27 +5281,108 @@ def __init__(self, api_client=None): ], 'enum': [ 'include', - 'meta_include', ], 'validation': [ - 'meta_include', ] }, root_map={ 'validations': { - ('meta_include',): { - - }, }, 'allowed_values': { ('include',): { - "ATTRIBUTES": "attributes", - "ATTRIBUTE": "attribute", + "ANALYTICALDASHBOARDS": "analyticalDashboards", + "USERS": "users", + "ANALYTICALDASHBOARD": "analyticalDashboard", + "USER": "user", "ALL": "ALL" }, - ('meta_include',): { - + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'object_id': + (str,), + 'filter': + (str,), + 'include': + ([str],), + 'x_gdc_validate_relations': + (bool,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'object_id': 'objectId', + 'filter': 'filter', + 'include': 'include', + 'x_gdc_validate_relations': 'X-GDC-VALIDATE-RELATIONS', + }, + 'location_map': { + 'workspace_id': 'path', + 'object_id': 'path', + 'filter': 'query', + 'include': 'query', + 'x_gdc_validate_relations': 'header', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.get_entity_labels_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLabelOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/labels/{objectId}', + 'operation_id': 'get_entity_labels', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'object_id', + 'filter', + 'include', + 'x_gdc_validate_relations', + 'meta_include', + ], + 'required': [ + 'workspace_id', + 'object_id', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + 'meta_include', + ], + 'validation': [ + 'meta_include', + ] + }, + root_map={ + 'validations': { + ('meta_include',): { + + }, + }, + 'allowed_values': { + ('include',): { + + "ATTRIBUTES": "attributes", + "ATTRIBUTE": "attribute", + "ALL": "ALL" + }, + ('meta_include',): { + "ORIGIN": "origin", "ALL": "all", "ALL": "ALL" @@ -5870,10 +6214,12 @@ def __init__(self, api_client=None): ('include',): { "NOTIFICATIONCHANNELS": "notificationChannels", + "ANALYTICALDASHBOARDS": "analyticalDashboards", "USERIDENTIFIERS": "userIdentifiers", "EXPORTDEFINITIONS": "exportDefinitions", "USERS": "users", "NOTIFICATIONCHANNEL": "notificationChannel", + "ANALYTICALDASHBOARD": "analyticalDashboard", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "RECIPIENTS": "recipients", @@ -6105,9 +6451,11 @@ def __init__(self, api_client=None): "VISUALIZATIONOBJECTS": "visualizationObjects", "ANALYTICALDASHBOARDS": "analyticalDashboards", + "AUTOMATIONS": "automations", "USERIDENTIFIERS": "userIdentifiers", "VISUALIZATIONOBJECT": "visualizationObject", "ANALYTICALDASHBOARD": "analyticalDashboard", + "AUTOMATION": "automation", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "ALL": "ALL" @@ -6233,6 +6581,88 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.patch_entity_filter_views_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiFilterViewOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId}', + 'operation_id': 'patch_entity_filter_views', + 'http_method': 'PATCH', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'object_id', + 'json_api_filter_view_patch_document', + 'filter', + 'include', + ], + 'required': [ + 'workspace_id', + 'object_id', + 'json_api_filter_view_patch_document', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('include',): { + + "ANALYTICALDASHBOARDS": "analyticalDashboards", + "USERS": "users", + "ANALYTICALDASHBOARD": "analyticalDashboard", + "USER": "user", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'object_id': + (str,), + 'json_api_filter_view_patch_document': + (JsonApiFilterViewPatchDocument,), + 'filter': + (str,), + 'include': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'object_id': 'objectId', + 'filter': 'filter', + 'include': 'include', + }, + 'location_map': { + 'workspace_id': 'path', + 'object_id': 'path', + 'json_api_filter_view_patch_document': 'body', + 'filter': 'query', + 'include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) self.patch_entity_metrics_endpoint = _Endpoint( settings={ 'response_type': (JsonApiMetricOutDocument,), @@ -6926,10 +7356,12 @@ def __init__(self, api_client=None): ('include',): { "NOTIFICATIONCHANNELS": "notificationChannels", + "ANALYTICALDASHBOARDS": "analyticalDashboards", "USERIDENTIFIERS": "userIdentifiers", "EXPORTDEFINITIONS": "exportDefinitions", "USERS": "users", "NOTIFICATIONCHANNEL": "notificationChannel", + "ANALYTICALDASHBOARD": "analyticalDashboard", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "RECIPIENTS": "recipients", @@ -7161,9 +7593,11 @@ def __init__(self, api_client=None): "VISUALIZATIONOBJECTS": "visualizationObjects", "ANALYTICALDASHBOARDS": "analyticalDashboards", + "AUTOMATIONS": "automations", "USERIDENTIFIERS": "userIdentifiers", "VISUALIZATIONOBJECT": "visualizationObject", "ANALYTICALDASHBOARD": "analyticalDashboard", + "AUTOMATION": "automation", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", "ALL": "ALL" @@ -7289,6 +7723,88 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.update_entity_filter_views_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiFilterViewOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId}', + 'operation_id': 'update_entity_filter_views', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'object_id', + 'json_api_filter_view_in_document', + 'filter', + 'include', + ], + 'required': [ + 'workspace_id', + 'object_id', + 'json_api_filter_view_in_document', + ], + 'nullable': [ + ], + 'enum': [ + 'include', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('include',): { + + "ANALYTICALDASHBOARDS": "analyticalDashboards", + "USERS": "users", + "ANALYTICALDASHBOARD": "analyticalDashboard", + "USER": "user", + "ALL": "ALL" + }, + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'object_id': + (str,), + 'json_api_filter_view_in_document': + (JsonApiFilterViewInDocument,), + 'filter': + (str,), + 'include': + ([str],), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'object_id': 'objectId', + 'filter': 'filter', + 'include': 'include', + }, + 'location_map': { + 'workspace_id': 'path', + 'object_id': 'path', + 'json_api_filter_view_in_document': 'body', + 'filter': 'query', + 'include': 'query', + }, + 'collection_format_map': { + 'include': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) self.update_entity_metrics_endpoint = _Endpoint( settings={ 'response_type': (JsonApiMetricOutDocument,), @@ -8391,6 +8907,93 @@ def create_entity_filter_contexts( json_api_filter_context_post_optional_id_document return self.create_entity_filter_contexts_endpoint.call_with_http_info(**kwargs) + def create_entity_filter_views( + self, + workspace_id, + json_api_filter_view_in_document, + **kwargs + ): + """Post Filter views # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.create_entity_filter_views(workspace_id, json_api_filter_view_in_document, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + json_api_filter_view_in_document (JsonApiFilterViewInDocument): + + Keyword Args: + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiFilterViewOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['json_api_filter_view_in_document'] = \ + json_api_filter_view_in_document + return self.create_entity_filter_views_endpoint.call_with_http_info(**kwargs) + def create_entity_metrics( self, workspace_id, @@ -9527,6 +10130,93 @@ def delete_entity_filter_contexts( object_id return self.delete_entity_filter_contexts_endpoint.call_with_http_info(**kwargs) + def delete_entity_filter_views( + self, + workspace_id, + object_id, + **kwargs + ): + """Delete Filter view # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.delete_entity_filter_views(workspace_id, object_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + object_id (str): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['object_id'] = \ + object_id + return self.delete_entity_filter_views_endpoint.call_with_http_info(**kwargs) + def delete_entity_metrics( self, workspace_id, @@ -10858,17 +11548,107 @@ def get_all_entities_facts( workspace_id return self.get_all_entities_facts_endpoint.call_with_http_info(**kwargs) - def get_all_entities_filter_contexts( + def get_all_entities_filter_contexts( + self, + workspace_id, + **kwargs + ): + """Get all Context Filters # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_all_entities_filter_contexts(workspace_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + + Keyword Args: + origin (str): [optional] if omitted the server will use the default value of "ALL" + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 + size (int): The size of the page to be returned. [optional] if omitted the server will use the default value of 20 + sort ([str]): Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.. [optional] + x_gdc_validate_relations (bool): [optional] if omitted the server will use the default value of False + meta_include ([str]): Include Meta objects.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiFilterContextOutList + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + return self.get_all_entities_filter_contexts_endpoint.call_with_http_info(**kwargs) + + def get_all_entities_filter_views( self, workspace_id, **kwargs ): - """Get all Context Filters # noqa: E501 + """Get all Filter views # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_all_entities_filter_contexts(workspace_id, async_req=True) + >>> thread = api.get_all_entities_filter_views(workspace_id, async_req=True) >>> result = thread.get() Args: @@ -10915,7 +11695,7 @@ def get_all_entities_filter_contexts( async_req (bool): execute request asynchronously Returns: - JsonApiFilterContextOutList + JsonApiFilterViewOutList If the method is called asynchronously, returns the request thread. """ @@ -10946,7 +11726,7 @@ def get_all_entities_filter_contexts( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['workspace_id'] = \ workspace_id - return self.get_all_entities_filter_contexts_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_filter_views_endpoint.call_with_http_info(**kwargs) def get_all_entities_labels( self, @@ -12476,6 +13256,95 @@ def get_entity_filter_contexts( object_id return self.get_entity_filter_contexts_endpoint.call_with_http_info(**kwargs) + def get_entity_filter_views( + self, + workspace_id, + object_id, + **kwargs + ): + """Get Filter view # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.get_entity_filter_views(workspace_id, object_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + object_id (str): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + x_gdc_validate_relations (bool): [optional] if omitted the server will use the default value of False + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiFilterViewOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['object_id'] = \ + object_id + return self.get_entity_filter_views_endpoint.call_with_http_info(**kwargs) + def get_entity_labels( self, workspace_id, @@ -13748,6 +14617,98 @@ def patch_entity_filter_contexts( json_api_filter_context_patch_document return self.patch_entity_filter_contexts_endpoint.call_with_http_info(**kwargs) + def patch_entity_filter_views( + self, + workspace_id, + object_id, + json_api_filter_view_patch_document, + **kwargs + ): + """Patch Filter view # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.patch_entity_filter_views(workspace_id, object_id, json_api_filter_view_patch_document, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + object_id (str): + json_api_filter_view_patch_document (JsonApiFilterViewPatchDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiFilterViewOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['object_id'] = \ + object_id + kwargs['json_api_filter_view_patch_document'] = \ + json_api_filter_view_patch_document + return self.patch_entity_filter_views_endpoint.call_with_http_info(**kwargs) + def patch_entity_metrics( self, workspace_id, @@ -14942,6 +15903,98 @@ def update_entity_filter_contexts( json_api_filter_context_in_document return self.update_entity_filter_contexts_endpoint.call_with_http_info(**kwargs) + def update_entity_filter_views( + self, + workspace_id, + object_id, + json_api_filter_view_in_document, + **kwargs + ): + """Put Filter views # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.update_entity_filter_views(workspace_id, object_id, json_api_filter_view_in_document, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + object_id (str): + json_api_filter_view_in_document (JsonApiFilterViewInDocument): + + Keyword Args: + filter (str): Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').. [optional] + include ([str]): Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL). __WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.. [optional] + _return_http_data_only (bool): response data without head status + code and headers. Default is True. + _preload_content (bool): if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + _request_timeout (int/float/tuple): timeout setting for this request. If + one number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + Default is None. + _check_input_type (bool): specifies if type checking + should be done one the data sent to the server. + Default is True. + _check_return_type (bool): specifies if type checking + should be done one the data received from the server. + Default is True. + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _content_type (str/None): force body content-type. + Default is None and content-type will be predicted by allowed + content-types and body. + _host_index (int/None): specifies the index of the server + that we want to use. + Default is read from the configuration. + _request_auths (list): set to override the auth_settings for an a single + request; this effectively ignores the authentication + in the spec for a single request. + Default is None + async_req (bool): execute request asynchronously + + Returns: + JsonApiFilterViewOutDocument + If the method is called asynchronously, returns the request + thread. + """ + kwargs['async_req'] = kwargs.get( + 'async_req', False + ) + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['_preload_content'] = kwargs.get( + '_preload_content', True + ) + kwargs['_request_timeout'] = kwargs.get( + '_request_timeout', None + ) + kwargs['_check_input_type'] = kwargs.get( + '_check_input_type', True + ) + kwargs['_check_return_type'] = kwargs.get( + '_check_return_type', True + ) + kwargs['_spec_property_naming'] = kwargs.get( + '_spec_property_naming', False + ) + kwargs['_content_type'] = kwargs.get( + '_content_type') + kwargs['_host_index'] = kwargs.get('_host_index') + kwargs['_request_auths'] = kwargs.get('_request_auths', None) + kwargs['workspace_id'] = \ + workspace_id + kwargs['object_id'] = \ + object_id + kwargs['json_api_filter_view_in_document'] = \ + json_api_filter_view_in_document + return self.update_entity_filter_views_endpoint.call_with_http_info(**kwargs) + def update_entity_metrics( self, workspace_id, diff --git a/gooddata-api-client/gooddata_api_client/apis/__init__.py b/gooddata-api-client/gooddata_api_client/apis/__init__.py index 3a24cdccc..fc48741c3 100644 --- a/gooddata-api-client/gooddata_api_client/apis/__init__.py +++ b/gooddata-api-client/gooddata_api_client/apis/__init__.py @@ -35,12 +35,16 @@ from gooddata_api_client.api.entitlement_api import EntitlementApi from gooddata_api_client.api.export_definitions_api import ExportDefinitionsApi from gooddata_api_client.api.facts_api import FactsApi +from gooddata_api_client.api.filter_views_api import FilterViewsApi from gooddata_api_client.api.generate_logical_data_model_api import GenerateLogicalDataModelApi from gooddata_api_client.api.hierarchy_api import HierarchyApi +from gooddata_api_client.api.identity_providers_api import IdentityProvidersApi from gooddata_api_client.api.invalidate_cache_api import InvalidateCacheApi from gooddata_api_client.api.jwks_api import JWKSApi from gooddata_api_client.api.ldm_declarative_apis_api import LDMDeclarativeAPIsApi +from gooddata_api_client.api.llm_endpoints_api import LLMEndpointsApi from gooddata_api_client.api.labels_api import LabelsApi +from gooddata_api_client.api.metadata_sync_api import MetadataSyncApi from gooddata_api_client.api.metrics_api import MetricsApi from gooddata_api_client.api.notification_channels_api import NotificationChannelsApi from gooddata_api_client.api.options_api import OptionsApi @@ -54,6 +58,7 @@ from gooddata_api_client.api.tabular_export_api import TabularExportApi from gooddata_api_client.api.test_connection_api import TestConnectionApi from gooddata_api_client.api.translations_api import TranslationsApi +from gooddata_api_client.api.unsubscribe_api import UnsubscribeApi from gooddata_api_client.api.usage_api import UsageApi from gooddata_api_client.api.user_groups_declarative_apis_api import UserGroupsDeclarativeAPIsApi from gooddata_api_client.api.user_groups_entity_apis_api import UserGroupsEntityAPIsApi diff --git a/gooddata-api-client/gooddata_api_client/model/active_object_identification.py b/gooddata-api-client/gooddata_api_client/model/active_object_identification.py new file mode 100644 index 000000000..0007ef0c2 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/active_object_identification.py @@ -0,0 +1,282 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class ActiveObjectIdentification(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'workspace_id': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + 'workspace_id': 'workspaceId', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, id, type, workspace_id, *args, **kwargs): # noqa: E501 + """ActiveObjectIdentification - a model defined in OpenAPI + + Args: + id (str): Object ID. + type (str): Object type, e.g. dashboard. + workspace_id (str): Workspace ID. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.id = id + self.type = type + self.workspace_id = workspace_id + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, id, type, workspace_id, *args, **kwargs): # noqa: E501 + """ActiveObjectIdentification - a model defined in OpenAPI + + Args: + id (str): Object ID. + type (str): Object type, e.g. dashboard. + workspace_id (str): Workspace ID. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.id = id + self.type = type + self.workspace_id = workspace_id + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/alert_afm.py b/gooddata-api-client/gooddata_api_client/model/alert_afm.py new file mode 100644 index 000000000..7d148b2c9 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/alert_afm.py @@ -0,0 +1,286 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.filter_definition import FilterDefinition + from gooddata_api_client.model.measure_item import MeasureItem + globals()['FilterDefinition'] = FilterDefinition + globals()['MeasureItem'] = MeasureItem + + +class AlertAfm(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + ('measures',): { + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'filters': ([FilterDefinition],), # noqa: E501 + 'measures': ([MeasureItem],), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'filters': 'filters', # noqa: E501 + 'measures': 'measures', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, filters, measures, *args, **kwargs): # noqa: E501 + """AlertAfm - a model defined in OpenAPI + + Args: + filters ([FilterDefinition]): Various filter types to filter execution result. + measures ([MeasureItem]): Metrics to be computed. One metric if the alert condition is evaluated to a scalar. Two metrics when they should be evaluated to each other. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.filters = filters + self.measures = measures + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, filters, measures, *args, **kwargs): # noqa: E501 + """AlertAfm - a model defined in OpenAPI + + Args: + filters ([FilterDefinition]): Various filter types to filter execution result. + measures ([MeasureItem]): Metrics to be computed. One metric if the alert condition is evaluated to a scalar. Two metrics when they should be evaluated to each other. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.filters = filters + self.measures = measures + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/alert_condition.py b/gooddata-api-client/gooddata_api_client/model/alert_condition.py new file mode 100644 index 000000000..8b76b08ea --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/alert_condition.py @@ -0,0 +1,340 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.comparison import Comparison + from gooddata_api_client.model.comparison_wrapper import ComparisonWrapper + from gooddata_api_client.model.range import Range + from gooddata_api_client.model.range_wrapper import RangeWrapper + from gooddata_api_client.model.relative import Relative + from gooddata_api_client.model.relative_wrapper import RelativeWrapper + globals()['Comparison'] = Comparison + globals()['ComparisonWrapper'] = ComparisonWrapper + globals()['Range'] = Range + globals()['RangeWrapper'] = RangeWrapper + globals()['Relative'] = Relative + globals()['RelativeWrapper'] = RelativeWrapper + + +class AlertCondition(ModelComposed): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'comparison': (Comparison,), # noqa: E501 + 'range': (Range,), # noqa: E501 + 'relative': (Relative,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'comparison': 'comparison', # noqa: E501 + 'range': 'range', # noqa: E501 + 'relative': 'relative', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """AlertCondition - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + comparison (Comparison): [optional] # noqa: E501 + range (Range): [optional] # noqa: E501 + relative (Relative): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + '_composed_instances', + '_var_name_to_model_instances', + '_additional_properties_model_instances', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """AlertCondition - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + comparison (Comparison): [optional] # noqa: E501 + range (Range): [optional] # noqa: E501 + relative (Relative): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") + + @cached_property + def _composed_schemas(): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + lazy_import() + return { + 'anyOf': [ + ], + 'allOf': [ + ], + 'oneOf': [ + ComparisonWrapper, + RangeWrapper, + RelativeWrapper, + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/alert_condition_operand.py b/gooddata-api-client/gooddata_api_client/model/alert_condition_operand.py new file mode 100644 index 000000000..55f6226ec --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/alert_condition_operand.py @@ -0,0 +1,341 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.local_identifier import LocalIdentifier + from gooddata_api_client.model.value import Value + globals()['LocalIdentifier'] = LocalIdentifier + globals()['Value'] = Value + + +class AlertConditionOperand(ModelComposed): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + ('format',): { + 'max_length': 2048, + }, + ('title',): { + 'max_length': 255, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'format': (str, none_type,), # noqa: E501 + 'title': (str, none_type,), # noqa: E501 + 'local_identifier': (str,), # noqa: E501 + 'value': (float,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'format': 'format', # noqa: E501 + 'title': 'title', # noqa: E501 + 'local_identifier': 'localIdentifier', # noqa: E501 + 'value': 'value', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """AlertConditionOperand - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + format (str, none_type): Metric format.. [optional] if omitted the server will use the default value of "#,##0.00" # noqa: E501 + title (str, none_type): Metric title.. [optional] # noqa: E501 + local_identifier (str): Local identifier of the metric to be compared.. [optional] # noqa: E501 + value (float): Value of the alert threshold to compare the metric to.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + '_composed_instances', + '_var_name_to_model_instances', + '_additional_properties_model_instances', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """AlertConditionOperand - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + format (str, none_type): Metric format.. [optional] if omitted the server will use the default value of "#,##0.00" # noqa: E501 + title (str, none_type): Metric title.. [optional] # noqa: E501 + local_identifier (str): Local identifier of the metric to be compared.. [optional] # noqa: E501 + value (float): Value of the alert threshold to compare the metric to.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") + + @cached_property + def _composed_schemas(): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + lazy_import() + return { + 'anyOf': [ + ], + 'allOf': [ + ], + 'oneOf': [ + LocalIdentifier, + Value, + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/api_entitlement.py b/gooddata-api-client/gooddata_api_client/model/api_entitlement.py index de8aeb983..d5673984c 100644 --- a/gooddata-api-client/gooddata_api_client/model/api_entitlement.py +++ b/gooddata-api-client/gooddata_api_client/model/api_entitlement.py @@ -78,6 +78,8 @@ class ApiEntitlement(ModelNormal): 'UNLIMITEDAUTOMATIONRECIPIENTS': "UnlimitedAutomationRecipients", 'DAILYSCHEDULEDACTIONCOUNT': "DailyScheduledActionCount", 'UNLIMITEDDAILYSCHEDULEDACTIONS': "UnlimitedDailyScheduledActions", + 'DAILYALERTACTIONCOUNT': "DailyAlertActionCount", + 'UNLIMITEDDAILYALERTACTIONS': "UnlimitedDailyAlertActions", 'SCHEDULEDACTIONMINIMUMRECURRENCEMINUTES': "ScheduledActionMinimumRecurrenceMinutes", 'FEDERATEDIDENTITYMANAGEMENT': "FederatedIdentityManagement", }, diff --git a/gooddata-api-client/gooddata_api_client/model/arithmetic_measure.py b/gooddata-api-client/gooddata_api_client/model/arithmetic_measure.py new file mode 100644 index 000000000..3e1e0cd81 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/arithmetic_measure.py @@ -0,0 +1,292 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.local_identifier import LocalIdentifier + globals()['LocalIdentifier'] = LocalIdentifier + + +class ArithmeticMeasure(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('operator',): { + 'DIFFERENCE': "DIFFERENCE", + 'CHANGE': "CHANGE", + }, + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'left': (LocalIdentifier,), # noqa: E501 + 'operator': (str,), # noqa: E501 + 'right': (LocalIdentifier,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'left': 'left', # noqa: E501 + 'operator': 'operator', # noqa: E501 + 'right': 'right', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, left, operator, right, *args, **kwargs): # noqa: E501 + """ArithmeticMeasure - a model defined in OpenAPI + + Args: + left (LocalIdentifier): + operator (str): Arithmetic operator. DIFFERENCE - m₁−m₂ - the difference between two metrics. CHANGE - (m₁−m₂)÷m₂ - the relative difference between two metrics. + right (LocalIdentifier): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.left = left + self.operator = operator + self.right = right + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, left, operator, right, *args, **kwargs): # noqa: E501 + """ArithmeticMeasure - a model defined in OpenAPI + + Args: + left (LocalIdentifier): + operator (str): Arithmetic operator. DIFFERENCE - m₁−m₂ - the difference between two metrics. CHANGE - (m₁−m₂)÷m₂ - the relative difference between two metrics. + right (LocalIdentifier): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.left = left + self.operator = operator + self.right = right + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/automation_schedule.py b/gooddata-api-client/gooddata_api_client/model/automation_schedule.py index 9f53be097..fc1589514 100644 --- a/gooddata-api-client/gooddata_api_client/model/automation_schedule.py +++ b/gooddata-api-client/gooddata_api_client/model/automation_schedule.py @@ -107,6 +107,7 @@ def discriminator(): } read_only_vars = { + 'cron_description', # noqa: E501 } _composed_schemas = {} diff --git a/gooddata-api-client/gooddata_api_client/model/chat_history_interaction.py b/gooddata-api-client/gooddata_api_client/model/chat_history_interaction.py new file mode 100644 index 000000000..ea14dd9ca --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/chat_history_interaction.py @@ -0,0 +1,319 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.created_visualizations import CreatedVisualizations + from gooddata_api_client.model.found_objects import FoundObjects + from gooddata_api_client.model.route_result import RouteResult + globals()['CreatedVisualizations'] = CreatedVisualizations + globals()['FoundObjects'] = FoundObjects + globals()['RouteResult'] = RouteResult + + +class ChatHistoryInteraction(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + ('question',): { + 'max_length': 2000, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'interaction_finished': (bool,), # noqa: E501 + 'interaction_id': (int,), # noqa: E501 + 'question': (str,), # noqa: E501 + 'routing': (RouteResult,), # noqa: E501 + 'thread_id': (str,), # noqa: E501 + 'created_visualizations': (CreatedVisualizations,), # noqa: E501 + 'found_objects': (FoundObjects,), # noqa: E501 + 'text_response': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'interaction_finished': 'interactionFinished', # noqa: E501 + 'interaction_id': 'interactionId', # noqa: E501 + 'question': 'question', # noqa: E501 + 'routing': 'routing', # noqa: E501 + 'thread_id': 'threadId', # noqa: E501 + 'created_visualizations': 'createdVisualizations', # noqa: E501 + 'found_objects': 'foundObjects', # noqa: E501 + 'text_response': 'textResponse', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, interaction_finished, interaction_id, question, routing, thread_id, *args, **kwargs): # noqa: E501 + """ChatHistoryInteraction - a model defined in OpenAPI + + Args: + interaction_finished (bool): Has the interaction already finished? Can be used for polling when interaction is in progress. + interaction_id (int): Chat History interaction ID. Unique ID for each interaction. + question (str): User question + routing (RouteResult): + thread_id (str): Chat History thread ID. Backend persists chat history and returns ID for further requests. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + created_visualizations (CreatedVisualizations): [optional] # noqa: E501 + found_objects (FoundObjects): [optional] # noqa: E501 + text_response (str): Text response for general questions.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.interaction_finished = interaction_finished + self.interaction_id = interaction_id + self.question = question + self.routing = routing + self.thread_id = thread_id + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, interaction_finished, interaction_id, question, routing, thread_id, *args, **kwargs): # noqa: E501 + """ChatHistoryInteraction - a model defined in OpenAPI + + Args: + interaction_finished (bool): Has the interaction already finished? Can be used for polling when interaction is in progress. + interaction_id (int): Chat History interaction ID. Unique ID for each interaction. + question (str): User question + routing (RouteResult): + thread_id (str): Chat History thread ID. Backend persists chat history and returns ID for further requests. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + created_visualizations (CreatedVisualizations): [optional] # noqa: E501 + found_objects (FoundObjects): [optional] # noqa: E501 + text_response (str): Text response for general questions.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.interaction_finished = interaction_finished + self.interaction_id = interaction_id + self.question = question + self.routing = routing + self.thread_id = thread_id + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/chat_history_request.py b/gooddata-api-client/gooddata_api_client/model/chat_history_request.py new file mode 100644 index 000000000..ccdd1559d --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/chat_history_request.py @@ -0,0 +1,281 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class ChatHistoryRequest(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('user_feedback',): { + 'POSITIVE': "POSITIVE", + 'NEGATIVE': "NEGATIVE", + 'NONE': "NONE", + }, + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'chat_history_interaction_id': (int,), # noqa: E501 + 'chat_history_thread_id': (str,), # noqa: E501 + 'reset': (bool,), # noqa: E501 + 'user_feedback': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'chat_history_interaction_id': 'chatHistoryInteractionId', # noqa: E501 + 'chat_history_thread_id': 'chatHistoryThreadId', # noqa: E501 + 'reset': 'reset', # noqa: E501 + 'user_feedback': 'userFeedback', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """ChatHistoryRequest - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + chat_history_interaction_id (int): Return chat history records only after this interaction ID. If empty, complete chat history is returned.. [optional] # noqa: E501 + chat_history_thread_id (str): Chat History thread ID. Optional, backend can create it if not provided.. [optional] # noqa: E501 + reset (bool): User feedback.. [optional] # noqa: E501 + user_feedback (str): User feedback.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """ChatHistoryRequest - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + chat_history_interaction_id (int): Return chat history records only after this interaction ID. If empty, complete chat history is returned.. [optional] # noqa: E501 + chat_history_thread_id (str): Chat History thread ID. Optional, backend can create it if not provided.. [optional] # noqa: E501 + reset (bool): User feedback.. [optional] # noqa: E501 + user_feedback (str): User feedback.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/chat_history_result.py b/gooddata-api-client/gooddata_api_client/model/chat_history_result.py new file mode 100644 index 000000000..00f3c986e --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/chat_history_result.py @@ -0,0 +1,276 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.chat_history_interaction import ChatHistoryInteraction + globals()['ChatHistoryInteraction'] = ChatHistoryInteraction + + +class ChatHistoryResult(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'interactions': ([ChatHistoryInteraction],), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'interactions': 'interactions', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, interactions, *args, **kwargs): # noqa: E501 + """ChatHistoryResult - a model defined in OpenAPI + + Args: + interactions ([ChatHistoryInteraction]): List of chat history interactions. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.interactions = interactions + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, interactions, *args, **kwargs): # noqa: E501 + """ChatHistoryResult - a model defined in OpenAPI + + Args: + interactions ([ChatHistoryInteraction]): List of chat history interactions. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.interactions = interactions + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/chat_request.py b/gooddata-api-client/gooddata_api_client/model/chat_request.py new file mode 100644 index 000000000..b7d36f54b --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/chat_request.py @@ -0,0 +1,311 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.user_context import UserContext + globals()['UserContext'] = UserContext + + +class ChatRequest(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + ('question',): { + 'max_length': 2000, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'question': (str,), # noqa: E501 + 'chat_history_thread_id': (str,), # noqa: E501 + 'limit_create': (int,), # noqa: E501 + 'limit_create_context': (int,), # noqa: E501 + 'limit_search': (int,), # noqa: E501 + 'relevant_score_threshold': (float,), # noqa: E501 + 'search_score_threshold': (float,), # noqa: E501 + 'title_to_descriptor_ratio': (float,), # noqa: E501 + 'user_context': (UserContext,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'question': 'question', # noqa: E501 + 'chat_history_thread_id': 'chatHistoryThreadId', # noqa: E501 + 'limit_create': 'limitCreate', # noqa: E501 + 'limit_create_context': 'limitCreateContext', # noqa: E501 + 'limit_search': 'limitSearch', # noqa: E501 + 'relevant_score_threshold': 'relevantScoreThreshold', # noqa: E501 + 'search_score_threshold': 'searchScoreThreshold', # noqa: E501 + 'title_to_descriptor_ratio': 'titleToDescriptorRatio', # noqa: E501 + 'user_context': 'userContext', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, question, *args, **kwargs): # noqa: E501 + """ChatRequest - a model defined in OpenAPI + + Args: + question (str): User question + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + chat_history_thread_id (str): Chat History thread ID. Backend persists chat history and returns ID for further requests.. [optional] # noqa: E501 + limit_create (int): Maximum number of created results.. [optional] if omitted the server will use the default value of 3 # noqa: E501 + limit_create_context (int): Maximum number of relevant objects included into context for LLM (for each object type).. [optional] if omitted the server will use the default value of 10 # noqa: E501 + limit_search (int): Maximum number of search results.. [optional] if omitted the server will use the default value of 5 # noqa: E501 + relevant_score_threshold (float): Score, above which we return found objects. Below this score objects are not relevant.. [optional] if omitted the server will use the default value of 0.4 # noqa: E501 + search_score_threshold (float): Score, above which we return found object(s) and don't call LLM to create new objects.. [optional] if omitted the server will use the default value of 0.9 # noqa: E501 + title_to_descriptor_ratio (float): Temporary for experiments. Ratio of title score to descriptor score.. [optional] if omitted the server will use the default value of 0.7 # noqa: E501 + user_context (UserContext): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.question = question + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, question, *args, **kwargs): # noqa: E501 + """ChatRequest - a model defined in OpenAPI + + Args: + question (str): User question + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + chat_history_thread_id (str): Chat History thread ID. Backend persists chat history and returns ID for further requests.. [optional] # noqa: E501 + limit_create (int): Maximum number of created results.. [optional] if omitted the server will use the default value of 3 # noqa: E501 + limit_create_context (int): Maximum number of relevant objects included into context for LLM (for each object type).. [optional] if omitted the server will use the default value of 10 # noqa: E501 + limit_search (int): Maximum number of search results.. [optional] if omitted the server will use the default value of 5 # noqa: E501 + relevant_score_threshold (float): Score, above which we return found objects. Below this score objects are not relevant.. [optional] if omitted the server will use the default value of 0.4 # noqa: E501 + search_score_threshold (float): Score, above which we return found object(s) and don't call LLM to create new objects.. [optional] if omitted the server will use the default value of 0.9 # noqa: E501 + title_to_descriptor_ratio (float): Temporary for experiments. Ratio of title score to descriptor score.. [optional] if omitted the server will use the default value of 0.7 # noqa: E501 + user_context (UserContext): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.question = question + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/chat_result.py b/gooddata-api-client/gooddata_api_client/model/chat_result.py new file mode 100644 index 000000000..8d9209aa5 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/chat_result.py @@ -0,0 +1,296 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.created_visualizations import CreatedVisualizations + from gooddata_api_client.model.found_objects import FoundObjects + from gooddata_api_client.model.route_result import RouteResult + globals()['CreatedVisualizations'] = CreatedVisualizations + globals()['FoundObjects'] = FoundObjects + globals()['RouteResult'] = RouteResult + + +class ChatResult(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'routing': (RouteResult,), # noqa: E501 + 'chat_history_thread_id': (str,), # noqa: E501 + 'created_visualizations': (CreatedVisualizations,), # noqa: E501 + 'found_objects': (FoundObjects,), # noqa: E501 + 'text_response': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'routing': 'routing', # noqa: E501 + 'chat_history_thread_id': 'chatHistoryThreadId', # noqa: E501 + 'created_visualizations': 'createdVisualizations', # noqa: E501 + 'found_objects': 'foundObjects', # noqa: E501 + 'text_response': 'textResponse', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, routing, *args, **kwargs): # noqa: E501 + """ChatResult - a model defined in OpenAPI + + Args: + routing (RouteResult): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + chat_history_thread_id (str): Chat History thread ID. Backend persists chat history and returns ID for further requests.. [optional] # noqa: E501 + created_visualizations (CreatedVisualizations): [optional] # noqa: E501 + found_objects (FoundObjects): [optional] # noqa: E501 + text_response (str): Text response for general questions.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.routing = routing + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, routing, *args, **kwargs): # noqa: E501 + """ChatResult - a model defined in OpenAPI + + Args: + routing (RouteResult): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + chat_history_thread_id (str): Chat History thread ID. Backend persists chat history and returns ID for further requests.. [optional] # noqa: E501 + created_visualizations (CreatedVisualizations): [optional] # noqa: E501 + found_objects (FoundObjects): [optional] # noqa: E501 + text_response (str): Text response for general questions.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.routing = routing + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/comparison.py b/gooddata-api-client/gooddata_api_client/model/comparison.py new file mode 100644 index 000000000..399ebda2a --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/comparison.py @@ -0,0 +1,298 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.alert_condition_operand import AlertConditionOperand + from gooddata_api_client.model.local_identifier import LocalIdentifier + globals()['AlertConditionOperand'] = AlertConditionOperand + globals()['LocalIdentifier'] = LocalIdentifier + + +class Comparison(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('operator',): { + 'GREATER_THAN': "GREATER_THAN", + 'GREATER_THAN_OR_EQUAL_TO': "GREATER_THAN_OR_EQUAL_TO", + 'LESS_THAN': "LESS_THAN", + 'LESS_THAN_OR_EQUAL_TO': "LESS_THAN_OR_EQUAL_TO", + 'EQUAL_TO': "EQUAL_TO", + 'NOT_EQUAL_TO': "NOT_EQUAL_TO", + }, + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'left': (LocalIdentifier,), # noqa: E501 + 'operator': (str,), # noqa: E501 + 'right': (AlertConditionOperand,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'left': 'left', # noqa: E501 + 'operator': 'operator', # noqa: E501 + 'right': 'right', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, left, operator, right, *args, **kwargs): # noqa: E501 + """Comparison - a model defined in OpenAPI + + Args: + left (LocalIdentifier): + operator (str): + right (AlertConditionOperand): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.left = left + self.operator = operator + self.right = right + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, left, operator, right, *args, **kwargs): # noqa: E501 + """Comparison - a model defined in OpenAPI + + Args: + left (LocalIdentifier): + operator (str): + right (AlertConditionOperand): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.left = left + self.operator = operator + self.right = right + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/comparison_wrapper.py b/gooddata-api-client/gooddata_api_client/model/comparison_wrapper.py new file mode 100644 index 000000000..72fb3e27f --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/comparison_wrapper.py @@ -0,0 +1,276 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.comparison import Comparison + globals()['Comparison'] = Comparison + + +class ComparisonWrapper(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'comparison': (Comparison,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'comparison': 'comparison', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, comparison, *args, **kwargs): # noqa: E501 + """ComparisonWrapper - a model defined in OpenAPI + + Args: + comparison (Comparison): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.comparison = comparison + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, comparison, *args, **kwargs): # noqa: E501 + """ComparisonWrapper - a model defined in OpenAPI + + Args: + comparison (Comparison): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.comparison = comparison + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/created_visualization.py b/gooddata-api-client/gooddata_api_client/model/created_visualization.py new file mode 100644 index 000000000..280138296 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/created_visualization.py @@ -0,0 +1,310 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.dim_attribute import DimAttribute + from gooddata_api_client.model.metric import Metric + globals()['DimAttribute'] = DimAttribute + globals()['Metric'] = Metric + + +class CreatedVisualization(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('visualization_type',): { + 'TABLE': "TABLE", + 'HEADLINE': "HEADLINE", + 'BAR': "BAR", + 'LINE': "LINE", + 'PIE': "PIE", + 'COLUMN': "COLUMN", + }, + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'dimensionality': ([DimAttribute],), # noqa: E501 + 'id': (str,), # noqa: E501 + 'metrics': ([Metric],), # noqa: E501 + 'title': (str,), # noqa: E501 + 'visualization_type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'dimensionality': 'dimensionality', # noqa: E501 + 'id': 'id', # noqa: E501 + 'metrics': 'metrics', # noqa: E501 + 'title': 'title', # noqa: E501 + 'visualization_type': 'visualizationType', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, dimensionality, id, metrics, title, visualization_type, *args, **kwargs): # noqa: E501 + """CreatedVisualization - a model defined in OpenAPI + + Args: + dimensionality ([DimAttribute]): List of attributes representing the dimensionality of the new visualization + id (str): Proposed ID of the new visualization + metrics ([Metric]): List of metrics to be used in the new visualization + title (str): Proposed title of the new visualization + visualization_type (str): Visualization type requested in question + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.dimensionality = dimensionality + self.id = id + self.metrics = metrics + self.title = title + self.visualization_type = visualization_type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, dimensionality, id, metrics, title, visualization_type, *args, **kwargs): # noqa: E501 + """CreatedVisualization - a model defined in OpenAPI + + Args: + dimensionality ([DimAttribute]): List of attributes representing the dimensionality of the new visualization + id (str): Proposed ID of the new visualization + metrics ([Metric]): List of metrics to be used in the new visualization + title (str): Proposed title of the new visualization + visualization_type (str): Visualization type requested in question + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.dimensionality = dimensionality + self.id = id + self.metrics = metrics + self.title = title + self.visualization_type = visualization_type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/created_visualizations.py b/gooddata-api-client/gooddata_api_client/model/created_visualizations.py new file mode 100644 index 000000000..2933f7982 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/created_visualizations.py @@ -0,0 +1,282 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.created_visualization import CreatedVisualization + globals()['CreatedVisualization'] = CreatedVisualization + + +class CreatedVisualizations(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'objects': ([CreatedVisualization],), # noqa: E501 + 'reasoning': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'objects': 'objects', # noqa: E501 + 'reasoning': 'reasoning', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, objects, reasoning, *args, **kwargs): # noqa: E501 + """CreatedVisualizations - a model defined in OpenAPI + + Args: + objects ([CreatedVisualization]): List of created visualization objects + reasoning (str): Reasoning from LLM. Description of how and why the answer was generated. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.objects = objects + self.reasoning = reasoning + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, objects, reasoning, *args, **kwargs): # noqa: E501 + """CreatedVisualizations - a model defined in OpenAPI + + Args: + objects ([CreatedVisualization]): List of created visualization objects + reasoning (str): Reasoning from LLM. Description of how and why the answer was generated. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.objects = objects + self.reasoning = reasoning + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/dashboard_permissions_assignment.py b/gooddata-api-client/gooddata_api_client/model/dashboard_permissions_assignment.py index 674515ff4..0cfe9a563 100644 --- a/gooddata-api-client/gooddata_api_client/model/dashboard_permissions_assignment.py +++ b/gooddata-api-client/gooddata_api_client/model/dashboard_permissions_assignment.py @@ -30,8 +30,18 @@ from gooddata_api_client.exceptions import ApiAttributeError - -class DashboardPermissionsAssignment(ModelNormal): +def lazy_import(): + from gooddata_api_client.model.assignee_identifier import AssigneeIdentifier + from gooddata_api_client.model.assignee_rule import AssigneeRule + from gooddata_api_client.model.permissions_for_assignee import PermissionsForAssignee + from gooddata_api_client.model.permissions_for_assignee_rule import PermissionsForAssigneeRule + globals()['AssigneeIdentifier'] = AssigneeIdentifier + globals()['AssigneeRule'] = AssigneeRule + globals()['PermissionsForAssignee'] = PermissionsForAssignee + globals()['PermissionsForAssigneeRule'] = PermissionsForAssigneeRule + + +class DashboardPermissionsAssignment(ModelComposed): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech @@ -72,6 +82,7 @@ def additional_properties_type(): This must be a method because a model may have properties that are of type self, this must run after the class is loaded """ + lazy_import() return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 _nullable = False @@ -86,8 +97,11 @@ def openapi_types(): openapi_types (dict): The key is attribute name and the value is attribute type. """ + lazy_import() return { 'permissions': ([str],), # noqa: E501 + 'assignee_identifier': (AssigneeIdentifier,), # noqa: E501 + 'assignee_rule': (AssigneeRule,), # noqa: E501 } @cached_property @@ -97,22 +111,22 @@ def discriminator(): attribute_map = { 'permissions': 'permissions', # noqa: E501 + 'assignee_identifier': 'assigneeIdentifier', # noqa: E501 + 'assignee_rule': 'assigneeRule', # noqa: E501 } read_only_vars = { } - _composed_schemas = {} - @classmethod @convert_js_args_to_python_args - def _from_openapi_data(cls, permissions, *args, **kwargs): # noqa: E501 + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 """DashboardPermissionsAssignment - a model defined in OpenAPI - Args: - permissions ([str]): - Keyword Args: + permissions ([str]): + assignee_identifier (AssigneeIdentifier): + assignee_rule (AssigneeRule): _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be raised if the wrong type is input. @@ -146,7 +160,7 @@ def _from_openapi_data(cls, permissions, *args, **kwargs): # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) - _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) _path_to_item = kwargs.pop('_path_to_item', ()) _configuration = kwargs.pop('_configuration', None) _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) @@ -174,15 +188,29 @@ def _from_openapi_data(cls, permissions, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) - self.permissions = permissions + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + for var_name, var_value in kwargs.items(): - if var_name not in self.attribute_map and \ + if var_name in discarded_args and \ self._configuration is not None and \ self._configuration.discard_unknown_keys and \ - self.additional_properties_type is None: + self._additional_properties_model_instances: # discard variable. continue setattr(self, var_name, var_value) + return self required_properties = set([ @@ -192,16 +220,19 @@ def _from_openapi_data(cls, permissions, *args, **kwargs): # noqa: E501 '_path_to_item', '_configuration', '_visited_composed_classes', + '_composed_instances', + '_var_name_to_model_instances', + '_additional_properties_model_instances', ]) @convert_js_args_to_python_args - def __init__(self, permissions, *args, **kwargs): # noqa: E501 + def __init__(self, *args, **kwargs): # noqa: E501 """DashboardPermissionsAssignment - a model defined in OpenAPI - Args: - permissions ([str]): - Keyword Args: + permissions ([str]): + assignee_identifier (AssigneeIdentifier): + assignee_rule (AssigneeRule): _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be raised if the wrong type is input. @@ -261,15 +292,49 @@ def __init__(self, permissions, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) - self.permissions = permissions + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + for var_name, var_value in kwargs.items(): - if var_name not in self.attribute_map and \ + if var_name in discarded_args and \ self._configuration is not None and \ self._configuration.discard_unknown_keys and \ - self.additional_properties_type is None: + self._additional_properties_model_instances: # discard variable. continue setattr(self, var_name, var_value) if var_name in self.read_only_vars: raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " f"class with read only attributes.") + + @cached_property + def _composed_schemas(): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + lazy_import() + return { + 'anyOf': [ + ], + 'allOf': [ + ], + 'oneOf': [ + PermissionsForAssignee, + PermissionsForAssigneeRule, + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/declarative_automation.py b/gooddata-api-client/gooddata_api_client/model/declarative_automation.py index 473aad7e7..4784d20f4 100644 --- a/gooddata-api-client/gooddata_api_client/model/declarative_automation.py +++ b/gooddata-api-client/gooddata_api_client/model/declarative_automation.py @@ -68,6 +68,10 @@ class DeclarativeAutomation(ModelNormal): """ allowed_values = { + ('state',): { + 'ACTIVE': "ACTIVE", + 'PAUSED': "PAUSED", + }, } validations = { @@ -137,6 +141,7 @@ def openapi_types(): 'notification_channel': (DeclarativeNotificationChannelIdentifier,), # noqa: E501 'recipients': ([DeclarativeUserIdentifier],), # noqa: E501 'schedule': (AutomationSchedule,), # noqa: E501 + 'state': (str,), # noqa: E501 'tags': ([str],), # noqa: E501 'title': (str,), # noqa: E501 } @@ -159,6 +164,7 @@ def discriminator(): 'notification_channel': 'notificationChannel', # noqa: E501 'recipients': 'recipients', # noqa: E501 'schedule': 'schedule', # noqa: E501 + 'state': 'state', # noqa: E501 'tags': 'tags', # noqa: E501 'title': 'title', # noqa: E501 } @@ -218,7 +224,8 @@ def _from_openapi_data(cls, id, *args, **kwargs): # noqa: E501 notification_channel (DeclarativeNotificationChannelIdentifier): [optional] # noqa: E501 recipients ([DeclarativeUserIdentifier]): [optional] # noqa: E501 schedule (AutomationSchedule): [optional] # noqa: E501 - tags ([str]): A list of tags.. [optional] # noqa: E501 + state (str): Current state of the automation.. [optional] if omitted the server will use the default value of "ACTIVE" # noqa: E501 + tags ([str]): [optional] # noqa: E501 title (str): [optional] # noqa: E501 """ @@ -320,7 +327,8 @@ def __init__(self, id, *args, **kwargs): # noqa: E501 notification_channel (DeclarativeNotificationChannelIdentifier): [optional] # noqa: E501 recipients ([DeclarativeUserIdentifier]): [optional] # noqa: E501 schedule (AutomationSchedule): [optional] # noqa: E501 - tags ([str]): A list of tags.. [optional] # noqa: E501 + state (str): Current state of the automation.. [optional] if omitted the server will use the default value of "ACTIVE" # noqa: E501 + tags ([str]): [optional] # noqa: E501 title (str): [optional] # noqa: E501 """ diff --git a/gooddata-api-client/gooddata_api_client/model/declarative_notification_channel.py b/gooddata-api-client/gooddata_api_client/model/declarative_notification_channel.py index efc8f3068..efb60b4a9 100644 --- a/gooddata-api-client/gooddata_api_client/model/declarative_notification_channel.py +++ b/gooddata-api-client/gooddata_api_client/model/declarative_notification_channel.py @@ -31,10 +31,8 @@ def lazy_import(): - from gooddata_api_client.model.notification_trigger import NotificationTrigger - from gooddata_api_client.model.webhook import Webhook - globals()['NotificationTrigger'] = NotificationTrigger - globals()['Webhook'] = Webhook + from gooddata_api_client.model.declarative_notification_channel_destination import DeclarativeNotificationChannelDestination + globals()['DeclarativeNotificationChannelDestination'] = DeclarativeNotificationChannelDestination class DeclarativeNotificationChannel(ModelNormal): @@ -62,6 +60,12 @@ class DeclarativeNotificationChannel(ModelNormal): """ allowed_values = { + ('destination_type',): { + 'None': None, + 'WEBHOOK': "WEBHOOK", + 'SMTP': "SMTP", + 'DEFAULT_SMTP': "DEFAULT_SMTP", + }, } validations = { @@ -76,8 +80,6 @@ class DeclarativeNotificationChannel(ModelNormal): ('name',): { 'max_length': 255, }, - ('triggers',): { - }, } @cached_property @@ -104,10 +106,12 @@ def openapi_types(): lazy_import() return { 'id': (str,), # noqa: E501 + 'custom_dashboard_url': (str,), # noqa: E501 'description': (str,), # noqa: E501 + 'destination': (DeclarativeNotificationChannelDestination,), # noqa: E501 + 'destination_type': (str, none_type,), # noqa: E501 + 'enable_multiple_recipients': (bool,), # noqa: E501 'name': (str,), # noqa: E501 - 'triggers': ([NotificationTrigger],), # noqa: E501 - 'webhook': (Webhook,), # noqa: E501 } @cached_property @@ -117,13 +121,16 @@ def discriminator(): attribute_map = { 'id': 'id', # noqa: E501 + 'custom_dashboard_url': 'customDashboardUrl', # noqa: E501 'description': 'description', # noqa: E501 + 'destination': 'destination', # noqa: E501 + 'destination_type': 'destinationType', # noqa: E501 + 'enable_multiple_recipients': 'enableMultipleRecipients', # noqa: E501 'name': 'name', # noqa: E501 - 'triggers': 'triggers', # noqa: E501 - 'webhook': 'webhook', # noqa: E501 } read_only_vars = { + 'destination_type', # noqa: E501 } _composed_schemas = {} @@ -167,10 +174,12 @@ def _from_openapi_data(cls, id, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + custom_dashboard_url (str): Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}.. [optional] # noqa: E501 description (str): Description of a notification channel.. [optional] # noqa: E501 + destination (DeclarativeNotificationChannelDestination): [optional] # noqa: E501 + destination_type (str, none_type): [optional] # noqa: E501 + enable_multiple_recipients (bool): Whether notifications sent to the channel can have multiple recipients.. [optional] if omitted the server will use the default value of True # noqa: E501 name (str): Name of a notification channel.. [optional] # noqa: E501 - triggers ([NotificationTrigger]): The triggers that are to be used to send notifications to the channel.. [optional] # noqa: E501 - webhook (Webhook): [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -260,10 +269,12 @@ def __init__(self, id, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + custom_dashboard_url (str): Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}.. [optional] # noqa: E501 description (str): Description of a notification channel.. [optional] # noqa: E501 + destination (DeclarativeNotificationChannelDestination): [optional] # noqa: E501 + destination_type (str, none_type): [optional] # noqa: E501 + enable_multiple_recipients (bool): Whether notifications sent to the channel can have multiple recipients.. [optional] if omitted the server will use the default value of True # noqa: E501 name (str): Name of a notification channel.. [optional] # noqa: E501 - triggers ([NotificationTrigger]): The triggers that are to be used to send notifications to the channel.. [optional] # noqa: E501 - webhook (Webhook): [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) diff --git a/gooddata-api-client/gooddata_api_client/model/declarative_notification_channel_destination.py b/gooddata-api-client/gooddata_api_client/model/declarative_notification_channel_destination.py new file mode 100644 index 000000000..a015f97b8 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/declarative_notification_channel_destination.py @@ -0,0 +1,386 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.default_smtp import DefaultSmtp + from gooddata_api_client.model.smtp import Smtp + from gooddata_api_client.model.webhook import Webhook + globals()['DefaultSmtp'] = DefaultSmtp + globals()['Smtp'] = Smtp + globals()['Webhook'] = Webhook + + +class DeclarativeNotificationChannelDestination(ModelComposed): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('port',): { + '25': 25, + '465': 465, + '587': 587, + '2525': 2525, + }, + ('type',): { + 'WEBHOOK': "WEBHOOK", + }, + } + + validations = { + ('from_email',): { + 'regex': { + 'pattern': r'(?:[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)])', # noqa: E501 + }, + }, + ('token',): { + 'max_length': 10000, + }, + ('url',): { + 'max_length': 255, + 'regex': { + 'pattern': r'https?\:\/\/.*', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'from_email': (str,), # noqa: E501 + 'from_email_name': (str,), # noqa: E501 + 'host': (str,), # noqa: E501 + 'password': (str,), # noqa: E501 + 'port': (int,), # noqa: E501 + 'username': (str,), # noqa: E501 + 'has_token': (bool, none_type,), # noqa: E501 + 'token': (str, none_type,), # noqa: E501 + 'url': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'from_email': 'fromEmail', # noqa: E501 + 'from_email_name': 'fromEmailName', # noqa: E501 + 'host': 'host', # noqa: E501 + 'password': 'password', # noqa: E501 + 'port': 'port', # noqa: E501 + 'username': 'username', # noqa: E501 + 'has_token': 'hasToken', # noqa: E501 + 'token': 'token', # noqa: E501 + 'url': 'url', # noqa: E501 + 'type': 'type', # noqa: E501 + } + + read_only_vars = { + 'has_token', # noqa: E501 + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """DeclarativeNotificationChannelDestination - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + from_email (str): E-mail address to send notifications from.. [optional] if omitted the server will use the default value of "no-reply@gooddata.com" # noqa: E501 + from_email_name (str): An optional e-mail name to send notifications from.. [optional] if omitted the server will use the default value of "GoodData" # noqa: E501 + host (str): The SMTP server address.. [optional] # noqa: E501 + password (str): The SMTP server password.. [optional] # noqa: E501 + port (int): The SMTP server port.. [optional] # noqa: E501 + username (str): The SMTP server username.. [optional] # noqa: E501 + has_token (bool, none_type): Flag indicating if webhook has a token.. [optional] # noqa: E501 + token (str, none_type): Bearer token for the webhook.. [optional] # noqa: E501 + url (str): The webhook URL.. [optional] # noqa: E501 + type (str): The destination type.. [optional] if omitted the server will use the default value of "WEBHOOK" # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + '_composed_instances', + '_var_name_to_model_instances', + '_additional_properties_model_instances', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """DeclarativeNotificationChannelDestination - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + from_email (str): E-mail address to send notifications from.. [optional] if omitted the server will use the default value of "no-reply@gooddata.com" # noqa: E501 + from_email_name (str): An optional e-mail name to send notifications from.. [optional] if omitted the server will use the default value of "GoodData" # noqa: E501 + host (str): The SMTP server address.. [optional] # noqa: E501 + password (str): The SMTP server password.. [optional] # noqa: E501 + port (int): The SMTP server port.. [optional] # noqa: E501 + username (str): The SMTP server username.. [optional] # noqa: E501 + has_token (bool, none_type): Flag indicating if webhook has a token.. [optional] # noqa: E501 + token (str, none_type): Bearer token for the webhook.. [optional] # noqa: E501 + url (str): The webhook URL.. [optional] # noqa: E501 + type (str): The destination type.. [optional] if omitted the server will use the default value of "WEBHOOK" # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") + + @cached_property + def _composed_schemas(): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + lazy_import() + return { + 'anyOf': [ + ], + 'allOf': [ + ], + 'oneOf': [ + DefaultSmtp, + Smtp, + Webhook, + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/declarative_notification_channels.py b/gooddata-api-client/gooddata_api_client/model/declarative_notification_channels.py new file mode 100644 index 000000000..57b9bb499 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/declarative_notification_channels.py @@ -0,0 +1,276 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.declarative_notification_channel import DeclarativeNotificationChannel + globals()['DeclarativeNotificationChannel'] = DeclarativeNotificationChannel + + +class DeclarativeNotificationChannels(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'notification_channels': ([DeclarativeNotificationChannel],), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'notification_channels': 'notificationChannels', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, notification_channels, *args, **kwargs): # noqa: E501 + """DeclarativeNotificationChannels - a model defined in OpenAPI + + Args: + notification_channels ([DeclarativeNotificationChannel]): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.notification_channels = notification_channels + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, notification_channels, *args, **kwargs): # noqa: E501 + """DeclarativeNotificationChannels - a model defined in OpenAPI + + Args: + notification_channels ([DeclarativeNotificationChannel]): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.notification_channels = notification_channels + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/declarative_setting.py b/gooddata-api-client/gooddata_api_client/model/declarative_setting.py index 3fbfaf41e..cc6a6657a 100644 --- a/gooddata-api-client/gooddata_api_client/model/declarative_setting.py +++ b/gooddata-api-client/gooddata_api_client/model/declarative_setting.py @@ -75,6 +75,7 @@ class DeclarativeSetting(ModelNormal): 'TIMEZONE_VALIDATION_ENABLED': "TIMEZONE_VALIDATION_ENABLED", 'OPENAI_CONFIG': "OPENAI_CONFIG", 'ENABLE_FILE_ANALYTICS': "ENABLE_FILE_ANALYTICS", + 'ALERT': "ALERT", }, } diff --git a/gooddata-api-client/gooddata_api_client/model/declarative_single_workspace_permission.py b/gooddata-api-client/gooddata_api_client/model/declarative_single_workspace_permission.py index ec59ee520..fd8d72181 100644 --- a/gooddata-api-client/gooddata_api_client/model/declarative_single_workspace_permission.py +++ b/gooddata-api-client/gooddata_api_client/model/declarative_single_workspace_permission.py @@ -66,6 +66,8 @@ class DeclarativeSingleWorkspacePermission(ModelNormal): 'EXPORT': "EXPORT", 'EXPORT_TABULAR': "EXPORT_TABULAR", 'EXPORT_PDF': "EXPORT_PDF", + 'CREATE_AUTOMATION': "CREATE_AUTOMATION", + 'CREATE_FILTER_VIEW': "CREATE_FILTER_VIEW", 'VIEW': "VIEW", }, } diff --git a/gooddata-api-client/gooddata_api_client/model/declarative_workspace_hierarchy_permission.py b/gooddata-api-client/gooddata_api_client/model/declarative_workspace_hierarchy_permission.py index 297dbb4b0..0d19e6cc7 100644 --- a/gooddata-api-client/gooddata_api_client/model/declarative_workspace_hierarchy_permission.py +++ b/gooddata-api-client/gooddata_api_client/model/declarative_workspace_hierarchy_permission.py @@ -66,6 +66,8 @@ class DeclarativeWorkspaceHierarchyPermission(ModelNormal): 'EXPORT': "EXPORT", 'EXPORT_TABULAR': "EXPORT_TABULAR", 'EXPORT_PDF': "EXPORT_PDF", + 'CREATE_AUTOMATION': "CREATE_AUTOMATION", + 'CREATE_FILTER_VIEW': "CREATE_FILTER_VIEW", 'VIEW': "VIEW", }, } diff --git a/gooddata-api-client/gooddata_api_client/model/default_smtp.py b/gooddata-api-client/gooddata_api_client/model/default_smtp.py new file mode 100644 index 000000000..bcc29533b --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/default_smtp.py @@ -0,0 +1,338 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.default_smtp_all_of import DefaultSmtpAllOf + globals()['DefaultSmtpAllOf'] = DefaultSmtpAllOf + + +class DefaultSmtp(ModelComposed): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'DEFAULT_SMTP': "DEFAULT_SMTP", + }, + } + + validations = { + ('from_email',): { + 'regex': { + 'pattern': r'(?:[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)])', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'type': (str,), # noqa: E501 + 'from_email': (str,), # noqa: E501 + 'from_email_name': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'type': 'type', # noqa: E501 + 'from_email': 'fromEmail', # noqa: E501 + 'from_email_name': 'fromEmailName', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """DefaultSmtp - a model defined in OpenAPI + + Keyword Args: + type (str): The destination type.. defaults to "DEFAULT_SMTP", must be one of ["DEFAULT_SMTP", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + from_email (str): E-mail address to send notifications from. Currently this does not have any effect. E-mail 'no-reply@gooddata.com' is used instead.. [optional] if omitted the server will use the default value of "no-reply@gooddata.com" # noqa: E501 + from_email_name (str): An optional e-mail name to send notifications from. Currently this does not have any effect. E-mail from name 'GoodData' is used instead.. [optional] if omitted the server will use the default value of "GoodData" # noqa: E501 + """ + + type = kwargs.get('type', "DEFAULT_SMTP") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + '_composed_instances', + '_var_name_to_model_instances', + '_additional_properties_model_instances', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """DefaultSmtp - a model defined in OpenAPI + + Keyword Args: + type (str): The destination type.. defaults to "DEFAULT_SMTP", must be one of ["DEFAULT_SMTP", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + from_email (str): E-mail address to send notifications from. Currently this does not have any effect. E-mail 'no-reply@gooddata.com' is used instead.. [optional] if omitted the server will use the default value of "no-reply@gooddata.com" # noqa: E501 + from_email_name (str): An optional e-mail name to send notifications from. Currently this does not have any effect. E-mail from name 'GoodData' is used instead.. [optional] if omitted the server will use the default value of "GoodData" # noqa: E501 + """ + + type = kwargs.get('type', "DEFAULT_SMTP") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") + + @cached_property + def _composed_schemas(): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + lazy_import() + return { + 'anyOf': [ + ], + 'allOf': [ + DefaultSmtpAllOf, + ], + 'oneOf': [ + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/default_smtp_all_of.py b/gooddata-api-client/gooddata_api_client/model/default_smtp_all_of.py new file mode 100644 index 000000000..64faad2c1 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/default_smtp_all_of.py @@ -0,0 +1,280 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class DefaultSmtpAllOf(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'DEFAULT_SMTP': "DEFAULT_SMTP", + }, + } + + validations = { + ('from_email',): { + 'regex': { + 'pattern': r'(?:[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)])', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'from_email': (str,), # noqa: E501 + 'from_email_name': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'from_email': 'fromEmail', # noqa: E501 + 'from_email_name': 'fromEmailName', # noqa: E501 + 'type': 'type', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """DefaultSmtpAllOf - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + from_email (str): E-mail address to send notifications from. Currently this does not have any effect. E-mail 'no-reply@gooddata.com' is used instead.. [optional] if omitted the server will use the default value of "no-reply@gooddata.com" # noqa: E501 + from_email_name (str): An optional e-mail name to send notifications from. Currently this does not have any effect. E-mail from name 'GoodData' is used instead.. [optional] if omitted the server will use the default value of "GoodData" # noqa: E501 + type (str): The destination type.. [optional] if omitted the server will use the default value of "DEFAULT_SMTP" # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """DefaultSmtpAllOf - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + from_email (str): E-mail address to send notifications from. Currently this does not have any effect. E-mail 'no-reply@gooddata.com' is used instead.. [optional] if omitted the server will use the default value of "no-reply@gooddata.com" # noqa: E501 + from_email_name (str): An optional e-mail name to send notifications from. Currently this does not have any effect. E-mail from name 'GoodData' is used instead.. [optional] if omitted the server will use the default value of "GoodData" # noqa: E501 + type (str): The destination type.. [optional] if omitted the server will use the default value of "DEFAULT_SMTP" # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_notification_channel_in_attributes_triggers_inner.py b/gooddata-api-client/gooddata_api_client/model/dim_attribute.py similarity index 92% rename from gooddata-api-client/gooddata_api_client/model/json_api_notification_channel_in_attributes_triggers_inner.py rename to gooddata-api-client/gooddata_api_client/model/dim_attribute.py index f165e89d3..54eeb5788 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_notification_channel_in_attributes_triggers_inner.py +++ b/gooddata-api-client/gooddata_api_client/model/dim_attribute.py @@ -30,12 +30,8 @@ from gooddata_api_client.exceptions import ApiAttributeError -def lazy_import(): - from gooddata_api_client.model.json_node import JsonNode - globals()['JsonNode'] = JsonNode - -class JsonApiNotificationChannelInAttributesTriggersInner(ModelNormal): +class DimAttribute(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech @@ -61,8 +57,7 @@ class JsonApiNotificationChannelInAttributesTriggersInner(ModelNormal): allowed_values = { ('type',): { - 'SCHEDULE': "SCHEDULE", - 'ALERT': "ALERT", + 'ATTRIBUTE': "attribute", }, } @@ -75,7 +70,6 @@ def additional_properties_type(): This must be a method because a model may have properties that are of type self, this must run after the class is loaded """ - lazy_import() return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 _nullable = False @@ -90,10 +84,9 @@ def openapi_types(): openapi_types (dict): The key is attribute name and the value is attribute type. """ - lazy_import() return { + 'id': (str,), # noqa: E501 'type': (str,), # noqa: E501 - 'metadata': (JsonNode,), # noqa: E501 } @cached_property @@ -102,8 +95,8 @@ def discriminator(): attribute_map = { + 'id': 'id', # noqa: E501 'type': 'type', # noqa: E501 - 'metadata': 'metadata', # noqa: E501 } read_only_vars = { @@ -113,13 +106,14 @@ def discriminator(): @classmethod @convert_js_args_to_python_args - def _from_openapi_data(cls, type, *args, **kwargs): # noqa: E501 - """JsonApiNotificationChannelInAttributesTriggersInner - a model defined in OpenAPI + def _from_openapi_data(cls, id, *args, **kwargs): # noqa: E501 + """DimAttribute - a model defined in OpenAPI Args: - type (str): The notification trigger type. + id (str): ID of the object Keyword Args: + type (str): Object type. defaults to "attribute", must be one of ["attribute", ] # noqa: E501 _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be raised if the wrong type is input. @@ -150,9 +144,9 @@ def _from_openapi_data(cls, type, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - metadata (JsonNode): [optional] # noqa: E501 """ + type = kwargs.get('type', "attribute") _check_type = kwargs.pop('_check_type', True) _spec_property_naming = kwargs.pop('_spec_property_naming', True) _path_to_item = kwargs.pop('_path_to_item', ()) @@ -182,6 +176,7 @@ def _from_openapi_data(cls, type, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + self.id = id self.type = type for var_name, var_value in kwargs.items(): if var_name not in self.attribute_map and \ @@ -203,13 +198,14 @@ def _from_openapi_data(cls, type, *args, **kwargs): # noqa: E501 ]) @convert_js_args_to_python_args - def __init__(self, type, *args, **kwargs): # noqa: E501 - """JsonApiNotificationChannelInAttributesTriggersInner - a model defined in OpenAPI + def __init__(self, id, *args, **kwargs): # noqa: E501 + """DimAttribute - a model defined in OpenAPI Args: - type (str): The notification trigger type. + id (str): ID of the object Keyword Args: + type (str): Object type. defaults to "attribute", must be one of ["attribute", ] # noqa: E501 _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be raised if the wrong type is input. @@ -240,9 +236,9 @@ def __init__(self, type, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - metadata (JsonNode): [optional] # noqa: E501 """ + type = kwargs.get('type', "attribute") _check_type = kwargs.pop('_check_type', True) _spec_property_naming = kwargs.pop('_spec_property_naming', False) _path_to_item = kwargs.pop('_path_to_item', ()) @@ -270,6 +266,7 @@ def __init__(self, type, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + self.id = id self.type = type for var_name, var_value in kwargs.items(): if var_name not in self.attribute_map and \ diff --git a/gooddata-api-client/gooddata_api_client/model/elements_request.py b/gooddata-api-client/gooddata_api_client/model/elements_request.py index b6be22611..23ce93f91 100644 --- a/gooddata-api-client/gooddata_api_client/model/elements_request.py +++ b/gooddata-api-client/gooddata_api_client/model/elements_request.py @@ -180,13 +180,13 @@ def _from_openapi_data(cls, label, *args, **kwargs): # noqa: E501 cache_id (str): If specified, the element data will be taken from the result with the same cacheId if it is available.. [optional] # noqa: E501 complement_filter (bool): Inverse filters: * ```false``` - return items matching ```patternFilter``` and ```exactFilter``` * ```true``` - return items not matching ```patternFilter``` and ```exactFilter```. [optional] if omitted the server will use the default value of False # noqa: E501 data_sampling_percentage (float): Specifies percentage of source table data scanned during the computation. This field is deprecated and is no longer used during the elements computation.. [optional] if omitted the server will use the default value of 100.0 # noqa: E501 - depends_on ([ElementsRequestDependsOnInner]): Return only items, whose are not filtered out by the parent filters.. [optional] # noqa: E501 + depends_on ([ElementsRequestDependsOnInner]): Return only items that are not filtered-out by the parent filters.. [optional] # noqa: E501 exact_filter ([str, none_type]): Return only items, whose ```label``` title exactly matches one of ```filter```.. [optional] # noqa: E501 exclude_primary_label (bool): Excludes items from the result that differ only by primary label * ```false``` - return items with distinct primary label * ```true``` - return items with distinct requested label. [optional] if omitted the server will use the default value of False # noqa: E501 filter_by (FilterBy): [optional] # noqa: E501 pattern_filter (str): Return only items, whose ```label``` title case insensitively contains ```filter``` as substring.. [optional] # noqa: E501 sort_order (str): Sort order of returned items. Items are sorted by ```label``` title. If no sort order is specified then attribute's ```sortDirection``` is used, which is ASC by default. [optional] # noqa: E501 - validate_by ([ValidateByItem]): Return only items, what are computable on metric.. [optional] # noqa: E501 + validate_by ([ValidateByItem]): Return only items that are computable on metric.. [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -279,13 +279,13 @@ def __init__(self, label, *args, **kwargs): # noqa: E501 cache_id (str): If specified, the element data will be taken from the result with the same cacheId if it is available.. [optional] # noqa: E501 complement_filter (bool): Inverse filters: * ```false``` - return items matching ```patternFilter``` and ```exactFilter``` * ```true``` - return items not matching ```patternFilter``` and ```exactFilter```. [optional] if omitted the server will use the default value of False # noqa: E501 data_sampling_percentage (float): Specifies percentage of source table data scanned during the computation. This field is deprecated and is no longer used during the elements computation.. [optional] if omitted the server will use the default value of 100.0 # noqa: E501 - depends_on ([ElementsRequestDependsOnInner]): Return only items, whose are not filtered out by the parent filters.. [optional] # noqa: E501 + depends_on ([ElementsRequestDependsOnInner]): Return only items that are not filtered-out by the parent filters.. [optional] # noqa: E501 exact_filter ([str, none_type]): Return only items, whose ```label``` title exactly matches one of ```filter```.. [optional] # noqa: E501 exclude_primary_label (bool): Excludes items from the result that differ only by primary label * ```false``` - return items with distinct primary label * ```true``` - return items with distinct requested label. [optional] if omitted the server will use the default value of False # noqa: E501 filter_by (FilterBy): [optional] # noqa: E501 pattern_filter (str): Return only items, whose ```label``` title case insensitively contains ```filter``` as substring.. [optional] # noqa: E501 sort_order (str): Sort order of returned items. Items are sorted by ```label``` title. If no sort order is specified then attribute's ```sortDirection``` is used, which is ASC by default. [optional] # noqa: E501 - validate_by ([ValidateByItem]): Return only items, what are computable on metric.. [optional] # noqa: E501 + validate_by ([ValidateByItem]): Return only items that are computable on metric.. [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) diff --git a/gooddata-api-client/gooddata_api_client/model/entitlements_request.py b/gooddata-api-client/gooddata_api_client/model/entitlements_request.py index 73031715f..0295ef837 100644 --- a/gooddata-api-client/gooddata_api_client/model/entitlements_request.py +++ b/gooddata-api-client/gooddata_api_client/model/entitlements_request.py @@ -78,6 +78,8 @@ class EntitlementsRequest(ModelNormal): 'UNLIMITEDAUTOMATIONRECIPIENTS': "UnlimitedAutomationRecipients", 'DAILYSCHEDULEDACTIONCOUNT': "DailyScheduledActionCount", 'UNLIMITEDDAILYSCHEDULEDACTIONS': "UnlimitedDailyScheduledActions", + 'DAILYALERTACTIONCOUNT': "DailyAlertActionCount", + 'UNLIMITEDDAILYALERTACTIONS': "UnlimitedDailyAlertActions", 'SCHEDULEDACTIONMINIMUMRECURRENCEMINUTES': "ScheduledActionMinimumRecurrenceMinutes", 'FEDERATEDIDENTITYMANAGEMENT': "FederatedIdentityManagement", }, diff --git a/gooddata-api-client/gooddata_api_client/model/found_objects.py b/gooddata-api-client/gooddata_api_client/model/found_objects.py new file mode 100644 index 000000000..9558ede33 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/found_objects.py @@ -0,0 +1,282 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.search_result_object import SearchResultObject + globals()['SearchResultObject'] = SearchResultObject + + +class FoundObjects(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'objects': ([SearchResultObject],), # noqa: E501 + 'reasoning': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'objects': 'objects', # noqa: E501 + 'reasoning': 'reasoning', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, objects, reasoning, *args, **kwargs): # noqa: E501 + """FoundObjects - a model defined in OpenAPI + + Args: + objects ([SearchResultObject]): List of objects found with a similarity search. + reasoning (str): Reasoning from LLM. Description of how and why the answer was generated. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.objects = objects + self.reasoning = reasoning + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, objects, reasoning, *args, **kwargs): # noqa: E501 + """FoundObjects - a model defined in OpenAPI + + Args: + objects ([SearchResultObject]): List of objects found with a similarity search. + reasoning (str): Reasoning from LLM. Description of how and why the answer was generated. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.objects = objects + self.reasoning = reasoning + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_attributes.py index e26a4d4ff..225586d70 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_attributes.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_attributes.py @@ -31,7 +31,9 @@ def lazy_import(): + from gooddata_api_client.model.json_api_automation_in_attributes_alert import JsonApiAutomationInAttributesAlert from gooddata_api_client.model.json_api_automation_in_attributes_schedule import JsonApiAutomationInAttributesSchedule + globals()['JsonApiAutomationInAttributesAlert'] = JsonApiAutomationInAttributesAlert globals()['JsonApiAutomationInAttributesSchedule'] = JsonApiAutomationInAttributesSchedule @@ -60,6 +62,10 @@ class JsonApiAutomationInAttributes(ModelNormal): """ allowed_values = { + ('state',): { + 'ACTIVE': "ACTIVE", + 'PAUSED': "PAUSED", + }, } validations = { @@ -99,11 +105,13 @@ def openapi_types(): """ lazy_import() return { + 'alert': (JsonApiAutomationInAttributesAlert,), # noqa: E501 'are_relations_valid': (bool,), # noqa: E501 'description': (str,), # noqa: E501 'details': (bool, date, datetime, dict, float, int, list, str, none_type,), # noqa: E501 'metadata': ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}, none_type,), # noqa: E501 'schedule': (JsonApiAutomationInAttributesSchedule,), # noqa: E501 + 'state': (str,), # noqa: E501 'tags': ([str],), # noqa: E501 'title': (str,), # noqa: E501 } @@ -114,11 +122,13 @@ def discriminator(): attribute_map = { + 'alert': 'alert', # noqa: E501 'are_relations_valid': 'areRelationsValid', # noqa: E501 'description': 'description', # noqa: E501 'details': 'details', # noqa: E501 'metadata': 'metadata', # noqa: E501 'schedule': 'schedule', # noqa: E501 + 'state': 'state', # noqa: E501 'tags': 'tags', # noqa: E501 'title': 'title', # noqa: E501 } @@ -164,11 +174,13 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + alert (JsonApiAutomationInAttributesAlert): [optional] # noqa: E501 are_relations_valid (bool): [optional] # noqa: E501 description (str): [optional] # noqa: E501 details (bool, date, datetime, dict, float, int, list, str, none_type): Additional details to be included in the automated message.. [optional] # noqa: E501 metadata ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}, none_type): Additional information for the automation.. [optional] # noqa: E501 schedule (JsonApiAutomationInAttributesSchedule): [optional] # noqa: E501 + state (str): Current state of the automation.. [optional] # noqa: E501 tags ([str]): [optional] # noqa: E501 title (str): [optional] # noqa: E501 """ @@ -256,11 +268,13 @@ def __init__(self, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + alert (JsonApiAutomationInAttributesAlert): [optional] # noqa: E501 are_relations_valid (bool): [optional] # noqa: E501 description (str): [optional] # noqa: E501 details (bool, date, datetime, dict, float, int, list, str, none_type): Additional details to be included in the automated message.. [optional] # noqa: E501 metadata ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}, none_type): Additional information for the automation.. [optional] # noqa: E501 schedule (JsonApiAutomationInAttributesSchedule): [optional] # noqa: E501 + state (str): Current state of the automation.. [optional] # noqa: E501 tags ([str]): [optional] # noqa: E501 title (str): [optional] # noqa: E501 """ diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_attributes_alert.py b/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_attributes_alert.py new file mode 100644 index 000000000..98df186e7 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_attributes_alert.py @@ -0,0 +1,292 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.alert_afm import AlertAfm + from gooddata_api_client.model.alert_condition import AlertCondition + globals()['AlertAfm'] = AlertAfm + globals()['AlertCondition'] = AlertCondition + + +class JsonApiAutomationInAttributesAlert(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('trigger',): { + 'ALWAYS': "ALWAYS", + 'ONCE': "ONCE", + }, + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'condition': (AlertCondition,), # noqa: E501 + 'execution': (AlertAfm,), # noqa: E501 + 'trigger': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'condition': 'condition', # noqa: E501 + 'execution': 'execution', # noqa: E501 + 'trigger': 'trigger', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, condition, execution, *args, **kwargs): # noqa: E501 + """JsonApiAutomationInAttributesAlert - a model defined in OpenAPI + + Args: + condition (AlertCondition): + execution (AlertAfm): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + trigger (str): Trigger behavior for the alert. ALWAYS - alert is triggered every time the condition is met. ONCE - alert is triggered only once when the condition is met. . [optional] if omitted the server will use the default value of "ALWAYS" # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.condition = condition + self.execution = execution + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, condition, execution, *args, **kwargs): # noqa: E501 + """JsonApiAutomationInAttributesAlert - a model defined in OpenAPI + + Args: + condition (AlertCondition): + execution (AlertAfm): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + trigger (str): Trigger behavior for the alert. ALWAYS - alert is triggered every time the condition is met. ONCE - alert is triggered only once when the condition is met. . [optional] if omitted the server will use the default value of "ALWAYS" # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.condition = condition + self.execution = execution + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_attributes_schedule.py b/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_attributes_schedule.py index 9eaba8ccd..0d40d0e9c 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_attributes_schedule.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_attributes_schedule.py @@ -107,6 +107,7 @@ def discriminator(): } read_only_vars = { + 'cron_description', # noqa: E501 } _composed_schemas = {} diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_relationships.py b/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_relationships.py index 0eb7b045d..f97aa5137 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_relationships.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_relationships.py @@ -31,9 +31,11 @@ def lazy_import(): + from gooddata_api_client.model.json_api_automation_in_relationships_analytical_dashboard import JsonApiAutomationInRelationshipsAnalyticalDashboard from gooddata_api_client.model.json_api_automation_in_relationships_export_definitions import JsonApiAutomationInRelationshipsExportDefinitions from gooddata_api_client.model.json_api_automation_in_relationships_notification_channel import JsonApiAutomationInRelationshipsNotificationChannel from gooddata_api_client.model.json_api_automation_in_relationships_recipients import JsonApiAutomationInRelationshipsRecipients + globals()['JsonApiAutomationInRelationshipsAnalyticalDashboard'] = JsonApiAutomationInRelationshipsAnalyticalDashboard globals()['JsonApiAutomationInRelationshipsExportDefinitions'] = JsonApiAutomationInRelationshipsExportDefinitions globals()['JsonApiAutomationInRelationshipsNotificationChannel'] = JsonApiAutomationInRelationshipsNotificationChannel globals()['JsonApiAutomationInRelationshipsRecipients'] = JsonApiAutomationInRelationshipsRecipients @@ -92,6 +94,7 @@ def openapi_types(): """ lazy_import() return { + 'analytical_dashboard': (JsonApiAutomationInRelationshipsAnalyticalDashboard,), # noqa: E501 'export_definitions': (JsonApiAutomationInRelationshipsExportDefinitions,), # noqa: E501 'notification_channel': (JsonApiAutomationInRelationshipsNotificationChannel,), # noqa: E501 'recipients': (JsonApiAutomationInRelationshipsRecipients,), # noqa: E501 @@ -103,6 +106,7 @@ def discriminator(): attribute_map = { + 'analytical_dashboard': 'analyticalDashboard', # noqa: E501 'export_definitions': 'exportDefinitions', # noqa: E501 'notification_channel': 'notificationChannel', # noqa: E501 'recipients': 'recipients', # noqa: E501 @@ -149,6 +153,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 export_definitions (JsonApiAutomationInRelationshipsExportDefinitions): [optional] # noqa: E501 notification_channel (JsonApiAutomationInRelationshipsNotificationChannel): [optional] # noqa: E501 recipients (JsonApiAutomationInRelationshipsRecipients): [optional] # noqa: E501 @@ -237,6 +242,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 export_definitions (JsonApiAutomationInRelationshipsExportDefinitions): [optional] # noqa: E501 notification_channel (JsonApiAutomationInRelationshipsNotificationChannel): [optional] # noqa: E501 recipients (JsonApiAutomationInRelationshipsRecipients): [optional] # noqa: E501 diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_in_relationships_analytical_dashboard.py b/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_relationships_analytical_dashboard.py similarity index 97% rename from gooddata-api-client/gooddata_api_client/model/json_api_export_definition_in_relationships_analytical_dashboard.py rename to gooddata-api-client/gooddata_api_client/model/json_api_automation_in_relationships_analytical_dashboard.py index 4961aaca3..f3b7cfd5d 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_in_relationships_analytical_dashboard.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_automation_in_relationships_analytical_dashboard.py @@ -35,7 +35,7 @@ def lazy_import(): globals()['JsonApiAnalyticalDashboardToOneLinkage'] = JsonApiAnalyticalDashboardToOneLinkage -class JsonApiExportDefinitionInRelationshipsAnalyticalDashboard(ModelNormal): +class JsonApiAutomationInRelationshipsAnalyticalDashboard(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech @@ -108,7 +108,7 @@ def discriminator(): @classmethod @convert_js_args_to_python_args def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 - """JsonApiExportDefinitionInRelationshipsAnalyticalDashboard - a model defined in OpenAPI + """JsonApiAutomationInRelationshipsAnalyticalDashboard - a model defined in OpenAPI Args: data (JsonApiAnalyticalDashboardToOneLinkage): @@ -197,7 +197,7 @@ def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 @convert_js_args_to_python_args def __init__(self, data, *args, **kwargs): # noqa: E501 - """JsonApiExportDefinitionInRelationshipsAnalyticalDashboard - a model defined in OpenAPI + """JsonApiAutomationInRelationshipsAnalyticalDashboard - a model defined in OpenAPI Args: data (JsonApiAnalyticalDashboardToOneLinkage): diff --git a/gooddata-api-client/gooddata_api_client/model/notification_trigger.py b/gooddata-api-client/gooddata_api_client/model/json_api_automation_linkage.py similarity index 93% rename from gooddata-api-client/gooddata_api_client/model/notification_trigger.py rename to gooddata-api-client/gooddata_api_client/model/json_api_automation_linkage.py index c9463b225..a11943d81 100644 --- a/gooddata-api-client/gooddata_api_client/model/notification_trigger.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_automation_linkage.py @@ -30,12 +30,8 @@ from gooddata_api_client.exceptions import ApiAttributeError -def lazy_import(): - from gooddata_api_client.model.json_node import JsonNode - globals()['JsonNode'] = JsonNode - -class NotificationTrigger(ModelNormal): +class JsonApiAutomationLinkage(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech @@ -61,8 +57,7 @@ class NotificationTrigger(ModelNormal): allowed_values = { ('type',): { - 'SCHEDULE': "SCHEDULE", - 'ALERT': "ALERT", + 'AUTOMATION': "automation", }, } @@ -75,7 +70,6 @@ def additional_properties_type(): This must be a method because a model may have properties that are of type self, this must run after the class is loaded """ - lazy_import() return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 _nullable = False @@ -90,10 +84,9 @@ def openapi_types(): openapi_types (dict): The key is attribute name and the value is attribute type. """ - lazy_import() return { + 'id': (str,), # noqa: E501 'type': (str,), # noqa: E501 - 'metadata': (JsonNode,), # noqa: E501 } @cached_property @@ -102,8 +95,8 @@ def discriminator(): attribute_map = { + 'id': 'id', # noqa: E501 'type': 'type', # noqa: E501 - 'metadata': 'metadata', # noqa: E501 } read_only_vars = { @@ -113,13 +106,14 @@ def discriminator(): @classmethod @convert_js_args_to_python_args - def _from_openapi_data(cls, type, *args, **kwargs): # noqa: E501 - """NotificationTrigger - a model defined in OpenAPI + def _from_openapi_data(cls, id, *args, **kwargs): # noqa: E501 + """JsonApiAutomationLinkage - a model defined in OpenAPI Args: - type (str): The notification trigger type. + id (str): Keyword Args: + type (str): defaults to "automation", must be one of ["automation", ] # noqa: E501 _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be raised if the wrong type is input. @@ -150,9 +144,9 @@ def _from_openapi_data(cls, type, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - metadata (JsonNode): [optional] # noqa: E501 """ + type = kwargs.get('type', "automation") _check_type = kwargs.pop('_check_type', True) _spec_property_naming = kwargs.pop('_spec_property_naming', True) _path_to_item = kwargs.pop('_path_to_item', ()) @@ -182,6 +176,7 @@ def _from_openapi_data(cls, type, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + self.id = id self.type = type for var_name, var_value in kwargs.items(): if var_name not in self.attribute_map and \ @@ -203,13 +198,14 @@ def _from_openapi_data(cls, type, *args, **kwargs): # noqa: E501 ]) @convert_js_args_to_python_args - def __init__(self, type, *args, **kwargs): # noqa: E501 - """NotificationTrigger - a model defined in OpenAPI + def __init__(self, id, *args, **kwargs): # noqa: E501 + """JsonApiAutomationLinkage - a model defined in OpenAPI Args: - type (str): The notification trigger type. + id (str): Keyword Args: + type (str): defaults to "automation", must be one of ["automation", ] # noqa: E501 _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be raised if the wrong type is input. @@ -240,9 +236,9 @@ def __init__(self, type, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - metadata (JsonNode): [optional] # noqa: E501 """ + type = kwargs.get('type', "automation") _check_type = kwargs.pop('_check_type', True) _spec_property_naming = kwargs.pop('_spec_property_naming', False) _path_to_item = kwargs.pop('_path_to_item', ()) @@ -270,6 +266,7 @@ def __init__(self, type, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + self.id = id self.type = type for var_name, var_value in kwargs.items(): if var_name not in self.attribute_map and \ diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_automation_out_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_automation_out_attributes.py index b5ff69182..d9a9c9b38 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_automation_out_attributes.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_automation_out_attributes.py @@ -31,7 +31,9 @@ def lazy_import(): + from gooddata_api_client.model.json_api_automation_in_attributes_alert import JsonApiAutomationInAttributesAlert from gooddata_api_client.model.json_api_automation_in_attributes_schedule import JsonApiAutomationInAttributesSchedule + globals()['JsonApiAutomationInAttributesAlert'] = JsonApiAutomationInAttributesAlert globals()['JsonApiAutomationInAttributesSchedule'] = JsonApiAutomationInAttributesSchedule @@ -60,6 +62,10 @@ class JsonApiAutomationOutAttributes(ModelNormal): """ allowed_values = { + ('state',): { + 'ACTIVE': "ACTIVE", + 'PAUSED': "PAUSED", + }, } validations = { @@ -99,6 +105,7 @@ def openapi_types(): """ lazy_import() return { + 'alert': (JsonApiAutomationInAttributesAlert,), # noqa: E501 'are_relations_valid': (bool,), # noqa: E501 'created_at': (datetime,), # noqa: E501 'description': (str,), # noqa: E501 @@ -106,6 +113,7 @@ def openapi_types(): 'metadata': ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}, none_type,), # noqa: E501 'modified_at': (datetime,), # noqa: E501 'schedule': (JsonApiAutomationInAttributesSchedule,), # noqa: E501 + 'state': (str,), # noqa: E501 'tags': ([str],), # noqa: E501 'title': (str,), # noqa: E501 } @@ -116,6 +124,7 @@ def discriminator(): attribute_map = { + 'alert': 'alert', # noqa: E501 'are_relations_valid': 'areRelationsValid', # noqa: E501 'created_at': 'createdAt', # noqa: E501 'description': 'description', # noqa: E501 @@ -123,6 +132,7 @@ def discriminator(): 'metadata': 'metadata', # noqa: E501 'modified_at': 'modifiedAt', # noqa: E501 'schedule': 'schedule', # noqa: E501 + 'state': 'state', # noqa: E501 'tags': 'tags', # noqa: E501 'title': 'title', # noqa: E501 } @@ -168,6 +178,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + alert (JsonApiAutomationInAttributesAlert): [optional] # noqa: E501 are_relations_valid (bool): [optional] # noqa: E501 created_at (datetime): [optional] # noqa: E501 description (str): [optional] # noqa: E501 @@ -175,6 +186,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 metadata ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}, none_type): Additional information for the automation.. [optional] # noqa: E501 modified_at (datetime): [optional] # noqa: E501 schedule (JsonApiAutomationInAttributesSchedule): [optional] # noqa: E501 + state (str): Current state of the automation.. [optional] # noqa: E501 tags ([str]): [optional] # noqa: E501 title (str): [optional] # noqa: E501 """ @@ -262,6 +274,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + alert (JsonApiAutomationInAttributesAlert): [optional] # noqa: E501 are_relations_valid (bool): [optional] # noqa: E501 created_at (datetime): [optional] # noqa: E501 description (str): [optional] # noqa: E501 @@ -269,6 +282,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 metadata ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}, none_type): Additional information for the automation.. [optional] # noqa: E501 modified_at (datetime): [optional] # noqa: E501 schedule (JsonApiAutomationInAttributesSchedule): [optional] # noqa: E501 + state (str): Current state of the automation.. [optional] # noqa: E501 tags ([str]): [optional] # noqa: E501 title (str): [optional] # noqa: E501 """ diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_automation_out_includes.py b/gooddata-api-client/gooddata_api_client/model/json_api_automation_out_includes.py index ced0ff045..d66a54cb7 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_automation_out_includes.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_automation_out_includes.py @@ -31,6 +31,7 @@ def lazy_import(): + from gooddata_api_client.model.json_api_analytical_dashboard_out_with_links import JsonApiAnalyticalDashboardOutWithLinks from gooddata_api_client.model.json_api_attribute_hierarchy_out_meta import JsonApiAttributeHierarchyOutMeta from gooddata_api_client.model.json_api_export_definition_out_with_links import JsonApiExportDefinitionOutWithLinks from gooddata_api_client.model.json_api_notification_channel_out_with_links import JsonApiNotificationChannelOutWithLinks @@ -39,6 +40,7 @@ def lazy_import(): from gooddata_api_client.model.json_api_user_in_relationships import JsonApiUserInRelationships from gooddata_api_client.model.json_api_user_out_with_links import JsonApiUserOutWithLinks from gooddata_api_client.model.object_links import ObjectLinks + globals()['JsonApiAnalyticalDashboardOutWithLinks'] = JsonApiAnalyticalDashboardOutWithLinks globals()['JsonApiAttributeHierarchyOutMeta'] = JsonApiAttributeHierarchyOutMeta globals()['JsonApiExportDefinitionOutWithLinks'] = JsonApiExportDefinitionOutWithLinks globals()['JsonApiNotificationChannelOutWithLinks'] = JsonApiNotificationChannelOutWithLinks @@ -110,10 +112,10 @@ def openapi_types(): """ lazy_import() return { - 'attributes': (JsonApiUserInAttributes,), # noqa: E501 'links': (ObjectLinks,), # noqa: E501 'meta': (JsonApiAttributeHierarchyOutMeta,), # noqa: E501 'relationships': (JsonApiUserInRelationships,), # noqa: E501 + 'attributes': (JsonApiUserInAttributes,), # noqa: E501 'id': (str,), # noqa: E501 'type': (str,), # noqa: E501 } @@ -124,10 +126,10 @@ def discriminator(): attribute_map = { - 'attributes': 'attributes', # noqa: E501 'links': 'links', # noqa: E501 'meta': 'meta', # noqa: E501 'relationships': 'relationships', # noqa: E501 + 'attributes': 'attributes', # noqa: E501 'id': 'id', # noqa: E501 'type': 'type', # noqa: E501 } @@ -171,10 +173,10 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - attributes (JsonApiUserInAttributes): [optional] # noqa: E501 links (ObjectLinks): [optional] # noqa: E501 meta (JsonApiAttributeHierarchyOutMeta): [optional] # noqa: E501 relationships (JsonApiUserInRelationships): [optional] # noqa: E501 + attributes (JsonApiUserInAttributes): [optional] # noqa: E501 id (str): API identifier of an object. [optional] # noqa: E501 type (str): Object type. [optional] if omitted the server will use the default value of "user" # noqa: E501 """ @@ -280,10 +282,10 @@ def __init__(self, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - attributes (JsonApiUserInAttributes): [optional] # noqa: E501 links (ObjectLinks): [optional] # noqa: E501 meta (JsonApiAttributeHierarchyOutMeta): [optional] # noqa: E501 relationships (JsonApiUserInRelationships): [optional] # noqa: E501 + attributes (JsonApiUserInAttributes): [optional] # noqa: E501 id (str): API identifier of an object. [optional] # noqa: E501 type (str): Object type. [optional] if omitted the server will use the default value of "user" # noqa: E501 """ @@ -357,6 +359,7 @@ def _composed_schemas(): 'allOf': [ ], 'oneOf': [ + JsonApiAnalyticalDashboardOutWithLinks, JsonApiExportDefinitionOutWithLinks, JsonApiNotificationChannelOutWithLinks, JsonApiUserIdentifierOutWithLinks, diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_automation_out_relationships.py b/gooddata-api-client/gooddata_api_client/model/json_api_automation_out_relationships.py index fb5cd015d..414acec59 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_automation_out_relationships.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_automation_out_relationships.py @@ -32,10 +32,12 @@ def lazy_import(): from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_created_by import JsonApiAnalyticalDashboardOutRelationshipsCreatedBy + from gooddata_api_client.model.json_api_automation_in_relationships_analytical_dashboard import JsonApiAutomationInRelationshipsAnalyticalDashboard from gooddata_api_client.model.json_api_automation_in_relationships_export_definitions import JsonApiAutomationInRelationshipsExportDefinitions from gooddata_api_client.model.json_api_automation_in_relationships_notification_channel import JsonApiAutomationInRelationshipsNotificationChannel from gooddata_api_client.model.json_api_automation_in_relationships_recipients import JsonApiAutomationInRelationshipsRecipients globals()['JsonApiAnalyticalDashboardOutRelationshipsCreatedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCreatedBy + globals()['JsonApiAutomationInRelationshipsAnalyticalDashboard'] = JsonApiAutomationInRelationshipsAnalyticalDashboard globals()['JsonApiAutomationInRelationshipsExportDefinitions'] = JsonApiAutomationInRelationshipsExportDefinitions globals()['JsonApiAutomationInRelationshipsNotificationChannel'] = JsonApiAutomationInRelationshipsNotificationChannel globals()['JsonApiAutomationInRelationshipsRecipients'] = JsonApiAutomationInRelationshipsRecipients @@ -94,6 +96,7 @@ def openapi_types(): """ lazy_import() return { + 'analytical_dashboard': (JsonApiAutomationInRelationshipsAnalyticalDashboard,), # noqa: E501 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 'export_definitions': (JsonApiAutomationInRelationshipsExportDefinitions,), # noqa: E501 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 @@ -107,6 +110,7 @@ def discriminator(): attribute_map = { + 'analytical_dashboard': 'analyticalDashboard', # noqa: E501 'created_by': 'createdBy', # noqa: E501 'export_definitions': 'exportDefinitions', # noqa: E501 'modified_by': 'modifiedBy', # noqa: E501 @@ -155,6 +159,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 export_definitions (JsonApiAutomationInRelationshipsExportDefinitions): [optional] # noqa: E501 modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 @@ -245,6 +250,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 export_definitions (JsonApiAutomationInRelationshipsExportDefinitions): [optional] # noqa: E501 modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_automation_to_one_linkage.py b/gooddata-api-client/gooddata_api_client/model/json_api_automation_to_one_linkage.py new file mode 100644 index 000000000..7862aec38 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_automation_to_one_linkage.py @@ -0,0 +1,327 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_automation_linkage import JsonApiAutomationLinkage + globals()['JsonApiAutomationLinkage'] = JsonApiAutomationLinkage + + +class JsonApiAutomationToOneLinkage(ModelComposed): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'AUTOMATION': "automation", + }, + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = True + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """JsonApiAutomationToOneLinkage - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + id (str): [optional] # noqa: E501 + type (str): [optional] if omitted the server will use the default value of "automation" # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + '_composed_instances', + '_var_name_to_model_instances', + '_additional_properties_model_instances', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """JsonApiAutomationToOneLinkage - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + id (str): [optional] # noqa: E501 + type (str): [optional] if omitted the server will use the default value of "automation" # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") + + @cached_property + def _composed_schemas(): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + lazy_import() + return { + 'anyOf': [ + ], + 'allOf': [ + ], + 'oneOf': [ + JsonApiAutomationLinkage, + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_in_relationships.py b/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_in_relationships.py index c8f497fd0..6d5318387 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_in_relationships.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_in_relationships.py @@ -31,9 +31,9 @@ def lazy_import(): - from gooddata_api_client.model.json_api_export_definition_in_relationships_analytical_dashboard import JsonApiExportDefinitionInRelationshipsAnalyticalDashboard + from gooddata_api_client.model.json_api_automation_in_relationships_analytical_dashboard import JsonApiAutomationInRelationshipsAnalyticalDashboard from gooddata_api_client.model.json_api_export_definition_in_relationships_visualization_object import JsonApiExportDefinitionInRelationshipsVisualizationObject - globals()['JsonApiExportDefinitionInRelationshipsAnalyticalDashboard'] = JsonApiExportDefinitionInRelationshipsAnalyticalDashboard + globals()['JsonApiAutomationInRelationshipsAnalyticalDashboard'] = JsonApiAutomationInRelationshipsAnalyticalDashboard globals()['JsonApiExportDefinitionInRelationshipsVisualizationObject'] = JsonApiExportDefinitionInRelationshipsVisualizationObject @@ -90,7 +90,7 @@ def openapi_types(): """ lazy_import() return { - 'analytical_dashboard': (JsonApiExportDefinitionInRelationshipsAnalyticalDashboard,), # noqa: E501 + 'analytical_dashboard': (JsonApiAutomationInRelationshipsAnalyticalDashboard,), # noqa: E501 'visualization_object': (JsonApiExportDefinitionInRelationshipsVisualizationObject,), # noqa: E501 } @@ -145,7 +145,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - analytical_dashboard (JsonApiExportDefinitionInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 + analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 visualization_object (JsonApiExportDefinitionInRelationshipsVisualizationObject): [optional] # noqa: E501 """ @@ -232,7 +232,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - analytical_dashboard (JsonApiExportDefinitionInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 + analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 visualization_object (JsonApiExportDefinitionInRelationshipsVisualizationObject): [optional] # noqa: E501 """ diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_out_includes.py b/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_out_includes.py index 58d7d8461..d41a4189e 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_out_includes.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_out_includes.py @@ -31,16 +31,18 @@ def lazy_import(): - from gooddata_api_client.model.json_api_analytical_dashboard_out_meta import JsonApiAnalyticalDashboardOutMeta - from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships import JsonApiAnalyticalDashboardOutRelationships from gooddata_api_client.model.json_api_analytical_dashboard_out_with_links import JsonApiAnalyticalDashboardOutWithLinks + from gooddata_api_client.model.json_api_attribute_hierarchy_out_meta import JsonApiAttributeHierarchyOutMeta + from gooddata_api_client.model.json_api_automation_out_relationships import JsonApiAutomationOutRelationships + from gooddata_api_client.model.json_api_automation_out_with_links import JsonApiAutomationOutWithLinks from gooddata_api_client.model.json_api_user_identifier_out_attributes import JsonApiUserIdentifierOutAttributes from gooddata_api_client.model.json_api_user_identifier_out_with_links import JsonApiUserIdentifierOutWithLinks from gooddata_api_client.model.json_api_visualization_object_out_with_links import JsonApiVisualizationObjectOutWithLinks from gooddata_api_client.model.object_links import ObjectLinks - globals()['JsonApiAnalyticalDashboardOutMeta'] = JsonApiAnalyticalDashboardOutMeta - globals()['JsonApiAnalyticalDashboardOutRelationships'] = JsonApiAnalyticalDashboardOutRelationships globals()['JsonApiAnalyticalDashboardOutWithLinks'] = JsonApiAnalyticalDashboardOutWithLinks + globals()['JsonApiAttributeHierarchyOutMeta'] = JsonApiAttributeHierarchyOutMeta + globals()['JsonApiAutomationOutRelationships'] = JsonApiAutomationOutRelationships + globals()['JsonApiAutomationOutWithLinks'] = JsonApiAutomationOutWithLinks globals()['JsonApiUserIdentifierOutAttributes'] = JsonApiUserIdentifierOutAttributes globals()['JsonApiUserIdentifierOutWithLinks'] = JsonApiUserIdentifierOutWithLinks globals()['JsonApiVisualizationObjectOutWithLinks'] = JsonApiVisualizationObjectOutWithLinks @@ -108,8 +110,8 @@ def openapi_types(): """ lazy_import() return { - 'meta': (JsonApiAnalyticalDashboardOutMeta,), # noqa: E501 - 'relationships': (JsonApiAnalyticalDashboardOutRelationships,), # noqa: E501 + 'meta': (JsonApiAttributeHierarchyOutMeta,), # noqa: E501 + 'relationships': (JsonApiAutomationOutRelationships,), # noqa: E501 'links': (ObjectLinks,), # noqa: E501 'attributes': (JsonApiUserIdentifierOutAttributes,), # noqa: E501 'id': (str,), # noqa: E501 @@ -169,8 +171,8 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - meta (JsonApiAnalyticalDashboardOutMeta): [optional] # noqa: E501 - relationships (JsonApiAnalyticalDashboardOutRelationships): [optional] # noqa: E501 + meta (JsonApiAttributeHierarchyOutMeta): [optional] # noqa: E501 + relationships (JsonApiAutomationOutRelationships): [optional] # noqa: E501 links (ObjectLinks): [optional] # noqa: E501 attributes (JsonApiUserIdentifierOutAttributes): [optional] # noqa: E501 id (str): API identifier of an object. [optional] # noqa: E501 @@ -278,8 +280,8 @@ def __init__(self, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - meta (JsonApiAnalyticalDashboardOutMeta): [optional] # noqa: E501 - relationships (JsonApiAnalyticalDashboardOutRelationships): [optional] # noqa: E501 + meta (JsonApiAttributeHierarchyOutMeta): [optional] # noqa: E501 + relationships (JsonApiAutomationOutRelationships): [optional] # noqa: E501 links (ObjectLinks): [optional] # noqa: E501 attributes (JsonApiUserIdentifierOutAttributes): [optional] # noqa: E501 id (str): API identifier of an object. [optional] # noqa: E501 @@ -356,6 +358,7 @@ def _composed_schemas(): ], 'oneOf': [ JsonApiAnalyticalDashboardOutWithLinks, + JsonApiAutomationOutWithLinks, JsonApiUserIdentifierOutWithLinks, JsonApiVisualizationObjectOutWithLinks, ], diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_out_relationships.py b/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_out_relationships.py index a217dc507..5e3421f5b 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_out_relationships.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_out_relationships.py @@ -32,11 +32,13 @@ def lazy_import(): from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_created_by import JsonApiAnalyticalDashboardOutRelationshipsCreatedBy - from gooddata_api_client.model.json_api_export_definition_in_relationships_analytical_dashboard import JsonApiExportDefinitionInRelationshipsAnalyticalDashboard + from gooddata_api_client.model.json_api_automation_in_relationships_analytical_dashboard import JsonApiAutomationInRelationshipsAnalyticalDashboard from gooddata_api_client.model.json_api_export_definition_in_relationships_visualization_object import JsonApiExportDefinitionInRelationshipsVisualizationObject + from gooddata_api_client.model.json_api_export_definition_out_relationships_automation import JsonApiExportDefinitionOutRelationshipsAutomation globals()['JsonApiAnalyticalDashboardOutRelationshipsCreatedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCreatedBy - globals()['JsonApiExportDefinitionInRelationshipsAnalyticalDashboard'] = JsonApiExportDefinitionInRelationshipsAnalyticalDashboard + globals()['JsonApiAutomationInRelationshipsAnalyticalDashboard'] = JsonApiAutomationInRelationshipsAnalyticalDashboard globals()['JsonApiExportDefinitionInRelationshipsVisualizationObject'] = JsonApiExportDefinitionInRelationshipsVisualizationObject + globals()['JsonApiExportDefinitionOutRelationshipsAutomation'] = JsonApiExportDefinitionOutRelationshipsAutomation class JsonApiExportDefinitionOutRelationships(ModelNormal): @@ -92,7 +94,8 @@ def openapi_types(): """ lazy_import() return { - 'analytical_dashboard': (JsonApiExportDefinitionInRelationshipsAnalyticalDashboard,), # noqa: E501 + 'analytical_dashboard': (JsonApiAutomationInRelationshipsAnalyticalDashboard,), # noqa: E501 + 'automation': (JsonApiExportDefinitionOutRelationshipsAutomation,), # noqa: E501 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 'visualization_object': (JsonApiExportDefinitionInRelationshipsVisualizationObject,), # noqa: E501 @@ -105,6 +108,7 @@ def discriminator(): attribute_map = { 'analytical_dashboard': 'analyticalDashboard', # noqa: E501 + 'automation': 'automation', # noqa: E501 'created_by': 'createdBy', # noqa: E501 'modified_by': 'modifiedBy', # noqa: E501 'visualization_object': 'visualizationObject', # noqa: E501 @@ -151,7 +155,8 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - analytical_dashboard (JsonApiExportDefinitionInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 + analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 + automation (JsonApiExportDefinitionOutRelationshipsAutomation): [optional] # noqa: E501 created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 visualization_object (JsonApiExportDefinitionInRelationshipsVisualizationObject): [optional] # noqa: E501 @@ -240,7 +245,8 @@ def __init__(self, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - analytical_dashboard (JsonApiExportDefinitionInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 + analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 + automation (JsonApiExportDefinitionOutRelationshipsAutomation): [optional] # noqa: E501 created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 visualization_object (JsonApiExportDefinitionInRelationshipsVisualizationObject): [optional] # noqa: E501 diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_out_relationships_automation.py b/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_out_relationships_automation.py new file mode 100644 index 000000000..74fc1f18d --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_export_definition_out_relationships_automation.py @@ -0,0 +1,276 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_automation_to_one_linkage import JsonApiAutomationToOneLinkage + globals()['JsonApiAutomationToOneLinkage'] = JsonApiAutomationToOneLinkage + + +class JsonApiExportDefinitionOutRelationshipsAutomation(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'data': (JsonApiAutomationToOneLinkage,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'data': 'data', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 + """JsonApiExportDefinitionOutRelationshipsAutomation - a model defined in OpenAPI + + Args: + data (JsonApiAutomationToOneLinkage): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, data, *args, **kwargs): # noqa: E501 + """JsonApiExportDefinitionOutRelationshipsAutomation - a model defined in OpenAPI + + Args: + data (JsonApiAutomationToOneLinkage): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in.py b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in.py new file mode 100644 index 000000000..d167b2e7d --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in.py @@ -0,0 +1,304 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_filter_view_in_attributes import JsonApiFilterViewInAttributes + from gooddata_api_client.model.json_api_filter_view_in_relationships import JsonApiFilterViewInRelationships + globals()['JsonApiFilterViewInAttributes'] = JsonApiFilterViewInAttributes + globals()['JsonApiFilterViewInRelationships'] = JsonApiFilterViewInRelationships + + +class JsonApiFilterViewIn(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'FILTERVIEW': "filterView", + }, + } + + validations = { + ('id',): { + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'attributes': (JsonApiFilterViewInAttributes,), # noqa: E501 + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'relationships': (JsonApiFilterViewInRelationships,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'attributes': 'attributes', # noqa: E501 + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + 'relationships': 'relationships', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewIn - a model defined in OpenAPI + + Args: + attributes (JsonApiFilterViewInAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "filterView", must be one of ["filterView", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + relationships (JsonApiFilterViewInRelationships): [optional] # noqa: E501 + """ + + type = kwargs.get('type', "filterView") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewIn - a model defined in OpenAPI + + Args: + attributes (JsonApiFilterViewInAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "filterView", must be one of ["filterView", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + relationships (JsonApiFilterViewInRelationships): [optional] # noqa: E501 + """ + + type = kwargs.get('type', "filterView") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in_attributes.py new file mode 100644 index 000000000..53197a42b --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in_attributes.py @@ -0,0 +1,298 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class JsonApiFilterViewInAttributes(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + ('title',): { + 'max_length': 255, + }, + ('description',): { + 'max_length': 10000, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'content': ({str: (bool, date, datetime, dict, float, int, list, str, none_type)},), # noqa: E501 + 'title': (str,), # noqa: E501 + 'are_relations_valid': (bool,), # noqa: E501 + 'description': (str,), # noqa: E501 + 'is_default': (bool,), # noqa: E501 + 'tags': ([str],), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'content': 'content', # noqa: E501 + 'title': 'title', # noqa: E501 + 'are_relations_valid': 'areRelationsValid', # noqa: E501 + 'description': 'description', # noqa: E501 + 'is_default': 'isDefault', # noqa: E501 + 'tags': 'tags', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, content, title, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewInAttributes - a model defined in OpenAPI + + Args: + content ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): The respective filter context. + title (str): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + are_relations_valid (bool): [optional] # noqa: E501 + description (str): [optional] # noqa: E501 + is_default (bool): Indicator whether the filter view should by applied by default.. [optional] # noqa: E501 + tags ([str]): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.content = content + self.title = title + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, content, title, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewInAttributes - a model defined in OpenAPI + + Args: + content ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): The respective filter context. + title (str): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + are_relations_valid (bool): [optional] # noqa: E501 + description (str): [optional] # noqa: E501 + is_default (bool): Indicator whether the filter view should by applied by default.. [optional] # noqa: E501 + tags ([str]): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.content = content + self.title = title + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/permissions_for_assignee_all_of.py b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in_document.py similarity index 93% rename from gooddata-api-client/gooddata_api_client/model/permissions_for_assignee_all_of.py rename to gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in_document.py index e3230b392..cdb54e124 100644 --- a/gooddata-api-client/gooddata_api_client/model/permissions_for_assignee_all_of.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in_document.py @@ -31,11 +31,11 @@ def lazy_import(): - from gooddata_api_client.model.assignee_identifier import AssigneeIdentifier - globals()['AssigneeIdentifier'] = AssigneeIdentifier + from gooddata_api_client.model.json_api_filter_view_in import JsonApiFilterViewIn + globals()['JsonApiFilterViewIn'] = JsonApiFilterViewIn -class PermissionsForAssigneeAllOf(ModelNormal): +class JsonApiFilterViewInDocument(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech @@ -88,7 +88,7 @@ def openapi_types(): """ lazy_import() return { - 'assignee_identifier': (AssigneeIdentifier,), # noqa: E501 + 'data': (JsonApiFilterViewIn,), # noqa: E501 } @cached_property @@ -97,7 +97,7 @@ def discriminator(): attribute_map = { - 'assignee_identifier': 'assigneeIdentifier', # noqa: E501 + 'data': 'data', # noqa: E501 } read_only_vars = { @@ -107,8 +107,11 @@ def discriminator(): @classmethod @convert_js_args_to_python_args - def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 - """PermissionsForAssigneeAllOf - a model defined in OpenAPI + def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewInDocument - a model defined in OpenAPI + + Args: + data (JsonApiFilterViewIn): Keyword Args: _check_type (bool): if True, values for parameters in openapi_types @@ -141,7 +144,6 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - assignee_identifier (AssigneeIdentifier): [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -173,6 +175,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + self.data = data for var_name, var_value in kwargs.items(): if var_name not in self.attribute_map and \ self._configuration is not None and \ @@ -193,8 +196,11 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 ]) @convert_js_args_to_python_args - def __init__(self, *args, **kwargs): # noqa: E501 - """PermissionsForAssigneeAllOf - a model defined in OpenAPI + def __init__(self, data, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewInDocument - a model defined in OpenAPI + + Args: + data (JsonApiFilterViewIn): Keyword Args: _check_type (bool): if True, values for parameters in openapi_types @@ -227,7 +233,6 @@ def __init__(self, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - assignee_identifier (AssigneeIdentifier): [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -257,6 +262,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + self.data = data for var_name, var_value in kwargs.items(): if var_name not in self.attribute_map and \ self._configuration is not None and \ diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in_relationships.py b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in_relationships.py new file mode 100644 index 000000000..55dc853af --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in_relationships.py @@ -0,0 +1,276 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_automation_in_relationships_analytical_dashboard import JsonApiAutomationInRelationshipsAnalyticalDashboard + from gooddata_api_client.model.json_api_filter_view_in_relationships_user import JsonApiFilterViewInRelationshipsUser + globals()['JsonApiAutomationInRelationshipsAnalyticalDashboard'] = JsonApiAutomationInRelationshipsAnalyticalDashboard + globals()['JsonApiFilterViewInRelationshipsUser'] = JsonApiFilterViewInRelationshipsUser + + +class JsonApiFilterViewInRelationships(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'analytical_dashboard': (JsonApiAutomationInRelationshipsAnalyticalDashboard,), # noqa: E501 + 'user': (JsonApiFilterViewInRelationshipsUser,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'analytical_dashboard': 'analyticalDashboard', # noqa: E501 + 'user': 'user', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewInRelationships - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 + user (JsonApiFilterViewInRelationshipsUser): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewInRelationships - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 + user (JsonApiFilterViewInRelationshipsUser): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_organization_out_relationships_bootstrap_user.py b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in_relationships_user.py similarity index 97% rename from gooddata-api-client/gooddata_api_client/model/json_api_organization_out_relationships_bootstrap_user.py rename to gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in_relationships_user.py index a2c0fe77b..71ccc3ec6 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_organization_out_relationships_bootstrap_user.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_in_relationships_user.py @@ -35,7 +35,7 @@ def lazy_import(): globals()['JsonApiUserToOneLinkage'] = JsonApiUserToOneLinkage -class JsonApiOrganizationOutRelationshipsBootstrapUser(ModelNormal): +class JsonApiFilterViewInRelationshipsUser(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech @@ -108,7 +108,7 @@ def discriminator(): @classmethod @convert_js_args_to_python_args def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 - """JsonApiOrganizationOutRelationshipsBootstrapUser - a model defined in OpenAPI + """JsonApiFilterViewInRelationshipsUser - a model defined in OpenAPI Args: data (JsonApiUserToOneLinkage): @@ -197,7 +197,7 @@ def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 @convert_js_args_to_python_args def __init__(self, data, *args, **kwargs): # noqa: E501 - """JsonApiOrganizationOutRelationshipsBootstrapUser - a model defined in OpenAPI + """JsonApiFilterViewInRelationshipsUser - a model defined in OpenAPI Args: data (JsonApiUserToOneLinkage): diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out.py b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out.py new file mode 100644 index 000000000..ab3de9815 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out.py @@ -0,0 +1,304 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_filter_view_in_attributes import JsonApiFilterViewInAttributes + from gooddata_api_client.model.json_api_filter_view_in_relationships import JsonApiFilterViewInRelationships + globals()['JsonApiFilterViewInAttributes'] = JsonApiFilterViewInAttributes + globals()['JsonApiFilterViewInRelationships'] = JsonApiFilterViewInRelationships + + +class JsonApiFilterViewOut(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'FILTERVIEW': "filterView", + }, + } + + validations = { + ('id',): { + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'attributes': (JsonApiFilterViewInAttributes,), # noqa: E501 + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'relationships': (JsonApiFilterViewInRelationships,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'attributes': 'attributes', # noqa: E501 + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + 'relationships': 'relationships', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewOut - a model defined in OpenAPI + + Args: + attributes (JsonApiFilterViewInAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "filterView", must be one of ["filterView", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + relationships (JsonApiFilterViewInRelationships): [optional] # noqa: E501 + """ + + type = kwargs.get('type', "filterView") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewOut - a model defined in OpenAPI + + Args: + attributes (JsonApiFilterViewInAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "filterView", must be one of ["filterView", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + relationships (JsonApiFilterViewInRelationships): [optional] # noqa: E501 + """ + + type = kwargs.get('type', "filterView") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_document.py b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_document.py new file mode 100644 index 000000000..0fc28f5b3 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_document.py @@ -0,0 +1,290 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_filter_view_out import JsonApiFilterViewOut + from gooddata_api_client.model.json_api_filter_view_out_includes import JsonApiFilterViewOutIncludes + from gooddata_api_client.model.object_links import ObjectLinks + globals()['JsonApiFilterViewOut'] = JsonApiFilterViewOut + globals()['JsonApiFilterViewOutIncludes'] = JsonApiFilterViewOutIncludes + globals()['ObjectLinks'] = ObjectLinks + + +class JsonApiFilterViewOutDocument(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + ('included',): { + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'data': (JsonApiFilterViewOut,), # noqa: E501 + 'included': ([JsonApiFilterViewOutIncludes],), # noqa: E501 + 'links': (ObjectLinks,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'data': 'data', # noqa: E501 + 'included': 'included', # noqa: E501 + 'links': 'links', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewOutDocument - a model defined in OpenAPI + + Args: + data (JsonApiFilterViewOut): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + included ([JsonApiFilterViewOutIncludes]): Included resources. [optional] # noqa: E501 + links (ObjectLinks): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, data, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewOutDocument - a model defined in OpenAPI + + Args: + data (JsonApiFilterViewOut): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + included ([JsonApiFilterViewOutIncludes]): Included resources. [optional] # noqa: E501 + links (ObjectLinks): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_includes.py b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_includes.py new file mode 100644 index 000000000..a41782712 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_includes.py @@ -0,0 +1,359 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_analytical_dashboard_out_meta import JsonApiAnalyticalDashboardOutMeta + from gooddata_api_client.model.json_api_analytical_dashboard_out_with_links import JsonApiAnalyticalDashboardOutWithLinks + from gooddata_api_client.model.json_api_user_in_attributes import JsonApiUserInAttributes + from gooddata_api_client.model.json_api_user_in_relationships import JsonApiUserInRelationships + from gooddata_api_client.model.json_api_user_out_with_links import JsonApiUserOutWithLinks + from gooddata_api_client.model.object_links import ObjectLinks + globals()['JsonApiAnalyticalDashboardOutMeta'] = JsonApiAnalyticalDashboardOutMeta + globals()['JsonApiAnalyticalDashboardOutWithLinks'] = JsonApiAnalyticalDashboardOutWithLinks + globals()['JsonApiUserInAttributes'] = JsonApiUserInAttributes + globals()['JsonApiUserInRelationships'] = JsonApiUserInRelationships + globals()['JsonApiUserOutWithLinks'] = JsonApiUserOutWithLinks + globals()['ObjectLinks'] = ObjectLinks + + +class JsonApiFilterViewOutIncludes(ModelComposed): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'USER': "user", + }, + } + + validations = { + ('id',): { + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'meta': (JsonApiAnalyticalDashboardOutMeta,), # noqa: E501 + 'relationships': (JsonApiUserInRelationships,), # noqa: E501 + 'links': (ObjectLinks,), # noqa: E501 + 'attributes': (JsonApiUserInAttributes,), # noqa: E501 + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'meta': 'meta', # noqa: E501 + 'relationships': 'relationships', # noqa: E501 + 'links': 'links', # noqa: E501 + 'attributes': 'attributes', # noqa: E501 + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewOutIncludes - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + meta (JsonApiAnalyticalDashboardOutMeta): [optional] # noqa: E501 + relationships (JsonApiUserInRelationships): [optional] # noqa: E501 + links (ObjectLinks): [optional] # noqa: E501 + attributes (JsonApiUserInAttributes): [optional] # noqa: E501 + id (str): API identifier of an object. [optional] # noqa: E501 + type (str): Object type. [optional] if omitted the server will use the default value of "user" # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + '_composed_instances', + '_var_name_to_model_instances', + '_additional_properties_model_instances', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewOutIncludes - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + meta (JsonApiAnalyticalDashboardOutMeta): [optional] # noqa: E501 + relationships (JsonApiUserInRelationships): [optional] # noqa: E501 + links (ObjectLinks): [optional] # noqa: E501 + attributes (JsonApiUserInAttributes): [optional] # noqa: E501 + id (str): API identifier of an object. [optional] # noqa: E501 + type (str): Object type. [optional] if omitted the server will use the default value of "user" # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") + + @cached_property + def _composed_schemas(): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + lazy_import() + return { + 'anyOf': [ + ], + 'allOf': [ + ], + 'oneOf': [ + JsonApiAnalyticalDashboardOutWithLinks, + JsonApiUserOutWithLinks, + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_list.py b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_list.py new file mode 100644 index 000000000..27d078078 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_list.py @@ -0,0 +1,298 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_analytical_dashboard_out_list_meta import JsonApiAnalyticalDashboardOutListMeta + from gooddata_api_client.model.json_api_filter_view_out_includes import JsonApiFilterViewOutIncludes + from gooddata_api_client.model.json_api_filter_view_out_with_links import JsonApiFilterViewOutWithLinks + from gooddata_api_client.model.list_links import ListLinks + globals()['JsonApiAnalyticalDashboardOutListMeta'] = JsonApiAnalyticalDashboardOutListMeta + globals()['JsonApiFilterViewOutIncludes'] = JsonApiFilterViewOutIncludes + globals()['JsonApiFilterViewOutWithLinks'] = JsonApiFilterViewOutWithLinks + globals()['ListLinks'] = ListLinks + + +class JsonApiFilterViewOutList(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + ('data',): { + }, + ('included',): { + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'data': ([JsonApiFilterViewOutWithLinks],), # noqa: E501 + 'included': ([JsonApiFilterViewOutIncludes],), # noqa: E501 + 'links': (ListLinks,), # noqa: E501 + 'meta': (JsonApiAnalyticalDashboardOutListMeta,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'data': 'data', # noqa: E501 + 'included': 'included', # noqa: E501 + 'links': 'links', # noqa: E501 + 'meta': 'meta', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewOutList - a model defined in OpenAPI + + Args: + data ([JsonApiFilterViewOutWithLinks]): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + included ([JsonApiFilterViewOutIncludes]): Included resources. [optional] # noqa: E501 + links (ListLinks): [optional] # noqa: E501 + meta (JsonApiAnalyticalDashboardOutListMeta): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, data, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewOutList - a model defined in OpenAPI + + Args: + data ([JsonApiFilterViewOutWithLinks]): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + included ([JsonApiFilterViewOutIncludes]): Included resources. [optional] # noqa: E501 + links (ListLinks): [optional] # noqa: E501 + meta (JsonApiAnalyticalDashboardOutListMeta): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_with_links.py b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_with_links.py new file mode 100644 index 000000000..68177af84 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_out_with_links.py @@ -0,0 +1,355 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_filter_view_in_attributes import JsonApiFilterViewInAttributes + from gooddata_api_client.model.json_api_filter_view_in_relationships import JsonApiFilterViewInRelationships + from gooddata_api_client.model.json_api_filter_view_out import JsonApiFilterViewOut + from gooddata_api_client.model.object_links import ObjectLinks + from gooddata_api_client.model.object_links_container import ObjectLinksContainer + globals()['JsonApiFilterViewInAttributes'] = JsonApiFilterViewInAttributes + globals()['JsonApiFilterViewInRelationships'] = JsonApiFilterViewInRelationships + globals()['JsonApiFilterViewOut'] = JsonApiFilterViewOut + globals()['ObjectLinks'] = ObjectLinks + globals()['ObjectLinksContainer'] = ObjectLinksContainer + + +class JsonApiFilterViewOutWithLinks(ModelComposed): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'FILTERVIEW': "filterView", + }, + } + + validations = { + ('id',): { + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'attributes': (JsonApiFilterViewInAttributes,), # noqa: E501 + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'relationships': (JsonApiFilterViewInRelationships,), # noqa: E501 + 'links': (ObjectLinks,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'attributes': 'attributes', # noqa: E501 + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + 'relationships': 'relationships', # noqa: E501 + 'links': 'links', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewOutWithLinks - a model defined in OpenAPI + + Keyword Args: + attributes (JsonApiFilterViewInAttributes): + id (str): API identifier of an object + type (str): Object type. defaults to "filterView", must be one of ["filterView", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + relationships (JsonApiFilterViewInRelationships): [optional] # noqa: E501 + links (ObjectLinks): [optional] # noqa: E501 + """ + + type = kwargs.get('type', "filterView") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + '_composed_instances', + '_var_name_to_model_instances', + '_additional_properties_model_instances', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewOutWithLinks - a model defined in OpenAPI + + Keyword Args: + attributes (JsonApiFilterViewInAttributes): + id (str): API identifier of an object + type (str): Object type. defaults to "filterView", must be one of ["filterView", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + relationships (JsonApiFilterViewInRelationships): [optional] # noqa: E501 + links (ObjectLinks): [optional] # noqa: E501 + """ + + type = kwargs.get('type', "filterView") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") + + @cached_property + def _composed_schemas(): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + lazy_import() + return { + 'anyOf': [ + ], + 'allOf': [ + JsonApiFilterViewOut, + ObjectLinksContainer, + ], + 'oneOf': [ + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_patch.py b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_patch.py new file mode 100644 index 000000000..72188e84b --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_patch.py @@ -0,0 +1,304 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_filter_view_in_relationships import JsonApiFilterViewInRelationships + from gooddata_api_client.model.json_api_filter_view_patch_attributes import JsonApiFilterViewPatchAttributes + globals()['JsonApiFilterViewInRelationships'] = JsonApiFilterViewInRelationships + globals()['JsonApiFilterViewPatchAttributes'] = JsonApiFilterViewPatchAttributes + + +class JsonApiFilterViewPatch(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'FILTERVIEW': "filterView", + }, + } + + validations = { + ('id',): { + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'attributes': (JsonApiFilterViewPatchAttributes,), # noqa: E501 + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'relationships': (JsonApiFilterViewInRelationships,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'attributes': 'attributes', # noqa: E501 + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + 'relationships': 'relationships', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewPatch - a model defined in OpenAPI + + Args: + attributes (JsonApiFilterViewPatchAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "filterView", must be one of ["filterView", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + relationships (JsonApiFilterViewInRelationships): [optional] # noqa: E501 + """ + + type = kwargs.get('type', "filterView") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewPatch - a model defined in OpenAPI + + Args: + attributes (JsonApiFilterViewPatchAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "filterView", must be one of ["filterView", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + relationships (JsonApiFilterViewInRelationships): [optional] # noqa: E501 + """ + + type = kwargs.get('type', "filterView") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_patch_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_patch_attributes.py new file mode 100644 index 000000000..b8ce41c65 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_patch_attributes.py @@ -0,0 +1,290 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class JsonApiFilterViewPatchAttributes(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + ('description',): { + 'max_length': 10000, + }, + ('title',): { + 'max_length': 255, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'are_relations_valid': (bool,), # noqa: E501 + 'content': ({str: (bool, date, datetime, dict, float, int, list, str, none_type)},), # noqa: E501 + 'description': (str,), # noqa: E501 + 'is_default': (bool,), # noqa: E501 + 'tags': ([str],), # noqa: E501 + 'title': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'are_relations_valid': 'areRelationsValid', # noqa: E501 + 'content': 'content', # noqa: E501 + 'description': 'description', # noqa: E501 + 'is_default': 'isDefault', # noqa: E501 + 'tags': 'tags', # noqa: E501 + 'title': 'title', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewPatchAttributes - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + are_relations_valid (bool): [optional] # noqa: E501 + content ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): The respective filter context.. [optional] # noqa: E501 + description (str): [optional] # noqa: E501 + is_default (bool): Indicator whether the filter view should by applied by default.. [optional] # noqa: E501 + tags ([str]): [optional] # noqa: E501 + title (str): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewPatchAttributes - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + are_relations_valid (bool): [optional] # noqa: E501 + content ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): The respective filter context.. [optional] # noqa: E501 + description (str): [optional] # noqa: E501 + is_default (bool): Indicator whether the filter view should by applied by default.. [optional] # noqa: E501 + tags ([str]): [optional] # noqa: E501 + title (str): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_patch_document.py b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_patch_document.py new file mode 100644 index 000000000..b89467cdf --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_filter_view_patch_document.py @@ -0,0 +1,276 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_filter_view_patch import JsonApiFilterViewPatch + globals()['JsonApiFilterViewPatch'] = JsonApiFilterViewPatch + + +class JsonApiFilterViewPatchDocument(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'data': (JsonApiFilterViewPatch,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'data': 'data', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewPatchDocument - a model defined in OpenAPI + + Args: + data (JsonApiFilterViewPatch): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, data, *args, **kwargs): # noqa: E501 + """JsonApiFilterViewPatchDocument - a model defined in OpenAPI + + Args: + data (JsonApiFilterViewPatch): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in.py b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in.py new file mode 100644 index 000000000..e3c366fb9 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in.py @@ -0,0 +1,298 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_identity_provider_in_attributes import JsonApiIdentityProviderInAttributes + globals()['JsonApiIdentityProviderInAttributes'] = JsonApiIdentityProviderInAttributes + + +class JsonApiIdentityProviderIn(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'IDENTITYPROVIDER': "identityProvider", + }, + } + + validations = { + ('id',): { + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'attributes': (JsonApiIdentityProviderInAttributes,), # noqa: E501 + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'attributes': 'attributes', # noqa: E501 + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderIn - a model defined in OpenAPI + + Args: + attributes (JsonApiIdentityProviderInAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "identityProvider", must be one of ["identityProvider", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + type = kwargs.get('type', "identityProvider") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderIn - a model defined in OpenAPI + + Args: + attributes (JsonApiIdentityProviderInAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "identityProvider", must be one of ["identityProvider", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + type = kwargs.get('type', "identityProvider") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in_attributes.py new file mode 100644 index 000000000..668b527ca --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in_attributes.py @@ -0,0 +1,290 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_identity_provider_in_attributes_specification import JsonApiIdentityProviderInAttributesSpecification + globals()['JsonApiIdentityProviderInAttributesSpecification'] = JsonApiIdentityProviderInAttributesSpecification + + +class JsonApiIdentityProviderInAttributes(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'SAML': "SAML", + 'OIDC': "OIDC", + }, + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'specification': (JsonApiIdentityProviderInAttributesSpecification,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'identifiers': ([str],), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'specification': 'specification', # noqa: E501 + 'type': 'type', # noqa: E501 + 'identifiers': 'identifiers', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, specification, type, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderInAttributes - a model defined in OpenAPI + + Args: + specification (JsonApiIdentityProviderInAttributesSpecification): + type (str): Type of the identity provider. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + identifiers ([str]): List of identifiers for this IdP, where an identifier is a domain name. Users with email addresses belonging to these domains will be authenticated by this IdP. In multiple provider setup, this field is mandatory.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.specification = specification + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, specification, type, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderInAttributes - a model defined in OpenAPI + + Args: + specification (JsonApiIdentityProviderInAttributesSpecification): + type (str): Type of the identity provider. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + identifiers ([str]): List of identifiers for this IdP, where an identifier is a domain name. Users with email addresses belonging to these domains will be authenticated by this IdP. In multiple provider setup, this field is mandatory.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.specification = specification + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in_attributes_specification.py b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in_attributes_specification.py new file mode 100644 index 000000000..f94b24aa4 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in_attributes_specification.py @@ -0,0 +1,361 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.oidc_idp_specification import OidcIdpSpecification + from gooddata_api_client.model.saml_idp_specification import SamlIdpSpecification + globals()['OidcIdpSpecification'] = OidcIdpSpecification + globals()['SamlIdpSpecification'] = SamlIdpSpecification + + +class JsonApiIdentityProviderInAttributesSpecification(ModelComposed): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + ('metadata',): { + 'max_length': 15000, + }, + ('oauth_client_id',): { + 'max_length': 255, + }, + ('oauth_client_secret',): { + 'max_length': 255, + }, + ('oauth_issuer_id',): { + 'max_length': 255, + }, + ('oauth_issuer_location',): { + 'max_length': 255, + }, + ('oauth_subject_id_claim',): { + 'max_length': 255, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'metadata': (str,), # noqa: E501 + 'oauth_client_id': (str,), # noqa: E501 + 'oauth_client_secret': (str,), # noqa: E501 + 'oauth_issuer_id': (str,), # noqa: E501 + 'oauth_issuer_location': (str,), # noqa: E501 + 'oauth_subject_id_claim': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'metadata': 'metadata', # noqa: E501 + 'oauth_client_id': 'oauthClientId', # noqa: E501 + 'oauth_client_secret': 'oauthClientSecret', # noqa: E501 + 'oauth_issuer_id': 'oauthIssuerId', # noqa: E501 + 'oauth_issuer_location': 'oauthIssuerLocation', # noqa: E501 + 'oauth_subject_id_claim': 'oauthSubjectIdClaim', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderInAttributesSpecification - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + metadata (str): Base64 encoded xml document with SAML metadata. This document is issued by your SAML provider. It includes the issuer's name, expiration information, and keys that can be used to validate the response from the identity provider.. [optional] # noqa: E501 + oauth_client_id (str): [optional] # noqa: E501 + oauth_client_secret (str): [optional] # noqa: E501 + oauth_issuer_id (str): Any string identifying the OIDC provider. This value is used as suffix for OAuth2 callback (redirect) URL. If not defined, the standard callback URL is used. This value is valid only for external OIDC providers, not for the internal DEX provider.. [optional] # noqa: E501 + oauth_issuer_location (str): [optional] # noqa: E501 + oauth_subject_id_claim (str): Any string identifying the claim in ID token, that should be used for user identification. The default value is 'sub'.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + '_composed_instances', + '_var_name_to_model_instances', + '_additional_properties_model_instances', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderInAttributesSpecification - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + metadata (str): Base64 encoded xml document with SAML metadata. This document is issued by your SAML provider. It includes the issuer's name, expiration information, and keys that can be used to validate the response from the identity provider.. [optional] # noqa: E501 + oauth_client_id (str): [optional] # noqa: E501 + oauth_client_secret (str): [optional] # noqa: E501 + oauth_issuer_id (str): Any string identifying the OIDC provider. This value is used as suffix for OAuth2 callback (redirect) URL. If not defined, the standard callback URL is used. This value is valid only for external OIDC providers, not for the internal DEX provider.. [optional] # noqa: E501 + oauth_issuer_location (str): [optional] # noqa: E501 + oauth_subject_id_claim (str): Any string identifying the claim in ID token, that should be used for user identification. The default value is 'sub'.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") + + @cached_property + def _composed_schemas(): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + lazy_import() + return { + 'anyOf': [ + ], + 'allOf': [ + ], + 'oneOf': [ + OidcIdpSpecification, + SamlIdpSpecification, + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in_document.py b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in_document.py new file mode 100644 index 000000000..cec635fc6 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_in_document.py @@ -0,0 +1,276 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_identity_provider_in import JsonApiIdentityProviderIn + globals()['JsonApiIdentityProviderIn'] = JsonApiIdentityProviderIn + + +class JsonApiIdentityProviderInDocument(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'data': (JsonApiIdentityProviderIn,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'data': 'data', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderInDocument - a model defined in OpenAPI + + Args: + data (JsonApiIdentityProviderIn): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, data, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderInDocument - a model defined in OpenAPI + + Args: + data (JsonApiIdentityProviderIn): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out.py b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out.py new file mode 100644 index 000000000..87f565c16 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out.py @@ -0,0 +1,298 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_identity_provider_in_attributes import JsonApiIdentityProviderInAttributes + globals()['JsonApiIdentityProviderInAttributes'] = JsonApiIdentityProviderInAttributes + + +class JsonApiIdentityProviderOut(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'IDENTITYPROVIDER': "identityProvider", + }, + } + + validations = { + ('id',): { + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'attributes': (JsonApiIdentityProviderInAttributes,), # noqa: E501 + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'attributes': 'attributes', # noqa: E501 + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderOut - a model defined in OpenAPI + + Args: + attributes (JsonApiIdentityProviderInAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "identityProvider", must be one of ["identityProvider", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + type = kwargs.get('type', "identityProvider") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderOut - a model defined in OpenAPI + + Args: + attributes (JsonApiIdentityProviderInAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "identityProvider", must be one of ["identityProvider", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + type = kwargs.get('type', "identityProvider") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out_document.py b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out_document.py new file mode 100644 index 000000000..793e4ed55 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out_document.py @@ -0,0 +1,282 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_identity_provider_out import JsonApiIdentityProviderOut + from gooddata_api_client.model.object_links import ObjectLinks + globals()['JsonApiIdentityProviderOut'] = JsonApiIdentityProviderOut + globals()['ObjectLinks'] = ObjectLinks + + +class JsonApiIdentityProviderOutDocument(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'data': (JsonApiIdentityProviderOut,), # noqa: E501 + 'links': (ObjectLinks,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'data': 'data', # noqa: E501 + 'links': 'links', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderOutDocument - a model defined in OpenAPI + + Args: + data (JsonApiIdentityProviderOut): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + links (ObjectLinks): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, data, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderOutDocument - a model defined in OpenAPI + + Args: + data (JsonApiIdentityProviderOut): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + links (ObjectLinks): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out_list.py b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out_list.py new file mode 100644 index 000000000..bd5d42b3a --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out_list.py @@ -0,0 +1,290 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_analytical_dashboard_out_list_meta import JsonApiAnalyticalDashboardOutListMeta + from gooddata_api_client.model.json_api_identity_provider_out_with_links import JsonApiIdentityProviderOutWithLinks + from gooddata_api_client.model.list_links import ListLinks + globals()['JsonApiAnalyticalDashboardOutListMeta'] = JsonApiAnalyticalDashboardOutListMeta + globals()['JsonApiIdentityProviderOutWithLinks'] = JsonApiIdentityProviderOutWithLinks + globals()['ListLinks'] = ListLinks + + +class JsonApiIdentityProviderOutList(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + ('data',): { + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'data': ([JsonApiIdentityProviderOutWithLinks],), # noqa: E501 + 'links': (ListLinks,), # noqa: E501 + 'meta': (JsonApiAnalyticalDashboardOutListMeta,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'data': 'data', # noqa: E501 + 'links': 'links', # noqa: E501 + 'meta': 'meta', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderOutList - a model defined in OpenAPI + + Args: + data ([JsonApiIdentityProviderOutWithLinks]): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + links (ListLinks): [optional] # noqa: E501 + meta (JsonApiAnalyticalDashboardOutListMeta): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, data, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderOutList - a model defined in OpenAPI + + Args: + data ([JsonApiIdentityProviderOutWithLinks]): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + links (ListLinks): [optional] # noqa: E501 + meta (JsonApiAnalyticalDashboardOutListMeta): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out_with_links.py b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out_with_links.py new file mode 100644 index 000000000..a1de95c5d --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_out_with_links.py @@ -0,0 +1,349 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_identity_provider_in_attributes import JsonApiIdentityProviderInAttributes + from gooddata_api_client.model.json_api_identity_provider_out import JsonApiIdentityProviderOut + from gooddata_api_client.model.object_links import ObjectLinks + from gooddata_api_client.model.object_links_container import ObjectLinksContainer + globals()['JsonApiIdentityProviderInAttributes'] = JsonApiIdentityProviderInAttributes + globals()['JsonApiIdentityProviderOut'] = JsonApiIdentityProviderOut + globals()['ObjectLinks'] = ObjectLinks + globals()['ObjectLinksContainer'] = ObjectLinksContainer + + +class JsonApiIdentityProviderOutWithLinks(ModelComposed): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'IDENTITYPROVIDER': "identityProvider", + }, + } + + validations = { + ('id',): { + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'attributes': (JsonApiIdentityProviderInAttributes,), # noqa: E501 + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'links': (ObjectLinks,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'attributes': 'attributes', # noqa: E501 + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + 'links': 'links', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderOutWithLinks - a model defined in OpenAPI + + Keyword Args: + attributes (JsonApiIdentityProviderInAttributes): + id (str): API identifier of an object + type (str): Object type. defaults to "identityProvider", must be one of ["identityProvider", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + links (ObjectLinks): [optional] # noqa: E501 + """ + + type = kwargs.get('type', "identityProvider") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + '_composed_instances', + '_var_name_to_model_instances', + '_additional_properties_model_instances', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderOutWithLinks - a model defined in OpenAPI + + Keyword Args: + attributes (JsonApiIdentityProviderInAttributes): + id (str): API identifier of an object + type (str): Object type. defaults to "identityProvider", must be one of ["identityProvider", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + links (ObjectLinks): [optional] # noqa: E501 + """ + + type = kwargs.get('type', "identityProvider") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") + + @cached_property + def _composed_schemas(): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + lazy_import() + return { + 'anyOf': [ + ], + 'allOf': [ + JsonApiIdentityProviderOut, + ObjectLinksContainer, + ], + 'oneOf': [ + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_patch.py b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_patch.py new file mode 100644 index 000000000..14e1593da --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_patch.py @@ -0,0 +1,298 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_identity_provider_patch_attributes import JsonApiIdentityProviderPatchAttributes + globals()['JsonApiIdentityProviderPatchAttributes'] = JsonApiIdentityProviderPatchAttributes + + +class JsonApiIdentityProviderPatch(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'IDENTITYPROVIDER': "identityProvider", + }, + } + + validations = { + ('id',): { + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'attributes': (JsonApiIdentityProviderPatchAttributes,), # noqa: E501 + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'attributes': 'attributes', # noqa: E501 + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderPatch - a model defined in OpenAPI + + Args: + attributes (JsonApiIdentityProviderPatchAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "identityProvider", must be one of ["identityProvider", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + type = kwargs.get('type', "identityProvider") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderPatch - a model defined in OpenAPI + + Args: + attributes (JsonApiIdentityProviderPatchAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "identityProvider", must be one of ["identityProvider", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + type = kwargs.get('type', "identityProvider") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_patch_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_patch_attributes.py new file mode 100644 index 000000000..30eec6145 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_patch_attributes.py @@ -0,0 +1,282 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_identity_provider_in_attributes_specification import JsonApiIdentityProviderInAttributesSpecification + globals()['JsonApiIdentityProviderInAttributesSpecification'] = JsonApiIdentityProviderInAttributesSpecification + + +class JsonApiIdentityProviderPatchAttributes(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'SAML': "SAML", + 'OIDC': "OIDC", + }, + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'identifiers': ([str],), # noqa: E501 + 'specification': (JsonApiIdentityProviderInAttributesSpecification,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'identifiers': 'identifiers', # noqa: E501 + 'specification': 'specification', # noqa: E501 + 'type': 'type', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderPatchAttributes - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + identifiers ([str]): List of identifiers for this IdP, where an identifier is a domain name. Users with email addresses belonging to these domains will be authenticated by this IdP. In multiple provider setup, this field is mandatory.. [optional] # noqa: E501 + specification (JsonApiIdentityProviderInAttributesSpecification): [optional] # noqa: E501 + type (str): Type of the identity provider.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderPatchAttributes - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + identifiers ([str]): List of identifiers for this IdP, where an identifier is a domain name. Users with email addresses belonging to these domains will be authenticated by this IdP. In multiple provider setup, this field is mandatory.. [optional] # noqa: E501 + specification (JsonApiIdentityProviderInAttributesSpecification): [optional] # noqa: E501 + type (str): Type of the identity provider.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_patch_document.py b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_patch_document.py new file mode 100644 index 000000000..61dcd7d6d --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_identity_provider_patch_document.py @@ -0,0 +1,276 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_identity_provider_patch import JsonApiIdentityProviderPatch + globals()['JsonApiIdentityProviderPatch'] = JsonApiIdentityProviderPatch + + +class JsonApiIdentityProviderPatchDocument(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'data': (JsonApiIdentityProviderPatch,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'data': 'data', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderPatchDocument - a model defined in OpenAPI + + Args: + data (JsonApiIdentityProviderPatch): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, data, *args, **kwargs): # noqa: E501 + """JsonApiIdentityProviderPatchDocument - a model defined in OpenAPI + + Args: + data (JsonApiIdentityProviderPatch): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_in.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_in.py new file mode 100644 index 000000000..8647b9935 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_in.py @@ -0,0 +1,298 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_llm_endpoint_in_attributes import JsonApiLlmEndpointInAttributes + globals()['JsonApiLlmEndpointInAttributes'] = JsonApiLlmEndpointInAttributes + + +class JsonApiLlmEndpointIn(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'LLMENDPOINT': "llmEndpoint", + }, + } + + validations = { + ('id',): { + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'attributes': (JsonApiLlmEndpointInAttributes,), # noqa: E501 + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'attributes': 'attributes', # noqa: E501 + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointIn - a model defined in OpenAPI + + Args: + attributes (JsonApiLlmEndpointInAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "llmEndpoint", must be one of ["llmEndpoint", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + type = kwargs.get('type', "llmEndpoint") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointIn - a model defined in OpenAPI + + Args: + attributes (JsonApiLlmEndpointInAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "llmEndpoint", must be one of ["llmEndpoint", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + type = kwargs.get('type', "llmEndpoint") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_in_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_in_attributes.py new file mode 100644 index 000000000..5fefa62c8 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_in_attributes.py @@ -0,0 +1,321 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class JsonApiLlmEndpointInAttributes(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('provider',): { + 'OPENAI': "OPENAI", + }, + } + + validations = { + ('title',): { + 'max_length': 255, + }, + ('token',): { + 'max_length': 10000, + }, + ('base_url',): { + 'max_length': 255, + }, + ('description',): { + 'max_length': 10000, + }, + ('llm_model',): { + 'max_length': 255, + }, + ('llm_organization',): { + 'max_length': 255, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'provider': (str,), # noqa: E501 + 'title': (str,), # noqa: E501 + 'token': (str,), # noqa: E501 + 'base_url': (str, none_type,), # noqa: E501 + 'description': (str, none_type,), # noqa: E501 + 'llm_model': (str, none_type,), # noqa: E501 + 'llm_organization': (str, none_type,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'provider': 'provider', # noqa: E501 + 'title': 'title', # noqa: E501 + 'token': 'token', # noqa: E501 + 'base_url': 'baseUrl', # noqa: E501 + 'description': 'description', # noqa: E501 + 'llm_model': 'llmModel', # noqa: E501 + 'llm_organization': 'llmOrganization', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, title, token, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointInAttributes - a model defined in OpenAPI + + Args: + title (str): User-facing title of the LLM Provider. + token (str): The token to use to connect to the LLM provider. + + Keyword Args: + provider (str): LLM Provider.. defaults to "OPENAI", must be one of ["OPENAI", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + base_url (str, none_type): Custom LLM endpoint.. [optional] # noqa: E501 + description (str, none_type): User-facing description of the LLM Provider.. [optional] # noqa: E501 + llm_model (str, none_type): LLM Model. We provide a default model for each provider, but you can override it here.. [optional] # noqa: E501 + llm_organization (str, none_type): Organization in LLM provider.. [optional] # noqa: E501 + """ + + provider = kwargs.get('provider', "OPENAI") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.provider = provider + self.title = title + self.token = token + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, title, token, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointInAttributes - a model defined in OpenAPI + + Args: + title (str): User-facing title of the LLM Provider. + token (str): The token to use to connect to the LLM provider. + + Keyword Args: + provider (str): LLM Provider.. defaults to "OPENAI", must be one of ["OPENAI", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + base_url (str, none_type): Custom LLM endpoint.. [optional] # noqa: E501 + description (str, none_type): User-facing description of the LLM Provider.. [optional] # noqa: E501 + llm_model (str, none_type): LLM Model. We provide a default model for each provider, but you can override it here.. [optional] # noqa: E501 + llm_organization (str, none_type): Organization in LLM provider.. [optional] # noqa: E501 + """ + + provider = kwargs.get('provider', "OPENAI") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.provider = provider + self.title = title + self.token = token + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_in_document.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_in_document.py new file mode 100644 index 000000000..3fc291295 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_in_document.py @@ -0,0 +1,276 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_llm_endpoint_in import JsonApiLlmEndpointIn + globals()['JsonApiLlmEndpointIn'] = JsonApiLlmEndpointIn + + +class JsonApiLlmEndpointInDocument(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'data': (JsonApiLlmEndpointIn,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'data': 'data', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointInDocument - a model defined in OpenAPI + + Args: + data (JsonApiLlmEndpointIn): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, data, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointInDocument - a model defined in OpenAPI + + Args: + data (JsonApiLlmEndpointIn): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out.py new file mode 100644 index 000000000..a9850660e --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out.py @@ -0,0 +1,298 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_llm_endpoint_out_attributes import JsonApiLlmEndpointOutAttributes + globals()['JsonApiLlmEndpointOutAttributes'] = JsonApiLlmEndpointOutAttributes + + +class JsonApiLlmEndpointOut(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'LLMENDPOINT': "llmEndpoint", + }, + } + + validations = { + ('id',): { + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'attributes': (JsonApiLlmEndpointOutAttributes,), # noqa: E501 + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'attributes': 'attributes', # noqa: E501 + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointOut - a model defined in OpenAPI + + Args: + attributes (JsonApiLlmEndpointOutAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "llmEndpoint", must be one of ["llmEndpoint", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + type = kwargs.get('type', "llmEndpoint") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointOut - a model defined in OpenAPI + + Args: + attributes (JsonApiLlmEndpointOutAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "llmEndpoint", must be one of ["llmEndpoint", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + type = kwargs.get('type', "llmEndpoint") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_attributes.py new file mode 100644 index 000000000..433132dda --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_attributes.py @@ -0,0 +1,312 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class JsonApiLlmEndpointOutAttributes(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('provider',): { + 'OPENAI': "OPENAI", + }, + } + + validations = { + ('title',): { + 'max_length': 255, + }, + ('base_url',): { + 'max_length': 255, + }, + ('description',): { + 'max_length': 10000, + }, + ('llm_model',): { + 'max_length': 255, + }, + ('llm_organization',): { + 'max_length': 255, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'provider': (str,), # noqa: E501 + 'title': (str,), # noqa: E501 + 'base_url': (str, none_type,), # noqa: E501 + 'description': (str, none_type,), # noqa: E501 + 'llm_model': (str, none_type,), # noqa: E501 + 'llm_organization': (str, none_type,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'provider': 'provider', # noqa: E501 + 'title': 'title', # noqa: E501 + 'base_url': 'baseUrl', # noqa: E501 + 'description': 'description', # noqa: E501 + 'llm_model': 'llmModel', # noqa: E501 + 'llm_organization': 'llmOrganization', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, title, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointOutAttributes - a model defined in OpenAPI + + Args: + title (str): User-facing title of the LLM Provider. + + Keyword Args: + provider (str): LLM Provider.. defaults to "OPENAI", must be one of ["OPENAI", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + base_url (str, none_type): Custom LLM endpoint.. [optional] # noqa: E501 + description (str, none_type): User-facing description of the LLM Provider.. [optional] # noqa: E501 + llm_model (str, none_type): LLM Model. We provide a default model for each provider, but you can override it here.. [optional] # noqa: E501 + llm_organization (str, none_type): Organization in LLM provider.. [optional] # noqa: E501 + """ + + provider = kwargs.get('provider', "OPENAI") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.provider = provider + self.title = title + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, title, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointOutAttributes - a model defined in OpenAPI + + Args: + title (str): User-facing title of the LLM Provider. + + Keyword Args: + provider (str): LLM Provider.. defaults to "OPENAI", must be one of ["OPENAI", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + base_url (str, none_type): Custom LLM endpoint.. [optional] # noqa: E501 + description (str, none_type): User-facing description of the LLM Provider.. [optional] # noqa: E501 + llm_model (str, none_type): LLM Model. We provide a default model for each provider, but you can override it here.. [optional] # noqa: E501 + llm_organization (str, none_type): Organization in LLM provider.. [optional] # noqa: E501 + """ + + provider = kwargs.get('provider', "OPENAI") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.provider = provider + self.title = title + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_document.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_document.py new file mode 100644 index 000000000..d58654b56 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_document.py @@ -0,0 +1,282 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_llm_endpoint_out import JsonApiLlmEndpointOut + from gooddata_api_client.model.object_links import ObjectLinks + globals()['JsonApiLlmEndpointOut'] = JsonApiLlmEndpointOut + globals()['ObjectLinks'] = ObjectLinks + + +class JsonApiLlmEndpointOutDocument(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'data': (JsonApiLlmEndpointOut,), # noqa: E501 + 'links': (ObjectLinks,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'data': 'data', # noqa: E501 + 'links': 'links', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointOutDocument - a model defined in OpenAPI + + Args: + data (JsonApiLlmEndpointOut): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + links (ObjectLinks): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, data, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointOutDocument - a model defined in OpenAPI + + Args: + data (JsonApiLlmEndpointOut): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + links (ObjectLinks): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_list.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_list.py new file mode 100644 index 000000000..74a82bcb1 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_list.py @@ -0,0 +1,290 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_analytical_dashboard_out_list_meta import JsonApiAnalyticalDashboardOutListMeta + from gooddata_api_client.model.json_api_llm_endpoint_out_with_links import JsonApiLlmEndpointOutWithLinks + from gooddata_api_client.model.list_links import ListLinks + globals()['JsonApiAnalyticalDashboardOutListMeta'] = JsonApiAnalyticalDashboardOutListMeta + globals()['JsonApiLlmEndpointOutWithLinks'] = JsonApiLlmEndpointOutWithLinks + globals()['ListLinks'] = ListLinks + + +class JsonApiLlmEndpointOutList(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + ('data',): { + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'data': ([JsonApiLlmEndpointOutWithLinks],), # noqa: E501 + 'links': (ListLinks,), # noqa: E501 + 'meta': (JsonApiAnalyticalDashboardOutListMeta,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'data': 'data', # noqa: E501 + 'links': 'links', # noqa: E501 + 'meta': 'meta', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointOutList - a model defined in OpenAPI + + Args: + data ([JsonApiLlmEndpointOutWithLinks]): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + links (ListLinks): [optional] # noqa: E501 + meta (JsonApiAnalyticalDashboardOutListMeta): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, data, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointOutList - a model defined in OpenAPI + + Args: + data ([JsonApiLlmEndpointOutWithLinks]): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + links (ListLinks): [optional] # noqa: E501 + meta (JsonApiAnalyticalDashboardOutListMeta): [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_with_links.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_with_links.py new file mode 100644 index 000000000..bf298968f --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_out_with_links.py @@ -0,0 +1,349 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_llm_endpoint_out import JsonApiLlmEndpointOut + from gooddata_api_client.model.json_api_llm_endpoint_out_attributes import JsonApiLlmEndpointOutAttributes + from gooddata_api_client.model.object_links import ObjectLinks + from gooddata_api_client.model.object_links_container import ObjectLinksContainer + globals()['JsonApiLlmEndpointOut'] = JsonApiLlmEndpointOut + globals()['JsonApiLlmEndpointOutAttributes'] = JsonApiLlmEndpointOutAttributes + globals()['ObjectLinks'] = ObjectLinks + globals()['ObjectLinksContainer'] = ObjectLinksContainer + + +class JsonApiLlmEndpointOutWithLinks(ModelComposed): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'LLMENDPOINT': "llmEndpoint", + }, + } + + validations = { + ('id',): { + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'attributes': (JsonApiLlmEndpointOutAttributes,), # noqa: E501 + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'links': (ObjectLinks,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'attributes': 'attributes', # noqa: E501 + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + 'links': 'links', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointOutWithLinks - a model defined in OpenAPI + + Keyword Args: + attributes (JsonApiLlmEndpointOutAttributes): + id (str): API identifier of an object + type (str): Object type. defaults to "llmEndpoint", must be one of ["llmEndpoint", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + links (ObjectLinks): [optional] # noqa: E501 + """ + + type = kwargs.get('type', "llmEndpoint") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + '_composed_instances', + '_var_name_to_model_instances', + '_additional_properties_model_instances', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointOutWithLinks - a model defined in OpenAPI + + Keyword Args: + attributes (JsonApiLlmEndpointOutAttributes): + id (str): API identifier of an object + type (str): Object type. defaults to "llmEndpoint", must be one of ["llmEndpoint", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + links (ObjectLinks): [optional] # noqa: E501 + """ + + type = kwargs.get('type', "llmEndpoint") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") + + @cached_property + def _composed_schemas(): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + lazy_import() + return { + 'anyOf': [ + ], + 'allOf': [ + JsonApiLlmEndpointOut, + ObjectLinksContainer, + ], + 'oneOf': [ + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_patch.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_patch.py new file mode 100644 index 000000000..2d5a040e8 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_patch.py @@ -0,0 +1,298 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_llm_endpoint_patch_attributes import JsonApiLlmEndpointPatchAttributes + globals()['JsonApiLlmEndpointPatchAttributes'] = JsonApiLlmEndpointPatchAttributes + + +class JsonApiLlmEndpointPatch(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'LLMENDPOINT': "llmEndpoint", + }, + } + + validations = { + ('id',): { + 'regex': { + 'pattern': r'^(?!\.)[.A-Za-z0-9_-]{1,255}$', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'attributes': (JsonApiLlmEndpointPatchAttributes,), # noqa: E501 + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'attributes': 'attributes', # noqa: E501 + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointPatch - a model defined in OpenAPI + + Args: + attributes (JsonApiLlmEndpointPatchAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "llmEndpoint", must be one of ["llmEndpoint", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + type = kwargs.get('type', "llmEndpoint") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, attributes, id, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointPatch - a model defined in OpenAPI + + Args: + attributes (JsonApiLlmEndpointPatchAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "llmEndpoint", must be one of ["llmEndpoint", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + type = kwargs.get('type', "llmEndpoint") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.attributes = attributes + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_patch_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_patch_attributes.py new file mode 100644 index 000000000..4c753886d --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_patch_attributes.py @@ -0,0 +1,309 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class JsonApiLlmEndpointPatchAttributes(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('provider',): { + 'OPENAI': "OPENAI", + }, + } + + validations = { + ('base_url',): { + 'max_length': 255, + }, + ('description',): { + 'max_length': 10000, + }, + ('llm_model',): { + 'max_length': 255, + }, + ('llm_organization',): { + 'max_length': 255, + }, + ('title',): { + 'max_length': 255, + }, + ('token',): { + 'max_length': 10000, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'base_url': (str, none_type,), # noqa: E501 + 'description': (str, none_type,), # noqa: E501 + 'llm_model': (str, none_type,), # noqa: E501 + 'llm_organization': (str, none_type,), # noqa: E501 + 'provider': (str,), # noqa: E501 + 'title': (str,), # noqa: E501 + 'token': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'base_url': 'baseUrl', # noqa: E501 + 'description': 'description', # noqa: E501 + 'llm_model': 'llmModel', # noqa: E501 + 'llm_organization': 'llmOrganization', # noqa: E501 + 'provider': 'provider', # noqa: E501 + 'title': 'title', # noqa: E501 + 'token': 'token', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointPatchAttributes - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + base_url (str, none_type): Custom LLM endpoint.. [optional] # noqa: E501 + description (str, none_type): User-facing description of the LLM Provider.. [optional] # noqa: E501 + llm_model (str, none_type): LLM Model. We provide a default model for each provider, but you can override it here.. [optional] # noqa: E501 + llm_organization (str, none_type): Organization in LLM provider.. [optional] # noqa: E501 + provider (str): LLM Provider.. [optional] if omitted the server will use the default value of "OPENAI" # noqa: E501 + title (str): User-facing title of the LLM Provider.. [optional] # noqa: E501 + token (str): The token to use to connect to the LLM provider.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointPatchAttributes - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + base_url (str, none_type): Custom LLM endpoint.. [optional] # noqa: E501 + description (str, none_type): User-facing description of the LLM Provider.. [optional] # noqa: E501 + llm_model (str, none_type): LLM Model. We provide a default model for each provider, but you can override it here.. [optional] # noqa: E501 + llm_organization (str, none_type): Organization in LLM provider.. [optional] # noqa: E501 + provider (str): LLM Provider.. [optional] if omitted the server will use the default value of "OPENAI" # noqa: E501 + title (str): User-facing title of the LLM Provider.. [optional] # noqa: E501 + token (str): The token to use to connect to the LLM provider.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_patch_document.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_patch_document.py new file mode 100644 index 000000000..af95c27d6 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_endpoint_patch_document.py @@ -0,0 +1,276 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.json_api_llm_endpoint_patch import JsonApiLlmEndpointPatch + globals()['JsonApiLlmEndpointPatch'] = JsonApiLlmEndpointPatch + + +class JsonApiLlmEndpointPatchDocument(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'data': (JsonApiLlmEndpointPatch,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'data': 'data', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointPatchDocument - a model defined in OpenAPI + + Args: + data (JsonApiLlmEndpointPatch): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, data, *args, **kwargs): # noqa: E501 + """JsonApiLlmEndpointPatchDocument - a model defined in OpenAPI + + Args: + data (JsonApiLlmEndpointPatch): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.data = data + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_notification_channel_in_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_notification_channel_in_attributes.py index 2b89cf971..f58879d52 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_notification_channel_in_attributes.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_notification_channel_in_attributes.py @@ -31,10 +31,8 @@ def lazy_import(): - from gooddata_api_client.model.json_api_notification_channel_in_attributes_triggers_inner import JsonApiNotificationChannelInAttributesTriggersInner - from gooddata_api_client.model.json_api_notification_channel_in_attributes_webhook import JsonApiNotificationChannelInAttributesWebhook - globals()['JsonApiNotificationChannelInAttributesTriggersInner'] = JsonApiNotificationChannelInAttributesTriggersInner - globals()['JsonApiNotificationChannelInAttributesWebhook'] = JsonApiNotificationChannelInAttributesWebhook + from gooddata_api_client.model.json_api_notification_channel_in_attributes_destination import JsonApiNotificationChannelInAttributesDestination + globals()['JsonApiNotificationChannelInAttributesDestination'] = JsonApiNotificationChannelInAttributesDestination class JsonApiNotificationChannelInAttributes(ModelNormal): @@ -62,6 +60,16 @@ class JsonApiNotificationChannelInAttributes(ModelNormal): """ allowed_values = { + ('allowed_recipients',): { + 'CREATOR': "CREATOR", + 'INTERNAL': "INTERNAL", + }, + ('destination_type',): { + 'None': None, + 'WEBHOOK': "WEBHOOK", + 'SMTP': "SMTP", + 'DEFAULT_SMTP': "DEFAULT_SMTP", + }, } validations = { @@ -96,10 +104,12 @@ def openapi_types(): """ lazy_import() return { + 'allowed_recipients': (str,), # noqa: E501 + 'custom_dashboard_url': (str,), # noqa: E501 'description': (str, none_type,), # noqa: E501 + 'destination': (JsonApiNotificationChannelInAttributesDestination,), # noqa: E501 + 'destination_type': (str, none_type,), # noqa: E501 'name': (str, none_type,), # noqa: E501 - 'triggers': ([JsonApiNotificationChannelInAttributesTriggersInner],), # noqa: E501 - 'webhook': (JsonApiNotificationChannelInAttributesWebhook,), # noqa: E501 } @cached_property @@ -108,10 +118,12 @@ def discriminator(): attribute_map = { + 'allowed_recipients': 'allowedRecipients', # noqa: E501 + 'custom_dashboard_url': 'customDashboardUrl', # noqa: E501 'description': 'description', # noqa: E501 + 'destination': 'destination', # noqa: E501 + 'destination_type': 'destinationType', # noqa: E501 'name': 'name', # noqa: E501 - 'triggers': 'triggers', # noqa: E501 - 'webhook': 'webhook', # noqa: E501 } read_only_vars = { @@ -155,10 +167,12 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + allowed_recipients (str): Allowed recipients of notifications from this channel. CREATOR - only the creator INTERNAL - all users within the organization . [optional] # noqa: E501 + custom_dashboard_url (str): Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}.. [optional] # noqa: E501 description (str, none_type): [optional] # noqa: E501 + destination (JsonApiNotificationChannelInAttributesDestination): [optional] # noqa: E501 + destination_type (str, none_type): [optional] # noqa: E501 name (str, none_type): [optional] # noqa: E501 - triggers ([JsonApiNotificationChannelInAttributesTriggersInner]): The triggers that are to be used to send notifications to the channel.. [optional] # noqa: E501 - webhook (JsonApiNotificationChannelInAttributesWebhook): [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -244,10 +258,12 @@ def __init__(self, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + allowed_recipients (str): Allowed recipients of notifications from this channel. CREATOR - only the creator INTERNAL - all users within the organization . [optional] # noqa: E501 + custom_dashboard_url (str): Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}.. [optional] # noqa: E501 description (str, none_type): [optional] # noqa: E501 + destination (JsonApiNotificationChannelInAttributesDestination): [optional] # noqa: E501 + destination_type (str, none_type): [optional] # noqa: E501 name (str, none_type): [optional] # noqa: E501 - triggers ([JsonApiNotificationChannelInAttributesTriggersInner]): The triggers that are to be used to send notifications to the channel.. [optional] # noqa: E501 - webhook (JsonApiNotificationChannelInAttributesWebhook): [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_notification_channel_in_attributes_destination.py b/gooddata-api-client/gooddata_api_client/model/json_api_notification_channel_in_attributes_destination.py new file mode 100644 index 000000000..208e23c95 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_notification_channel_in_attributes_destination.py @@ -0,0 +1,386 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.default_smtp import DefaultSmtp + from gooddata_api_client.model.smtp import Smtp + from gooddata_api_client.model.webhook import Webhook + globals()['DefaultSmtp'] = DefaultSmtp + globals()['Smtp'] = Smtp + globals()['Webhook'] = Webhook + + +class JsonApiNotificationChannelInAttributesDestination(ModelComposed): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('port',): { + '25': 25, + '465': 465, + '587': 587, + '2525': 2525, + }, + ('type',): { + 'WEBHOOK': "WEBHOOK", + }, + } + + validations = { + ('from_email',): { + 'regex': { + 'pattern': r'(?:[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)])', # noqa: E501 + }, + }, + ('token',): { + 'max_length': 10000, + }, + ('url',): { + 'max_length': 255, + 'regex': { + 'pattern': r'https?\:\/\/.*', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'from_email': (str,), # noqa: E501 + 'from_email_name': (str,), # noqa: E501 + 'host': (str,), # noqa: E501 + 'password': (str,), # noqa: E501 + 'port': (int,), # noqa: E501 + 'username': (str,), # noqa: E501 + 'has_token': (bool, none_type,), # noqa: E501 + 'token': (str, none_type,), # noqa: E501 + 'url': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'from_email': 'fromEmail', # noqa: E501 + 'from_email_name': 'fromEmailName', # noqa: E501 + 'host': 'host', # noqa: E501 + 'password': 'password', # noqa: E501 + 'port': 'port', # noqa: E501 + 'username': 'username', # noqa: E501 + 'has_token': 'hasToken', # noqa: E501 + 'token': 'token', # noqa: E501 + 'url': 'url', # noqa: E501 + 'type': 'type', # noqa: E501 + } + + read_only_vars = { + 'has_token', # noqa: E501 + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """JsonApiNotificationChannelInAttributesDestination - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + from_email (str): E-mail address to send notifications from.. [optional] if omitted the server will use the default value of "no-reply@gooddata.com" # noqa: E501 + from_email_name (str): An optional e-mail name to send notifications from.. [optional] if omitted the server will use the default value of "GoodData" # noqa: E501 + host (str): The SMTP server address.. [optional] # noqa: E501 + password (str): The SMTP server password.. [optional] # noqa: E501 + port (int): The SMTP server port.. [optional] # noqa: E501 + username (str): The SMTP server username.. [optional] # noqa: E501 + has_token (bool, none_type): Flag indicating if webhook has a token.. [optional] # noqa: E501 + token (str, none_type): Bearer token for the webhook.. [optional] # noqa: E501 + url (str): The webhook URL.. [optional] # noqa: E501 + type (str): The destination type.. [optional] if omitted the server will use the default value of "WEBHOOK" # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + '_composed_instances', + '_var_name_to_model_instances', + '_additional_properties_model_instances', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """JsonApiNotificationChannelInAttributesDestination - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + from_email (str): E-mail address to send notifications from.. [optional] if omitted the server will use the default value of "no-reply@gooddata.com" # noqa: E501 + from_email_name (str): An optional e-mail name to send notifications from.. [optional] if omitted the server will use the default value of "GoodData" # noqa: E501 + host (str): The SMTP server address.. [optional] # noqa: E501 + password (str): The SMTP server password.. [optional] # noqa: E501 + port (int): The SMTP server port.. [optional] # noqa: E501 + username (str): The SMTP server username.. [optional] # noqa: E501 + has_token (bool, none_type): Flag indicating if webhook has a token.. [optional] # noqa: E501 + token (str, none_type): Bearer token for the webhook.. [optional] # noqa: E501 + url (str): The webhook URL.. [optional] # noqa: E501 + type (str): The destination type.. [optional] if omitted the server will use the default value of "WEBHOOK" # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") + + @cached_property + def _composed_schemas(): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + lazy_import() + return { + 'anyOf': [ + ], + 'allOf': [ + ], + 'oneOf': [ + DefaultSmtp, + Smtp, + Webhook, + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_organization_out_relationships.py b/gooddata-api-client/gooddata_api_client/model/json_api_organization_out_relationships.py index 03b48aa5b..3796819e5 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_organization_out_relationships.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_organization_out_relationships.py @@ -31,9 +31,9 @@ def lazy_import(): - from gooddata_api_client.model.json_api_organization_out_relationships_bootstrap_user import JsonApiOrganizationOutRelationshipsBootstrapUser + from gooddata_api_client.model.json_api_filter_view_in_relationships_user import JsonApiFilterViewInRelationshipsUser from gooddata_api_client.model.json_api_organization_out_relationships_bootstrap_user_group import JsonApiOrganizationOutRelationshipsBootstrapUserGroup - globals()['JsonApiOrganizationOutRelationshipsBootstrapUser'] = JsonApiOrganizationOutRelationshipsBootstrapUser + globals()['JsonApiFilterViewInRelationshipsUser'] = JsonApiFilterViewInRelationshipsUser globals()['JsonApiOrganizationOutRelationshipsBootstrapUserGroup'] = JsonApiOrganizationOutRelationshipsBootstrapUserGroup @@ -90,7 +90,7 @@ def openapi_types(): """ lazy_import() return { - 'bootstrap_user': (JsonApiOrganizationOutRelationshipsBootstrapUser,), # noqa: E501 + 'bootstrap_user': (JsonApiFilterViewInRelationshipsUser,), # noqa: E501 'bootstrap_user_group': (JsonApiOrganizationOutRelationshipsBootstrapUserGroup,), # noqa: E501 } @@ -145,7 +145,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - bootstrap_user (JsonApiOrganizationOutRelationshipsBootstrapUser): [optional] # noqa: E501 + bootstrap_user (JsonApiFilterViewInRelationshipsUser): [optional] # noqa: E501 bootstrap_user_group (JsonApiOrganizationOutRelationshipsBootstrapUserGroup): [optional] # noqa: E501 """ @@ -232,7 +232,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - bootstrap_user (JsonApiOrganizationOutRelationshipsBootstrapUser): [optional] # noqa: E501 + bootstrap_user (JsonApiFilterViewInRelationshipsUser): [optional] # noqa: E501 bootstrap_user_group (JsonApiOrganizationOutRelationshipsBootstrapUserGroup): [optional] # noqa: E501 """ diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_organization_setting_in_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_organization_setting_in_attributes.py index 48dbbeeeb..bc88f5fc1 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_organization_setting_in_attributes.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_organization_setting_in_attributes.py @@ -71,6 +71,7 @@ class JsonApiOrganizationSettingInAttributes(ModelNormal): 'TIMEZONE_VALIDATION_ENABLED': "TIMEZONE_VALIDATION_ENABLED", 'OPENAI_CONFIG': "OPENAI_CONFIG", 'ENABLE_FILE_ANALYTICS': "ENABLE_FILE_ANALYTICS", + 'ALERT': "ALERT", }, } diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_user_data_filter_in_relationships.py b/gooddata-api-client/gooddata_api_client/model/json_api_user_data_filter_in_relationships.py index 8cf990526..69d42b85f 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_user_data_filter_in_relationships.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_user_data_filter_in_relationships.py @@ -31,9 +31,9 @@ def lazy_import(): - from gooddata_api_client.model.json_api_organization_out_relationships_bootstrap_user import JsonApiOrganizationOutRelationshipsBootstrapUser + from gooddata_api_client.model.json_api_filter_view_in_relationships_user import JsonApiFilterViewInRelationshipsUser from gooddata_api_client.model.json_api_organization_out_relationships_bootstrap_user_group import JsonApiOrganizationOutRelationshipsBootstrapUserGroup - globals()['JsonApiOrganizationOutRelationshipsBootstrapUser'] = JsonApiOrganizationOutRelationshipsBootstrapUser + globals()['JsonApiFilterViewInRelationshipsUser'] = JsonApiFilterViewInRelationshipsUser globals()['JsonApiOrganizationOutRelationshipsBootstrapUserGroup'] = JsonApiOrganizationOutRelationshipsBootstrapUserGroup @@ -90,7 +90,7 @@ def openapi_types(): """ lazy_import() return { - 'user': (JsonApiOrganizationOutRelationshipsBootstrapUser,), # noqa: E501 + 'user': (JsonApiFilterViewInRelationshipsUser,), # noqa: E501 'user_group': (JsonApiOrganizationOutRelationshipsBootstrapUserGroup,), # noqa: E501 } @@ -145,7 +145,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - user (JsonApiOrganizationOutRelationshipsBootstrapUser): [optional] # noqa: E501 + user (JsonApiFilterViewInRelationshipsUser): [optional] # noqa: E501 user_group (JsonApiOrganizationOutRelationshipsBootstrapUserGroup): [optional] # noqa: E501 """ @@ -232,7 +232,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - user (JsonApiOrganizationOutRelationshipsBootstrapUser): [optional] # noqa: E501 + user (JsonApiFilterViewInRelationshipsUser): [optional] # noqa: E501 user_group (JsonApiOrganizationOutRelationshipsBootstrapUserGroup): [optional] # noqa: E501 """ diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_user_data_filter_out_relationships.py b/gooddata-api-client/gooddata_api_client/model/json_api_user_data_filter_out_relationships.py index 2e6c2a62f..990a13736 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_user_data_filter_out_relationships.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_user_data_filter_out_relationships.py @@ -36,14 +36,14 @@ def lazy_import(): from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_metrics import JsonApiAnalyticalDashboardOutRelationshipsMetrics from gooddata_api_client.model.json_api_attribute_hierarchy_out_relationships_attributes import JsonApiAttributeHierarchyOutRelationshipsAttributes from gooddata_api_client.model.json_api_dataset_out_relationships_facts import JsonApiDatasetOutRelationshipsFacts - from gooddata_api_client.model.json_api_organization_out_relationships_bootstrap_user import JsonApiOrganizationOutRelationshipsBootstrapUser + from gooddata_api_client.model.json_api_filter_view_in_relationships_user import JsonApiFilterViewInRelationshipsUser from gooddata_api_client.model.json_api_organization_out_relationships_bootstrap_user_group import JsonApiOrganizationOutRelationshipsBootstrapUserGroup globals()['JsonApiAnalyticalDashboardOutRelationshipsDatasets'] = JsonApiAnalyticalDashboardOutRelationshipsDatasets globals()['JsonApiAnalyticalDashboardOutRelationshipsLabels'] = JsonApiAnalyticalDashboardOutRelationshipsLabels globals()['JsonApiAnalyticalDashboardOutRelationshipsMetrics'] = JsonApiAnalyticalDashboardOutRelationshipsMetrics globals()['JsonApiAttributeHierarchyOutRelationshipsAttributes'] = JsonApiAttributeHierarchyOutRelationshipsAttributes globals()['JsonApiDatasetOutRelationshipsFacts'] = JsonApiDatasetOutRelationshipsFacts - globals()['JsonApiOrganizationOutRelationshipsBootstrapUser'] = JsonApiOrganizationOutRelationshipsBootstrapUser + globals()['JsonApiFilterViewInRelationshipsUser'] = JsonApiFilterViewInRelationshipsUser globals()['JsonApiOrganizationOutRelationshipsBootstrapUserGroup'] = JsonApiOrganizationOutRelationshipsBootstrapUserGroup @@ -105,7 +105,7 @@ def openapi_types(): 'facts': (JsonApiDatasetOutRelationshipsFacts,), # noqa: E501 'labels': (JsonApiAnalyticalDashboardOutRelationshipsLabels,), # noqa: E501 'metrics': (JsonApiAnalyticalDashboardOutRelationshipsMetrics,), # noqa: E501 - 'user': (JsonApiOrganizationOutRelationshipsBootstrapUser,), # noqa: E501 + 'user': (JsonApiFilterViewInRelationshipsUser,), # noqa: E501 'user_group': (JsonApiOrganizationOutRelationshipsBootstrapUserGroup,), # noqa: E501 } @@ -170,7 +170,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 facts (JsonApiDatasetOutRelationshipsFacts): [optional] # noqa: E501 labels (JsonApiAnalyticalDashboardOutRelationshipsLabels): [optional] # noqa: E501 metrics (JsonApiAnalyticalDashboardOutRelationshipsMetrics): [optional] # noqa: E501 - user (JsonApiOrganizationOutRelationshipsBootstrapUser): [optional] # noqa: E501 + user (JsonApiFilterViewInRelationshipsUser): [optional] # noqa: E501 user_group (JsonApiOrganizationOutRelationshipsBootstrapUserGroup): [optional] # noqa: E501 """ @@ -262,7 +262,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 facts (JsonApiDatasetOutRelationshipsFacts): [optional] # noqa: E501 labels (JsonApiAnalyticalDashboardOutRelationshipsLabels): [optional] # noqa: E501 metrics (JsonApiAnalyticalDashboardOutRelationshipsMetrics): [optional] # noqa: E501 - user (JsonApiOrganizationOutRelationshipsBootstrapUser): [optional] # noqa: E501 + user (JsonApiFilterViewInRelationshipsUser): [optional] # noqa: E501 user_group (JsonApiOrganizationOutRelationshipsBootstrapUserGroup): [optional] # noqa: E501 """ diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_workspace_out_meta.py b/gooddata-api-client/gooddata_api_client/model/json_api_workspace_out_meta.py index fee661658..a4758e6db 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_workspace_out_meta.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_workspace_out_meta.py @@ -70,6 +70,8 @@ class JsonApiWorkspaceOutMeta(ModelNormal): 'EXPORT': "EXPORT", 'EXPORT_TABULAR': "EXPORT_TABULAR", 'EXPORT_PDF': "EXPORT_PDF", + 'CREATE_AUTOMATION': "CREATE_AUTOMATION", + 'CREATE_FILTER_VIEW': "CREATE_FILTER_VIEW", 'VIEW': "VIEW", }, } diff --git a/gooddata-api-client/gooddata_api_client/model/local_identifier.py b/gooddata-api-client/gooddata_api_client/model/local_identifier.py new file mode 100644 index 000000000..5a5313c68 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/local_identifier.py @@ -0,0 +1,284 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class LocalIdentifier(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + ('format',): { + 'max_length': 2048, + }, + ('title',): { + 'max_length': 255, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'local_identifier': (str,), # noqa: E501 + 'format': (str, none_type,), # noqa: E501 + 'title': (str, none_type,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'local_identifier': 'localIdentifier', # noqa: E501 + 'format': 'format', # noqa: E501 + 'title': 'title', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, local_identifier, *args, **kwargs): # noqa: E501 + """LocalIdentifier - a model defined in OpenAPI + + Args: + local_identifier (str): Local identifier of the metric to be compared. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + format (str, none_type): Metric format.. [optional] if omitted the server will use the default value of "#,##0.00" # noqa: E501 + title (str, none_type): Metric title.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.local_identifier = local_identifier + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, local_identifier, *args, **kwargs): # noqa: E501 + """LocalIdentifier - a model defined in OpenAPI + + Args: + local_identifier (str): Local identifier of the metric to be compared. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + format (str, none_type): Metric format.. [optional] if omitted the server will use the default value of "#,##0.00" # noqa: E501 + title (str, none_type): Metric title.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.local_identifier = local_identifier + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/manage_dashboard_permissions_request_inner.py b/gooddata-api-client/gooddata_api_client/model/manage_dashboard_permissions_request_inner.py index 72b4aa6ad..48ae34287 100644 --- a/gooddata-api-client/gooddata_api_client/model/manage_dashboard_permissions_request_inner.py +++ b/gooddata-api-client/gooddata_api_client/model/manage_dashboard_permissions_request_inner.py @@ -66,11 +66,6 @@ class ManageDashboardPermissionsRequestInner(ModelComposed): """ allowed_values = { - ('permissions',): { - 'EDIT': "EDIT", - 'SHARE': "SHARE", - 'VIEW': "VIEW", - }, } validations = { @@ -99,7 +94,6 @@ def openapi_types(): """ lazy_import() return { - 'permissions': ([str],), # noqa: E501 'assignee_identifier': (AssigneeIdentifier,), # noqa: E501 'assignee_rule': (AssigneeRule,), # noqa: E501 } @@ -110,7 +104,6 @@ def discriminator(): attribute_map = { - 'permissions': 'permissions', # noqa: E501 'assignee_identifier': 'assigneeIdentifier', # noqa: E501 'assignee_rule': 'assigneeRule', # noqa: E501 } @@ -154,7 +147,6 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - permissions ([str]): [optional] # noqa: E501 assignee_identifier (AssigneeIdentifier): [optional] # noqa: E501 assignee_rule (AssigneeRule): [optional] # noqa: E501 """ @@ -260,7 +252,6 @@ def __init__(self, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - permissions ([str]): [optional] # noqa: E501 assignee_identifier (AssigneeIdentifier): [optional] # noqa: E501 assignee_rule (AssigneeRule): [optional] # noqa: E501 """ diff --git a/gooddata-api-client/gooddata_api_client/model/metric.py b/gooddata-api-client/gooddata_api_client/model/metric.py new file mode 100644 index 000000000..378c9279e --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/metric.py @@ -0,0 +1,293 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class Metric(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'METRIC': "metric", + 'FACT': "fact", + 'ATTRIBUTE': "attribute", + }, + ('agg_function',): { + 'COUNT': "COUNT", + 'SUM': "SUM", + 'MIN': "MIN", + 'MAX': "MAX", + 'AVG': "AVG", + 'MEDIAN': "MEDIAN", + }, + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'id': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'agg_function': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + 'agg_function': 'aggFunction', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, id, type, *args, **kwargs): # noqa: E501 + """Metric - a model defined in OpenAPI + + Args: + id (str): ID of the object + type (str): Object type + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + agg_function (str): Agg function. Empty if a stored metric is used.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, id, type, *args, **kwargs): # noqa: E501 + """Metric - a model defined in OpenAPI + + Args: + id (str): ID of the object + type (str): Object type + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + agg_function (str): Agg function. Empty if a stored metric is used.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.id = id + self.type = type + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/notification_channel_destination.py b/gooddata-api-client/gooddata_api_client/model/notification_channel_destination.py new file mode 100644 index 000000000..99cbdc96b --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/notification_channel_destination.py @@ -0,0 +1,383 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.default_smtp import DefaultSmtp + from gooddata_api_client.model.smtp import Smtp + from gooddata_api_client.model.webhook import Webhook + globals()['DefaultSmtp'] = DefaultSmtp + globals()['Smtp'] = Smtp + globals()['Webhook'] = Webhook + + +class NotificationChannelDestination(ModelComposed): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('port',): { + '25': 25, + '465': 465, + '587': 587, + '2525': 2525, + }, + } + + validations = { + ('token',): { + 'max_length': 10000, + }, + ('url',): { + 'max_length': 255, + 'regex': { + 'pattern': r'https?\:\/\/.*', # noqa: E501 + }, + }, + ('from_email',): { + 'regex': { + 'pattern': r'(?:[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)])', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'type': (str,), # noqa: E501 + 'has_token': (bool, none_type,), # noqa: E501 + 'token': (str, none_type,), # noqa: E501 + 'url': (str,), # noqa: E501 + 'from_email': (str,), # noqa: E501 + 'from_email_name': (str,), # noqa: E501 + 'host': (str,), # noqa: E501 + 'password': (str,), # noqa: E501 + 'port': (int,), # noqa: E501 + 'username': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'type': 'type', # noqa: E501 + 'has_token': 'hasToken', # noqa: E501 + 'token': 'token', # noqa: E501 + 'url': 'url', # noqa: E501 + 'from_email': 'fromEmail', # noqa: E501 + 'from_email_name': 'fromEmailName', # noqa: E501 + 'host': 'host', # noqa: E501 + 'password': 'password', # noqa: E501 + 'port': 'port', # noqa: E501 + 'username': 'username', # noqa: E501 + } + + read_only_vars = { + 'has_token', # noqa: E501 + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """NotificationChannelDestination - a model defined in OpenAPI + + Keyword Args: + type (str): + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + has_token (bool, none_type): Flag indicating if webhook has a token.. [optional] # noqa: E501 + token (str, none_type): Bearer token for the webhook.. [optional] # noqa: E501 + url (str): The webhook URL.. [optional] # noqa: E501 + from_email (str): E-mail address to send notifications from. Currently this does not have any effect. E-mail 'no-reply@gooddata.com' is used instead.. [optional] if omitted the server will use the default value of "no-reply@gooddata.com" # noqa: E501 + from_email_name (str): An optional e-mail name to send notifications from. Currently this does not have any effect. E-mail from name 'GoodData' is used instead.. [optional] if omitted the server will use the default value of "GoodData" # noqa: E501 + host (str): The SMTP server address.. [optional] # noqa: E501 + password (str): The SMTP server password.. [optional] # noqa: E501 + port (int): The SMTP server port.. [optional] # noqa: E501 + username (str): The SMTP server username.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + '_composed_instances', + '_var_name_to_model_instances', + '_additional_properties_model_instances', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """NotificationChannelDestination - a model defined in OpenAPI + + Keyword Args: + type (str): + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + has_token (bool, none_type): Flag indicating if webhook has a token.. [optional] # noqa: E501 + token (str, none_type): Bearer token for the webhook.. [optional] # noqa: E501 + url (str): The webhook URL.. [optional] # noqa: E501 + from_email (str): E-mail address to send notifications from. Currently this does not have any effect. E-mail 'no-reply@gooddata.com' is used instead.. [optional] if omitted the server will use the default value of "no-reply@gooddata.com" # noqa: E501 + from_email_name (str): An optional e-mail name to send notifications from. Currently this does not have any effect. E-mail from name 'GoodData' is used instead.. [optional] if omitted the server will use the default value of "GoodData" # noqa: E501 + host (str): The SMTP server address.. [optional] # noqa: E501 + password (str): The SMTP server password.. [optional] # noqa: E501 + port (int): The SMTP server port.. [optional] # noqa: E501 + username (str): The SMTP server username.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") + + @cached_property + def _composed_schemas(): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + lazy_import() + return { + 'anyOf': [ + ], + 'allOf': [ + ], + 'oneOf': [ + DefaultSmtp, + Smtp, + Webhook, + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/oidc_idp_specification.py b/gooddata-api-client/gooddata_api_client/model/oidc_idp_specification.py new file mode 100644 index 000000000..c412820e7 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/oidc_idp_specification.py @@ -0,0 +1,309 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class OidcIdpSpecification(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + ('oauth_client_id',): { + 'max_length': 255, + }, + ('oauth_client_secret',): { + 'max_length': 255, + }, + ('oauth_issuer_id',): { + 'max_length': 255, + }, + ('oauth_issuer_location',): { + 'max_length': 255, + }, + ('oauth_subject_id_claim',): { + 'max_length': 255, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'oauth_client_id': (str,), # noqa: E501 + 'oauth_client_secret': (str,), # noqa: E501 + 'oauth_issuer_id': (str,), # noqa: E501 + 'oauth_issuer_location': (str,), # noqa: E501 + 'oauth_subject_id_claim': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'oauth_client_id': 'oauthClientId', # noqa: E501 + 'oauth_client_secret': 'oauthClientSecret', # noqa: E501 + 'oauth_issuer_id': 'oauthIssuerId', # noqa: E501 + 'oauth_issuer_location': 'oauthIssuerLocation', # noqa: E501 + 'oauth_subject_id_claim': 'oauthSubjectIdClaim', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, oauth_client_id, oauth_client_secret, oauth_issuer_id, oauth_issuer_location, oauth_subject_id_claim, *args, **kwargs): # noqa: E501 + """OidcIdpSpecification - a model defined in OpenAPI + + Args: + oauth_client_id (str): + oauth_client_secret (str): + oauth_issuer_id (str): Any string identifying the OIDC provider. This value is used as suffix for OAuth2 callback (redirect) URL. If not defined, the standard callback URL is used. This value is valid only for external OIDC providers, not for the internal DEX provider. + oauth_issuer_location (str): + oauth_subject_id_claim (str): Any string identifying the claim in ID token, that should be used for user identification. The default value is 'sub'. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.oauth_client_id = oauth_client_id + self.oauth_client_secret = oauth_client_secret + self.oauth_issuer_id = oauth_issuer_id + self.oauth_issuer_location = oauth_issuer_location + self.oauth_subject_id_claim = oauth_subject_id_claim + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, oauth_client_id, oauth_client_secret, oauth_issuer_id, oauth_issuer_location, oauth_subject_id_claim, *args, **kwargs): # noqa: E501 + """OidcIdpSpecification - a model defined in OpenAPI + + Args: + oauth_client_id (str): + oauth_client_secret (str): + oauth_issuer_id (str): Any string identifying the OIDC provider. This value is used as suffix for OAuth2 callback (redirect) URL. If not defined, the standard callback URL is used. This value is valid only for external OIDC providers, not for the internal DEX provider. + oauth_issuer_location (str): + oauth_subject_id_claim (str): Any string identifying the claim in ID token, that should be used for user identification. The default value is 'sub'. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.oauth_client_id = oauth_client_id + self.oauth_client_secret = oauth_client_secret + self.oauth_issuer_id = oauth_issuer_id + self.oauth_issuer_location = oauth_issuer_location + self.oauth_subject_id_claim = oauth_subject_id_claim + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/permissions_for_assignee.py b/gooddata-api-client/gooddata_api_client/model/permissions_for_assignee.py index 0e4fb2e89..4688f5935 100644 --- a/gooddata-api-client/gooddata_api_client/model/permissions_for_assignee.py +++ b/gooddata-api-client/gooddata_api_client/model/permissions_for_assignee.py @@ -32,14 +32,10 @@ def lazy_import(): from gooddata_api_client.model.assignee_identifier import AssigneeIdentifier - from gooddata_api_client.model.dashboard_permissions_assignment import DashboardPermissionsAssignment - from gooddata_api_client.model.permissions_for_assignee_all_of import PermissionsForAssigneeAllOf globals()['AssigneeIdentifier'] = AssigneeIdentifier - globals()['DashboardPermissionsAssignment'] = DashboardPermissionsAssignment - globals()['PermissionsForAssigneeAllOf'] = PermissionsForAssigneeAllOf -class PermissionsForAssignee(ModelComposed): +class PermissionsForAssignee(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech @@ -64,11 +60,6 @@ class PermissionsForAssignee(ModelComposed): """ allowed_values = { - ('permissions',): { - 'EDIT': "EDIT", - 'SHARE': "SHARE", - 'VIEW': "VIEW", - }, } validations = { @@ -97,7 +88,6 @@ def openapi_types(): """ lazy_import() return { - 'permissions': ([str],), # noqa: E501 'assignee_identifier': (AssigneeIdentifier,), # noqa: E501 } @@ -107,21 +97,23 @@ def discriminator(): attribute_map = { - 'permissions': 'permissions', # noqa: E501 'assignee_identifier': 'assigneeIdentifier', # noqa: E501 } read_only_vars = { } + _composed_schemas = {} + @classmethod @convert_js_args_to_python_args - def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + def _from_openapi_data(cls, assignee_identifier, *args, **kwargs): # noqa: E501 """PermissionsForAssignee - a model defined in OpenAPI - Keyword Args: - permissions ([str]): + Args: assignee_identifier (AssigneeIdentifier): + + Keyword Args: _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be raised if the wrong type is input. @@ -155,7 +147,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) - _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) _path_to_item = kwargs.pop('_path_to_item', ()) _configuration = kwargs.pop('_configuration', None) _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) @@ -183,29 +175,15 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) - constant_args = { - '_check_type': _check_type, - '_path_to_item': _path_to_item, - '_spec_property_naming': _spec_property_naming, - '_configuration': _configuration, - '_visited_composed_classes': self._visited_composed_classes, - } - composed_info = validate_get_composed_info( - constant_args, kwargs, self) - self._composed_instances = composed_info[0] - self._var_name_to_model_instances = composed_info[1] - self._additional_properties_model_instances = composed_info[2] - discarded_args = composed_info[3] - + self.assignee_identifier = assignee_identifier for var_name, var_value in kwargs.items(): - if var_name in discarded_args and \ + if var_name not in self.attribute_map and \ self._configuration is not None and \ self._configuration.discard_unknown_keys and \ - self._additional_properties_model_instances: + self.additional_properties_type is None: # discard variable. continue setattr(self, var_name, var_value) - return self required_properties = set([ @@ -215,18 +193,16 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 '_path_to_item', '_configuration', '_visited_composed_classes', - '_composed_instances', - '_var_name_to_model_instances', - '_additional_properties_model_instances', ]) @convert_js_args_to_python_args - def __init__(self, *args, **kwargs): # noqa: E501 + def __init__(self, assignee_identifier, *args, **kwargs): # noqa: E501 """PermissionsForAssignee - a model defined in OpenAPI - Keyword Args: - permissions ([str]): + Args: assignee_identifier (AssigneeIdentifier): + + Keyword Args: _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be raised if the wrong type is input. @@ -286,49 +262,15 @@ def __init__(self, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) - constant_args = { - '_check_type': _check_type, - '_path_to_item': _path_to_item, - '_spec_property_naming': _spec_property_naming, - '_configuration': _configuration, - '_visited_composed_classes': self._visited_composed_classes, - } - composed_info = validate_get_composed_info( - constant_args, kwargs, self) - self._composed_instances = composed_info[0] - self._var_name_to_model_instances = composed_info[1] - self._additional_properties_model_instances = composed_info[2] - discarded_args = composed_info[3] - + self.assignee_identifier = assignee_identifier for var_name, var_value in kwargs.items(): - if var_name in discarded_args and \ + if var_name not in self.attribute_map and \ self._configuration is not None and \ self._configuration.discard_unknown_keys and \ - self._additional_properties_model_instances: + self.additional_properties_type is None: # discard variable. continue setattr(self, var_name, var_value) if var_name in self.read_only_vars: raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " f"class with read only attributes.") - - @cached_property - def _composed_schemas(): - # we need this here to make our import statements work - # we must store _composed_schemas in here so the code is only run - # when we invoke this method. If we kept this at the class - # level we would get an error because the class level - # code would be run when this module is imported, and these composed - # classes don't exist yet because their module has not finished - # loading - lazy_import() - return { - 'anyOf': [ - ], - 'allOf': [ - DashboardPermissionsAssignment, - PermissionsForAssigneeAllOf, - ], - 'oneOf': [ - ], - } diff --git a/gooddata-api-client/gooddata_api_client/model/permissions_for_assignee_rule.py b/gooddata-api-client/gooddata_api_client/model/permissions_for_assignee_rule.py index 320b6cb96..3aaca5ed6 100644 --- a/gooddata-api-client/gooddata_api_client/model/permissions_for_assignee_rule.py +++ b/gooddata-api-client/gooddata_api_client/model/permissions_for_assignee_rule.py @@ -32,14 +32,10 @@ def lazy_import(): from gooddata_api_client.model.assignee_rule import AssigneeRule - from gooddata_api_client.model.dashboard_permissions_assignment import DashboardPermissionsAssignment - from gooddata_api_client.model.declarative_analytical_dashboard_permission_for_assignee_rule_all_of import DeclarativeAnalyticalDashboardPermissionForAssigneeRuleAllOf globals()['AssigneeRule'] = AssigneeRule - globals()['DashboardPermissionsAssignment'] = DashboardPermissionsAssignment - globals()['DeclarativeAnalyticalDashboardPermissionForAssigneeRuleAllOf'] = DeclarativeAnalyticalDashboardPermissionForAssigneeRuleAllOf -class PermissionsForAssigneeRule(ModelComposed): +class PermissionsForAssigneeRule(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech @@ -64,11 +60,6 @@ class PermissionsForAssigneeRule(ModelComposed): """ allowed_values = { - ('permissions',): { - 'EDIT': "EDIT", - 'SHARE': "SHARE", - 'VIEW': "VIEW", - }, } validations = { @@ -97,7 +88,6 @@ def openapi_types(): """ lazy_import() return { - 'permissions': ([str],), # noqa: E501 'assignee_rule': (AssigneeRule,), # noqa: E501 } @@ -107,21 +97,23 @@ def discriminator(): attribute_map = { - 'permissions': 'permissions', # noqa: E501 'assignee_rule': 'assigneeRule', # noqa: E501 } read_only_vars = { } + _composed_schemas = {} + @classmethod @convert_js_args_to_python_args - def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + def _from_openapi_data(cls, assignee_rule, *args, **kwargs): # noqa: E501 """PermissionsForAssigneeRule - a model defined in OpenAPI - Keyword Args: - permissions ([str]): + Args: assignee_rule (AssigneeRule): + + Keyword Args: _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be raised if the wrong type is input. @@ -155,7 +147,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) - _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) _path_to_item = kwargs.pop('_path_to_item', ()) _configuration = kwargs.pop('_configuration', None) _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) @@ -183,29 +175,15 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) - constant_args = { - '_check_type': _check_type, - '_path_to_item': _path_to_item, - '_spec_property_naming': _spec_property_naming, - '_configuration': _configuration, - '_visited_composed_classes': self._visited_composed_classes, - } - composed_info = validate_get_composed_info( - constant_args, kwargs, self) - self._composed_instances = composed_info[0] - self._var_name_to_model_instances = composed_info[1] - self._additional_properties_model_instances = composed_info[2] - discarded_args = composed_info[3] - + self.assignee_rule = assignee_rule for var_name, var_value in kwargs.items(): - if var_name in discarded_args and \ + if var_name not in self.attribute_map and \ self._configuration is not None and \ self._configuration.discard_unknown_keys and \ - self._additional_properties_model_instances: + self.additional_properties_type is None: # discard variable. continue setattr(self, var_name, var_value) - return self required_properties = set([ @@ -215,18 +193,16 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 '_path_to_item', '_configuration', '_visited_composed_classes', - '_composed_instances', - '_var_name_to_model_instances', - '_additional_properties_model_instances', ]) @convert_js_args_to_python_args - def __init__(self, *args, **kwargs): # noqa: E501 + def __init__(self, assignee_rule, *args, **kwargs): # noqa: E501 """PermissionsForAssigneeRule - a model defined in OpenAPI - Keyword Args: - permissions ([str]): + Args: assignee_rule (AssigneeRule): + + Keyword Args: _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be raised if the wrong type is input. @@ -286,49 +262,15 @@ def __init__(self, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) - constant_args = { - '_check_type': _check_type, - '_path_to_item': _path_to_item, - '_spec_property_naming': _spec_property_naming, - '_configuration': _configuration, - '_visited_composed_classes': self._visited_composed_classes, - } - composed_info = validate_get_composed_info( - constant_args, kwargs, self) - self._composed_instances = composed_info[0] - self._var_name_to_model_instances = composed_info[1] - self._additional_properties_model_instances = composed_info[2] - discarded_args = composed_info[3] - + self.assignee_rule = assignee_rule for var_name, var_value in kwargs.items(): - if var_name in discarded_args and \ + if var_name not in self.attribute_map and \ self._configuration is not None and \ self._configuration.discard_unknown_keys and \ - self._additional_properties_model_instances: + self.additional_properties_type is None: # discard variable. continue setattr(self, var_name, var_value) if var_name in self.read_only_vars: raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " f"class with read only attributes.") - - @cached_property - def _composed_schemas(): - # we need this here to make our import statements work - # we must store _composed_schemas in here so the code is only run - # when we invoke this method. If we kept this at the class - # level we would get an error because the class level - # code would be run when this module is imported, and these composed - # classes don't exist yet because their module has not finished - # loading - lazy_import() - return { - 'anyOf': [ - ], - 'allOf': [ - DashboardPermissionsAssignment, - DeclarativeAnalyticalDashboardPermissionForAssigneeRuleAllOf, - ], - 'oneOf': [ - ], - } diff --git a/gooddata-api-client/gooddata_api_client/model/range.py b/gooddata-api-client/gooddata_api_client/model/range.py new file mode 100644 index 000000000..6e11580ab --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/range.py @@ -0,0 +1,300 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.local_identifier import LocalIdentifier + from gooddata_api_client.model.value import Value + globals()['LocalIdentifier'] = LocalIdentifier + globals()['Value'] = Value + + +class Range(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('operator',): { + 'BETWEEN': "BETWEEN", + 'NOT_BETWEEN': "NOT_BETWEEN", + }, + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + '_from': (Value,), # noqa: E501 + 'measure': (LocalIdentifier,), # noqa: E501 + 'operator': (str,), # noqa: E501 + 'to': (Value,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + '_from': 'from', # noqa: E501 + 'measure': 'measure', # noqa: E501 + 'operator': 'operator', # noqa: E501 + 'to': 'to', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, _from, measure, operator, to, *args, **kwargs): # noqa: E501 + """Range - a model defined in OpenAPI + + Args: + _from (Value): + measure (LocalIdentifier): + operator (str): + to (Value): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self._from = _from + self.measure = measure + self.operator = operator + self.to = to + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, _from, measure, operator, to, *args, **kwargs): # noqa: E501 + """Range - a model defined in OpenAPI + + Args: + _from (Value): + measure (LocalIdentifier): + operator (str): + to (Value): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self._from = _from + self.measure = measure + self.operator = operator + self.to = to + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/range_wrapper.py b/gooddata-api-client/gooddata_api_client/model/range_wrapper.py new file mode 100644 index 000000000..4a9c9476c --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/range_wrapper.py @@ -0,0 +1,276 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.range import Range + globals()['Range'] = Range + + +class RangeWrapper(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'range': (Range,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'range': 'range', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, range, *args, **kwargs): # noqa: E501 + """RangeWrapper - a model defined in OpenAPI + + Args: + range (Range): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.range = range + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, range, *args, **kwargs): # noqa: E501 + """RangeWrapper - a model defined in OpenAPI + + Args: + range (Range): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.range = range + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/relative.py b/gooddata-api-client/gooddata_api_client/model/relative.py new file mode 100644 index 000000000..8b1ae1829 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/relative.py @@ -0,0 +1,295 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.arithmetic_measure import ArithmeticMeasure + from gooddata_api_client.model.value import Value + globals()['ArithmeticMeasure'] = ArithmeticMeasure + globals()['Value'] = Value + + +class Relative(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('operator',): { + 'INCREASES_BY': "INCREASES_BY", + 'DECREASES_BY': "DECREASES_BY", + 'CHANGES_BY': "CHANGES_BY", + }, + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'measure': (ArithmeticMeasure,), # noqa: E501 + 'operator': (str,), # noqa: E501 + 'threshold': (Value,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'measure': 'measure', # noqa: E501 + 'operator': 'operator', # noqa: E501 + 'threshold': 'threshold', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, measure, operator, threshold, *args, **kwargs): # noqa: E501 + """Relative - a model defined in OpenAPI + + Args: + measure (ArithmeticMeasure): + operator (str): Relative condition operator. INCREASES_BY - the metric increases by the specified value. DECREASES_BY - the metric decreases by the specified value. CHANGES_BY - the metric increases or decreases by the specified value. + threshold (Value): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.measure = measure + self.operator = operator + self.threshold = threshold + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, measure, operator, threshold, *args, **kwargs): # noqa: E501 + """Relative - a model defined in OpenAPI + + Args: + measure (ArithmeticMeasure): + operator (str): Relative condition operator. INCREASES_BY - the metric increases by the specified value. DECREASES_BY - the metric decreases by the specified value. CHANGES_BY - the metric increases or decreases by the specified value. + threshold (Value): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.measure = measure + self.operator = operator + self.threshold = threshold + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/relative_wrapper.py b/gooddata-api-client/gooddata_api_client/model/relative_wrapper.py new file mode 100644 index 000000000..b3cd8c139 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/relative_wrapper.py @@ -0,0 +1,276 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.relative import Relative + globals()['Relative'] = Relative + + +class RelativeWrapper(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'relative': (Relative,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'relative': 'relative', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, relative, *args, **kwargs): # noqa: E501 + """RelativeWrapper - a model defined in OpenAPI + + Args: + relative (Relative): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.relative = relative + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, relative, *args, **kwargs): # noqa: E501 + """RelativeWrapper - a model defined in OpenAPI + + Args: + relative (Relative): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.relative = relative + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/resolved_setting.py b/gooddata-api-client/gooddata_api_client/model/resolved_setting.py index 5da36bb34..84c75b20d 100644 --- a/gooddata-api-client/gooddata_api_client/model/resolved_setting.py +++ b/gooddata-api-client/gooddata_api_client/model/resolved_setting.py @@ -75,6 +75,7 @@ class ResolvedSetting(ModelNormal): 'TIMEZONE_VALIDATION_ENABLED': "TIMEZONE_VALIDATION_ENABLED", 'OPENAI_CONFIG': "OPENAI_CONFIG", 'ENABLE_FILE_ANALYTICS': "ENABLE_FILE_ANALYTICS", + 'ALERT': "ALERT", }, } diff --git a/gooddata-api-client/gooddata_api_client/model/route_request.py b/gooddata-api-client/gooddata_api_client/model/route_request.py new file mode 100644 index 000000000..7a8ca5687 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/route_request.py @@ -0,0 +1,273 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class RouteRequest(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + ('question',): { + 'max_length': 1000, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'question': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'question': 'question', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, question, *args, **kwargs): # noqa: E501 + """RouteRequest - a model defined in OpenAPI + + Args: + question (str): Route to supported use cases based on this input query. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.question = question + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, question, *args, **kwargs): # noqa: E501 + """RouteRequest - a model defined in OpenAPI + + Args: + question (str): Route to supported use cases based on this input query. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.question = question + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/route_result.py b/gooddata-api-client/gooddata_api_client/model/route_result.py new file mode 100644 index 000000000..816a95147 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/route_result.py @@ -0,0 +1,285 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class RouteResult(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('use_case',): { + 'SEARCH_ALL': "SEARCH_ALL", + 'SEARCH_VISUALIZATIONS': "SEARCH_VISUALIZATIONS", + 'SEARCH_DASHBOARDS': "SEARCH_DASHBOARDS", + 'CREATE_VISUALIZATION': "CREATE_VISUALIZATION", + 'EXTEND_VISUALIZATION': "EXTEND_VISUALIZATION", + 'GENERAL': "GENERAL", + 'INVALID': "INVALID", + }, + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'reasoning': (str,), # noqa: E501 + 'use_case': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'reasoning': 'reasoning', # noqa: E501 + 'use_case': 'useCase', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, reasoning, use_case, *args, **kwargs): # noqa: E501 + """RouteResult - a model defined in OpenAPI + + Args: + reasoning (str): Explanation why LLM picked this use case. + use_case (str): Use case where LLM routed based on question. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.reasoning = reasoning + self.use_case = use_case + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, reasoning, use_case, *args, **kwargs): # noqa: E501 + """RouteResult - a model defined in OpenAPI + + Args: + reasoning (str): Explanation why LLM picked this use case. + use_case (str): Use case where LLM routed based on question. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.reasoning = reasoning + self.use_case = use_case + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/saml_idp_specification.py b/gooddata-api-client/gooddata_api_client/model/saml_idp_specification.py new file mode 100644 index 000000000..f45c8e14d --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/saml_idp_specification.py @@ -0,0 +1,273 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class SamlIdpSpecification(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + ('metadata',): { + 'max_length': 15000, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'metadata': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'metadata': 'metadata', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, metadata, *args, **kwargs): # noqa: E501 + """SamlIdpSpecification - a model defined in OpenAPI + + Args: + metadata (str): Base64 encoded xml document with SAML metadata. This document is issued by your SAML provider. It includes the issuer's name, expiration information, and keys that can be used to validate the response from the identity provider. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.metadata = metadata + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, metadata, *args, **kwargs): # noqa: E501 + """SamlIdpSpecification - a model defined in OpenAPI + + Args: + metadata (str): Base64 encoded xml document with SAML metadata. This document is issued by your SAML provider. It includes the issuer's name, expiration information, and keys that can be used to validate the response from the identity provider. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.metadata = metadata + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/search_request.py b/gooddata-api-client/gooddata_api_client/model/search_request.py index d814f2fc7..00f4df2d4 100644 --- a/gooddata-api-client/gooddata_api_client/model/search_request.py +++ b/gooddata-api-client/gooddata_api_client/model/search_request.py @@ -69,6 +69,9 @@ class SearchRequest(ModelNormal): } validations = { + ('question',): { + 'max_length': 1000, + }, } @cached_property @@ -96,6 +99,7 @@ def openapi_types(): 'deep_search': (bool,), # noqa: E501 'limit': (int,), # noqa: E501 'object_types': ([str],), # noqa: E501 + 'relevant_score_threshold': (float,), # noqa: E501 'title_to_descriptor_ratio': (float,), # noqa: E501 } @@ -109,6 +113,7 @@ def discriminator(): 'deep_search': 'deepSearch', # noqa: E501 'limit': 'limit', # noqa: E501 'object_types': 'objectTypes', # noqa: E501 + 'relevant_score_threshold': 'relevantScoreThreshold', # noqa: E501 'title_to_descriptor_ratio': 'titleToDescriptorRatio', # noqa: E501 } @@ -159,6 +164,7 @@ def _from_openapi_data(cls, question, *args, **kwargs): # noqa: E501 deep_search (bool): Turn on deep search. If true, content of complex objects will be searched as well, e.g. metrics in visualizations.. [optional] if omitted the server will use the default value of False # noqa: E501 limit (int): Maximum number of results to return. There is a hard limit and the actual number of returned results may be lower than what is requested.. [optional] if omitted the server will use the default value of 10 # noqa: E501 object_types ([str]): List of object types to search for.. [optional] # noqa: E501 + relevant_score_threshold (float): Score, above which we return found objects. Below this score objects are not relevant.. [optional] if omitted the server will use the default value of 0.3 # noqa: E501 title_to_descriptor_ratio (float): Temporary for experiments. Ratio of title score to descriptor score.. [optional] if omitted the server will use the default value of 0.7 # noqa: E501 """ @@ -252,6 +258,7 @@ def __init__(self, question, *args, **kwargs): # noqa: E501 deep_search (bool): Turn on deep search. If true, content of complex objects will be searched as well, e.g. metrics in visualizations.. [optional] if omitted the server will use the default value of False # noqa: E501 limit (int): Maximum number of results to return. There is a hard limit and the actual number of returned results may be lower than what is requested.. [optional] if omitted the server will use the default value of 10 # noqa: E501 object_types ([str]): List of object types to search for.. [optional] # noqa: E501 + relevant_score_threshold (float): Score, above which we return found objects. Below this score objects are not relevant.. [optional] if omitted the server will use the default value of 0.3 # noqa: E501 title_to_descriptor_ratio (float): Temporary for experiments. Ratio of title score to descriptor score.. [optional] if omitted the server will use the default value of 0.7 # noqa: E501 """ diff --git a/gooddata-api-client/gooddata_api_client/model/search_result_object.py b/gooddata-api-client/gooddata_api_client/model/search_result_object.py index f570126bf..a7ecc8c98 100644 --- a/gooddata-api-client/gooddata_api_client/model/search_result_object.py +++ b/gooddata-api-client/gooddata_api_client/model/search_result_object.py @@ -84,17 +84,18 @@ def openapi_types(): and the value is attribute type. """ return { - 'created_at': (str,), # noqa: E501 - 'description': (str,), # noqa: E501 'id': (str,), # noqa: E501 - 'modified_at': (str,), # noqa: E501 + 'title': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'workspace_id': (str,), # noqa: E501 + 'created_at': (datetime,), # noqa: E501 + 'description': (str,), # noqa: E501 + 'modified_at': (datetime,), # noqa: E501 'score': (float,), # noqa: E501 'score_descriptor': (float,), # noqa: E501 'score_exact_match': (int,), # noqa: E501 'score_title': (float,), # noqa: E501 'tags': ([str],), # noqa: E501 - 'title': (str,), # noqa: E501 - 'type': (str,), # noqa: E501 'visualization_url': (str,), # noqa: E501 } @@ -104,17 +105,18 @@ def discriminator(): attribute_map = { + 'id': 'id', # noqa: E501 + 'title': 'title', # noqa: E501 + 'type': 'type', # noqa: E501 + 'workspace_id': 'workspaceId', # noqa: E501 'created_at': 'createdAt', # noqa: E501 'description': 'description', # noqa: E501 - 'id': 'id', # noqa: E501 'modified_at': 'modifiedAt', # noqa: E501 'score': 'score', # noqa: E501 'score_descriptor': 'scoreDescriptor', # noqa: E501 'score_exact_match': 'scoreExactMatch', # noqa: E501 'score_title': 'scoreTitle', # noqa: E501 'tags': 'tags', # noqa: E501 - 'title': 'title', # noqa: E501 - 'type': 'type', # noqa: E501 'visualization_url': 'visualizationUrl', # noqa: E501 } @@ -125,22 +127,14 @@ def discriminator(): @classmethod @convert_js_args_to_python_args - def _from_openapi_data(cls, created_at, description, id, modified_at, score, score_descriptor, score_exact_match, score_title, tags, title, type, visualization_url, *args, **kwargs): # noqa: E501 + def _from_openapi_data(cls, id, title, type, workspace_id, *args, **kwargs): # noqa: E501 """SearchResultObject - a model defined in OpenAPI Args: - created_at (str): Timestamp when object was created. - description (str): Object description. id (str): Object ID. - modified_at (str): Timestamp when object was last modified. - score (float): Result score calculated by a similarity search algorithm (cosine_distance). - score_descriptor (float): Result score for descriptor containing(now) description and tags. - score_exact_match (int): Result score for exact match(id/title). 1/1000. Other scores are multiplied by this. - score_title (float): Result score for object title. - tags ([str]): title (str): Object title. type (str): Object type, e.g. dashboard. - visualization_url (str): If the object is visualization, this field defines the type of visualization. + workspace_id (str): Workspace ID. Keyword Args: _check_type (bool): if True, values for parameters in openapi_types @@ -173,6 +167,15 @@ def _from_openapi_data(cls, created_at, description, id, modified_at, score, sco Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + created_at (datetime): Timestamp when object was created.. [optional] # noqa: E501 + description (str): Object description.. [optional] # noqa: E501 + modified_at (datetime): Timestamp when object was last modified.. [optional] # noqa: E501 + score (float): Result score calculated by a similarity search algorithm (cosine_distance).. [optional] # noqa: E501 + score_descriptor (float): Result score for descriptor containing(now) description and tags.. [optional] # noqa: E501 + score_exact_match (int): Result score for exact match(id/title). 1/1000. Other scores are multiplied by this.. [optional] # noqa: E501 + score_title (float): Result score for object title.. [optional] # noqa: E501 + tags ([str]): [optional] # noqa: E501 + visualization_url (str): If the object is visualization, this field defines the type of visualization.. [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -204,18 +207,10 @@ def _from_openapi_data(cls, created_at, description, id, modified_at, score, sco self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) - self.created_at = created_at - self.description = description self.id = id - self.modified_at = modified_at - self.score = score - self.score_descriptor = score_descriptor - self.score_exact_match = score_exact_match - self.score_title = score_title - self.tags = tags self.title = title self.type = type - self.visualization_url = visualization_url + self.workspace_id = workspace_id for var_name, var_value in kwargs.items(): if var_name not in self.attribute_map and \ self._configuration is not None and \ @@ -236,22 +231,14 @@ def _from_openapi_data(cls, created_at, description, id, modified_at, score, sco ]) @convert_js_args_to_python_args - def __init__(self, created_at, description, id, modified_at, score, score_descriptor, score_exact_match, score_title, tags, title, type, visualization_url, *args, **kwargs): # noqa: E501 + def __init__(self, id, title, type, workspace_id, *args, **kwargs): # noqa: E501 """SearchResultObject - a model defined in OpenAPI Args: - created_at (str): Timestamp when object was created. - description (str): Object description. id (str): Object ID. - modified_at (str): Timestamp when object was last modified. - score (float): Result score calculated by a similarity search algorithm (cosine_distance). - score_descriptor (float): Result score for descriptor containing(now) description and tags. - score_exact_match (int): Result score for exact match(id/title). 1/1000. Other scores are multiplied by this. - score_title (float): Result score for object title. - tags ([str]): title (str): Object title. type (str): Object type, e.g. dashboard. - visualization_url (str): If the object is visualization, this field defines the type of visualization. + workspace_id (str): Workspace ID. Keyword Args: _check_type (bool): if True, values for parameters in openapi_types @@ -284,6 +271,15 @@ def __init__(self, created_at, description, id, modified_at, score, score_descri Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + created_at (datetime): Timestamp when object was created.. [optional] # noqa: E501 + description (str): Object description.. [optional] # noqa: E501 + modified_at (datetime): Timestamp when object was last modified.. [optional] # noqa: E501 + score (float): Result score calculated by a similarity search algorithm (cosine_distance).. [optional] # noqa: E501 + score_descriptor (float): Result score for descriptor containing(now) description and tags.. [optional] # noqa: E501 + score_exact_match (int): Result score for exact match(id/title). 1/1000. Other scores are multiplied by this.. [optional] # noqa: E501 + score_title (float): Result score for object title.. [optional] # noqa: E501 + tags ([str]): [optional] # noqa: E501 + visualization_url (str): If the object is visualization, this field defines the type of visualization.. [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -313,18 +309,10 @@ def __init__(self, created_at, description, id, modified_at, score, score_descri self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) - self.created_at = created_at - self.description = description self.id = id - self.modified_at = modified_at - self.score = score - self.score_descriptor = score_descriptor - self.score_exact_match = score_exact_match - self.score_title = score_title - self.tags = tags self.title = title self.type = type - self.visualization_url = visualization_url + self.workspace_id = workspace_id for var_name, var_value in kwargs.items(): if var_name not in self.attribute_map and \ self._configuration is not None and \ diff --git a/gooddata-api-client/gooddata_api_client/model/smtp.py b/gooddata-api-client/gooddata_api_client/model/smtp.py new file mode 100644 index 000000000..eecad5b85 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/smtp.py @@ -0,0 +1,360 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.smtp_all_of import SmtpAllOf + globals()['SmtpAllOf'] = SmtpAllOf + + +class Smtp(ModelComposed): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('type',): { + 'SMTP': "SMTP", + }, + ('port',): { + '25': 25, + '465': 465, + '587': 587, + '2525': 2525, + }, + } + + validations = { + ('from_email',): { + 'regex': { + 'pattern': r'(?:[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)])', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'type': (str,), # noqa: E501 + 'from_email': (str,), # noqa: E501 + 'from_email_name': (str,), # noqa: E501 + 'host': (str,), # noqa: E501 + 'password': (str,), # noqa: E501 + 'port': (int,), # noqa: E501 + 'username': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'type': 'type', # noqa: E501 + 'from_email': 'fromEmail', # noqa: E501 + 'from_email_name': 'fromEmailName', # noqa: E501 + 'host': 'host', # noqa: E501 + 'password': 'password', # noqa: E501 + 'port': 'port', # noqa: E501 + 'username': 'username', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """Smtp - a model defined in OpenAPI + + Keyword Args: + type (str): The destination type.. defaults to "SMTP", must be one of ["SMTP", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + from_email (str): E-mail address to send notifications from.. [optional] if omitted the server will use the default value of "no-reply@gooddata.com" # noqa: E501 + from_email_name (str): An optional e-mail name to send notifications from.. [optional] if omitted the server will use the default value of "GoodData" # noqa: E501 + host (str): The SMTP server address.. [optional] # noqa: E501 + password (str): The SMTP server password.. [optional] # noqa: E501 + port (int): The SMTP server port.. [optional] # noqa: E501 + username (str): The SMTP server username.. [optional] # noqa: E501 + """ + + type = kwargs.get('type', "SMTP") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + '_composed_instances', + '_var_name_to_model_instances', + '_additional_properties_model_instances', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """Smtp - a model defined in OpenAPI + + Keyword Args: + type (str): The destination type.. defaults to "SMTP", must be one of ["SMTP", ] # noqa: E501 + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + from_email (str): E-mail address to send notifications from.. [optional] if omitted the server will use the default value of "no-reply@gooddata.com" # noqa: E501 + from_email_name (str): An optional e-mail name to send notifications from.. [optional] if omitted the server will use the default value of "GoodData" # noqa: E501 + host (str): The SMTP server address.. [optional] # noqa: E501 + password (str): The SMTP server password.. [optional] # noqa: E501 + port (int): The SMTP server port.. [optional] # noqa: E501 + username (str): The SMTP server username.. [optional] # noqa: E501 + """ + + type = kwargs.get('type', "SMTP") + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + + for var_name, var_value in kwargs.items(): + if var_name in discarded_args and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self._additional_properties_model_instances: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") + + @cached_property + def _composed_schemas(): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + lazy_import() + return { + 'anyOf': [ + ], + 'allOf': [ + SmtpAllOf, + ], + 'oneOf': [ + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/smtp_all_of.py b/gooddata-api-client/gooddata_api_client/model/smtp_all_of.py new file mode 100644 index 000000000..76b372655 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/smtp_all_of.py @@ -0,0 +1,302 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class SmtpAllOf(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + ('port',): { + '25': 25, + '465': 465, + '587': 587, + '2525': 2525, + }, + ('type',): { + 'SMTP': "SMTP", + }, + } + + validations = { + ('from_email',): { + 'regex': { + 'pattern': r'(?:[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)])', # noqa: E501 + }, + }, + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'from_email': (str,), # noqa: E501 + 'from_email_name': (str,), # noqa: E501 + 'host': (str,), # noqa: E501 + 'password': (str,), # noqa: E501 + 'port': (int,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'username': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'from_email': 'fromEmail', # noqa: E501 + 'from_email_name': 'fromEmailName', # noqa: E501 + 'host': 'host', # noqa: E501 + 'password': 'password', # noqa: E501 + 'port': 'port', # noqa: E501 + 'type': 'type', # noqa: E501 + 'username': 'username', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """SmtpAllOf - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + from_email (str): E-mail address to send notifications from.. [optional] if omitted the server will use the default value of "no-reply@gooddata.com" # noqa: E501 + from_email_name (str): An optional e-mail name to send notifications from.. [optional] if omitted the server will use the default value of "GoodData" # noqa: E501 + host (str): The SMTP server address.. [optional] # noqa: E501 + password (str): The SMTP server password.. [optional] # noqa: E501 + port (int): The SMTP server port.. [optional] # noqa: E501 + type (str): The destination type.. [optional] if omitted the server will use the default value of "SMTP" # noqa: E501 + username (str): The SMTP server username.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, *args, **kwargs): # noqa: E501 + """SmtpAllOf - a model defined in OpenAPI + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + from_email (str): E-mail address to send notifications from.. [optional] if omitted the server will use the default value of "no-reply@gooddata.com" # noqa: E501 + from_email_name (str): An optional e-mail name to send notifications from.. [optional] if omitted the server will use the default value of "GoodData" # noqa: E501 + host (str): The SMTP server address.. [optional] # noqa: E501 + password (str): The SMTP server password.. [optional] # noqa: E501 + port (int): The SMTP server port.. [optional] # noqa: E501 + type (str): The destination type.. [optional] if omitted the server will use the default value of "SMTP" # noqa: E501 + username (str): The SMTP server username.. [optional] # noqa: E501 + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/user_context.py b/gooddata-api-client/gooddata_api_client/model/user_context.py new file mode 100644 index 000000000..d31d32383 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/user_context.py @@ -0,0 +1,276 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + +def lazy_import(): + from gooddata_api_client.model.active_object_identification import ActiveObjectIdentification + globals()['ActiveObjectIdentification'] = ActiveObjectIdentification + + +class UserContext(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + lazy_import() + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + lazy_import() + return { + 'active_object': (ActiveObjectIdentification,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'active_object': 'activeObject', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, active_object, *args, **kwargs): # noqa: E501 + """UserContext - a model defined in OpenAPI + + Args: + active_object (ActiveObjectIdentification): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.active_object = active_object + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, active_object, *args, **kwargs): # noqa: E501 + """UserContext - a model defined in OpenAPI + + Args: + active_object (ActiveObjectIdentification): + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.active_object = active_object + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/user_management_workspace_permission_assignment.py b/gooddata-api-client/gooddata_api_client/model/user_management_workspace_permission_assignment.py index 09c99b686..6d81a4b1c 100644 --- a/gooddata-api-client/gooddata_api_client/model/user_management_workspace_permission_assignment.py +++ b/gooddata-api-client/gooddata_api_client/model/user_management_workspace_permission_assignment.py @@ -62,6 +62,8 @@ class UserManagementWorkspacePermissionAssignment(ModelNormal): 'EXPORT': "EXPORT", 'EXPORT_TABULAR': "EXPORT_TABULAR", 'EXPORT_PDF': "EXPORT_PDF", + 'CREATE_AUTOMATION': "CREATE_AUTOMATION", + 'CREATE_FILTER_VIEW': "CREATE_FILTER_VIEW", 'VIEW': "VIEW", }, ('permissions',): { @@ -70,6 +72,8 @@ class UserManagementWorkspacePermissionAssignment(ModelNormal): 'EXPORT': "EXPORT", 'EXPORT_TABULAR': "EXPORT_TABULAR", 'EXPORT_PDF': "EXPORT_PDF", + 'CREATE_AUTOMATION': "CREATE_AUTOMATION", + 'CREATE_FILTER_VIEW': "CREATE_FILTER_VIEW", 'VIEW': "VIEW", }, } diff --git a/gooddata-api-client/gooddata_api_client/model/value.py b/gooddata-api-client/gooddata_api_client/model/value.py new file mode 100644 index 000000000..b75fe031d --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/value.py @@ -0,0 +1,270 @@ +""" + OpenAPI definition + + No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501 + + The version of the OpenAPI document: v0 + Contact: support@gooddata.com + Generated by: https://openapi-generator.tech +""" + + +import re # noqa: F401 +import sys # noqa: F401 + +from gooddata_api_client.model_utils import ( # noqa: F401 + ApiTypeError, + ModelComposed, + ModelNormal, + ModelSimple, + cached_property, + change_keys_js_to_python, + convert_js_args_to_python_args, + date, + datetime, + file_type, + none_type, + validate_get_composed_info, + OpenApiModel +) +from gooddata_api_client.exceptions import ApiAttributeError + + + +class Value(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + additional_properties_type (tuple): A tuple of classes accepted + as additional properties values. + """ + + allowed_values = { + } + + validations = { + } + + @cached_property + def additional_properties_type(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + """ + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 + + _nullable = False + + @cached_property + def openapi_types(): + """ + This must be a method because a model may have properties that are + of type self, this must run after the class is loaded + + Returns + openapi_types (dict): The key is attribute name + and the value is attribute type. + """ + return { + 'value': (float,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'value': 'value', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, value, *args, **kwargs): # noqa: E501 + """Value - a model defined in OpenAPI + + Args: + value (float): Value of the alert threshold to compare the metric to. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + self = super(OpenApiModel, cls).__new__(cls) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.value = value + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + return self + + required_properties = set([ + '_data_store', + '_check_type', + '_spec_property_naming', + '_path_to_item', + '_configuration', + '_visited_composed_classes', + ]) + + @convert_js_args_to_python_args + def __init__(self, value, *args, **kwargs): # noqa: E501 + """Value - a model defined in OpenAPI + + Args: + value (float): Value of the alert threshold to compare the metric to. + + Keyword Args: + _check_type (bool): if True, values for parameters in openapi_types + will be type checked and a TypeError will be + raised if the wrong type is input. + Defaults to True + _path_to_item (tuple/list): This is a list of keys or values to + drill down to the model in received_data + when deserializing a response + _spec_property_naming (bool): True if the variable names in the input data + are serialized names, as specified in the OpenAPI document. + False if the variable names in the input data + are pythonic names, e.g. snake case (default) + _configuration (Configuration): the instance to use when + deserializing a file_type parameter. + If passed, type conversion is attempted + If omitted no type conversion is done. + _visited_composed_classes (tuple): This stores a tuple of + classes that we have traveled through so that + if we see that class again we will not use its + discriminator again. + When traveling through a discriminator, the + composed schema that is + is traveled through is added to this set. + For example if Animal has a discriminator + petType and we pass in "Dog", and the class Dog + allOf includes Animal, we move through Animal + once using the discriminator, and pick Dog. + Then in Dog, we will make an instance of the + Animal class but this time we won't travel + through its discriminator because we passed in + _visited_composed_classes = (Animal,) + """ + + _check_type = kwargs.pop('_check_type', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) + _path_to_item = kwargs.pop('_path_to_item', ()) + _configuration = kwargs.pop('_configuration', None) + _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) + + if args: + for arg in args: + if isinstance(arg, dict): + kwargs.update(arg) + else: + raise ApiTypeError( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( + args, + self.__class__.__name__, + ), + path_to_item=_path_to_item, + valid_classes=(self.__class__,), + ) + + self._data_store = {} + self._check_type = _check_type + self._spec_property_naming = _spec_property_naming + self._path_to_item = _path_to_item + self._configuration = _configuration + self._visited_composed_classes = _visited_composed_classes + (self.__class__,) + + self.value = value + for var_name, var_value in kwargs.items(): + if var_name not in self.attribute_map and \ + self._configuration is not None and \ + self._configuration.discard_unknown_keys and \ + self.additional_properties_type is None: + # discard variable. + continue + setattr(self, var_name, var_value) + if var_name in self.read_only_vars: + raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " + f"class with read only attributes.") diff --git a/gooddata-api-client/gooddata_api_client/model/webhook.py b/gooddata-api-client/gooddata_api_client/model/webhook.py index cec92e858..1f6193a61 100644 --- a/gooddata-api-client/gooddata_api_client/model/webhook.py +++ b/gooddata-api-client/gooddata_api_client/model/webhook.py @@ -30,8 +30,12 @@ from gooddata_api_client.exceptions import ApiAttributeError +def lazy_import(): + from gooddata_api_client.model.webhook_all_of import WebhookAllOf + globals()['WebhookAllOf'] = WebhookAllOf -class Webhook(ModelNormal): + +class Webhook(ModelComposed): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech @@ -56,18 +60,21 @@ class Webhook(ModelNormal): """ allowed_values = { + ('type',): { + 'WEBHOOK': "WEBHOOK", + }, } validations = { + ('token',): { + 'max_length': 10000, + }, ('url',): { 'max_length': 255, 'regex': { 'pattern': r'https?\:\/\/.*', # noqa: E501 }, }, - ('token',): { - 'max_length': 10000, - }, } @cached_property @@ -76,6 +83,7 @@ def additional_properties_type(): This must be a method because a model may have properties that are of type self, this must run after the class is loaded """ + lazy_import() return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 _nullable = False @@ -90,10 +98,12 @@ def openapi_types(): openapi_types (dict): The key is attribute name and the value is attribute type. """ + lazy_import() return { - 'url': (str,), # noqa: E501 - 'has_token': (bool,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'has_token': (bool, none_type,), # noqa: E501 'token': (str, none_type,), # noqa: E501 + 'url': (str,), # noqa: E501 } @cached_property @@ -102,25 +112,23 @@ def discriminator(): attribute_map = { - 'url': 'url', # noqa: E501 + 'type': 'type', # noqa: E501 'has_token': 'hasToken', # noqa: E501 'token': 'token', # noqa: E501 + 'url': 'url', # noqa: E501 } read_only_vars = { + 'has_token', # noqa: E501 } - _composed_schemas = {} - @classmethod @convert_js_args_to_python_args - def _from_openapi_data(cls, url, *args, **kwargs): # noqa: E501 + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 """Webhook - a model defined in OpenAPI - Args: - url (str): The webhook URL. - Keyword Args: + type (str): The destination type.. defaults to "WEBHOOK", must be one of ["WEBHOOK", ] # noqa: E501 _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be raised if the wrong type is input. @@ -151,12 +159,14 @@ def _from_openapi_data(cls, url, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - has_token (bool): [optional] # noqa: E501 + has_token (bool, none_type): Flag indicating if webhook has a token.. [optional] # noqa: E501 token (str, none_type): Bearer token for the webhook.. [optional] # noqa: E501 + url (str): The webhook URL.. [optional] # noqa: E501 """ + type = kwargs.get('type', "WEBHOOK") _check_type = kwargs.pop('_check_type', True) - _spec_property_naming = kwargs.pop('_spec_property_naming', True) + _spec_property_naming = kwargs.pop('_spec_property_naming', False) _path_to_item = kwargs.pop('_path_to_item', ()) _configuration = kwargs.pop('_configuration', None) _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) @@ -184,15 +194,29 @@ def _from_openapi_data(cls, url, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) - self.url = url + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + for var_name, var_value in kwargs.items(): - if var_name not in self.attribute_map and \ + if var_name in discarded_args and \ self._configuration is not None and \ self._configuration.discard_unknown_keys and \ - self.additional_properties_type is None: + self._additional_properties_model_instances: # discard variable. continue setattr(self, var_name, var_value) + return self required_properties = set([ @@ -202,16 +226,17 @@ def _from_openapi_data(cls, url, *args, **kwargs): # noqa: E501 '_path_to_item', '_configuration', '_visited_composed_classes', + '_composed_instances', + '_var_name_to_model_instances', + '_additional_properties_model_instances', ]) @convert_js_args_to_python_args - def __init__(self, url, *args, **kwargs): # noqa: E501 + def __init__(self, *args, **kwargs): # noqa: E501 """Webhook - a model defined in OpenAPI - Args: - url (str): The webhook URL. - Keyword Args: + type (str): The destination type.. defaults to "WEBHOOK", must be one of ["WEBHOOK", ] # noqa: E501 _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be raised if the wrong type is input. @@ -242,10 +267,12 @@ def __init__(self, url, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - has_token (bool): [optional] # noqa: E501 + has_token (bool, none_type): Flag indicating if webhook has a token.. [optional] # noqa: E501 token (str, none_type): Bearer token for the webhook.. [optional] # noqa: E501 + url (str): The webhook URL.. [optional] # noqa: E501 """ + type = kwargs.get('type', "WEBHOOK") _check_type = kwargs.pop('_check_type', True) _spec_property_naming = kwargs.pop('_spec_property_naming', False) _path_to_item = kwargs.pop('_path_to_item', ()) @@ -273,15 +300,48 @@ def __init__(self, url, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) - self.url = url + constant_args = { + '_check_type': _check_type, + '_path_to_item': _path_to_item, + '_spec_property_naming': _spec_property_naming, + '_configuration': _configuration, + '_visited_composed_classes': self._visited_composed_classes, + } + composed_info = validate_get_composed_info( + constant_args, kwargs, self) + self._composed_instances = composed_info[0] + self._var_name_to_model_instances = composed_info[1] + self._additional_properties_model_instances = composed_info[2] + discarded_args = composed_info[3] + for var_name, var_value in kwargs.items(): - if var_name not in self.attribute_map and \ + if var_name in discarded_args and \ self._configuration is not None and \ self._configuration.discard_unknown_keys and \ - self.additional_properties_type is None: + self._additional_properties_model_instances: # discard variable. continue setattr(self, var_name, var_value) if var_name in self.read_only_vars: raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " f"class with read only attributes.") + + @cached_property + def _composed_schemas(): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + lazy_import() + return { + 'anyOf': [ + ], + 'allOf': [ + WebhookAllOf, + ], + 'oneOf': [ + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_notification_channel_in_attributes_webhook.py b/gooddata-api-client/gooddata_api_client/model/webhook_all_of.py similarity index 91% rename from gooddata-api-client/gooddata_api_client/model/json_api_notification_channel_in_attributes_webhook.py rename to gooddata-api-client/gooddata_api_client/model/webhook_all_of.py index b9717ccda..709c6dcae 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_notification_channel_in_attributes_webhook.py +++ b/gooddata-api-client/gooddata_api_client/model/webhook_all_of.py @@ -31,7 +31,7 @@ -class JsonApiNotificationChannelInAttributesWebhook(ModelNormal): +class WebhookAllOf(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech @@ -56,18 +56,21 @@ class JsonApiNotificationChannelInAttributesWebhook(ModelNormal): """ allowed_values = { + ('type',): { + 'WEBHOOK': "WEBHOOK", + }, } validations = { + ('token',): { + 'max_length': 10000, + }, ('url',): { 'max_length': 255, 'regex': { 'pattern': r'https?\:\/\/.*', # noqa: E501 }, }, - ('token',): { - 'max_length': 10000, - }, } @cached_property @@ -91,9 +94,10 @@ def openapi_types(): and the value is attribute type. """ return { - 'url': (str,), # noqa: E501 - 'has_token': (bool,), # noqa: E501 + 'has_token': (bool, none_type,), # noqa: E501 'token': (str, none_type,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'url': (str,), # noqa: E501 } @cached_property @@ -102,23 +106,22 @@ def discriminator(): attribute_map = { - 'url': 'url', # noqa: E501 'has_token': 'hasToken', # noqa: E501 'token': 'token', # noqa: E501 + 'type': 'type', # noqa: E501 + 'url': 'url', # noqa: E501 } read_only_vars = { + 'has_token', # noqa: E501 } _composed_schemas = {} @classmethod @convert_js_args_to_python_args - def _from_openapi_data(cls, url, *args, **kwargs): # noqa: E501 - """JsonApiNotificationChannelInAttributesWebhook - a model defined in OpenAPI - - Args: - url (str): The webhook URL. + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """WebhookAllOf - a model defined in OpenAPI Keyword Args: _check_type (bool): if True, values for parameters in openapi_types @@ -151,8 +154,10 @@ def _from_openapi_data(cls, url, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - has_token (bool): [optional] # noqa: E501 + has_token (bool, none_type): Flag indicating if webhook has a token.. [optional] # noqa: E501 token (str, none_type): Bearer token for the webhook.. [optional] # noqa: E501 + type (str): The destination type.. [optional] if omitted the server will use the default value of "WEBHOOK" # noqa: E501 + url (str): The webhook URL.. [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -184,7 +189,6 @@ def _from_openapi_data(cls, url, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) - self.url = url for var_name, var_value in kwargs.items(): if var_name not in self.attribute_map and \ self._configuration is not None and \ @@ -205,11 +209,8 @@ def _from_openapi_data(cls, url, *args, **kwargs): # noqa: E501 ]) @convert_js_args_to_python_args - def __init__(self, url, *args, **kwargs): # noqa: E501 - """JsonApiNotificationChannelInAttributesWebhook - a model defined in OpenAPI - - Args: - url (str): The webhook URL. + def __init__(self, *args, **kwargs): # noqa: E501 + """WebhookAllOf - a model defined in OpenAPI Keyword Args: _check_type (bool): if True, values for parameters in openapi_types @@ -242,8 +243,10 @@ def __init__(self, url, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) - has_token (bool): [optional] # noqa: E501 + has_token (bool, none_type): Flag indicating if webhook has a token.. [optional] # noqa: E501 token (str, none_type): Bearer token for the webhook.. [optional] # noqa: E501 + type (str): The destination type.. [optional] if omitted the server will use the default value of "WEBHOOK" # noqa: E501 + url (str): The webhook URL.. [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -273,7 +276,6 @@ def __init__(self, url, *args, **kwargs): # noqa: E501 self._configuration = _configuration self._visited_composed_classes = _visited_composed_classes + (self.__class__,) - self.url = url for var_name, var_value in kwargs.items(): if var_name not in self.attribute_map and \ self._configuration is not None and \ diff --git a/gooddata-api-client/gooddata_api_client/model/workspace_permission_assignment.py b/gooddata-api-client/gooddata_api_client/model/workspace_permission_assignment.py index 2fcd1477b..f508b6ecc 100644 --- a/gooddata-api-client/gooddata_api_client/model/workspace_permission_assignment.py +++ b/gooddata-api-client/gooddata_api_client/model/workspace_permission_assignment.py @@ -66,6 +66,8 @@ class WorkspacePermissionAssignment(ModelNormal): 'EXPORT': "EXPORT", 'EXPORT_TABULAR': "EXPORT_TABULAR", 'EXPORT_PDF': "EXPORT_PDF", + 'CREATE_AUTOMATION': "CREATE_AUTOMATION", + 'CREATE_FILTER_VIEW': "CREATE_FILTER_VIEW", 'VIEW': "VIEW", }, ('permissions',): { @@ -74,6 +76,8 @@ class WorkspacePermissionAssignment(ModelNormal): 'EXPORT': "EXPORT", 'EXPORT_TABULAR': "EXPORT_TABULAR", 'EXPORT_PDF': "EXPORT_PDF", + 'CREATE_AUTOMATION': "CREATE_AUTOMATION", + 'CREATE_FILTER_VIEW': "CREATE_FILTER_VIEW", 'VIEW': "VIEW", }, } diff --git a/gooddata-api-client/gooddata_api_client/models/__init__.py b/gooddata-api-client/gooddata_api_client/models/__init__.py index 1886bc720..b11481c67 100644 --- a/gooddata-api-client/gooddata_api_client/models/__init__.py +++ b/gooddata-api-client/gooddata_api_client/models/__init__.py @@ -13,6 +13,7 @@ from gooddata_api_client.model.absolute_date_filter import AbsoluteDateFilter from gooddata_api_client.model.absolute_date_filter_absolute_date_filter import AbsoluteDateFilterAbsoluteDateFilter from gooddata_api_client.model.abstract_measure_value_filter import AbstractMeasureValueFilter +from gooddata_api_client.model.active_object_identification import ActiveObjectIdentification from gooddata_api_client.model.afm_execution import AfmExecution from gooddata_api_client.model.afm_execution_response import AfmExecutionResponse from gooddata_api_client.model.afm_identifier import AfmIdentifier @@ -31,9 +32,13 @@ from gooddata_api_client.model.afm_valid_descendants_response import AfmValidDescendantsResponse from gooddata_api_client.model.afm_valid_objects_query import AfmValidObjectsQuery from gooddata_api_client.model.afm_valid_objects_response import AfmValidObjectsResponse +from gooddata_api_client.model.alert_afm import AlertAfm +from gooddata_api_client.model.alert_condition import AlertCondition +from gooddata_api_client.model.alert_condition_operand import AlertConditionOperand from gooddata_api_client.model.anomaly_detection_request import AnomalyDetectionRequest from gooddata_api_client.model.anomaly_detection_result import AnomalyDetectionResult from gooddata_api_client.model.api_entitlement import ApiEntitlement +from gooddata_api_client.model.arithmetic_measure import ArithmeticMeasure from gooddata_api_client.model.arithmetic_measure_definition import ArithmeticMeasureDefinition from gooddata_api_client.model.arithmetic_measure_definition_arithmetic_measure import ArithmeticMeasureDefinitionArithmeticMeasure from gooddata_api_client.model.assignee_identifier import AssigneeIdentifier @@ -48,6 +53,11 @@ from gooddata_api_client.model.attribute_result_header import AttributeResultHeader from gooddata_api_client.model.automation_schedule import AutomationSchedule from gooddata_api_client.model.available_assignees import AvailableAssignees +from gooddata_api_client.model.chat_history_interaction import ChatHistoryInteraction +from gooddata_api_client.model.chat_history_request import ChatHistoryRequest +from gooddata_api_client.model.chat_history_result import ChatHistoryResult +from gooddata_api_client.model.chat_request import ChatRequest +from gooddata_api_client.model.chat_result import ChatResult from gooddata_api_client.model.clustering_request import ClusteringRequest from gooddata_api_client.model.clustering_result import ClusteringResult from gooddata_api_client.model.column_location import ColumnLocation @@ -57,8 +67,12 @@ from gooddata_api_client.model.column_statistics_request_from import ColumnStatisticsRequestFrom from gooddata_api_client.model.column_statistics_response import ColumnStatisticsResponse from gooddata_api_client.model.column_warning import ColumnWarning +from gooddata_api_client.model.comparison import Comparison from gooddata_api_client.model.comparison_measure_value_filter import ComparisonMeasureValueFilter from gooddata_api_client.model.comparison_measure_value_filter_comparison_measure_value_filter import ComparisonMeasureValueFilterComparisonMeasureValueFilter +from gooddata_api_client.model.comparison_wrapper import ComparisonWrapper +from gooddata_api_client.model.created_visualization import CreatedVisualization +from gooddata_api_client.model.created_visualizations import CreatedVisualizations from gooddata_api_client.model.custom_label import CustomLabel from gooddata_api_client.model.custom_metric import CustomMetric from gooddata_api_client.model.custom_override import CustomOverride @@ -112,7 +126,9 @@ from gooddata_api_client.model.declarative_metric import DeclarativeMetric from gooddata_api_client.model.declarative_model import DeclarativeModel from gooddata_api_client.model.declarative_notification_channel import DeclarativeNotificationChannel +from gooddata_api_client.model.declarative_notification_channel_destination import DeclarativeNotificationChannelDestination from gooddata_api_client.model.declarative_notification_channel_identifier import DeclarativeNotificationChannelIdentifier +from gooddata_api_client.model.declarative_notification_channels import DeclarativeNotificationChannels from gooddata_api_client.model.declarative_organization import DeclarativeOrganization from gooddata_api_client.model.declarative_organization_info import DeclarativeOrganizationInfo from gooddata_api_client.model.declarative_organization_permission import DeclarativeOrganizationPermission @@ -148,6 +164,8 @@ from gooddata_api_client.model.declarative_workspace_model import DeclarativeWorkspaceModel from gooddata_api_client.model.declarative_workspace_permissions import DeclarativeWorkspacePermissions from gooddata_api_client.model.declarative_workspaces import DeclarativeWorkspaces +from gooddata_api_client.model.default_smtp import DefaultSmtp +from gooddata_api_client.model.default_smtp_all_of import DefaultSmtpAllOf from gooddata_api_client.model.dependent_entities_graph import DependentEntitiesGraph from gooddata_api_client.model.dependent_entities_node import DependentEntitiesNode from gooddata_api_client.model.dependent_entities_request import DependentEntitiesRequest @@ -157,6 +175,7 @@ from gooddata_api_client.model.depends_on_date_filter import DependsOnDateFilter from gooddata_api_client.model.depends_on_date_filter_all_of import DependsOnDateFilterAllOf from gooddata_api_client.model.depends_on_item import DependsOnItem +from gooddata_api_client.model.dim_attribute import DimAttribute from gooddata_api_client.model.dimension import Dimension from gooddata_api_client.model.dimension_header import DimensionHeader from gooddata_api_client.model.element import Element @@ -180,6 +199,7 @@ from gooddata_api_client.model.filter_definition_for_simple_measure import FilterDefinitionForSimpleMeasure from gooddata_api_client.model.forecast_request import ForecastRequest from gooddata_api_client.model.forecast_result import ForecastResult +from gooddata_api_client.model.found_objects import FoundObjects from gooddata_api_client.model.frequency import Frequency from gooddata_api_client.model.frequency_bucket import FrequencyBucket from gooddata_api_client.model.frequency_properties import FrequencyProperties @@ -265,12 +285,15 @@ from gooddata_api_client.model.json_api_attribute_to_one_linkage import JsonApiAttributeToOneLinkage from gooddata_api_client.model.json_api_automation_in import JsonApiAutomationIn from gooddata_api_client.model.json_api_automation_in_attributes import JsonApiAutomationInAttributes +from gooddata_api_client.model.json_api_automation_in_attributes_alert import JsonApiAutomationInAttributesAlert from gooddata_api_client.model.json_api_automation_in_attributes_schedule import JsonApiAutomationInAttributesSchedule from gooddata_api_client.model.json_api_automation_in_document import JsonApiAutomationInDocument from gooddata_api_client.model.json_api_automation_in_relationships import JsonApiAutomationInRelationships +from gooddata_api_client.model.json_api_automation_in_relationships_analytical_dashboard import JsonApiAutomationInRelationshipsAnalyticalDashboard from gooddata_api_client.model.json_api_automation_in_relationships_export_definitions import JsonApiAutomationInRelationshipsExportDefinitions from gooddata_api_client.model.json_api_automation_in_relationships_notification_channel import JsonApiAutomationInRelationshipsNotificationChannel from gooddata_api_client.model.json_api_automation_in_relationships_recipients import JsonApiAutomationInRelationshipsRecipients +from gooddata_api_client.model.json_api_automation_linkage import JsonApiAutomationLinkage from gooddata_api_client.model.json_api_automation_out import JsonApiAutomationOut from gooddata_api_client.model.json_api_automation_out_attributes import JsonApiAutomationOutAttributes from gooddata_api_client.model.json_api_automation_out_document import JsonApiAutomationOutDocument @@ -280,6 +303,7 @@ from gooddata_api_client.model.json_api_automation_out_with_links import JsonApiAutomationOutWithLinks from gooddata_api_client.model.json_api_automation_patch import JsonApiAutomationPatch from gooddata_api_client.model.json_api_automation_patch_document import JsonApiAutomationPatchDocument +from gooddata_api_client.model.json_api_automation_to_one_linkage import JsonApiAutomationToOneLinkage from gooddata_api_client.model.json_api_color_palette_in import JsonApiColorPaletteIn from gooddata_api_client.model.json_api_color_palette_in_attributes import JsonApiColorPaletteInAttributes from gooddata_api_client.model.json_api_color_palette_in_document import JsonApiColorPaletteInDocument @@ -379,7 +403,6 @@ from gooddata_api_client.model.json_api_export_definition_in_attributes_request_payload import JsonApiExportDefinitionInAttributesRequestPayload from gooddata_api_client.model.json_api_export_definition_in_document import JsonApiExportDefinitionInDocument from gooddata_api_client.model.json_api_export_definition_in_relationships import JsonApiExportDefinitionInRelationships -from gooddata_api_client.model.json_api_export_definition_in_relationships_analytical_dashboard import JsonApiExportDefinitionInRelationshipsAnalyticalDashboard from gooddata_api_client.model.json_api_export_definition_in_relationships_visualization_object import JsonApiExportDefinitionInRelationshipsVisualizationObject from gooddata_api_client.model.json_api_export_definition_linkage import JsonApiExportDefinitionLinkage from gooddata_api_client.model.json_api_export_definition_out import JsonApiExportDefinitionOut @@ -388,6 +411,7 @@ from gooddata_api_client.model.json_api_export_definition_out_includes import JsonApiExportDefinitionOutIncludes from gooddata_api_client.model.json_api_export_definition_out_list import JsonApiExportDefinitionOutList from gooddata_api_client.model.json_api_export_definition_out_relationships import JsonApiExportDefinitionOutRelationships +from gooddata_api_client.model.json_api_export_definition_out_relationships_automation import JsonApiExportDefinitionOutRelationshipsAutomation from gooddata_api_client.model.json_api_export_definition_out_with_links import JsonApiExportDefinitionOutWithLinks from gooddata_api_client.model.json_api_export_definition_patch import JsonApiExportDefinitionPatch from gooddata_api_client.model.json_api_export_definition_patch_document import JsonApiExportDefinitionPatchDocument @@ -416,6 +440,30 @@ from gooddata_api_client.model.json_api_filter_context_post_optional_id import JsonApiFilterContextPostOptionalId from gooddata_api_client.model.json_api_filter_context_post_optional_id_document import JsonApiFilterContextPostOptionalIdDocument from gooddata_api_client.model.json_api_filter_context_to_many_linkage import JsonApiFilterContextToManyLinkage +from gooddata_api_client.model.json_api_filter_view_in import JsonApiFilterViewIn +from gooddata_api_client.model.json_api_filter_view_in_attributes import JsonApiFilterViewInAttributes +from gooddata_api_client.model.json_api_filter_view_in_document import JsonApiFilterViewInDocument +from gooddata_api_client.model.json_api_filter_view_in_relationships import JsonApiFilterViewInRelationships +from gooddata_api_client.model.json_api_filter_view_in_relationships_user import JsonApiFilterViewInRelationshipsUser +from gooddata_api_client.model.json_api_filter_view_out import JsonApiFilterViewOut +from gooddata_api_client.model.json_api_filter_view_out_document import JsonApiFilterViewOutDocument +from gooddata_api_client.model.json_api_filter_view_out_includes import JsonApiFilterViewOutIncludes +from gooddata_api_client.model.json_api_filter_view_out_list import JsonApiFilterViewOutList +from gooddata_api_client.model.json_api_filter_view_out_with_links import JsonApiFilterViewOutWithLinks +from gooddata_api_client.model.json_api_filter_view_patch import JsonApiFilterViewPatch +from gooddata_api_client.model.json_api_filter_view_patch_attributes import JsonApiFilterViewPatchAttributes +from gooddata_api_client.model.json_api_filter_view_patch_document import JsonApiFilterViewPatchDocument +from gooddata_api_client.model.json_api_identity_provider_in import JsonApiIdentityProviderIn +from gooddata_api_client.model.json_api_identity_provider_in_attributes import JsonApiIdentityProviderInAttributes +from gooddata_api_client.model.json_api_identity_provider_in_attributes_specification import JsonApiIdentityProviderInAttributesSpecification +from gooddata_api_client.model.json_api_identity_provider_in_document import JsonApiIdentityProviderInDocument +from gooddata_api_client.model.json_api_identity_provider_out import JsonApiIdentityProviderOut +from gooddata_api_client.model.json_api_identity_provider_out_document import JsonApiIdentityProviderOutDocument +from gooddata_api_client.model.json_api_identity_provider_out_list import JsonApiIdentityProviderOutList +from gooddata_api_client.model.json_api_identity_provider_out_with_links import JsonApiIdentityProviderOutWithLinks +from gooddata_api_client.model.json_api_identity_provider_patch import JsonApiIdentityProviderPatch +from gooddata_api_client.model.json_api_identity_provider_patch_attributes import JsonApiIdentityProviderPatchAttributes +from gooddata_api_client.model.json_api_identity_provider_patch_document import JsonApiIdentityProviderPatchDocument from gooddata_api_client.model.json_api_jwk_in import JsonApiJwkIn from gooddata_api_client.model.json_api_jwk_in_attributes import JsonApiJwkInAttributes from gooddata_api_client.model.json_api_jwk_in_attributes_content import JsonApiJwkInAttributesContent @@ -436,6 +484,17 @@ from gooddata_api_client.model.json_api_label_out_with_links import JsonApiLabelOutWithLinks from gooddata_api_client.model.json_api_label_to_many_linkage import JsonApiLabelToManyLinkage from gooddata_api_client.model.json_api_label_to_one_linkage import JsonApiLabelToOneLinkage +from gooddata_api_client.model.json_api_llm_endpoint_in import JsonApiLlmEndpointIn +from gooddata_api_client.model.json_api_llm_endpoint_in_attributes import JsonApiLlmEndpointInAttributes +from gooddata_api_client.model.json_api_llm_endpoint_in_document import JsonApiLlmEndpointInDocument +from gooddata_api_client.model.json_api_llm_endpoint_out import JsonApiLlmEndpointOut +from gooddata_api_client.model.json_api_llm_endpoint_out_attributes import JsonApiLlmEndpointOutAttributes +from gooddata_api_client.model.json_api_llm_endpoint_out_document import JsonApiLlmEndpointOutDocument +from gooddata_api_client.model.json_api_llm_endpoint_out_list import JsonApiLlmEndpointOutList +from gooddata_api_client.model.json_api_llm_endpoint_out_with_links import JsonApiLlmEndpointOutWithLinks +from gooddata_api_client.model.json_api_llm_endpoint_patch import JsonApiLlmEndpointPatch +from gooddata_api_client.model.json_api_llm_endpoint_patch_attributes import JsonApiLlmEndpointPatchAttributes +from gooddata_api_client.model.json_api_llm_endpoint_patch_document import JsonApiLlmEndpointPatchDocument from gooddata_api_client.model.json_api_metric_in import JsonApiMetricIn from gooddata_api_client.model.json_api_metric_in_attributes import JsonApiMetricInAttributes from gooddata_api_client.model.json_api_metric_in_attributes_content import JsonApiMetricInAttributesContent @@ -456,8 +515,7 @@ from gooddata_api_client.model.json_api_metric_to_many_linkage import JsonApiMetricToManyLinkage from gooddata_api_client.model.json_api_notification_channel_in import JsonApiNotificationChannelIn from gooddata_api_client.model.json_api_notification_channel_in_attributes import JsonApiNotificationChannelInAttributes -from gooddata_api_client.model.json_api_notification_channel_in_attributes_triggers_inner import JsonApiNotificationChannelInAttributesTriggersInner -from gooddata_api_client.model.json_api_notification_channel_in_attributes_webhook import JsonApiNotificationChannelInAttributesWebhook +from gooddata_api_client.model.json_api_notification_channel_in_attributes_destination import JsonApiNotificationChannelInAttributesDestination from gooddata_api_client.model.json_api_notification_channel_in_document import JsonApiNotificationChannelInDocument from gooddata_api_client.model.json_api_notification_channel_linkage import JsonApiNotificationChannelLinkage from gooddata_api_client.model.json_api_notification_channel_out import JsonApiNotificationChannelOut @@ -479,7 +537,6 @@ from gooddata_api_client.model.json_api_organization_out_includes import JsonApiOrganizationOutIncludes from gooddata_api_client.model.json_api_organization_out_meta import JsonApiOrganizationOutMeta from gooddata_api_client.model.json_api_organization_out_relationships import JsonApiOrganizationOutRelationships -from gooddata_api_client.model.json_api_organization_out_relationships_bootstrap_user import JsonApiOrganizationOutRelationshipsBootstrapUser from gooddata_api_client.model.json_api_organization_out_relationships_bootstrap_user_group import JsonApiOrganizationOutRelationshipsBootstrapUserGroup from gooddata_api_client.model.json_api_organization_patch import JsonApiOrganizationPatch from gooddata_api_client.model.json_api_organization_patch_document import JsonApiOrganizationPatchDocument @@ -631,6 +688,7 @@ from gooddata_api_client.model.label_identifier import LabelIdentifier from gooddata_api_client.model.list_links import ListLinks from gooddata_api_client.model.list_links_all_of import ListLinksAllOf +from gooddata_api_client.model.local_identifier import LocalIdentifier from gooddata_api_client.model.locale_request import LocaleRequest from gooddata_api_client.model.manage_dashboard_permissions_request_inner import ManageDashboardPermissionsRequestInner from gooddata_api_client.model.measure_definition import MeasureDefinition @@ -640,13 +698,15 @@ from gooddata_api_client.model.measure_item import MeasureItem from gooddata_api_client.model.measure_result_header import MeasureResultHeader from gooddata_api_client.model.measure_value_filter import MeasureValueFilter +from gooddata_api_client.model.metric import Metric from gooddata_api_client.model.negative_attribute_filter import NegativeAttributeFilter from gooddata_api_client.model.negative_attribute_filter_negative_attribute_filter import NegativeAttributeFilterNegativeAttributeFilter from gooddata_api_client.model.note import Note from gooddata_api_client.model.notes import Notes -from gooddata_api_client.model.notification_trigger import NotificationTrigger +from gooddata_api_client.model.notification_channel_destination import NotificationChannelDestination from gooddata_api_client.model.object_links import ObjectLinks from gooddata_api_client.model.object_links_container import ObjectLinksContainer +from gooddata_api_client.model.oidc_idp_specification import OidcIdpSpecification from gooddata_api_client.model.organization_permission_assignment import OrganizationPermissionAssignment from gooddata_api_client.model.page_metadata import PageMetadata from gooddata_api_client.model.paging import Paging @@ -657,7 +717,6 @@ from gooddata_api_client.model.pdm_sql import PdmSql from gooddata_api_client.model.permissions_assignment import PermissionsAssignment from gooddata_api_client.model.permissions_for_assignee import PermissionsForAssignee -from gooddata_api_client.model.permissions_for_assignee_all_of import PermissionsForAssigneeAllOf from gooddata_api_client.model.permissions_for_assignee_rule import PermissionsForAssigneeRule from gooddata_api_client.model.platform_usage import PlatformUsage from gooddata_api_client.model.platform_usage_request import PlatformUsageRequest @@ -670,14 +729,18 @@ from gooddata_api_client.model.pop_measure_definition import PopMeasureDefinition from gooddata_api_client.model.positive_attribute_filter import PositiveAttributeFilter from gooddata_api_client.model.positive_attribute_filter_positive_attribute_filter import PositiveAttributeFilterPositiveAttributeFilter +from gooddata_api_client.model.range import Range from gooddata_api_client.model.range_measure_value_filter import RangeMeasureValueFilter from gooddata_api_client.model.range_measure_value_filter_range_measure_value_filter import RangeMeasureValueFilterRangeMeasureValueFilter +from gooddata_api_client.model.range_wrapper import RangeWrapper from gooddata_api_client.model.ranking_filter import RankingFilter from gooddata_api_client.model.ranking_filter_ranking_filter import RankingFilterRankingFilter from gooddata_api_client.model.reference_identifier import ReferenceIdentifier from gooddata_api_client.model.reference_source_column import ReferenceSourceColumn +from gooddata_api_client.model.relative import Relative from gooddata_api_client.model.relative_date_filter import RelativeDateFilter from gooddata_api_client.model.relative_date_filter_relative_date_filter import RelativeDateFilterRelativeDateFilter +from gooddata_api_client.model.relative_wrapper import RelativeWrapper from gooddata_api_client.model.resolve_settings_request import ResolveSettingsRequest from gooddata_api_client.model.resolved_setting import ResolvedSetting from gooddata_api_client.model.rest_api_identifier import RestApiIdentifier @@ -685,8 +748,11 @@ from gooddata_api_client.model.result_dimension import ResultDimension from gooddata_api_client.model.result_dimension_header import ResultDimensionHeader from gooddata_api_client.model.result_spec import ResultSpec +from gooddata_api_client.model.route_request import RouteRequest +from gooddata_api_client.model.route_result import RouteResult from gooddata_api_client.model.rsa_specification import RsaSpecification from gooddata_api_client.model.rule_permission import RulePermission +from gooddata_api_client.model.saml_idp_specification import SamlIdpSpecification from gooddata_api_client.model.scan_request import ScanRequest from gooddata_api_client.model.scan_result_pdm import ScanResultPdm from gooddata_api_client.model.scan_sql_request import ScanSqlRequest @@ -700,6 +766,8 @@ from gooddata_api_client.model.simple_measure_definition_measure import SimpleMeasureDefinitionMeasure from gooddata_api_client.model.skeleton import Skeleton from gooddata_api_client.model.smart_function_response import SmartFunctionResponse +from gooddata_api_client.model.smtp import Smtp +from gooddata_api_client.model.smtp_all_of import SmtpAllOf from gooddata_api_client.model.sort_key import SortKey from gooddata_api_client.model.sort_key_attribute import SortKeyAttribute from gooddata_api_client.model.sort_key_attribute_attribute import SortKeyAttributeAttribute @@ -723,6 +791,7 @@ from gooddata_api_client.model.total_execution_result_header import TotalExecutionResultHeader from gooddata_api_client.model.total_result_header import TotalResultHeader from gooddata_api_client.model.user_assignee import UserAssignee +from gooddata_api_client.model.user_context import UserContext from gooddata_api_client.model.user_group_assignee import UserGroupAssignee from gooddata_api_client.model.user_group_identifier import UserGroupIdentifier from gooddata_api_client.model.user_group_permission import UserGroupPermission @@ -737,8 +806,10 @@ from gooddata_api_client.model.user_management_workspace_permission_assignment import UserManagementWorkspacePermissionAssignment from gooddata_api_client.model.user_permission import UserPermission from gooddata_api_client.model.validate_by_item import ValidateByItem +from gooddata_api_client.model.value import Value from gooddata_api_client.model.visual_export_request import VisualExportRequest from gooddata_api_client.model.webhook import Webhook +from gooddata_api_client.model.webhook_all_of import WebhookAllOf from gooddata_api_client.model.workspace_data_source import WorkspaceDataSource from gooddata_api_client.model.workspace_identifier import WorkspaceIdentifier from gooddata_api_client.model.workspace_permission_assignment import WorkspacePermissionAssignment diff --git a/schemas/gooddata-afm-client.json b/schemas/gooddata-afm-client.json index cbb2d7723..6f8eb8c86 100644 --- a/schemas/gooddata-afm-client.json +++ b/schemas/gooddata-afm-client.json @@ -89,6 +89,29 @@ ], "type": "object" }, + "ActiveObjectIdentification": { + "description": "Object, with which the user is actively working.", + "properties": { + "id": { + "description": "Object ID.", + "type": "string" + }, + "type": { + "description": "Object type, e.g. dashboard.", + "type": "string" + }, + "workspaceId": { + "description": "Workspace ID.", + "type": "string" + } + }, + "required": [ + "id", + "type", + "workspaceId" + ], + "type": "object" + }, "AfmExecution": { "properties": { "execution": { @@ -631,6 +654,173 @@ ], "type": "object" }, + "ChatHistoryInteraction": { + "description": "List of chat history interactions.", + "properties": { + "createdVisualizations": { + "$ref": "#/components/schemas/CreatedVisualizations" + }, + "foundObjects": { + "$ref": "#/components/schemas/FoundObjects" + }, + "interactionFinished": { + "description": "Has the interaction already finished? Can be used for polling when interaction is in progress.", + "type": "boolean" + }, + "interactionId": { + "description": "Chat History interaction ID. Unique ID for each interaction.", + "format": "int64", + "type": "integer" + }, + "question": { + "description": "User question", + "maxLength": 2000, + "type": "string" + }, + "routing": { + "$ref": "#/components/schemas/RouteResult" + }, + "textResponse": { + "description": "Text response for general questions.", + "type": "string" + }, + "threadId": { + "description": "Chat History thread ID. Backend persists chat history and returns ID for further requests.", + "type": "string" + } + }, + "required": [ + "interactionFinished", + "interactionId", + "question", + "routing", + "threadId" + ], + "type": "object" + }, + "ChatHistoryRequest": { + "properties": { + "chatHistoryInteractionId": { + "description": "Return chat history records only after this interaction ID. If empty, complete chat history is returned.", + "format": "int64", + "type": "integer" + }, + "chatHistoryThreadId": { + "description": "Chat History thread ID. Optional, backend can create it if not provided.", + "type": "string" + }, + "reset": { + "description": "User feedback.", + "type": "boolean" + }, + "userFeedback": { + "description": "User feedback.", + "enum": [ + "POSITIVE", + "NEGATIVE", + "NONE" + ], + "type": "string" + } + }, + "type": "object" + }, + "ChatHistoryResult": { + "properties": { + "interactions": { + "description": "List of chat history interactions.", + "items": { + "$ref": "#/components/schemas/ChatHistoryInteraction" + }, + "type": "array" + } + }, + "required": [ + "interactions" + ], + "type": "object" + }, + "ChatRequest": { + "properties": { + "chatHistoryThreadId": { + "description": "Chat History thread ID. Backend persists chat history and returns ID for further requests.", + "type": "string" + }, + "limitCreate": { + "default": 3, + "description": "Maximum number of created results.", + "format": "int32", + "type": "integer" + }, + "limitCreateContext": { + "default": 10, + "description": "Maximum number of relevant objects included into context for LLM (for each object type).", + "format": "int32", + "type": "integer" + }, + "limitSearch": { + "default": 5, + "description": "Maximum number of search results.", + "format": "int32", + "type": "integer" + }, + "question": { + "description": "User question", + "maxLength": 2000, + "type": "string" + }, + "relevantScoreThreshold": { + "default": 0.4, + "description": "Score, above which we return found objects. Below this score objects are not relevant.", + "format": "double", + "type": "number" + }, + "searchScoreThreshold": { + "default": 0.9, + "description": "Score, above which we return found object(s) and don't call LLM to create new objects.", + "format": "double", + "type": "number" + }, + "titleToDescriptorRatio": { + "default": 0.7, + "description": "Temporary for experiments. Ratio of title score to descriptor score.", + "format": "double", + "type": "number" + }, + "userContext": { + "$ref": "#/components/schemas/UserContext" + } + }, + "required": [ + "question" + ], + "type": "object" + }, + "ChatResult": { + "properties": { + "chatHistoryThreadId": { + "description": "Chat History thread ID. Backend persists chat history and returns ID for further requests.", + "type": "string" + }, + "createdVisualizations": { + "$ref": "#/components/schemas/CreatedVisualizations" + }, + "foundObjects": { + "$ref": "#/components/schemas/FoundObjects" + }, + "routing": { + "$ref": "#/components/schemas/RouteResult" + }, + "textResponse": { + "description": "Text response for general questions.", + "type": "string" + } + }, + "required": [ + "routing" + ], + "type": "object" + }, "ClusteringRequest": { "properties": { "numberOfClusters": { @@ -751,6 +941,77 @@ ], "type": "object" }, + "CreatedVisualization": { + "description": "List of created visualization objects", + "properties": { + "dimensionality": { + "description": "List of attributes representing the dimensionality of the new visualization", + "items": { + "$ref": "#/components/schemas/DimAttribute" + }, + "type": "array" + }, + "id": { + "description": "Proposed ID of the new visualization", + "example": "revenue_by_country", + "type": "string" + }, + "metrics": { + "description": "List of metrics to be used in the new visualization", + "items": { + "$ref": "#/components/schemas/Metric" + }, + "type": "array" + }, + "title": { + "description": "Proposed title of the new visualization", + "example": "Revenue by Country", + "type": "string" + }, + "visualizationType": { + "description": "Visualization type requested in question", + "enum": [ + "TABLE", + "HEADLINE", + "BAR", + "LINE", + "PIE", + "COLUMN" + ], + "example": "TABLE", + "type": "string" + } + }, + "required": [ + "dimensionality", + "id", + "metrics", + "title", + "visualizationType" + ], + "type": "object" + }, + "CreatedVisualizations": { + "description": "Visualization definitions created by AI.", + "properties": { + "objects": { + "description": "List of created visualization objects", + "items": { + "$ref": "#/components/schemas/CreatedVisualization" + }, + "type": "array" + }, + "reasoning": { + "description": "Reasoning from LLM. Description of how and why the answer was generated.", + "type": "string" + } + }, + "required": [ + "objects", + "reasoning" + ], + "type": "object" + }, "DataColumnLocator": { "description": "Mapping from dimension items (either 'localIdentifier' from 'AttributeItem', or \"measureGroup\") to their respective values. This effectively specifies the path (location) of the data column used for sorting. Therefore values for all dimension items must be specified.", "example": { @@ -868,6 +1129,29 @@ "nullable": true, "type": "object" }, + "DimAttribute": { + "description": "List of attributes representing the dimensionality of the new visualization", + "properties": { + "id": { + "description": "ID of the object", + "example": "country", + "type": "string" + }, + "type": { + "description": "Object type", + "enum": [ + "attribute" + ], + "example": "attribute", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, "Dimension": { "description": "Single dimension description.", "properties": { @@ -954,7 +1238,7 @@ "type": "number" }, "dependsOn": { - "description": "Return only items, whose are not filtered out by the parent filters.", + "description": "Return only items that are not filtered-out by the parent filters.", "items": { "oneOf": [ { @@ -1002,7 +1286,7 @@ "type": "string" }, "validateBy": { - "description": "Return only items, what are computable on metric.", + "description": "Return only items that are computable on metric.", "items": { "$ref": "#/components/schemas/ValidateByItem" }, @@ -1391,6 +1675,27 @@ ], "type": "object" }, + "FoundObjects": { + "description": "List of objects found by similarity search and post-processed by LLM.", + "properties": { + "objects": { + "description": "List of objects found with a similarity search.", + "items": { + "$ref": "#/components/schemas/SearchResultObject" + }, + "type": "array" + }, + "reasoning": { + "description": "Reasoning from LLM. Description of how and why the answer was generated.", + "type": "string" + } + }, + "required": [ + "objects", + "reasoning" + ], + "type": "object" + }, "HeaderGroup": { "description": "Contains the information specific for a group of headers. These groups correlate to attributes and metric groups.", "properties": { @@ -1670,6 +1975,43 @@ ], "type": "object" }, + "Metric": { + "description": "List of metrics to be used in the new visualization", + "properties": { + "aggFunction": { + "description": "Agg function. Empty if a stored metric is used.", + "enum": [ + "COUNT", + "SUM", + "MIN", + "MAX", + "AVG", + "MEDIAN" + ], + "type": "string" + }, + "id": { + "description": "ID of the object", + "example": "revenue", + "type": "string" + }, + "type": { + "description": "Object type", + "enum": [ + "metric", + "fact", + "attribute" + ], + "example": "metric", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, "NegativeAttributeFilter": { "description": "Filter able to limit element values by label and related selected negated elements.", "properties": { @@ -2095,6 +2437,45 @@ ], "type": "object" }, + "RouteRequest": { + "properties": { + "question": { + "description": "Route to supported use cases based on this input query.", + "maxLength": 1000, + "type": "string" + } + }, + "required": [ + "question" + ], + "type": "object" + }, + "RouteResult": { + "properties": { + "reasoning": { + "description": "Explanation why LLM picked this use case.", + "type": "string" + }, + "useCase": { + "description": "Use case where LLM routed based on question.", + "enum": [ + "SEARCH_ALL", + "SEARCH_VISUALIZATIONS", + "SEARCH_DASHBOARDS", + "CREATE_VISUALIZATION", + "EXTEND_VISUALIZATION", + "GENERAL", + "INVALID" + ], + "type": "string" + } + }, + "required": [ + "reasoning", + "useCase" + ], + "type": "object" + }, "SearchRelationshipObject": { "properties": { "sourceObjectId": { @@ -2175,8 +2556,15 @@ }, "question": { "description": "Keyword/sentence is input for search.", + "maxLength": 1000, "type": "string" }, + "relevantScoreThreshold": { + "default": 0.3, + "description": "Score, above which we return found objects. Below this score objects are not relevant.", + "format": "double", + "type": "number" + }, "titleToDescriptorRatio": { "default": 0.7, "description": "Temporary for experiments. Ratio of title score to descriptor score.", @@ -2214,6 +2602,7 @@ "properties": { "createdAt": { "description": "Timestamp when object was created.", + "format": "date-time", "type": "string" }, "description": { @@ -2226,6 +2615,7 @@ }, "modifiedAt": { "description": "Timestamp when object was last modified.", + "format": "date-time", "type": "string" }, "score": { @@ -2267,21 +2657,17 @@ "visualizationUrl": { "description": "If the object is visualization, this field defines the type of visualization.", "type": "string" + }, + "workspaceId": { + "description": "Workspace ID.", + "type": "string" } }, "required": [ - "createdAt", - "description", "id", - "modifiedAt", - "score", - "scoreDescriptor", - "scoreExactMatch", - "scoreTitle", - "tags", "title", "type", - "visualizationUrl" + "workspaceId" ], "type": "object" }, @@ -2547,6 +2933,18 @@ ], "type": "object" }, + "UserContext": { + "description": "User context, which can affect the behavior of the underlying AI features.", + "properties": { + "activeObject": { + "$ref": "#/components/schemas/ActiveObjectIdentification" + } + }, + "required": [ + "activeObject" + ], + "type": "object" + }, "ValidateByItem": { "nullable": true, "properties": { @@ -2574,6 +2972,141 @@ }, "openapi": "3.0.1", "paths": { + "/api/v1/actions/workspaces/{workspaceId}/ai/chat": { + "post": { + "description": "(BETA) Combines multiple use cases such as search, create visualizations, ...", + "operationId": "aiChat", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChatRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChatResult" + } + } + }, + "description": "OK" + } + }, + "summary": "(BETA) Chat with AI", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/ai/chatHistory": { + "post": { + "description": "(BETA) Post thread ID (and optionally interaction ID) to get full/partial chat history.", + "operationId": "aiChatHistory", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChatHistoryRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChatHistoryResult" + } + } + }, + "description": "OK" + } + }, + "summary": "(BETA) Get Chat History", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/ai/route": { + "post": { + "description": "(BETA) Uses similarity (e.g. cosine distance) to find most similar use cases.", + "operationId": "aiRoute", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RouteRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RouteResult" + } + } + }, + "description": "OK" + } + }, + "summary": "(BETA) Route to supported use cases based on this input query.", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, "/api/v1/actions/workspaces/{workspaceId}/ai/search": { "post": { "description": "(BETA) Uses similarity (e.g. cosine distance) search to find top X most similar metadata objects.", diff --git a/schemas/gooddata-api-client.json b/schemas/gooddata-api-client.json index eeb848fa3..239416a8e 100644 --- a/schemas/gooddata-api-client.json +++ b/schemas/gooddata-api-client.json @@ -134,6 +134,29 @@ ], "type": "object" }, + "ActiveObjectIdentification": { + "description": "Object, with which the user is actively working.", + "properties": { + "id": { + "description": "Object ID.", + "type": "string" + }, + "type": { + "description": "Object type, e.g. dashboard.", + "type": "string" + }, + "workspaceId": { + "description": "Workspace ID.", + "type": "string" + } + }, + "required": [ + "id", + "type", + "workspaceId" + ], + "type": "object" + }, "AfmExecution": { "properties": { "execution": { @@ -419,6 +442,58 @@ ], "type": "object" }, + "AlertAfm": { + "properties": { + "filters": { + "description": "Various filter types to filter execution result.", + "items": { + "$ref": "#/components/schemas/FilterDefinition" + }, + "type": "array" + }, + "measures": { + "description": "Metrics to be computed. One metric if the alert condition is evaluated to a scalar. Two metrics when they should be evaluated to each other.", + "items": { + "$ref": "#/components/schemas/MeasureItem" + }, + "maximum": 2, + "minimum": 1, + "type": "array" + } + }, + "required": [ + "filters", + "measures" + ], + "type": "object" + }, + "AlertCondition": { + "description": "Alert trigger condition.", + "oneOf": [ + { + "$ref": "#/components/schemas/ComparisonWrapper" + }, + { + "$ref": "#/components/schemas/RangeWrapper" + }, + { + "$ref": "#/components/schemas/RelativeWrapper" + } + ], + "type": "object" + }, + "AlertConditionOperand": { + "description": "Operand of the alert condition.", + "oneOf": [ + { + "$ref": "#/components/schemas/LocalIdentifier" + }, + { + "$ref": "#/components/schemas/Value" + } + ], + "type": "object" + }, "AnomalyDetectionRequest": { "properties": { "sensitivity": { @@ -491,6 +566,8 @@ "UnlimitedAutomationRecipients", "DailyScheduledActionCount", "UnlimitedDailyScheduledActions", + "DailyAlertActionCount", + "UnlimitedDailyAlertActions", "ScheduledActionMinimumRecurrenceMinutes", "FederatedIdentityManagement" ], @@ -505,6 +582,30 @@ ], "type": "object" }, + "ArithmeticMeasure": { + "properties": { + "left": { + "$ref": "#/components/schemas/LocalIdentifier" + }, + "operator": { + "description": "Arithmetic operator.\nDIFFERENCE - m₁−m₂ - the difference between two metrics.\nCHANGE - (m₁−m₂)÷m₂ - the relative difference between two metrics.\n", + "enum": [ + "DIFFERENCE", + "CHANGE" + ], + "type": "string" + }, + "right": { + "$ref": "#/components/schemas/LocalIdentifier" + } + }, + "required": [ + "left", + "operator", + "right" + ], + "type": "object" + }, "ArithmeticMeasureDefinition": { "description": "Metric representing arithmetics between metrics.", "properties": { @@ -764,6 +865,7 @@ }, "cronDescription": { "description": "Human-readable description of the cron expression.", + "readOnly": true, "type": "string" }, "firstRun": { @@ -807,6 +909,173 @@ ], "type": "object" }, + "ChatHistoryInteraction": { + "description": "List of chat history interactions.", + "properties": { + "createdVisualizations": { + "$ref": "#/components/schemas/CreatedVisualizations" + }, + "foundObjects": { + "$ref": "#/components/schemas/FoundObjects" + }, + "interactionFinished": { + "description": "Has the interaction already finished? Can be used for polling when interaction is in progress.", + "type": "boolean" + }, + "interactionId": { + "description": "Chat History interaction ID. Unique ID for each interaction.", + "format": "int64", + "type": "integer" + }, + "question": { + "description": "User question", + "maxLength": 2000, + "type": "string" + }, + "routing": { + "$ref": "#/components/schemas/RouteResult" + }, + "textResponse": { + "description": "Text response for general questions.", + "type": "string" + }, + "threadId": { + "description": "Chat History thread ID. Backend persists chat history and returns ID for further requests.", + "type": "string" + } + }, + "required": [ + "interactionFinished", + "interactionId", + "question", + "routing", + "threadId" + ], + "type": "object" + }, + "ChatHistoryRequest": { + "properties": { + "chatHistoryInteractionId": { + "description": "Return chat history records only after this interaction ID. If empty, complete chat history is returned.", + "format": "int64", + "type": "integer" + }, + "chatHistoryThreadId": { + "description": "Chat History thread ID. Optional, backend can create it if not provided.", + "type": "string" + }, + "reset": { + "description": "User feedback.", + "type": "boolean" + }, + "userFeedback": { + "description": "User feedback.", + "enum": [ + "POSITIVE", + "NEGATIVE", + "NONE" + ], + "type": "string" + } + }, + "type": "object" + }, + "ChatHistoryResult": { + "properties": { + "interactions": { + "description": "List of chat history interactions.", + "items": { + "$ref": "#/components/schemas/ChatHistoryInteraction" + }, + "type": "array" + } + }, + "required": [ + "interactions" + ], + "type": "object" + }, + "ChatRequest": { + "properties": { + "chatHistoryThreadId": { + "description": "Chat History thread ID. Backend persists chat history and returns ID for further requests.", + "type": "string" + }, + "limitCreate": { + "default": 3, + "description": "Maximum number of created results.", + "format": "int32", + "type": "integer" + }, + "limitCreateContext": { + "default": 10, + "description": "Maximum number of relevant objects included into context for LLM (for each object type).", + "format": "int32", + "type": "integer" + }, + "limitSearch": { + "default": 5, + "description": "Maximum number of search results.", + "format": "int32", + "type": "integer" + }, + "question": { + "description": "User question", + "maxLength": 2000, + "type": "string" + }, + "relevantScoreThreshold": { + "default": 0.4, + "description": "Score, above which we return found objects. Below this score objects are not relevant.", + "format": "double", + "type": "number" + }, + "searchScoreThreshold": { + "default": 0.9, + "description": "Score, above which we return found object(s) and don't call LLM to create new objects.", + "format": "double", + "type": "number" + }, + "titleToDescriptorRatio": { + "default": 0.7, + "description": "Temporary for experiments. Ratio of title score to descriptor score.", + "format": "double", + "type": "number" + }, + "userContext": { + "$ref": "#/components/schemas/UserContext" + } + }, + "required": [ + "question" + ], + "type": "object" + }, + "ChatResult": { + "properties": { + "chatHistoryThreadId": { + "description": "Chat History thread ID. Backend persists chat history and returns ID for further requests.", + "type": "string" + }, + "createdVisualizations": { + "$ref": "#/components/schemas/CreatedVisualizations" + }, + "foundObjects": { + "$ref": "#/components/schemas/FoundObjects" + }, + "routing": { + "$ref": "#/components/schemas/RouteResult" + }, + "textResponse": { + "description": "Text response for general questions.", + "type": "string" + } + }, + "required": [ + "routing" + ], + "type": "object" + }, "ClusteringRequest": { "properties": { "numberOfClusters": { @@ -1015,6 +1284,33 @@ ], "type": "object" }, + "Comparison": { + "properties": { + "left": { + "$ref": "#/components/schemas/LocalIdentifier" + }, + "operator": { + "enum": [ + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO", + "LESS_THAN", + "LESS_THAN_OR_EQUAL_TO", + "EQUAL_TO", + "NOT_EQUAL_TO" + ], + "type": "string" + }, + "right": { + "$ref": "#/components/schemas/AlertConditionOperand" + } + }, + "required": [ + "left", + "operator", + "right" + ], + "type": "object" + }, "ComparisonMeasureValueFilter": { "description": "Filter the result by comparing specified metric to given constant value, using given comparison operator.", "properties": { @@ -1060,6 +1356,88 @@ ], "type": "object" }, + "ComparisonWrapper": { + "properties": { + "comparison": { + "$ref": "#/components/schemas/Comparison" + } + }, + "required": [ + "comparison" + ], + "type": "object" + }, + "CreatedVisualization": { + "description": "List of created visualization objects", + "properties": { + "dimensionality": { + "description": "List of attributes representing the dimensionality of the new visualization", + "items": { + "$ref": "#/components/schemas/DimAttribute" + }, + "type": "array" + }, + "id": { + "description": "Proposed ID of the new visualization", + "example": "revenue_by_country", + "type": "string" + }, + "metrics": { + "description": "List of metrics to be used in the new visualization", + "items": { + "$ref": "#/components/schemas/Metric" + }, + "type": "array" + }, + "title": { + "description": "Proposed title of the new visualization", + "example": "Revenue by Country", + "type": "string" + }, + "visualizationType": { + "description": "Visualization type requested in question", + "enum": [ + "TABLE", + "HEADLINE", + "BAR", + "LINE", + "PIE", + "COLUMN" + ], + "example": "TABLE", + "type": "string" + } + }, + "required": [ + "dimensionality", + "id", + "metrics", + "title", + "visualizationType" + ], + "type": "object" + }, + "CreatedVisualizations": { + "description": "Visualization definitions created by AI.", + "properties": { + "objects": { + "description": "List of created visualization objects", + "items": { + "$ref": "#/components/schemas/CreatedVisualization" + }, + "type": "array" + }, + "reasoning": { + "description": "Reasoning from LLM. Description of how and why the answer was generated.", + "type": "string" + } + }, + "required": [ + "objects", + "reasoning" + ], + "type": "object" + }, "CustomLabel": { "description": "Custom label object override.", "properties": { @@ -1144,6 +1522,14 @@ }, "DashboardPermissionsAssignment": { "description": "Desired levels of permissions for an assignee.", + "oneOf": [ + { + "$ref": "#/components/schemas/PermissionsForAssignee" + }, + { + "$ref": "#/components/schemas/PermissionsForAssigneeRule" + } + ], "properties": { "permissions": { "items": { @@ -1839,14 +2225,19 @@ "schedule": { "$ref": "#/components/schemas/AutomationSchedule" }, - "tags": { - "description": "A list of tags.", - "example": [ - "Revenues" + "state": { + "default": "ACTIVE", + "description": "Current state of the automation.", + "enum": [ + "ACTIVE", + "PAUSED" ], + "type": "string" + }, + "tags": { "items": { "description": "A list of tags.", - "example": "[\"Revenues\"]", + "example": "[\"Revenue\",\"Sales\"]", "type": "string" }, "type": "array", @@ -2821,12 +3212,44 @@ "DeclarativeNotificationChannel": { "description": "A declarative form of a particular notification channel.", "properties": { + "customDashboardUrl": { + "description": "Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}.", + "type": "string" + }, "description": { "description": "Description of a notification channel.", "example": "This is a channel", "maxLength": 10000, "type": "string" }, + "destination": { + "oneOf": [ + { + "$ref": "#/components/schemas/DefaultSmtp" + }, + { + "$ref": "#/components/schemas/Smtp" + }, + { + "$ref": "#/components/schemas/Webhook" + } + ] + }, + "destinationType": { + "enum": [ + "WEBHOOK", + "SMTP", + "DEFAULT_SMTP" + ], + "nullable": true, + "readOnly": true, + "type": "string" + }, + "enableMultipleRecipients": { + "default": true, + "description": "Whether notifications sent to the channel can have multiple recipients.", + "type": "boolean" + }, "id": { "description": "Identifier of a notification channel", "example": "notification-channel-1", @@ -2838,17 +3261,6 @@ "example": "channel", "maxLength": 255, "type": "string" - }, - "triggers": { - "description": "The triggers that are to be used to send notifications to the channel.", - "items": { - "$ref": "#/components/schemas/NotificationTrigger" - }, - "type": "array", - "uniqueItems": true - }, - "webhook": { - "$ref": "#/components/schemas/Webhook" } }, "required": [ @@ -2880,6 +3292,21 @@ ], "type": "object" }, + "DeclarativeNotificationChannels": { + "description": "Notification channels.", + "properties": { + "notificationChannels": { + "items": { + "$ref": "#/components/schemas/DeclarativeNotificationChannel" + }, + "type": "array" + } + }, + "required": [ + "notificationChannels" + ], + "type": "object" + }, "DeclarativeOrganization": { "description": "Complete definition of an organization in a declarative form.", "properties": { @@ -3245,7 +3672,8 @@ "OPERATOR_OVERRIDES", "TIMEZONE_VALIDATION_ENABLED", "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "ENABLE_FILE_ANALYTICS", + "ALERT" ], "example": "TIMEZONE", "type": "string" @@ -3269,6 +3697,8 @@ "EXPORT", "EXPORT_TABULAR", "EXPORT_PDF", + "CREATE_AUTOMATION", + "CREATE_FILTER_VIEW", "VIEW" ], "type": "string" @@ -4040,6 +4470,8 @@ "EXPORT", "EXPORT_TABULAR", "EXPORT_PDF", + "CREATE_AUTOMATION", + "CREATE_FILTER_VIEW", "VIEW" ], "type": "string" @@ -4103,6 +4535,38 @@ ], "type": "object" }, + "DefaultSmtp": { + "allOf": [ + { + "properties": { + "fromEmail": { + "default": "no-reply@gooddata.com", + "description": "E-mail address to send notifications from. Currently this does not have any effect. E-mail 'no-reply@gooddata.com' is used instead.", + "pattern": "(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)])", + "type": "string" + }, + "fromEmailName": { + "default": "GoodData", + "description": "An optional e-mail name to send notifications from. Currently this does not have any effect. E-mail from name 'GoodData' is used instead.", + "type": "string" + }, + "type": { + "description": "The destination type.", + "enum": [ + "DEFAULT_SMTP" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "description": "Default SMTP destination for notifications.", + "required": [ + "type" + ], + "type": "object" + }, "DependentEntitiesGraph": { "properties": { "edges": { @@ -4245,6 +4709,29 @@ "nullable": true, "type": "object" }, + "DimAttribute": { + "description": "List of attributes representing the dimensionality of the new visualization", + "properties": { + "id": { + "description": "ID of the object", + "example": "country", + "type": "string" + }, + "type": { + "description": "Object type", + "enum": [ + "attribute" + ], + "example": "attribute", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, "Dimension": { "description": "Single dimension description.", "properties": { @@ -4331,7 +4818,7 @@ "type": "number" }, "dependsOn": { - "description": "Return only items, whose are not filtered out by the parent filters.", + "description": "Return only items that are not filtered-out by the parent filters.", "items": { "oneOf": [ { @@ -4379,7 +4866,7 @@ "type": "string" }, "validateBy": { - "description": "Return only items, what are computable on metric.", + "description": "Return only items that are computable on metric.", "items": { "$ref": "#/components/schemas/ValidateByItem" }, @@ -4469,6 +4956,8 @@ "UnlimitedAutomationRecipients", "DailyScheduledActionCount", "UnlimitedDailyScheduledActions", + "DailyAlertActionCount", + "UnlimitedDailyAlertActions", "ScheduledActionMinimumRecurrenceMinutes", "FederatedIdentityManagement" ], @@ -4959,6 +5448,27 @@ ], "type": "object" }, + "FoundObjects": { + "description": "List of objects found by similarity search and post-processed by LLM.", + "properties": { + "objects": { + "description": "List of objects found with a similarity search.", + "items": { + "$ref": "#/components/schemas/SearchResultObject" + }, + "type": "array" + }, + "reasoning": { + "description": "Reasoning from LLM. Description of how and why the answer was generated.", + "type": "string" + } + }, + "required": [ + "objects", + "reasoning" + ], + "type": "object" + }, "Frequency": { "properties": { "buckets": { @@ -6703,6 +7213,30 @@ "properties": { "attributes": { "properties": { + "alert": { + "properties": { + "condition": { + "$ref": "#/components/schemas/AlertCondition" + }, + "execution": { + "$ref": "#/components/schemas/AlertAfm" + }, + "trigger": { + "default": "ALWAYS", + "description": "Trigger behavior for the alert.\nALWAYS - alert is triggered every time the condition is met.\nONCE - alert is triggered only once when the condition is met.\n", + "enum": [ + "ALWAYS", + "ONCE" + ], + "type": "string" + } + }, + "required": [ + "condition", + "execution" + ], + "type": "object" + }, "areRelationsValid": { "type": "boolean" }, @@ -6730,6 +7264,7 @@ }, "cronDescription": { "description": "Human-readable description of the cron expression.", + "readOnly": true, "type": "string" }, "firstRun": { @@ -6750,6 +7285,14 @@ ], "type": "object" }, + "state": { + "description": "Current state of the automation.", + "enum": [ + "ACTIVE", + "PAUSED" + ], + "type": "string" + }, "tags": { "items": { "type": "string" @@ -6771,6 +7314,17 @@ }, "relationships": { "properties": { + "analyticalDashboard": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "exportDefinitions": { "properties": { "data": { @@ -6833,11 +7387,54 @@ ], "type": "object" }, + "JsonApiAutomationLinkage": { + "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", + "properties": { + "id": { + "type": "string" + }, + "type": { + "enum": [ + "automation" + ], + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, "JsonApiAutomationOut": { "description": "JSON:API representation of automation entity.", "properties": { "attributes": { "properties": { + "alert": { + "properties": { + "condition": { + "$ref": "#/components/schemas/AlertCondition" + }, + "execution": { + "$ref": "#/components/schemas/AlertAfm" + }, + "trigger": { + "default": "ALWAYS", + "description": "Trigger behavior for the alert.\nALWAYS - alert is triggered every time the condition is met.\nONCE - alert is triggered only once when the condition is met.\n", + "enum": [ + "ALWAYS", + "ONCE" + ], + "type": "string" + } + }, + "required": [ + "condition", + "execution" + ], + "type": "object" + }, "areRelationsValid": { "type": "boolean" }, @@ -6873,6 +7470,7 @@ }, "cronDescription": { "description": "Human-readable description of the cron expression.", + "readOnly": true, "type": "string" }, "firstRun": { @@ -6893,6 +7491,14 @@ ], "type": "object" }, + "state": { + "description": "Current state of the automation.", + "enum": [ + "ACTIVE", + "PAUSED" + ], + "type": "string" + }, "tags": { "items": { "type": "string" @@ -6940,6 +7546,17 @@ }, "relationships": { "properties": { + "analyticalDashboard": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "createdBy": { "properties": { "data": { @@ -7040,6 +7657,9 @@ { "$ref": "#/components/schemas/JsonApiNotificationChannelOutWithLinks" }, + { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutWithLinks" + }, { "$ref": "#/components/schemas/JsonApiUserIdentifierOutWithLinks" }, @@ -7101,6 +7721,30 @@ "properties": { "attributes": { "properties": { + "alert": { + "properties": { + "condition": { + "$ref": "#/components/schemas/AlertCondition" + }, + "execution": { + "$ref": "#/components/schemas/AlertAfm" + }, + "trigger": { + "default": "ALWAYS", + "description": "Trigger behavior for the alert.\nALWAYS - alert is triggered every time the condition is met.\nONCE - alert is triggered only once when the condition is met.\n", + "enum": [ + "ALWAYS", + "ONCE" + ], + "type": "string" + } + }, + "required": [ + "condition", + "execution" + ], + "type": "object" + }, "areRelationsValid": { "type": "boolean" }, @@ -7128,6 +7772,7 @@ }, "cronDescription": { "description": "Human-readable description of the cron expression.", + "readOnly": true, "type": "string" }, "firstRun": { @@ -7148,6 +7793,14 @@ ], "type": "object" }, + "state": { + "description": "Current state of the automation.", + "enum": [ + "ACTIVE", + "PAUSED" + ], + "type": "string" + }, "tags": { "items": { "type": "string" @@ -7169,6 +7822,17 @@ }, "relationships": { "properties": { + "analyticalDashboard": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "exportDefinitions": { "properties": { "data": { @@ -7231,6 +7895,15 @@ ], "type": "object" }, + "JsonApiAutomationToOneLinkage": { + "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "nullable": true, + "oneOf": [ + { + "$ref": "#/components/schemas/JsonApiAutomationLinkage" + } + ] + }, "JsonApiColorPaletteIn": { "description": "JSON:API representation of colorPalette entity.", "properties": { @@ -9786,10 +10459,10 @@ ], "type": "object" }, - "createdBy": { + "automation": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" + "$ref": "#/components/schemas/JsonApiAutomationToOneLinkage" } }, "required": [ @@ -9797,7 +10470,7 @@ ], "type": "object" }, - "modifiedBy": { + "createdBy": { "properties": { "data": { "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" @@ -9808,164 +10481,178 @@ ], "type": "object" }, - "visualizationObject": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiVisualizationObjectToOneLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - } - }, - "type": "object" - }, - "type": { - "description": "Object type", - "enum": [ - "exportDefinition" - ], - "example": "exportDefinition", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "JsonApiExportDefinitionOutDocument": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiExportDefinitionOut" - }, - "included": { - "description": "Included resources", - "items": { - "$ref": "#/components/schemas/JsonApiExportDefinitionOutIncludes" - }, - "type": "array", - "uniqueItems": true - }, - "links": { - "$ref": "#/components/schemas/ObjectLinks" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "JsonApiExportDefinitionOutIncludes": { - "oneOf": [ - { - "$ref": "#/components/schemas/JsonApiVisualizationObjectOutWithLinks" - }, - { - "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutWithLinks" - }, - { - "$ref": "#/components/schemas/JsonApiUserIdentifierOutWithLinks" - } - ] - }, - "JsonApiExportDefinitionOutList": { - "description": "A JSON:API document with a list of resources", - "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/JsonApiExportDefinitionOutWithLinks" - }, - "type": "array", - "uniqueItems": true - }, - "included": { - "description": "Included resources", - "items": { - "$ref": "#/components/schemas/JsonApiExportDefinitionOutIncludes" - }, - "type": "array", - "uniqueItems": true - }, - "links": { - "$ref": "#/components/schemas/ListLinks" - }, - "meta": { - "properties": { - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - }, - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "JsonApiExportDefinitionOutWithLinks": { - "allOf": [ - { - "$ref": "#/components/schemas/JsonApiExportDefinitionOut" - }, - { - "$ref": "#/components/schemas/ObjectLinksContainer" - } - ] - }, - "JsonApiExportDefinitionPatch": { - "description": "JSON:API representation of patching exportDefinition entity.", - "properties": { - "attributes": { - "properties": { - "areRelationsValid": { - "type": "boolean" - }, - "description": { - "maxLength": 10000, - "type": "string" - }, - "requestPayload": { - "description": "JSON content to be used as export request payload for /export/tabular and /export/visual endpoints. ", - "oneOf": [ - { - "$ref": "#/components/schemas/VisualExportRequest" - }, - { - "$ref": "#/components/schemas/TabularExportRequest" - } - ], - "type": "object" - }, - "tags": { - "items": { - "type": "string" - }, - "type": "array" - }, - "title": { - "maxLength": 255, - "type": "string" - } - }, - "type": "object" - }, - "id": { - "description": "API identifier of an object", - "example": "id1", - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", - "type": "string" - }, - "relationships": { - "properties": { - "analyticalDashboard": { + "modifiedBy": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiAnalyticalDashboardToOneLinkage" + "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "visualizationObject": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiVisualizationObjectToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" + }, + "type": { + "description": "Object type", + "enum": [ + "exportDefinition" + ], + "example": "exportDefinition", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "JsonApiExportDefinitionOutDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiExportDefinitionOut" + }, + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiExportDefinitionOutIncludes" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ObjectLinks" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiExportDefinitionOutIncludes": { + "oneOf": [ + { + "$ref": "#/components/schemas/JsonApiVisualizationObjectOutWithLinks" + }, + { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutWithLinks" + }, + { + "$ref": "#/components/schemas/JsonApiAutomationOutWithLinks" + }, + { + "$ref": "#/components/schemas/JsonApiUserIdentifierOutWithLinks" + } + ] + }, + "JsonApiExportDefinitionOutList": { + "description": "A JSON:API document with a list of resources", + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/JsonApiExportDefinitionOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiExportDefinitionOutIncludes" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ListLinks" + }, + "meta": { + "properties": { + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + }, + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiExportDefinitionOutWithLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiExportDefinitionOut" + }, + { + "$ref": "#/components/schemas/ObjectLinksContainer" + } + ] + }, + "JsonApiExportDefinitionPatch": { + "description": "JSON:API representation of patching exportDefinition entity.", + "properties": { + "attributes": { + "properties": { + "areRelationsValid": { + "type": "boolean" + }, + "description": { + "maxLength": 10000, + "type": "string" + }, + "requestPayload": { + "description": "JSON content to be used as export request payload for /export/tabular and /export/visual endpoints. ", + "oneOf": [ + { + "$ref": "#/components/schemas/VisualExportRequest" + }, + { + "$ref": "#/components/schemas/TabularExportRequest" + } + ], + "type": "object" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "maxLength": 255, + "type": "string" + } + }, + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "relationships": { + "properties": { + "analyticalDashboard": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardToOneLinkage" } }, "required": [ @@ -10755,26 +11442,41 @@ }, "type": "array" }, - "JsonApiJwkIn": { - "description": "JSON:API representation of jwk entity.", + "JsonApiFilterViewIn": { + "description": "JSON:API representation of filterView entity.", "properties": { "attributes": { "properties": { + "areRelationsValid": { + "type": "boolean" + }, "content": { - "description": "Specification of the cryptographic key", - "example": { - "alg": "RS256", - "kyt": "RSA", - "use": "sig" - }, - "oneOf": [ - { - "$ref": "#/components/schemas/RsaSpecification" - } - ], + "description": "The respective filter context.", "type": "object" + }, + "description": { + "maxLength": 10000, + "type": "string" + }, + "isDefault": { + "description": "Indicator whether the filter view should by applied by default.", + "type": "boolean" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "maxLength": 255, + "type": "string" } }, + "required": [ + "content", + "title" + ], "type": "object" }, "id": { @@ -10783,25 +11485,53 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, + "relationships": { + "properties": { + "analyticalDashboard": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "user": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" + }, "type": { "description": "Object type", "enum": [ - "jwk" + "filterView" ], - "example": "jwk", + "example": "filterView", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiJwkInDocument": { + "JsonApiFilterViewInDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiJwkIn" + "$ref": "#/components/schemas/JsonApiFilterViewIn" } }, "required": [ @@ -10809,26 +11539,41 @@ ], "type": "object" }, - "JsonApiJwkOut": { - "description": "JSON:API representation of jwk entity.", + "JsonApiFilterViewOut": { + "description": "JSON:API representation of filterView entity.", "properties": { "attributes": { "properties": { + "areRelationsValid": { + "type": "boolean" + }, "content": { - "description": "Specification of the cryptographic key", - "example": { - "alg": "RS256", - "kyt": "RSA", - "use": "sig" - }, - "oneOf": [ - { - "$ref": "#/components/schemas/RsaSpecification" - } - ], + "description": "The respective filter context.", "type": "object" + }, + "description": { + "maxLength": 10000, + "type": "string" + }, + "isDefault": { + "description": "Indicator whether the filter view should by applied by default.", + "type": "boolean" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "maxLength": 255, + "type": "string" } }, + "required": [ + "content", + "title" + ], "type": "object" }, "id": { @@ -10837,25 +11582,61 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, + "relationships": { + "properties": { + "analyticalDashboard": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "user": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" + }, "type": { "description": "Object type", "enum": [ - "jwk" + "filterView" ], - "example": "jwk", + "example": "filterView", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiJwkOutDocument": { + "JsonApiFilterViewOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiJwkOut" + "$ref": "#/components/schemas/JsonApiFilterViewOut" + }, + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiFilterViewOutIncludes" + }, + "type": "array", + "uniqueItems": true }, "links": { "$ref": "#/components/schemas/ObjectLinks" @@ -10866,12 +11647,535 @@ ], "type": "object" }, - "JsonApiJwkOutList": { + "JsonApiFilterViewOutIncludes": { + "oneOf": [ + { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutWithLinks" + }, + { + "$ref": "#/components/schemas/JsonApiUserOutWithLinks" + } + ] + }, + "JsonApiFilterViewOutList": { "description": "A JSON:API document with a list of resources", "properties": { "data": { "items": { - "$ref": "#/components/schemas/JsonApiJwkOutWithLinks" + "$ref": "#/components/schemas/JsonApiFilterViewOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiFilterViewOutIncludes" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ListLinks" + }, + "meta": { + "properties": { + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + }, + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiFilterViewOutWithLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiFilterViewOut" + }, + { + "$ref": "#/components/schemas/ObjectLinksContainer" + } + ] + }, + "JsonApiFilterViewPatch": { + "description": "JSON:API representation of patching filterView entity.", + "properties": { + "attributes": { + "properties": { + "areRelationsValid": { + "type": "boolean" + }, + "content": { + "description": "The respective filter context.", + "type": "object" + }, + "description": { + "maxLength": 10000, + "type": "string" + }, + "isDefault": { + "description": "Indicator whether the filter view should by applied by default.", + "type": "boolean" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "maxLength": 255, + "type": "string" + } + }, + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "relationships": { + "properties": { + "analyticalDashboard": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "user": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" + }, + "type": { + "description": "Object type", + "enum": [ + "filterView" + ], + "example": "filterView", + "type": "string" + } + }, + "required": [ + "attributes", + "id", + "type" + ], + "type": "object" + }, + "JsonApiFilterViewPatchDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiFilterViewPatch" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiIdentityProviderIn": { + "description": "JSON:API representation of identityProvider entity.", + "properties": { + "attributes": { + "properties": { + "identifiers": { + "description": "List of identifiers for this IdP, where an identifier is a domain name. Users with email addresses belonging to these domains will be authenticated by this IdP. In multiple provider setup, this field is mandatory.", + "example": [ + "gooddata.com" + ], + "items": { + "type": "string" + }, + "type": "array" + }, + "specification": { + "description": "Specification of the identity provider.", + "oneOf": [ + { + "$ref": "#/components/schemas/SamlIdpSpecification" + }, + { + "$ref": "#/components/schemas/OidcIdpSpecification" + } + ], + "type": "object" + }, + "type": { + "description": "Type of the identity provider.", + "enum": [ + "SAML", + "OIDC" + ], + "example": "SAML", + "type": "string" + } + }, + "required": [ + "specification", + "type" + ], + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "description": "Object type", + "enum": [ + "identityProvider" + ], + "example": "identityProvider", + "type": "string" + } + }, + "required": [ + "attributes", + "id", + "type" + ], + "type": "object" + }, + "JsonApiIdentityProviderInDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiIdentityProviderIn" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiIdentityProviderOut": { + "description": "JSON:API representation of identityProvider entity.", + "properties": { + "attributes": { + "properties": { + "identifiers": { + "description": "List of identifiers for this IdP, where an identifier is a domain name. Users with email addresses belonging to these domains will be authenticated by this IdP. In multiple provider setup, this field is mandatory.", + "example": [ + "gooddata.com" + ], + "items": { + "type": "string" + }, + "type": "array" + }, + "specification": { + "description": "Specification of the identity provider.", + "oneOf": [ + { + "$ref": "#/components/schemas/SamlIdpSpecification" + }, + { + "$ref": "#/components/schemas/OidcIdpSpecification" + } + ], + "type": "object" + }, + "type": { + "description": "Type of the identity provider.", + "enum": [ + "SAML", + "OIDC" + ], + "example": "SAML", + "type": "string" + } + }, + "required": [ + "specification", + "type" + ], + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "description": "Object type", + "enum": [ + "identityProvider" + ], + "example": "identityProvider", + "type": "string" + } + }, + "required": [ + "attributes", + "id", + "type" + ], + "type": "object" + }, + "JsonApiIdentityProviderOutDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiIdentityProviderOut" + }, + "links": { + "$ref": "#/components/schemas/ObjectLinks" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiIdentityProviderOutList": { + "description": "A JSON:API document with a list of resources", + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/JsonApiIdentityProviderOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ListLinks" + }, + "meta": { + "properties": { + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + }, + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiIdentityProviderOutWithLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiIdentityProviderOut" + }, + { + "$ref": "#/components/schemas/ObjectLinksContainer" + } + ] + }, + "JsonApiIdentityProviderPatch": { + "description": "JSON:API representation of patching identityProvider entity.", + "properties": { + "attributes": { + "properties": { + "identifiers": { + "description": "List of identifiers for this IdP, where an identifier is a domain name. Users with email addresses belonging to these domains will be authenticated by this IdP. In multiple provider setup, this field is mandatory.", + "example": [ + "gooddata.com" + ], + "items": { + "type": "string" + }, + "type": "array" + }, + "specification": { + "description": "Specification of the identity provider.", + "oneOf": [ + { + "$ref": "#/components/schemas/SamlIdpSpecification" + }, + { + "$ref": "#/components/schemas/OidcIdpSpecification" + } + ], + "type": "object" + }, + "type": { + "description": "Type of the identity provider.", + "enum": [ + "SAML", + "OIDC" + ], + "example": "SAML", + "type": "string" + } + }, + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "description": "Object type", + "enum": [ + "identityProvider" + ], + "example": "identityProvider", + "type": "string" + } + }, + "required": [ + "attributes", + "id", + "type" + ], + "type": "object" + }, + "JsonApiIdentityProviderPatchDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiIdentityProviderPatch" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiJwkIn": { + "description": "JSON:API representation of jwk entity.", + "properties": { + "attributes": { + "properties": { + "content": { + "description": "Specification of the cryptographic key", + "example": { + "alg": "RS256", + "kyt": "RSA", + "use": "sig" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/RsaSpecification" + } + ], + "type": "object" + } + }, + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "description": "Object type", + "enum": [ + "jwk" + ], + "example": "jwk", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "JsonApiJwkInDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiJwkIn" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiJwkOut": { + "description": "JSON:API representation of jwk entity.", + "properties": { + "attributes": { + "properties": { + "content": { + "description": "Specification of the cryptographic key", + "example": { + "alg": "RS256", + "kyt": "RSA", + "use": "sig" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/RsaSpecification" + } + ], + "type": "object" + } + }, + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "description": "Object type", + "enum": [ + "jwk" + ], + "example": "jwk", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "JsonApiJwkOutDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiJwkOut" + }, + "links": { + "$ref": "#/components/schemas/ObjectLinks" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiJwkOutList": { + "description": "A JSON:API document with a list of resources", + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/JsonApiJwkOutWithLinks" }, "type": "array", "uniqueItems": true @@ -11177,6 +12481,299 @@ } ] }, + "JsonApiLlmEndpointIn": { + "description": "JSON:API representation of llmEndpoint entity.", + "properties": { + "attributes": { + "properties": { + "baseUrl": { + "description": "Custom LLM endpoint.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "description": { + "description": "User-facing description of the LLM Provider.", + "maxLength": 10000, + "nullable": true, + "type": "string" + }, + "llmModel": { + "description": "LLM Model. We provide a default model for each provider, but you can override it here.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "llmOrganization": { + "description": "Organization in LLM provider.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "provider": { + "description": "LLM Provider.", + "enum": [ + "OPENAI" + ], + "example": "OPENAI", + "type": "string" + }, + "title": { + "description": "User-facing title of the LLM Provider.", + "maxLength": 255, + "type": "string" + }, + "token": { + "description": "The token to use to connect to the LLM provider.", + "maxLength": 10000, + "type": "string" + } + }, + "required": [ + "provider", + "title", + "token" + ], + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "description": "Object type", + "enum": [ + "llmEndpoint" + ], + "example": "llmEndpoint", + "type": "string" + } + }, + "required": [ + "attributes", + "id", + "type" + ], + "type": "object" + }, + "JsonApiLlmEndpointInDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiLlmEndpointIn" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiLlmEndpointOut": { + "description": "JSON:API representation of llmEndpoint entity.", + "properties": { + "attributes": { + "properties": { + "baseUrl": { + "description": "Custom LLM endpoint.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "description": { + "description": "User-facing description of the LLM Provider.", + "maxLength": 10000, + "nullable": true, + "type": "string" + }, + "llmModel": { + "description": "LLM Model. We provide a default model for each provider, but you can override it here.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "llmOrganization": { + "description": "Organization in LLM provider.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "provider": { + "description": "LLM Provider.", + "enum": [ + "OPENAI" + ], + "example": "OPENAI", + "type": "string" + }, + "title": { + "description": "User-facing title of the LLM Provider.", + "maxLength": 255, + "type": "string" + } + }, + "required": [ + "provider", + "title" + ], + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "description": "Object type", + "enum": [ + "llmEndpoint" + ], + "example": "llmEndpoint", + "type": "string" + } + }, + "required": [ + "attributes", + "id", + "type" + ], + "type": "object" + }, + "JsonApiLlmEndpointOutDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiLlmEndpointOut" + }, + "links": { + "$ref": "#/components/schemas/ObjectLinks" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiLlmEndpointOutList": { + "description": "A JSON:API document with a list of resources", + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/JsonApiLlmEndpointOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ListLinks" + }, + "meta": { + "properties": { + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + }, + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiLlmEndpointOutWithLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiLlmEndpointOut" + }, + { + "$ref": "#/components/schemas/ObjectLinksContainer" + } + ] + }, + "JsonApiLlmEndpointPatch": { + "description": "JSON:API representation of patching llmEndpoint entity.", + "properties": { + "attributes": { + "properties": { + "baseUrl": { + "description": "Custom LLM endpoint.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "description": { + "description": "User-facing description of the LLM Provider.", + "maxLength": 10000, + "nullable": true, + "type": "string" + }, + "llmModel": { + "description": "LLM Model. We provide a default model for each provider, but you can override it here.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "llmOrganization": { + "description": "Organization in LLM provider.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "provider": { + "description": "LLM Provider.", + "enum": [ + "OPENAI" + ], + "example": "OPENAI", + "type": "string" + }, + "title": { + "description": "User-facing title of the LLM Provider.", + "maxLength": 255, + "type": "string" + }, + "token": { + "description": "The token to use to connect to the LLM provider.", + "maxLength": 10000, + "type": "string" + } + }, + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "description": "Object type", + "enum": [ + "llmEndpoint" + ], + "example": "llmEndpoint", + "type": "string" + } + }, + "required": [ + "attributes", + "id", + "type" + ], + "type": "object" + }, + "JsonApiLlmEndpointPatchDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiLlmEndpointPatch" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "JsonApiMetricIn": { "description": "JSON:API representation of metric entity.", "properties": { @@ -11706,62 +13303,50 @@ "properties": { "attributes": { "properties": { - "description": { - "maxLength": 10000, - "nullable": true, + "allowedRecipients": { + "description": "Allowed recipients of notifications from this channel.\nCREATOR - only the creator\nINTERNAL - all users within the organization\n", + "enum": [ + "CREATOR", + "INTERNAL" + ], "type": "string" }, - "name": { - "maxLength": 255, - "nullable": true, + "customDashboardUrl": { + "description": "Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}.", "type": "string" }, - "triggers": { - "description": "The triggers that are to be used to send notifications to the channel.", - "items": { - "properties": { - "metadata": { - "$ref": "#/components/schemas/JsonNode" - }, - "type": { - "description": "The notification trigger type.", - "enum": [ - "SCHEDULE", - "ALERT" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "type": "array" + "description": { + "maxLength": 10000, + "nullable": true, + "type": "string" }, - "webhook": { - "properties": { - "hasToken": { - "type": "boolean" + "destination": { + "description": "The destination where the notifications are to be sent.", + "oneOf": [ + { + "$ref": "#/components/schemas/DefaultSmtp" }, - "token": { - "description": "Bearer token for the webhook.", - "maxLength": 10000, - "nullable": true, - "type": "string" + { + "$ref": "#/components/schemas/Smtp" }, - "url": { - "description": "The webhook URL.", - "example": "https://example.com/webhook", - "maxLength": 255, - "pattern": "https?\\://.*", - "type": "string" + { + "$ref": "#/components/schemas/Webhook" } - }, - "required": [ - "url" + ] + }, + "destinationType": { + "enum": [ + "WEBHOOK", + "SMTP", + "DEFAULT_SMTP" ], - "type": "object" + "nullable": true, + "type": "string" + }, + "name": { + "maxLength": 255, + "nullable": true, + "type": "string" } }, "type": "object" @@ -11822,62 +13407,50 @@ "properties": { "attributes": { "properties": { - "description": { - "maxLength": 10000, - "nullable": true, + "allowedRecipients": { + "description": "Allowed recipients of notifications from this channel.\nCREATOR - only the creator\nINTERNAL - all users within the organization\n", + "enum": [ + "CREATOR", + "INTERNAL" + ], "type": "string" }, - "name": { - "maxLength": 255, - "nullable": true, + "customDashboardUrl": { + "description": "Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}.", "type": "string" }, - "triggers": { - "description": "The triggers that are to be used to send notifications to the channel.", - "items": { - "properties": { - "metadata": { - "$ref": "#/components/schemas/JsonNode" - }, - "type": { - "description": "The notification trigger type.", - "enum": [ - "SCHEDULE", - "ALERT" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "type": "array" + "description": { + "maxLength": 10000, + "nullable": true, + "type": "string" }, - "webhook": { - "properties": { - "hasToken": { - "type": "boolean" + "destination": { + "description": "The destination where the notifications are to be sent.", + "oneOf": [ + { + "$ref": "#/components/schemas/DefaultSmtp" }, - "token": { - "description": "Bearer token for the webhook.", - "maxLength": 10000, - "nullable": true, - "type": "string" + { + "$ref": "#/components/schemas/Smtp" }, - "url": { - "description": "The webhook URL.", - "example": "https://example.com/webhook", - "maxLength": 255, - "pattern": "https?\\://.*", - "type": "string" + { + "$ref": "#/components/schemas/Webhook" } - }, - "required": [ - "url" + ] + }, + "destinationType": { + "enum": [ + "WEBHOOK", + "SMTP", + "DEFAULT_SMTP" ], - "type": "object" + "nullable": true, + "type": "string" + }, + "name": { + "maxLength": 255, + "nullable": true, + "type": "string" } }, "type": "object" @@ -11959,62 +13532,50 @@ "properties": { "attributes": { "properties": { - "description": { - "maxLength": 10000, - "nullable": true, + "allowedRecipients": { + "description": "Allowed recipients of notifications from this channel.\nCREATOR - only the creator\nINTERNAL - all users within the organization\n", + "enum": [ + "CREATOR", + "INTERNAL" + ], "type": "string" }, - "name": { - "maxLength": 255, - "nullable": true, + "customDashboardUrl": { + "description": "Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}.", "type": "string" }, - "triggers": { - "description": "The triggers that are to be used to send notifications to the channel.", - "items": { - "properties": { - "metadata": { - "$ref": "#/components/schemas/JsonNode" - }, - "type": { - "description": "The notification trigger type.", - "enum": [ - "SCHEDULE", - "ALERT" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "type": "array" + "description": { + "maxLength": 10000, + "nullable": true, + "type": "string" }, - "webhook": { - "properties": { - "hasToken": { - "type": "boolean" + "destination": { + "description": "The destination where the notifications are to be sent.", + "oneOf": [ + { + "$ref": "#/components/schemas/DefaultSmtp" }, - "token": { - "description": "Bearer token for the webhook.", - "maxLength": 10000, - "nullable": true, - "type": "string" + { + "$ref": "#/components/schemas/Smtp" }, - "url": { - "description": "The webhook URL.", - "example": "https://example.com/webhook", - "maxLength": 255, - "pattern": "https?\\://.*", - "type": "string" + { + "$ref": "#/components/schemas/Webhook" } - }, - "required": [ - "url" + ] + }, + "destinationType": { + "enum": [ + "WEBHOOK", + "SMTP", + "DEFAULT_SMTP" ], - "type": "object" + "nullable": true, + "type": "string" + }, + "name": { + "maxLength": 255, + "nullable": true, + "type": "string" } }, "type": "object" @@ -12056,62 +13617,50 @@ "properties": { "attributes": { "properties": { - "description": { - "maxLength": 10000, - "nullable": true, + "allowedRecipients": { + "description": "Allowed recipients of notifications from this channel.\nCREATOR - only the creator\nINTERNAL - all users within the organization\n", + "enum": [ + "CREATOR", + "INTERNAL" + ], "type": "string" }, - "name": { - "maxLength": 255, - "nullable": true, + "customDashboardUrl": { + "description": "Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}.", "type": "string" }, - "triggers": { - "description": "The triggers that are to be used to send notifications to the channel.", - "items": { - "properties": { - "metadata": { - "$ref": "#/components/schemas/JsonNode" - }, - "type": { - "description": "The notification trigger type.", - "enum": [ - "SCHEDULE", - "ALERT" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "type": "array" + "description": { + "maxLength": 10000, + "nullable": true, + "type": "string" }, - "webhook": { - "properties": { - "hasToken": { - "type": "boolean" + "destination": { + "description": "The destination where the notifications are to be sent.", + "oneOf": [ + { + "$ref": "#/components/schemas/DefaultSmtp" }, - "token": { - "description": "Bearer token for the webhook.", - "maxLength": 10000, - "nullable": true, - "type": "string" + { + "$ref": "#/components/schemas/Smtp" }, - "url": { - "description": "The webhook URL.", - "example": "https://example.com/webhook", - "maxLength": 255, - "pattern": "https?\\://.*", - "type": "string" + { + "$ref": "#/components/schemas/Webhook" } - }, - "required": [ - "url" + ] + }, + "destinationType": { + "enum": [ + "WEBHOOK", + "SMTP", + "DEFAULT_SMTP" ], - "type": "object" + "nullable": true, + "type": "string" + }, + "name": { + "maxLength": 255, + "nullable": true, + "type": "string" } }, "type": "object" @@ -12555,7 +14104,8 @@ "OPERATOR_OVERRIDES", "TIMEZONE_VALIDATION_ENABLED", "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "ENABLE_FILE_ANALYTICS", + "ALERT" ], "type": "string" } @@ -12619,7 +14169,8 @@ "OPERATOR_OVERRIDES", "TIMEZONE_VALIDATION_ENABLED", "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "ENABLE_FILE_ANALYTICS", + "ALERT" ], "type": "string" } @@ -12723,7 +14274,8 @@ "OPERATOR_OVERRIDES", "TIMEZONE_VALIDATION_ENABLED", "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "ENABLE_FILE_ANALYTICS", + "ALERT" ], "type": "string" } @@ -14193,7 +15745,8 @@ "OPERATOR_OVERRIDES", "TIMEZONE_VALIDATION_ENABLED", "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "ENABLE_FILE_ANALYTICS", + "ALERT" ], "type": "string" } @@ -14257,7 +15810,8 @@ "OPERATOR_OVERRIDES", "TIMEZONE_VALIDATION_ENABLED", "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "ENABLE_FILE_ANALYTICS", + "ALERT" ], "type": "string" } @@ -15748,6 +17302,8 @@ "EXPORT", "EXPORT_TABULAR", "EXPORT_PDF", + "CREATE_AUTOMATION", + "CREATE_FILTER_VIEW", "VIEW" ], "type": "string" @@ -15996,7 +17552,8 @@ "OPERATOR_OVERRIDES", "TIMEZONE_VALIDATION_ENABLED", "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "ENABLE_FILE_ANALYTICS", + "ALERT" ], "type": "string" } @@ -16060,7 +17617,8 @@ "OPERATOR_OVERRIDES", "TIMEZONE_VALIDATION_ENABLED", "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "ENABLE_FILE_ANALYTICS", + "ALERT" ], "type": "string" } @@ -16190,7 +17748,8 @@ "OPERATOR_OVERRIDES", "TIMEZONE_VALIDATION_ENABLED", "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "ENABLE_FILE_ANALYTICS", + "ALERT" ], "type": "string" } @@ -16254,7 +17813,8 @@ "OPERATOR_OVERRIDES", "TIMEZONE_VALIDATION_ENABLED", "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "ENABLE_FILE_ANALYTICS", + "ALERT" ], "type": "string" } @@ -16462,6 +18022,34 @@ } ] }, + "LocalIdentifier": { + "properties": { + "format": { + "default": "#,##0.00", + "description": "Metric format.", + "example": "#,##0", + "maxLength": 2048, + "nullable": true, + "type": "string" + }, + "localIdentifier": { + "description": "Local identifier of the metric to be compared.", + "example": "m1", + "type": "string" + }, + "title": { + "description": "Metric title.", + "example": "Revenue", + "maxLength": 255, + "nullable": true, + "type": "string" + } + }, + "required": [ + "localIdentifier" + ], + "type": "object" + }, "LocaleRequest": { "properties": { "locale": { @@ -16582,6 +18170,43 @@ ], "type": "object" }, + "Metric": { + "description": "List of metrics to be used in the new visualization", + "properties": { + "aggFunction": { + "description": "Agg function. Empty if a stored metric is used.", + "enum": [ + "COUNT", + "SUM", + "MIN", + "MAX", + "AVG", + "MEDIAN" + ], + "type": "string" + }, + "id": { + "description": "ID of the object", + "example": "revenue", + "type": "string" + }, + "type": { + "description": "Object type", + "enum": [ + "metric", + "fact", + "attribute" + ], + "example": "metric", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, "NegativeAttributeFilter": { "description": "Filter able to limit element values by label and related selected negated elements.", "properties": { @@ -16674,17 +18299,20 @@ "namespace": "urn:oasis:names:tc:xliff:document:2.0" } }, - "NotificationTrigger": { - "properties": { - "metadata": { - "$ref": "#/components/schemas/JsonNode" + "NotificationChannelDestination": { + "oneOf": [ + { + "$ref": "#/components/schemas/Webhook" }, + { + "$ref": "#/components/schemas/Smtp" + }, + { + "$ref": "#/components/schemas/DefaultSmtp" + } + ], + "properties": { "type": { - "description": "The notification trigger type.", - "enum": [ - "SCHEDULE", - "ALERT" - ], "type": "string" } }, @@ -16714,6 +18342,44 @@ }, "type": "object" }, + "OidcIdpSpecification": { + "description": "Specification of an OIDC identity provider", + "properties": { + "oauthClientId": { + "maxLength": 255, + "type": "string" + }, + "oauthClientSecret": { + "maxLength": 255, + "type": "string", + "writeOnly": true + }, + "oauthIssuerId": { + "description": "Any string identifying the OIDC provider. This value is used as suffix for OAuth2 callback (redirect) URL. If not defined, the standard callback URL is used. This value is valid only for external OIDC providers, not for the internal DEX provider.", + "example": "myOidcProvider", + "maxLength": 255, + "type": "string" + }, + "oauthIssuerLocation": { + "maxLength": 255, + "type": "string" + }, + "oauthSubjectIdClaim": { + "description": "Any string identifying the claim in ID token, that should be used for user identification. The default value is 'sub'.", + "example": "oid", + "maxLength": 255, + "type": "string" + } + }, + "required": [ + "oauthClientId", + "oauthClientSecret", + "oauthIssuerId", + "oauthIssuerLocation", + "oauthSubjectIdClaim" + ], + "type": "object" + }, "OrganizationPermissionAssignment": { "description": "Organization permission assignments", "properties": { @@ -16934,44 +18600,26 @@ "type": "object" }, "PermissionsForAssignee": { - "allOf": [ - { - "$ref": "#/components/schemas/DashboardPermissionsAssignment" - }, - { - "properties": { - "assigneeIdentifier": { - "$ref": "#/components/schemas/AssigneeIdentifier" - } - }, - "type": "object" - } - ], "description": "Desired levels of permissions for an assignee identified by an identifier.", + "properties": { + "assigneeIdentifier": { + "$ref": "#/components/schemas/AssigneeIdentifier" + } + }, "required": [ - "assigneeIdentifier", - "permissions" + "assigneeIdentifier" ], "type": "object" }, "PermissionsForAssigneeRule": { - "allOf": [ - { - "$ref": "#/components/schemas/DashboardPermissionsAssignment" - }, - { - "properties": { - "assigneeRule": { - "$ref": "#/components/schemas/AssigneeRule" - } - }, - "type": "object" - } - ], "description": "Desired levels of permissions for a collection of assignees identified by a rule.", + "properties": { + "assigneeRule": { + "$ref": "#/components/schemas/AssigneeRule" + } + }, "required": [ - "assigneeRule", - "permissions" + "assigneeRule" ], "type": "object" }, @@ -17137,6 +18785,33 @@ ], "type": "object" }, + "Range": { + "properties": { + "from": { + "$ref": "#/components/schemas/Value" + }, + "measure": { + "$ref": "#/components/schemas/LocalIdentifier" + }, + "operator": { + "enum": [ + "BETWEEN", + "NOT_BETWEEN" + ], + "type": "string" + }, + "to": { + "$ref": "#/components/schemas/Value" + } + }, + "required": [ + "from", + "measure", + "operator", + "to" + ], + "type": "object" + }, "RangeMeasureValueFilter": { "description": "Filter the result by comparing specified metric to given range of values.", "properties": { @@ -17183,6 +18858,17 @@ ], "type": "object" }, + "RangeWrapper": { + "properties": { + "range": { + "$ref": "#/components/schemas/Range" + } + }, + "required": [ + "range" + ], + "type": "object" + }, "RankingFilter": { "description": "Filter the result on top/bottom N values according to given metric(s).", "properties": { @@ -17274,6 +18960,31 @@ ], "type": "object" }, + "Relative": { + "properties": { + "measure": { + "$ref": "#/components/schemas/ArithmeticMeasure" + }, + "operator": { + "description": "Relative condition operator.\nINCREASES_BY - the metric increases by the specified value.\nDECREASES_BY - the metric decreases by the specified value.\nCHANGES_BY - the metric increases or decreases by the specified value.\n", + "enum": [ + "INCREASES_BY", + "DECREASES_BY", + "CHANGES_BY" + ], + "type": "string" + }, + "threshold": { + "$ref": "#/components/schemas/Value" + } + }, + "required": [ + "measure", + "operator", + "threshold" + ], + "type": "object" + }, "RelativeDateFilter": { "description": "A date filter specifying a time interval that is relative to the current date. For example, last week, next month, and so on. Field dataset is representing qualifier of date dimension.", "properties": { @@ -17334,6 +19045,17 @@ ], "type": "object" }, + "RelativeWrapper": { + "properties": { + "relative": { + "$ref": "#/components/schemas/Relative" + } + }, + "required": [ + "relative" + ], + "type": "object" + }, "ResolveSettingsRequest": { "description": "A request containing setting IDs to resolve.", "properties": { @@ -17380,7 +19102,8 @@ "OPERATOR_OVERRIDES", "TIMEZONE_VALIDATION_ENABLED", "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "ENABLE_FILE_ANALYTICS", + "ALERT" ], "example": "TIMEZONE", "type": "string" @@ -17485,6 +19208,45 @@ ], "type": "object" }, + "RouteRequest": { + "properties": { + "question": { + "description": "Route to supported use cases based on this input query.", + "maxLength": 1000, + "type": "string" + } + }, + "required": [ + "question" + ], + "type": "object" + }, + "RouteResult": { + "properties": { + "reasoning": { + "description": "Explanation why LLM picked this use case.", + "type": "string" + }, + "useCase": { + "description": "Use case where LLM routed based on question.", + "enum": [ + "SEARCH_ALL", + "SEARCH_VISUALIZATIONS", + "SEARCH_DASHBOARDS", + "CREATE_VISUALIZATION", + "EXTEND_VISUALIZATION", + "GENERAL", + "INVALID" + ], + "type": "string" + } + }, + "required": [ + "reasoning", + "useCase" + ], + "type": "object" + }, "RsaSpecification": { "properties": { "alg": { @@ -17560,6 +19322,21 @@ ], "type": "object" }, + "SamlIdpSpecification": { + "description": "Specification of a SAML identity provider", + "properties": { + "metadata": { + "description": "Base64 encoded xml document with SAML metadata. This document is issued by your SAML provider. It includes the issuer's name, expiration information, and keys that can be used to validate the response from the identity provider.", + "maxLength": 15000, + "type": "string", + "writeOnly": true + } + }, + "required": [ + "metadata" + ], + "type": "object" + }, "ScanRequest": { "description": "A request containing all information critical to model scanning.", "properties": { @@ -17747,8 +19524,15 @@ }, "question": { "description": "Keyword/sentence is input for search.", + "maxLength": 1000, "type": "string" }, + "relevantScoreThreshold": { + "default": 0.3, + "description": "Score, above which we return found objects. Below this score objects are not relevant.", + "format": "double", + "type": "number" + }, "titleToDescriptorRatio": { "default": 0.7, "description": "Temporary for experiments. Ratio of title score to descriptor score.", @@ -17786,6 +19570,7 @@ "properties": { "createdAt": { "description": "Timestamp when object was created.", + "format": "date-time", "type": "string" }, "description": { @@ -17798,6 +19583,7 @@ }, "modifiedAt": { "description": "Timestamp when object was last modified.", + "format": "date-time", "type": "string" }, "score": { @@ -17839,21 +19625,17 @@ "visualizationUrl": { "description": "If the object is visualization, this field defines the type of visualization.", "type": "string" + }, + "workspaceId": { + "description": "Workspace ID.", + "type": "string" } }, "required": [ - "createdAt", - "description", "id", - "modifiedAt", - "score", - "scoreDescriptor", - "scoreExactMatch", - "scoreTitle", - "tags", "title", "type", - "visualizationUrl" + "workspaceId" ], "type": "object" }, @@ -17985,6 +19767,62 @@ ], "type": "object" }, + "Smtp": { + "allOf": [ + { + "properties": { + "fromEmail": { + "default": "no-reply@gooddata.com", + "description": "E-mail address to send notifications from.", + "pattern": "(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)])", + "type": "string" + }, + "fromEmailName": { + "default": "GoodData", + "description": "An optional e-mail name to send notifications from.", + "type": "string" + }, + "host": { + "description": "The SMTP server address.", + "type": "string" + }, + "password": { + "description": "The SMTP server password.", + "type": "string", + "writeOnly": true + }, + "port": { + "description": "The SMTP server port.", + "enum": [ + 25, + 465, + 587, + 2525 + ], + "format": "int32", + "type": "integer" + }, + "type": { + "description": "The destination type.", + "enum": [ + "SMTP" + ], + "type": "string" + }, + "username": { + "description": "The SMTP server username.", + "type": "string" + } + }, + "type": "object" + } + ], + "description": "Custom SMTP destination for notifications. The properties host, port, username, and password are required on create and update", + "required": [ + "type" + ], + "type": "object" + }, "SortKey": { "oneOf": [ { @@ -18524,6 +20362,18 @@ ], "type": "object" }, + "UserContext": { + "description": "User context, which can affect the behavior of the underlying AI features.", + "properties": { + "activeObject": { + "$ref": "#/components/schemas/ActiveObjectIdentification" + } + }, + "required": [ + "activeObject" + ], + "type": "object" + }, "UserGroupAssignee": { "description": "List of user groups", "properties": { @@ -18802,6 +20652,8 @@ "EXPORT", "EXPORT_TABULAR", "EXPORT_PDF", + "CREATE_AUTOMATION", + "CREATE_FILTER_VIEW", "VIEW" ], "type": "string" @@ -18823,6 +20675,8 @@ "EXPORT", "EXPORT_TABULAR", "EXPORT_PDF", + "CREATE_AUTOMATION", + "CREATE_FILTER_VIEW", "VIEW" ], "type": "string" @@ -18885,6 +20739,19 @@ ], "type": "object" }, + "Value": { + "properties": { + "value": { + "description": "Value of the alert threshold to compare the metric to.", + "example": 1000, + "type": "number" + } + }, + "required": [ + "value" + ], + "type": "object" + }, "VisualExportRequest": { "description": "Export request object describing the export properties and metadata for dashboard PDF exports.", "properties": { @@ -18911,26 +20778,45 @@ "type": "object" }, "Webhook": { - "properties": { - "hasToken": { - "type": "boolean" - }, - "token": { - "description": "Bearer token for the webhook.", - "maxLength": 10000, - "nullable": true, - "type": "string" - }, - "url": { - "description": "The webhook URL.", - "example": "https://example.com/webhook", - "maxLength": 255, - "pattern": "https?\\://.*", - "type": "string" + "allOf": [ + { + "properties": { + "hasToken": { + "description": "Flag indicating if webhook has a token.", + "maxLength": 10000, + "nullable": true, + "readOnly": true, + "type": "boolean" + }, + "token": { + "description": "Bearer token for the webhook.", + "example": "secret", + "maxLength": 10000, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "type": { + "description": "The destination type.", + "enum": [ + "WEBHOOK" + ], + "type": "string" + }, + "url": { + "description": "The webhook URL.", + "example": "https://webhook.site/something", + "maxLength": 255, + "pattern": "https?\\://.*", + "type": "string" + } + }, + "type": "object" } - }, + ], + "description": "Webhook destination for notifications. The property url is required on create and update.", "required": [ - "url" + "type" ], "type": "object" }, @@ -18996,6 +20882,8 @@ "EXPORT", "EXPORT_TABULAR", "EXPORT_PDF", + "CREATE_AUTOMATION", + "CREATE_FILTER_VIEW", "VIEW" ], "type": "string" @@ -19010,6 +20898,8 @@ "EXPORT", "EXPORT_TABULAR", "EXPORT_PDF", + "CREATE_AUTOMATION", + "CREATE_FILTER_VIEW", "VIEW" ], "type": "string" @@ -19749,6 +21639,21 @@ } } }, + "/api/v1/actions/organization/automations/unsubscribe": { + "delete": { + "operationId": "unsubscribeAllAutomations", + "responses": { + "204": { + "description": "No Content" + } + }, + "summary": "Unsubscribe from all automations in all workspaces", + "tags": [ + "Unsubscribe", + "actions" + ] + } + }, "/api/v1/actions/organization/managePermissions": { "post": { "description": "Manage Permissions for a Organization", @@ -19779,6 +21684,23 @@ ] } }, + "/api/v1/actions/organization/metadataSync": { + "post": { + "description": "(BETA) Temporary solution. Later relevant metadata actions will trigger sync in their scope only.", + "operationId": "metadataSyncOrganization", + "responses": { + "200": { + "description": "OK" + } + }, + "summary": "(BETA) Sync organization scope Metadata to other services", + "tags": [ + "AI", + "Metadata Sync", + "actions" + ] + } + }, "/api/v1/actions/resolveEntitlements": { "get": { "description": "Resolves values of available entitlements for the organization.", @@ -20374,6 +22296,141 @@ ] } }, + "/api/v1/actions/workspaces/{workspaceId}/ai/chat": { + "post": { + "description": "(BETA) Combines multiple use cases such as search, create visualizations, ...", + "operationId": "aiChat", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChatRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChatResult" + } + } + }, + "description": "OK" + } + }, + "summary": "(BETA) Chat with AI", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/ai/chatHistory": { + "post": { + "description": "(BETA) Post thread ID (and optionally interaction ID) to get full/partial chat history.", + "operationId": "aiChatHistory", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChatHistoryRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChatHistoryResult" + } + } + }, + "description": "OK" + } + }, + "summary": "(BETA) Get Chat History", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/ai/route": { + "post": { + "description": "(BETA) Uses similarity (e.g. cosine distance) to find most similar use cases.", + "operationId": "aiRoute", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RouteRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RouteResult" + } + } + }, + "description": "OK" + } + }, + "summary": "(BETA) Route to supported use cases based on this input query.", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, "/api/v1/actions/workspaces/{workspaceId}/ai/search": { "post": { "description": "(BETA) Uses similarity (e.g. cosine distance) search to find top X most similar metadata objects.", @@ -20553,6 +22610,64 @@ ] } }, + "/api/v1/actions/workspaces/{workspaceId}/automations/unsubscribe": { + "delete": { + "operationId": "unsubscribeWorkspaceAutomations", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "summary": "Unsubscribe from all automations in the workspace", + "tags": [ + "Unsubscribe", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/automations/{automationId}/unsubscribe": { + "delete": { + "operationId": "unsubscribeAutomation", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "automationId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "summary": "Unsubscribe from an automation", + "tags": [ + "Unsubscribe", + "actions" + ] + } + }, "/api/v1/actions/workspaces/{workspaceId}/checkEntityOverrides": { "post": { "description": "Finds entities with given ID in hierarchy (e.g. to check possible future conflicts).", @@ -22119,9 +24234,10 @@ "description": "OK" } }, - "summary": "(BETA) Sync Metadata to AI services", + "summary": "(BETA) Sync Metadata to other services", "tags": [ "AI", + "Metadata Sync", "actions" ] } @@ -24042,6 +26158,281 @@ ] } }, + "/api/v1/entities/identityProviders": { + "get": { + "operationId": "getAllEntities@IdentityProviders", + "parameters": [ + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/page" + }, + { + "$ref": "#/components/parameters/size" + }, + { + "$ref": "#/components/parameters/sort" + }, + { + "description": "Include Meta objects.", + "example": "metaInclude=page,all", + "explode": false, + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "description": "Included meta objects", + "items": { + "enum": [ + "page", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiIdentityProviderOutList" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Get all Identity Providers", + "tags": [ + "Identity Providers", + "entities", + "organization-model-controller" + ] + }, + "post": { + "operationId": "createEntity@IdentityProviders", + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiIdentityProviderInDocument" + } + } + }, + "required": true + }, + "responses": { + "201": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiIdentityProviderOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Post Identity Providers", + "tags": [ + "Identity Providers", + "entities", + "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } + } + }, + "/api/v1/entities/identityProviders/{id}": { + "delete": { + "operationId": "deleteEntity@IdentityProviders", + "parameters": [ + { + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "$ref": "#/components/responses/Deleted" + } + }, + "summary": "Delete Identity Provider", + "tags": [ + "Identity Providers", + "entities", + "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } + }, + "get": { + "operationId": "getEntity@IdentityProviders", + "parameters": [ + { + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiIdentityProviderOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Get Identity Provider", + "tags": [ + "Identity Providers", + "entities", + "organization-model-controller" + ] + }, + "patch": { + "operationId": "patchEntity@IdentityProviders", + "parameters": [ + { + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiIdentityProviderPatchDocument" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiIdentityProviderOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Patch Identity Provider", + "tags": [ + "Identity Providers", + "entities", + "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } + }, + "put": { + "operationId": "updateEntity@IdentityProviders", + "parameters": [ + { + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiIdentityProviderInDocument" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiIdentityProviderOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Put Identity Provider", + "tags": [ + "Identity Providers", + "entities", + "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } + } + }, "/api/v1/entities/jwks": { "get": { "description": "Returns all JSON web keys - used to verify JSON web tokens (Jwts)", @@ -24137,7 +26528,13 @@ "JWKS", "entities", "organization-model-controller" - ] + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } } }, "/api/v1/entities/jwks/{id}": { @@ -24168,7 +26565,13 @@ "JWKS", "entities", "organization-model-controller" - ] + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } }, "get": { "description": "Returns JSON web key - used to verify JSON web tokens (Jwts)", @@ -24250,7 +26653,13 @@ "JWKS", "entities", "organization-model-controller" - ] + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } }, "put": { "description": "Updates JSON web key - used to verify JSON web tokens (Jwts)", @@ -24296,6 +26705,262 @@ "JWKS", "entities", "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } + } + }, + "/api/v1/entities/llmEndpoints": { + "get": { + "operationId": "getAllEntities@LlmEndpoints", + "parameters": [ + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/page" + }, + { + "$ref": "#/components/parameters/size" + }, + { + "$ref": "#/components/parameters/sort" + }, + { + "description": "Include Meta objects.", + "example": "metaInclude=page,all", + "explode": false, + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "description": "Included meta objects", + "items": { + "enum": [ + "page", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmEndpointOutList" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Get all LLM endpoint entities", + "tags": [ + "LLM Endpoints", + "entities", + "organization-model-controller" + ] + }, + "post": { + "operationId": "createEntity@LlmEndpoints", + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmEndpointInDocument" + } + } + }, + "required": true + }, + "responses": { + "201": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmEndpointOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Post LLM endpoint entities", + "tags": [ + "LLM Endpoints", + "entities", + "organization-model-controller" + ] + } + }, + "/api/v1/entities/llmEndpoints/{id}": { + "delete": { + "operationId": "deleteEntity@LlmEndpoints", + "parameters": [ + { + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "$ref": "#/components/responses/Deleted" + } + }, + "tags": [ + "LLM Endpoints", + "entities", + "organization-model-controller" + ] + }, + "get": { + "operationId": "getEntity@LlmEndpoints", + "parameters": [ + { + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmEndpointOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Get LLM endpoint entity", + "tags": [ + "LLM Endpoints", + "entities", + "organization-model-controller" + ] + }, + "patch": { + "operationId": "patchEntity@LlmEndpoints", + "parameters": [ + { + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmEndpointPatchDocument" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmEndpointOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Patch LLM endpoint entity", + "tags": [ + "LLM Endpoints", + "entities", + "organization-model-controller" + ] + }, + "put": { + "operationId": "updateEntity@LlmEndpoints", + "parameters": [ + { + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmEndpointInDocument" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmEndpointOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "PUT LLM endpoint entity", + "tags": [ + "LLM Endpoints", + "entities", + "organization-model-controller" ] } }, @@ -24423,6 +27088,7 @@ "$ref": "#/components/responses/Deleted" } }, + "summary": "Delete Notification Channel entity", "tags": [ "Notification Channels", "entities", @@ -28321,7 +30987,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321", + "example": "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321", "in": "query", "name": "filter", "schema": { @@ -28330,7 +30996,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "example": "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", "explode": false, "in": "query", "name": "include", @@ -28339,10 +31005,12 @@ "items": { "enum": [ "notificationChannels", + "analyticalDashboards", "userIdentifiers", "exportDefinitions", "users", "notificationChannel", + "analyticalDashboard", "createdBy", "modifiedBy", "recipients", @@ -28434,7 +31102,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "example": "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", "explode": false, "in": "query", "name": "include", @@ -28443,10 +31111,12 @@ "items": { "enum": [ "notificationChannels", + "analyticalDashboards", "userIdentifiers", "exportDefinitions", "users", "notificationChannel", + "analyticalDashboard", "createdBy", "modifiedBy", "recipients", @@ -28512,7 +31182,7 @@ "x-gdc-security-info": { "description": "Contains minimal permission level required to manage this object type.", "permissions": [ - "ANALYZE" + "CREATE_AUTOMATION" ] } } @@ -28539,7 +31209,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321", + "example": "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321", "in": "query", "name": "filter", "schema": { @@ -28561,7 +31231,7 @@ "x-gdc-security-info": { "description": "Contains minimal permission level required to manage this object type.", "permissions": [ - "ANALYZE" + "CREATE_AUTOMATION" ] } }, @@ -28586,7 +31256,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321", + "example": "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321", "in": "query", "name": "filter", "schema": { @@ -28595,7 +31265,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "example": "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", "explode": false, "in": "query", "name": "include", @@ -28604,10 +31274,12 @@ "items": { "enum": [ "notificationChannels", + "analyticalDashboards", "userIdentifiers", "exportDefinitions", "users", "notificationChannel", + "analyticalDashboard", "createdBy", "modifiedBy", "recipients", @@ -28697,7 +31369,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321", + "example": "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321", "in": "query", "name": "filter", "schema": { @@ -28706,7 +31378,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "example": "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", "explode": false, "in": "query", "name": "include", @@ -28715,10 +31387,12 @@ "items": { "enum": [ "notificationChannels", + "analyticalDashboards", "userIdentifiers", "exportDefinitions", "users", "notificationChannel", + "analyticalDashboard", "createdBy", "modifiedBy", "recipients", @@ -28762,7 +31436,7 @@ "x-gdc-security-info": { "description": "Contains minimal permission level required to manage this object type.", "permissions": [ - "ANALYZE" + "CREATE_AUTOMATION" ] } }, @@ -28787,7 +31461,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321", + "example": "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321", "in": "query", "name": "filter", "schema": { @@ -28796,7 +31470,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", + "example": "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", "explode": false, "in": "query", "name": "include", @@ -28805,10 +31479,12 @@ "items": { "enum": [ "notificationChannels", + "analyticalDashboards", "userIdentifiers", "exportDefinitions", "users", "notificationChannel", + "analyticalDashboard", "createdBy", "modifiedBy", "recipients", @@ -28852,7 +31528,7 @@ "x-gdc-security-info": { "description": "Contains minimal permission level required to manage this object type.", "permissions": [ - "ANALYZE" + "CREATE_AUTOMATION" ] } } @@ -30071,7 +32747,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "example": "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", "explode": false, "in": "query", "name": "include", @@ -30081,9 +32757,11 @@ "enum": [ "visualizationObjects", "analyticalDashboards", + "automations", "userIdentifiers", "visualizationObject", "analyticalDashboard", + "automation", "createdBy", "modifiedBy", "ALL" @@ -30174,7 +32852,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "example": "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", "explode": false, "in": "query", "name": "include", @@ -30184,9 +32862,11 @@ "enum": [ "visualizationObjects", "analyticalDashboards", + "automations", "userIdentifiers", "visualizationObject", "analyticalDashboard", + "automation", "createdBy", "modifiedBy", "ALL" @@ -30334,7 +33014,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "example": "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", "explode": false, "in": "query", "name": "include", @@ -30344,9 +33024,11 @@ "enum": [ "visualizationObjects", "analyticalDashboards", + "automations", "userIdentifiers", "visualizationObject", "analyticalDashboard", + "automation", "createdBy", "modifiedBy", "ALL" @@ -30444,7 +33126,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "example": "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", "explode": false, "in": "query", "name": "include", @@ -30454,9 +33136,11 @@ "enum": [ "visualizationObjects", "analyticalDashboards", + "automations", "userIdentifiers", "visualizationObject", "analyticalDashboard", + "automation", "createdBy", "modifiedBy", "ALL" @@ -30533,7 +33217,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "example": "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", "explode": false, "in": "query", "name": "include", @@ -30543,9 +33227,11 @@ "enum": [ "visualizationObjects", "analyticalDashboards", + "automations", "userIdentifiers", "visualizationObject", "analyticalDashboard", + "automation", "createdBy", "modifiedBy", "ALL" @@ -30901,7 +33587,548 @@ }, { "description": "Include Meta objects.", - "example": "metaInclude=origin,page,all", + "example": "metaInclude=origin,page,all", + "explode": false, + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "description": "Included meta objects", + "items": { + "enum": [ + "origin", + "page", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiFilterContextOutList" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Get all Context Filters", + "tags": [ + "Context Filters", + "entities", + "workspace-object-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to view this object type.", + "permissions": [ + "VIEW" + ] + } + }, + "post": { + "operationId": "createEntity@FilterContexts", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=attributes,datasets,labels", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "attributes", + "datasets", + "labels", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Include Meta objects.", + "example": "metaInclude=origin,all", + "explode": false, + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "description": "Included meta objects", + "items": { + "enum": [ + "origin", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" + } + ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiFilterContextPostOptionalIdDocument" + } + } + }, + "required": true + }, + "responses": { + "201": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Post Context Filters", + "tags": [ + "Context Filters", + "entities", + "workspace-object-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "ANALYZE" + ] + } + } + }, + "/api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId}": { + "delete": { + "operationId": "deleteEntity@FilterContexts", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "objectId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "$ref": "#/components/responses/Deleted" + } + }, + "summary": "Delete a Context Filter", + "tags": [ + "Context Filters", + "entities", + "workspace-object-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "ANALYZE" + ] + } + }, + "get": { + "operationId": "getEntity@FilterContexts", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "objectId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=attributes,datasets,labels", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "attributes", + "datasets", + "labels", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "in": "header", + "name": "X-GDC-VALIDATE-RELATIONS", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "Include Meta objects.", + "example": "metaInclude=origin,all", + "explode": false, + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "description": "Included meta objects", + "items": { + "enum": [ + "origin", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Get a Context Filter", + "tags": [ + "Context Filters", + "entities", + "workspace-object-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to view this object type.", + "permissions": [ + "VIEW" + ] + } + }, + "patch": { + "operationId": "patchEntity@FilterContexts", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "objectId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=attributes,datasets,labels", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "attributes", + "datasets", + "labels", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + } + ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiFilterContextPatchDocument" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Patch a Context Filter", + "tags": [ + "Context Filters", + "entities", + "workspace-object-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "ANALYZE" + ] + } + }, + "put": { + "operationId": "updateEntity@FilterContexts", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "objectId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=attributes,datasets,labels", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "attributes", + "datasets", + "labels", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + } + ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiFilterContextInDocument" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Put a Context Filter", + "tags": [ + "Context Filters", + "entities", + "workspace-object-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "ANALYZE" + ] + } + } + }, + "/api/v1/entities/workspaces/{workspaceId}/filterViews": { + "get": { + "operationId": "getAllEntities@FilterViews", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "query", + "name": "origin", + "required": false, + "schema": { + "default": "ALL", + "description": "Defines scope of origin of objects. All by default.", + "enum": [ + "ALL", + "PARENTS", + "NATIVE" + ], + "type": "string" + } + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=analyticalDashboard,user", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "analyticalDashboards", + "users", + "analyticalDashboard", + "user", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "$ref": "#/components/parameters/page" + }, + { + "$ref": "#/components/parameters/size" + }, + { + "$ref": "#/components/parameters/sort" + }, + { + "in": "header", + "name": "X-GDC-VALIDATE-RELATIONS", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "Include Meta objects.", + "example": "metaInclude=page,all", "explode": false, "in": "query", "name": "metaInclude", @@ -30910,7 +34137,6 @@ "description": "Included meta objects", "items": { "enum": [ - "origin", "page", "all", "ALL" @@ -30928,16 +34154,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextOutList" + "$ref": "#/components/schemas/JsonApiFilterViewOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get all Context Filters", + "summary": "Get all Filter views", "tags": [ - "Context Filters", + "Filter Views", "entities", "workspace-object-controller" ], @@ -30949,7 +34175,7 @@ } }, "post": { - "operationId": "createEntity@FilterContexts", + "operationId": "createEntity@FilterViews", "parameters": [ { "in": "path", @@ -30961,7 +34187,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=attributes,datasets,labels", + "example": "include=analyticalDashboard,user", "explode": false, "in": "query", "name": "include", @@ -30969,9 +34195,10 @@ "schema": { "items": { "enum": [ - "attributes", - "datasets", - "labels", + "analyticalDashboards", + "users", + "analyticalDashboard", + "user", "ALL" ], "type": "string" @@ -30979,35 +34206,13 @@ "type": "array" }, "style": "form" - }, - { - "description": "Include Meta objects.", - "example": "metaInclude=origin,all", - "explode": false, - "in": "query", - "name": "metaInclude", - "required": false, - "schema": { - "description": "Included meta objects", - "items": { - "enum": [ - "origin", - "all", - "ALL" - ], - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "style": "form" } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextPostOptionalIdDocument" + "$ref": "#/components/schemas/JsonApiFilterViewInDocument" } } }, @@ -31018,30 +34223,30 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" + "$ref": "#/components/schemas/JsonApiFilterViewOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post Context Filters", + "summary": "Post Filter views", "tags": [ - "Context Filters", + "Filter Views", "entities", "workspace-object-controller" ], "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", + "description": "Contains minimal permission level required to manage Filter Views", "permissions": [ - "ANALYZE" + "CREATE_FILTER_VIEW" ] } } }, - "/api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId}": { + "/api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId}": { "delete": { - "operationId": "deleteEntity@FilterContexts", + "operationId": "deleteEntity@FilterViews", "parameters": [ { "in": "path", @@ -31061,7 +34266,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString", + "example": "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321", "in": "query", "name": "filter", "schema": { @@ -31074,21 +34279,21 @@ "$ref": "#/components/responses/Deleted" } }, - "summary": "Delete a Context Filter", + "summary": "Delete Filter view", "tags": [ - "Context Filters", + "Filter Views", "entities", "workspace-object-controller" ], "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", + "description": "Contains minimal permission level required to manage Filter Views", "permissions": [ - "ANALYZE" + "CREATE_FILTER_VIEW" ] } }, "get": { - "operationId": "getEntity@FilterContexts", + "operationId": "getEntity@FilterViews", "parameters": [ { "in": "path", @@ -31108,7 +34313,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString", + "example": "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321", "in": "query", "name": "filter", "schema": { @@ -31117,7 +34322,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=attributes,datasets,labels", + "example": "include=analyticalDashboard,user", "explode": false, "in": "query", "name": "include", @@ -31125,9 +34330,10 @@ "schema": { "items": { "enum": [ - "attributes", - "datasets", - "labels", + "analyticalDashboards", + "users", + "analyticalDashboard", + "user", "ALL" ], "type": "string" @@ -31144,28 +34350,6 @@ "default": false, "type": "boolean" } - }, - { - "description": "Include Meta objects.", - "example": "metaInclude=origin,all", - "explode": false, - "in": "query", - "name": "metaInclude", - "required": false, - "schema": { - "description": "Included meta objects", - "items": { - "enum": [ - "origin", - "all", - "ALL" - ], - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "style": "form" } ], "responses": { @@ -31173,16 +34357,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" + "$ref": "#/components/schemas/JsonApiFilterViewOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get a Context Filter", + "summary": "Get Filter view", "tags": [ - "Context Filters", + "Filter Views", "entities", "workspace-object-controller" ], @@ -31194,7 +34378,7 @@ } }, "patch": { - "operationId": "patchEntity@FilterContexts", + "operationId": "patchEntity@FilterViews", "parameters": [ { "in": "path", @@ -31214,7 +34398,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString", + "example": "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321", "in": "query", "name": "filter", "schema": { @@ -31223,7 +34407,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=attributes,datasets,labels", + "example": "include=analyticalDashboard,user", "explode": false, "in": "query", "name": "include", @@ -31231,9 +34415,10 @@ "schema": { "items": { "enum": [ - "attributes", - "datasets", - "labels", + "analyticalDashboards", + "users", + "analyticalDashboard", + "user", "ALL" ], "type": "string" @@ -31247,7 +34432,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextPatchDocument" + "$ref": "#/components/schemas/JsonApiFilterViewPatchDocument" } } }, @@ -31258,28 +34443,28 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" + "$ref": "#/components/schemas/JsonApiFilterViewOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch a Context Filter", + "summary": "Patch Filter view", "tags": [ - "Context Filters", + "Filter Views", "entities", "workspace-object-controller" ], "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", + "description": "Contains minimal permission level required to manage Filter Views", "permissions": [ - "ANALYZE" + "CREATE_FILTER_VIEW" ] } }, "put": { - "operationId": "updateEntity@FilterContexts", + "operationId": "updateEntity@FilterViews", "parameters": [ { "in": "path", @@ -31299,7 +34484,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString", + "example": "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321", "in": "query", "name": "filter", "schema": { @@ -31308,7 +34493,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=attributes,datasets,labels", + "example": "include=analyticalDashboard,user", "explode": false, "in": "query", "name": "include", @@ -31316,9 +34501,10 @@ "schema": { "items": { "enum": [ - "attributes", - "datasets", - "labels", + "analyticalDashboards", + "users", + "analyticalDashboard", + "user", "ALL" ], "type": "string" @@ -31332,7 +34518,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextInDocument" + "$ref": "#/components/schemas/JsonApiFilterViewInDocument" } } }, @@ -31343,23 +34529,23 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" + "$ref": "#/components/schemas/JsonApiFilterViewOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put a Context Filter", + "summary": "Put Filter views", "tags": [ - "Context Filters", + "Filter Views", "entities", "workspace-object-controller" ], "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", + "description": "Contains minimal permission level required to manage Filter Views", "permissions": [ - "ANALYZE" + "CREATE_FILTER_VIEW" ] } } @@ -34876,6 +38062,63 @@ } } }, + "/api/v1/layout/notificationChannels": { + "get": { + "description": "Gets complete layout of notification channels.", + "operationId": "getNotificationChannelsLayout", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeclarativeNotificationChannels" + } + } + }, + "description": "Retrieved layout of all notification channels." + } + }, + "summary": "Get all notification channels layout", + "tags": [ + "layout" + ], + "x-gdc-security-info": { + "description": "Permission required to get notification channels layout.", + "permissions": [ + "MANAGE" + ] + } + }, + "put": { + "description": "Sets notification channels in organization.", + "operationId": "setNotificationChannels", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeclarativeNotificationChannels" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "All notification channels set." + } + }, + "summary": "Set all notification channels", + "tags": [ + "layout" + ], + "x-gdc-security-info": { + "description": "Permission required to set data filters layout.", + "permissions": [ + "MANAGE" + ] + } + } + }, "/api/v1/layout/organization": { "get": { "description": "Retrieve complete layout of organization, workspaces, user-groups, etc.", @@ -35676,6 +38919,106 @@ } } }, + "/api/v1/layout/workspaces/{workspaceId}/automations": { + "get": { + "description": "Retrieve automations for the specific workspace", + "operationId": "getAutomations", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "query", + "name": "exclude", + "required": false, + "schema": { + "items": { + "description": "Defines properties which should not be included in the payload.", + "enum": [ + "ACTIVITY_INFO" + ], + "type": "string" + }, + "type": "array" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/DeclarativeAutomation" + }, + "type": "array" + } + } + }, + "description": "Retrieved automations." + } + }, + "summary": "Get automations", + "tags": [ + "layout", + "Automations" + ], + "x-gdc-security-info": { + "description": "Permissions to read the automations.", + "permissions": [ + "MANAGE" + ] + } + }, + "put": { + "description": "Set automations for the specific workspace.", + "operationId": "setAutomations", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/DeclarativeAutomation" + }, + "type": "array" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "Automations successfully set." + } + }, + "summary": "Set automations", + "tags": [ + "layout", + "Automations" + ], + "x-gdc-security-info": { + "description": "Permissions to modify the automations.", + "permissions": [ + "MANAGE" + ] + } + } + }, "/api/v1/layout/workspaces/{workspaceId}/logicalModel": { "get": { "description": "Retrieve current logical model of the workspace in declarative form.", diff --git a/schemas/gooddata-metadata-client.json b/schemas/gooddata-metadata-client.json index 9bbd4cb04..8c6f92288 100644 --- a/schemas/gooddata-metadata-client.json +++ b/schemas/gooddata-metadata-client.json @@ -46,6 +46,275 @@ } }, "schemas": { + "AbsoluteDateFilter": { + "description": "A datetime filter specifying exact from and to values.", + "properties": { + "absoluteDateFilter": { + "properties": { + "applyOnResult": { + "type": "boolean" + }, + "dataset": { + "$ref": "#/components/schemas/AfmObjectIdentifierDataset" + }, + "from": { + "example": "2020-07-01 18:23", + "pattern": "^\\d{4}-\\d{1,2}-\\d{1,2}( \\d{1,2}:\\d{1,2})?$", + "type": "string" + }, + "to": { + "example": "2020-07-16 23:59", + "pattern": "^\\d{4}-\\d{1,2}-\\d{1,2}( \\d{1,2}:\\d{1,2})?$", + "type": "string" + } + }, + "required": [ + "from", + "to", + "dataset" + ], + "type": "object" + } + }, + "required": [ + "absoluteDateFilter" + ], + "type": "object" + }, + "AbstractMeasureValueFilter": { + "oneOf": [ + { + "$ref": "#/components/schemas/ComparisonMeasureValueFilter" + }, + { + "$ref": "#/components/schemas/RangeMeasureValueFilter" + }, + { + "$ref": "#/components/schemas/RankingFilter" + } + ], + "type": "object" + }, + "AfmIdentifier": { + "oneOf": [ + { + "$ref": "#/components/schemas/AfmObjectIdentifier" + }, + { + "$ref": "#/components/schemas/AfmLocalIdentifier" + } + ], + "type": "object" + }, + "AfmLocalIdentifier": { + "properties": { + "localIdentifier": { + "example": "sampleAutoGenerated0123_ID", + "pattern": "^[.a-zA-Z0-9_-]+$", + "type": "string" + } + }, + "required": [ + "localIdentifier" + ], + "type": "object" + }, + "AfmObjectIdentifier": { + "description": "ObjectIdentifier with `identifier` wrapper. This serves to distinguish MD object identifiers in AFM request from local identifiers.", + "properties": { + "identifier": { + "properties": { + "id": { + "example": "sample_item.price", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "enum": [ + "analyticalDashboard", + "attribute", + "dashboardPlugin", + "dataset", + "fact", + "label", + "metric", + "prompt", + "visualizationObject", + "filterContext" + ], + "example": "fact", + "type": "string" + } + }, + "required": [ + "type", + "id" + ], + "type": "object" + } + }, + "required": [ + "identifier" + ], + "type": "object" + }, + "AfmObjectIdentifierAttribute": { + "properties": { + "identifier": { + "properties": { + "id": { + "example": "sample_item.price", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "enum": [ + "attribute" + ], + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + } + }, + "required": [ + "identifier" + ], + "type": "object" + }, + "AfmObjectIdentifierCore": { + "properties": { + "identifier": { + "properties": { + "id": { + "example": "sample_item.price", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "enum": [ + "attribute", + "label", + "fact", + "metric" + ], + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + } + }, + "required": [ + "identifier" + ], + "type": "object" + }, + "AfmObjectIdentifierDataset": { + "properties": { + "identifier": { + "properties": { + "id": { + "example": "sample_item.price", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "enum": [ + "dataset" + ], + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + } + }, + "required": [ + "identifier" + ], + "type": "object" + }, + "AfmObjectIdentifierLabel": { + "properties": { + "identifier": { + "properties": { + "id": { + "example": "sample_item.price", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "identifier" + ], + "type": "object" + }, + "AlertAfm": { + "properties": { + "filters": { + "description": "Various filter types to filter execution result.", + "items": { + "$ref": "#/components/schemas/FilterDefinition" + }, + "type": "array" + }, + "measures": { + "description": "Metrics to be computed. One metric if the alert condition is evaluated to a scalar. Two metrics when they should be evaluated to each other.", + "items": { + "$ref": "#/components/schemas/MeasureItem" + }, + "maximum": 2, + "minimum": 1, + "type": "array" + } + }, + "required": [ + "filters", + "measures" + ], + "type": "object" + }, + "AlertCondition": { + "description": "Alert trigger condition.", + "oneOf": [ + { + "$ref": "#/components/schemas/ComparisonWrapper" + }, + { + "$ref": "#/components/schemas/RangeWrapper" + }, + { + "$ref": "#/components/schemas/RelativeWrapper" + } + ], + "type": "object" + }, + "AlertConditionOperand": { + "description": "Operand of the alert condition.", + "oneOf": [ + { + "$ref": "#/components/schemas/LocalIdentifier" + }, + { + "$ref": "#/components/schemas/Value" + } + ], + "type": "object" + }, "ApiEntitlement": { "properties": { "expiry": { @@ -75,6 +344,8 @@ "UnlimitedAutomationRecipients", "DailyScheduledActionCount", "UnlimitedDailyScheduledActions", + "DailyAlertActionCount", + "UnlimitedDailyAlertActions", "ScheduledActionMinimumRecurrenceMinutes", "FederatedIdentityManagement" ], @@ -89,6 +360,67 @@ ], "type": "object" }, + "ArithmeticMeasure": { + "properties": { + "left": { + "$ref": "#/components/schemas/LocalIdentifier" + }, + "operator": { + "description": "Arithmetic operator.\nDIFFERENCE - m₁−m₂ - the difference between two metrics.\nCHANGE - (m₁−m₂)÷m₂ - the relative difference between two metrics.\n", + "enum": [ + "DIFFERENCE", + "CHANGE" + ], + "type": "string" + }, + "right": { + "$ref": "#/components/schemas/LocalIdentifier" + } + }, + "required": [ + "left", + "operator", + "right" + ], + "type": "object" + }, + "ArithmeticMeasureDefinition": { + "description": "Metric representing arithmetics between metrics.", + "properties": { + "arithmeticMeasure": { + "properties": { + "measureIdentifiers": { + "description": "List of metrics to apply arithmetic operation by chosen operator.", + "items": { + "$ref": "#/components/schemas/AfmLocalIdentifier" + }, + "type": "array" + }, + "operator": { + "description": "Arithmetic operator describing operation between metrics.", + "enum": [ + "SUM", + "DIFFERENCE", + "MULTIPLICATION", + "RATIO", + "CHANGE" + ], + "example": "SUM", + "type": "string" + } + }, + "required": [ + "measureIdentifiers", + "operator" + ], + "type": "object" + } + }, + "required": [ + "arithmeticMeasure" + ], + "type": "object" + }, "AssigneeIdentifier": { "description": "Identifier of a user or user-group.", "properties": { @@ -124,6 +456,40 @@ ], "type": "object" }, + "AttributeFilter": { + "description": "Abstract filter definition type attributes", + "oneOf": [ + { + "$ref": "#/components/schemas/NegativeAttributeFilter" + }, + { + "$ref": "#/components/schemas/PositiveAttributeFilter" + } + ], + "type": "object" + }, + "AttributeFilterElements": { + "description": "Filter on specific set of label values.", + "properties": { + "values": { + "description": "Set of label values.", + "example": [ + "value1", + "value2" + ], + "items": { + "nullable": true, + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "required": [ + "values" + ], + "type": "object" + }, "AutomationSchedule": { "properties": { "cron": { @@ -134,6 +500,7 @@ }, "cronDescription": { "description": "Human-readable description of the cron expression.", + "readOnly": true, "type": "string" }, "firstRun": { @@ -177,27 +544,110 @@ ], "type": "object" }, - "CustomLabel": { - "description": "Custom label object override.", + "Comparison": { "properties": { - "title": { - "description": "Override value.", + "left": { + "$ref": "#/components/schemas/LocalIdentifier" + }, + "operator": { + "enum": [ + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO", + "LESS_THAN", + "LESS_THAN_OR_EQUAL_TO", + "EQUAL_TO", + "NOT_EQUAL_TO" + ], "type": "string" + }, + "right": { + "$ref": "#/components/schemas/AlertConditionOperand" } }, "required": [ - "title" + "left", + "operator", + "right" ], "type": "object" }, - "CustomMetric": { - "description": "Custom metric object override.", + "ComparisonMeasureValueFilter": { + "description": "Filter the result by comparing specified metric to given constant value, using given comparison operator.", "properties": { - "format": { - "description": "Format override.", - "type": "string" - }, - "title": { + "comparisonMeasureValueFilter": { + "properties": { + "applyOnResult": { + "type": "boolean" + }, + "measure": { + "$ref": "#/components/schemas/AfmIdentifier" + }, + "operator": { + "enum": [ + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO", + "LESS_THAN", + "LESS_THAN_OR_EQUAL_TO", + "EQUAL_TO", + "NOT_EQUAL_TO" + ], + "example": "GREATER_THAN", + "type": "string" + }, + "treatNullValuesAs": { + "example": 0, + "type": "number" + }, + "value": { + "example": 1327, + "type": "number" + } + }, + "required": [ + "operator", + "value", + "measure" + ], + "type": "object" + } + }, + "required": [ + "comparisonMeasureValueFilter" + ], + "type": "object" + }, + "ComparisonWrapper": { + "properties": { + "comparison": { + "$ref": "#/components/schemas/Comparison" + } + }, + "required": [ + "comparison" + ], + "type": "object" + }, + "CustomLabel": { + "description": "Custom label object override.", + "properties": { + "title": { + "description": "Override value.", + "type": "string" + } + }, + "required": [ + "title" + ], + "type": "object" + }, + "CustomMetric": { + "description": "Custom metric object override.", + "properties": { + "format": { + "description": "Format override.", + "type": "string" + }, + "title": { "description": "Metric title override.", "type": "string" } @@ -261,6 +711,14 @@ }, "DashboardPermissionsAssignment": { "description": "Desired levels of permissions for an assignee.", + "oneOf": [ + { + "$ref": "#/components/schemas/PermissionsForAssignee" + }, + { + "$ref": "#/components/schemas/PermissionsForAssigneeRule" + } + ], "properties": { "permissions": { "items": { @@ -412,6 +870,18 @@ ], "type": "object" }, + "DateFilter": { + "description": "Abstract filter definition type for dates.", + "oneOf": [ + { + "$ref": "#/components/schemas/AbsoluteDateFilter" + }, + { + "$ref": "#/components/schemas/RelativeDateFilter" + } + ], + "type": "object" + }, "DeclarativeAnalyticalDashboard": { "properties": { "content": { @@ -865,14 +1335,19 @@ "schedule": { "$ref": "#/components/schemas/AutomationSchedule" }, - "tags": { - "description": "A list of tags.", - "example": [ - "Revenues" + "state": { + "default": "ACTIVE", + "description": "Current state of the automation.", + "enum": [ + "ACTIVE", + "PAUSED" ], + "type": "string" + }, + "tags": { "items": { "description": "A list of tags.", - "example": "[\"Revenues\"]", + "example": "[\"Revenue\",\"Sales\"]", "type": "string" }, "type": "array", @@ -1848,12 +2323,44 @@ "DeclarativeNotificationChannel": { "description": "A declarative form of a particular notification channel.", "properties": { + "customDashboardUrl": { + "description": "Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}.", + "type": "string" + }, "description": { "description": "Description of a notification channel.", "example": "This is a channel", "maxLength": 10000, "type": "string" }, + "destination": { + "oneOf": [ + { + "$ref": "#/components/schemas/DefaultSmtp" + }, + { + "$ref": "#/components/schemas/Smtp" + }, + { + "$ref": "#/components/schemas/Webhook" + } + ] + }, + "destinationType": { + "enum": [ + "WEBHOOK", + "SMTP", + "DEFAULT_SMTP" + ], + "nullable": true, + "readOnly": true, + "type": "string" + }, + "enableMultipleRecipients": { + "default": true, + "description": "Whether notifications sent to the channel can have multiple recipients.", + "type": "boolean" + }, "id": { "description": "Identifier of a notification channel", "example": "notification-channel-1", @@ -1865,17 +2372,6 @@ "example": "channel", "maxLength": 255, "type": "string" - }, - "triggers": { - "description": "The triggers that are to be used to send notifications to the channel.", - "items": { - "$ref": "#/components/schemas/NotificationTrigger" - }, - "type": "array", - "uniqueItems": true - }, - "webhook": { - "$ref": "#/components/schemas/Webhook" } }, "required": [ @@ -1907,6 +2403,21 @@ ], "type": "object" }, + "DeclarativeNotificationChannels": { + "description": "Notification channels.", + "properties": { + "notificationChannels": { + "items": { + "$ref": "#/components/schemas/DeclarativeNotificationChannel" + }, + "type": "array" + } + }, + "required": [ + "notificationChannels" + ], + "type": "object" + }, "DeclarativeOrganization": { "description": "Complete definition of an organization in a declarative form.", "properties": { @@ -2272,7 +2783,8 @@ "OPERATOR_OVERRIDES", "TIMEZONE_VALIDATION_ENABLED", "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "ENABLE_FILE_ANALYTICS", + "ALERT" ], "example": "TIMEZONE", "type": "string" @@ -2296,6 +2808,8 @@ "EXPORT", "EXPORT_TABULAR", "EXPORT_PDF", + "CREATE_AUTOMATION", + "CREATE_FILTER_VIEW", "VIEW" ], "type": "string" @@ -3051,6 +3565,8 @@ "EXPORT", "EXPORT_TABULAR", "EXPORT_PDF", + "CREATE_AUTOMATION", + "CREATE_FILTER_VIEW", "VIEW" ], "type": "string" @@ -3114,6 +3630,38 @@ ], "type": "object" }, + "DefaultSmtp": { + "allOf": [ + { + "properties": { + "fromEmail": { + "default": "no-reply@gooddata.com", + "description": "E-mail address to send notifications from. Currently this does not have any effect. E-mail 'no-reply@gooddata.com' is used instead.", + "pattern": "(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)])", + "type": "string" + }, + "fromEmailName": { + "default": "GoodData", + "description": "An optional e-mail name to send notifications from. Currently this does not have any effect. E-mail from name 'GoodData' is used instead.", + "type": "string" + }, + "type": { + "description": "The destination type.", + "enum": [ + "DEFAULT_SMTP" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "description": "Default SMTP destination for notifications.", + "required": [ + "type" + ], + "type": "object" + }, "DependentEntitiesGraph": { "properties": { "edges": { @@ -3223,6 +3771,8 @@ "UnlimitedAutomationRecipients", "DailyScheduledActionCount", "UnlimitedDailyScheduledActions", + "DailyAlertActionCount", + "UnlimitedDailyAlertActions", "ScheduledActionMinimumRecurrenceMinutes", "FederatedIdentityManagement" ], @@ -3377,6 +3927,48 @@ "namespace": "urn:oasis:names:tc:xliff:document:2.0" } }, + "FilterDefinition": { + "description": "Abstract filter definition type", + "oneOf": [ + { + "$ref": "#/components/schemas/InlineFilterDefinition" + }, + { + "$ref": "#/components/schemas/RankingFilter" + }, + { + "$ref": "#/components/schemas/ComparisonMeasureValueFilter" + }, + { + "$ref": "#/components/schemas/RangeMeasureValueFilter" + }, + { + "$ref": "#/components/schemas/AbsoluteDateFilter" + }, + { + "$ref": "#/components/schemas/RelativeDateFilter" + }, + { + "$ref": "#/components/schemas/NegativeAttributeFilter" + }, + { + "$ref": "#/components/schemas/PositiveAttributeFilter" + } + ], + "type": "object" + }, + "FilterDefinitionForSimpleMeasure": { + "description": "Abstract filter definition type for simple metric.", + "oneOf": [ + { + "$ref": "#/components/schemas/DateFilter" + }, + { + "$ref": "#/components/schemas/AttributeFilter" + } + ], + "type": "object" + }, "GenerateLdmRequest": { "description": "A request containing all information needed for generation of logical model.", "properties": { @@ -3607,6 +4199,49 @@ ], "type": "object" }, + "InlineFilterDefinition": { + "description": "Filter in form of direct MAQL query.", + "properties": { + "inline": { + "properties": { + "applyOnResult": { + "type": "boolean" + }, + "filter": { + "type": "string" + } + }, + "required": [ + "filter" + ], + "type": "object" + } + }, + "required": [ + "inline" + ], + "type": "object" + }, + "InlineMeasureDefinition": { + "description": "Metric defined by the raw MAQL query.", + "properties": { + "inline": { + "properties": { + "maql": { + "type": "string" + } + }, + "required": [ + "maql" + ], + "type": "object" + } + }, + "required": [ + "inline" + ], + "type": "object" + }, "JsonApiAnalyticalDashboardIn": { "description": "JSON:API representation of analyticalDashboard entity.", "properties": { @@ -4974,6 +5609,30 @@ "properties": { "attributes": { "properties": { + "alert": { + "properties": { + "condition": { + "$ref": "#/components/schemas/AlertCondition" + }, + "execution": { + "$ref": "#/components/schemas/AlertAfm" + }, + "trigger": { + "default": "ALWAYS", + "description": "Trigger behavior for the alert.\nALWAYS - alert is triggered every time the condition is met.\nONCE - alert is triggered only once when the condition is met.\n", + "enum": [ + "ALWAYS", + "ONCE" + ], + "type": "string" + } + }, + "required": [ + "condition", + "execution" + ], + "type": "object" + }, "areRelationsValid": { "type": "boolean" }, @@ -5001,6 +5660,7 @@ }, "cronDescription": { "description": "Human-readable description of the cron expression.", + "readOnly": true, "type": "string" }, "firstRun": { @@ -5021,6 +5681,14 @@ ], "type": "object" }, + "state": { + "description": "Current state of the automation.", + "enum": [ + "ACTIVE", + "PAUSED" + ], + "type": "string" + }, "tags": { "items": { "type": "string" @@ -5042,6 +5710,17 @@ }, "relationships": { "properties": { + "analyticalDashboard": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "exportDefinitions": { "properties": { "data": { @@ -5104,11 +5783,54 @@ ], "type": "object" }, + "JsonApiAutomationLinkage": { + "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", + "properties": { + "id": { + "type": "string" + }, + "type": { + "enum": [ + "automation" + ], + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, "JsonApiAutomationOut": { "description": "JSON:API representation of automation entity.", "properties": { "attributes": { "properties": { + "alert": { + "properties": { + "condition": { + "$ref": "#/components/schemas/AlertCondition" + }, + "execution": { + "$ref": "#/components/schemas/AlertAfm" + }, + "trigger": { + "default": "ALWAYS", + "description": "Trigger behavior for the alert.\nALWAYS - alert is triggered every time the condition is met.\nONCE - alert is triggered only once when the condition is met.\n", + "enum": [ + "ALWAYS", + "ONCE" + ], + "type": "string" + } + }, + "required": [ + "condition", + "execution" + ], + "type": "object" + }, "areRelationsValid": { "type": "boolean" }, @@ -5144,6 +5866,7 @@ }, "cronDescription": { "description": "Human-readable description of the cron expression.", + "readOnly": true, "type": "string" }, "firstRun": { @@ -5164,6 +5887,14 @@ ], "type": "object" }, + "state": { + "description": "Current state of the automation.", + "enum": [ + "ACTIVE", + "PAUSED" + ], + "type": "string" + }, "tags": { "items": { "type": "string" @@ -5211,10 +5942,21 @@ }, "relationships": { "properties": { - "createdBy": { + "analyticalDashboard": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "createdBy": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" } }, "required": [ @@ -5311,6 +6053,9 @@ { "$ref": "#/components/schemas/JsonApiNotificationChannelOutWithLinks" }, + { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutWithLinks" + }, { "$ref": "#/components/schemas/JsonApiUserIdentifierOutWithLinks" }, @@ -5372,6 +6117,30 @@ "properties": { "attributes": { "properties": { + "alert": { + "properties": { + "condition": { + "$ref": "#/components/schemas/AlertCondition" + }, + "execution": { + "$ref": "#/components/schemas/AlertAfm" + }, + "trigger": { + "default": "ALWAYS", + "description": "Trigger behavior for the alert.\nALWAYS - alert is triggered every time the condition is met.\nONCE - alert is triggered only once when the condition is met.\n", + "enum": [ + "ALWAYS", + "ONCE" + ], + "type": "string" + } + }, + "required": [ + "condition", + "execution" + ], + "type": "object" + }, "areRelationsValid": { "type": "boolean" }, @@ -5399,6 +6168,7 @@ }, "cronDescription": { "description": "Human-readable description of the cron expression.", + "readOnly": true, "type": "string" }, "firstRun": { @@ -5419,6 +6189,14 @@ ], "type": "object" }, + "state": { + "description": "Current state of the automation.", + "enum": [ + "ACTIVE", + "PAUSED" + ], + "type": "string" + }, "tags": { "items": { "type": "string" @@ -5440,6 +6218,17 @@ }, "relationships": { "properties": { + "analyticalDashboard": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "exportDefinitions": { "properties": { "data": { @@ -5502,6 +6291,15 @@ ], "type": "object" }, + "JsonApiAutomationToOneLinkage": { + "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "nullable": true, + "oneOf": [ + { + "$ref": "#/components/schemas/JsonApiAutomationLinkage" + } + ] + }, "JsonApiColorPaletteIn": { "description": "JSON:API representation of colorPalette entity.", "properties": { @@ -8057,6 +8855,17 @@ ], "type": "object" }, + "automation": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiAutomationToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "createdBy": { "properties": { "data": { @@ -8138,6 +8947,9 @@ { "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutWithLinks" }, + { + "$ref": "#/components/schemas/JsonApiAutomationOutWithLinks" + }, { "$ref": "#/components/schemas/JsonApiUserIdentifierOutWithLinks" } @@ -9026,26 +9838,41 @@ }, "type": "array" }, - "JsonApiJwkIn": { - "description": "JSON:API representation of jwk entity.", + "JsonApiFilterViewIn": { + "description": "JSON:API representation of filterView entity.", "properties": { "attributes": { "properties": { + "areRelationsValid": { + "type": "boolean" + }, "content": { - "description": "Specification of the cryptographic key", - "example": { - "alg": "RS256", - "kyt": "RSA", - "use": "sig" - }, - "oneOf": [ - { - "$ref": "#/components/schemas/RsaSpecification" - } - ], + "description": "The respective filter context.", "type": "object" + }, + "description": { + "maxLength": 10000, + "type": "string" + }, + "isDefault": { + "description": "Indicator whether the filter view should by applied by default.", + "type": "boolean" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "maxLength": 255, + "type": "string" } }, + "required": [ + "content", + "title" + ], "type": "object" }, "id": { @@ -9054,25 +9881,53 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, + "relationships": { + "properties": { + "analyticalDashboard": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "user": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" + }, "type": { "description": "Object type", "enum": [ - "jwk" + "filterView" ], - "example": "jwk", + "example": "filterView", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiJwkInDocument": { + "JsonApiFilterViewInDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiJwkIn" + "$ref": "#/components/schemas/JsonApiFilterViewIn" } }, "required": [ @@ -9080,26 +9935,41 @@ ], "type": "object" }, - "JsonApiJwkOut": { - "description": "JSON:API representation of jwk entity.", + "JsonApiFilterViewOut": { + "description": "JSON:API representation of filterView entity.", "properties": { "attributes": { "properties": { + "areRelationsValid": { + "type": "boolean" + }, "content": { - "description": "Specification of the cryptographic key", - "example": { - "alg": "RS256", - "kyt": "RSA", - "use": "sig" - }, - "oneOf": [ - { - "$ref": "#/components/schemas/RsaSpecification" - } - ], + "description": "The respective filter context.", "type": "object" + }, + "description": { + "maxLength": 10000, + "type": "string" + }, + "isDefault": { + "description": "Indicator whether the filter view should by applied by default.", + "type": "boolean" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "maxLength": 255, + "type": "string" } }, + "required": [ + "content", + "title" + ], "type": "object" }, "id": { @@ -9108,25 +9978,61 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, + "relationships": { + "properties": { + "analyticalDashboard": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "user": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" + }, "type": { "description": "Object type", "enum": [ - "jwk" + "filterView" ], - "example": "jwk", + "example": "filterView", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiJwkOutDocument": { + "JsonApiFilterViewOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiJwkOut" + "$ref": "#/components/schemas/JsonApiFilterViewOut" + }, + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiFilterViewOutIncludes" + }, + "type": "array", + "uniqueItems": true }, "links": { "$ref": "#/components/schemas/ObjectLinks" @@ -9137,12 +10043,30 @@ ], "type": "object" }, - "JsonApiJwkOutList": { + "JsonApiFilterViewOutIncludes": { + "oneOf": [ + { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutWithLinks" + }, + { + "$ref": "#/components/schemas/JsonApiUserOutWithLinks" + } + ] + }, + "JsonApiFilterViewOutList": { "description": "A JSON:API document with a list of resources", "properties": { "data": { "items": { - "$ref": "#/components/schemas/JsonApiJwkOutWithLinks" + "$ref": "#/components/schemas/JsonApiFilterViewOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiFilterViewOutIncludes" }, "type": "array", "uniqueItems": true @@ -9164,34 +10088,45 @@ ], "type": "object" }, - "JsonApiJwkOutWithLinks": { + "JsonApiFilterViewOutWithLinks": { "allOf": [ { - "$ref": "#/components/schemas/JsonApiJwkOut" + "$ref": "#/components/schemas/JsonApiFilterViewOut" }, { "$ref": "#/components/schemas/ObjectLinksContainer" } ] }, - "JsonApiJwkPatch": { - "description": "JSON:API representation of patching jwk entity.", + "JsonApiFilterViewPatch": { + "description": "JSON:API representation of patching filterView entity.", "properties": { "attributes": { "properties": { + "areRelationsValid": { + "type": "boolean" + }, "content": { - "description": "Specification of the cryptographic key", - "example": { - "alg": "RS256", - "kyt": "RSA", - "use": "sig" - }, - "oneOf": [ - { - "$ref": "#/components/schemas/RsaSpecification" - } - ], + "description": "The respective filter context.", "type": "object" + }, + "description": { + "maxLength": 10000, + "type": "string" + }, + "isDefault": { + "description": "Indicator whether the filter view should by applied by default.", + "type": "boolean" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "maxLength": 255, + "type": "string" } }, "type": "object" @@ -9202,25 +10137,53 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "type": { - "description": "Object type", - "enum": [ - "jwk" + "relationships": { + "properties": { + "analyticalDashboard": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "user": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" + }, + "type": { + "description": "Object type", + "enum": [ + "filterView" ], - "example": "jwk", + "example": "filterView", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiJwkPatchDocument": { + "JsonApiFilterViewPatchDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiJwkPatch" + "$ref": "#/components/schemas/JsonApiFilterViewPatch" } }, "required": [ @@ -9228,78 +10191,123 @@ ], "type": "object" }, - "JsonApiLabelLinkage": { - "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", + "JsonApiIdentityProviderIn": { + "description": "JSON:API representation of identityProvider entity.", "properties": { + "attributes": { + "properties": { + "identifiers": { + "description": "List of identifiers for this IdP, where an identifier is a domain name. Users with email addresses belonging to these domains will be authenticated by this IdP. In multiple provider setup, this field is mandatory.", + "example": [ + "gooddata.com" + ], + "items": { + "type": "string" + }, + "type": "array" + }, + "specification": { + "description": "Specification of the identity provider.", + "oneOf": [ + { + "$ref": "#/components/schemas/SamlIdpSpecification" + }, + { + "$ref": "#/components/schemas/OidcIdpSpecification" + } + ], + "type": "object" + }, + "type": { + "description": "Type of the identity provider.", + "enum": [ + "SAML", + "OIDC" + ], + "example": "SAML", + "type": "string" + } + }, + "required": [ + "specification", + "type" + ], + "type": "object" + }, "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, "type": { + "description": "Object type", "enum": [ - "label" + "identityProvider" ], + "example": "identityProvider", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiLabelOut": { - "description": "JSON:API representation of label entity.", + "JsonApiIdentityProviderInDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiIdentityProviderIn" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiIdentityProviderOut": { + "description": "JSON:API representation of identityProvider entity.", "properties": { "attributes": { "properties": { - "areRelationsValid": { - "type": "boolean" - }, - "description": { - "maxLength": 10000, - "type": "string" - }, - "primary": { - "type": "boolean" - }, - "sourceColumn": { - "maxLength": 255, - "type": "string" - }, - "sourceColumnDataType": { - "enum": [ - "INT", - "STRING", - "DATE", - "NUMERIC", - "TIMESTAMP", - "TIMESTAMP_TZ", - "BOOLEAN" + "identifiers": { + "description": "List of identifiers for this IdP, where an identifier is a domain name. Users with email addresses belonging to these domains will be authenticated by this IdP. In multiple provider setup, this field is mandatory.", + "example": [ + "gooddata.com" ], - "type": "string" - }, - "tags": { "items": { "type": "string" }, "type": "array" }, - "title": { - "maxLength": 255, - "type": "string" + "specification": { + "description": "Specification of the identity provider.", + "oneOf": [ + { + "$ref": "#/components/schemas/SamlIdpSpecification" + }, + { + "$ref": "#/components/schemas/OidcIdpSpecification" + } + ], + "type": "object" }, - "valueType": { + "type": { + "description": "Type of the identity provider.", "enum": [ - "TEXT", - "HYPERLINK", - "GEO", - "GEO_LONGITUDE", - "GEO_LATITUDE", - "IMAGE" + "SAML", + "OIDC" ], + "example": "SAML", "type": "string" } }, + "required": [ + "specification", + "type" + ], "type": "object" }, "id": { @@ -9308,75 +10316,26 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "meta": { - "properties": { - "origin": { - "properties": { - "originId": { - "description": "defines id of the workspace where the entity comes from", - "type": "string" - }, - "originType": { - "description": "defines type of the origin of the entity", - "enum": [ - "NATIVE", - "PARENT" - ], - "type": "string" - } - }, - "required": [ - "originId", - "originType" - ], - "type": "object" - } - }, - "type": "object" - }, - "relationships": { - "properties": { - "attribute": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiAttributeToOneLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - } - }, - "type": "object" - }, "type": { "description": "Object type", "enum": [ - "label" + "identityProvider" ], - "example": "label", + "example": "identityProvider", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiLabelOutDocument": { + "JsonApiIdentityProviderOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiLabelOut" - }, - "included": { - "description": "Included resources", - "items": { - "$ref": "#/components/schemas/JsonApiAttributeOutWithLinks" - }, - "type": "array", - "uniqueItems": true + "$ref": "#/components/schemas/JsonApiIdentityProviderOut" }, "links": { "$ref": "#/components/schemas/ObjectLinks" @@ -9387,20 +10346,12 @@ ], "type": "object" }, - "JsonApiLabelOutList": { + "JsonApiIdentityProviderOutList": { "description": "A JSON:API document with a list of resources", "properties": { "data": { "items": { - "$ref": "#/components/schemas/JsonApiLabelOutWithLinks" - }, - "type": "array", - "uniqueItems": true - }, - "included": { - "description": "Included resources", - "items": { - "$ref": "#/components/schemas/JsonApiAttributeOutWithLinks" + "$ref": "#/components/schemas/JsonApiIdentityProviderOutWithLinks" }, "type": "array", "uniqueItems": true @@ -9422,74 +10373,53 @@ ], "type": "object" }, - "JsonApiLabelOutWithLinks": { + "JsonApiIdentityProviderOutWithLinks": { "allOf": [ { - "$ref": "#/components/schemas/JsonApiLabelOut" + "$ref": "#/components/schemas/JsonApiIdentityProviderOut" }, { "$ref": "#/components/schemas/ObjectLinksContainer" } ] }, - "JsonApiLabelToManyLinkage": { - "description": "References to other resource objects in a to-many (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", - "items": { - "$ref": "#/components/schemas/JsonApiLabelLinkage" - }, - "type": "array" - }, - "JsonApiLabelToOneLinkage": { - "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", - "nullable": true, - "oneOf": [ - { - "$ref": "#/components/schemas/JsonApiLabelLinkage" - } - ] - }, - "JsonApiMetricIn": { - "description": "JSON:API representation of metric entity.", + "JsonApiIdentityProviderPatch": { + "description": "JSON:API representation of patching identityProvider entity.", "properties": { "attributes": { "properties": { - "areRelationsValid": { - "type": "boolean" - }, - "content": { - "properties": { - "format": { - "maxLength": 2048, - "type": "string" - }, - "maql": { - "maxLength": 10000, - "type": "string" - } - }, - "required": [ - "maql" + "identifiers": { + "description": "List of identifiers for this IdP, where an identifier is a domain name. Users with email addresses belonging to these domains will be authenticated by this IdP. In multiple provider setup, this field is mandatory.", + "example": [ + "gooddata.com" ], - "type": "object" - }, - "description": { - "maxLength": 10000, - "type": "string" - }, - "tags": { "items": { "type": "string" }, "type": "array" }, - "title": { - "maxLength": 255, + "specification": { + "description": "Specification of the identity provider.", + "oneOf": [ + { + "$ref": "#/components/schemas/SamlIdpSpecification" + }, + { + "$ref": "#/components/schemas/OidcIdpSpecification" + } + ], + "type": "object" + }, + "type": { + "description": "Type of the identity provider.", + "enum": [ + "SAML", + "OIDC" + ], + "example": "SAML", "type": "string" } }, - "required": [ - "content" - ], "type": "object" }, "id": { @@ -9501,9 +10431,9 @@ "type": { "description": "Object type", "enum": [ - "metric" + "identityProvider" ], - "example": "metric", + "example": "identityProvider", "type": "string" } }, @@ -9514,10 +10444,10 @@ ], "type": "object" }, - "JsonApiMetricInDocument": { + "JsonApiIdentityProviderPatchDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiMetricIn" + "$ref": "#/components/schemas/JsonApiIdentityProviderPatch" } }, "required": [ @@ -9525,16 +10455,40 @@ ], "type": "object" }, - "JsonApiMetricLinkage": { - "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", + "JsonApiJwkIn": { + "description": "JSON:API representation of jwk entity.", "properties": { + "attributes": { + "properties": { + "content": { + "description": "Specification of the cryptographic key", + "example": { + "alg": "RS256", + "kyt": "RSA", + "use": "sig" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/RsaSpecification" + } + ], + "type": "object" + } + }, + "type": "object" + }, "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, "type": { + "description": "Object type", "enum": [ - "metric" + "jwk" ], + "example": "jwk", "type": "string" } }, @@ -9544,56 +10498,37 @@ ], "type": "object" }, - "JsonApiMetricOut": { - "description": "JSON:API representation of metric entity.", + "JsonApiJwkInDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiJwkIn" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiJwkOut": { + "description": "JSON:API representation of jwk entity.", "properties": { "attributes": { "properties": { - "areRelationsValid": { - "type": "boolean" - }, "content": { - "properties": { - "format": { - "maxLength": 2048, - "type": "string" - }, - "maql": { - "maxLength": 10000, - "type": "string" - } + "description": "Specification of the cryptographic key", + "example": { + "alg": "RS256", + "kyt": "RSA", + "use": "sig" }, - "required": [ - "maql" + "oneOf": [ + { + "$ref": "#/components/schemas/RsaSpecification" + } ], "type": "object" - }, - "createdAt": { - "format": "date-time", - "type": "string" - }, - "description": { - "maxLength": 10000, - "type": "string" - }, - "modifiedAt": { - "format": "date-time", - "type": "string" - }, - "tags": { - "items": { - "type": "string" - }, - "type": "array" - }, - "title": { - "maxLength": 255, - "type": "string" } }, - "required": [ - "content" - ], "type": "object" }, "id": { @@ -9602,142 +10537,25 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "meta": { - "properties": { - "origin": { - "properties": { - "originId": { - "description": "defines id of the workspace where the entity comes from", - "type": "string" - }, - "originType": { - "description": "defines type of the origin of the entity", - "enum": [ - "NATIVE", - "PARENT" - ], - "type": "string" - } - }, - "required": [ - "originId", - "originType" - ], - "type": "object" - } - }, - "type": "object" - }, - "relationships": { - "properties": { - "attributes": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiAttributeToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "createdBy": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "datasets": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiDatasetToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "facts": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiFactToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "labels": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiLabelToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "metrics": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiMetricToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "modifiedBy": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - } - }, - "type": "object" - }, "type": { "description": "Object type", "enum": [ - "metric" + "jwk" ], - "example": "metric", + "example": "jwk", "type": "string" } }, "required": [ - "attributes", "id", "type" ], "type": "object" }, - "JsonApiMetricOutDocument": { + "JsonApiJwkOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiMetricOut" - }, - "included": { - "description": "Included resources", - "items": { - "$ref": "#/components/schemas/JsonApiMetricOutIncludes" - }, - "type": "array", - "uniqueItems": true + "$ref": "#/components/schemas/JsonApiJwkOut" }, "links": { "$ref": "#/components/schemas/ObjectLinks" @@ -9748,42 +10566,12 @@ ], "type": "object" }, - "JsonApiMetricOutIncludes": { - "oneOf": [ - { - "$ref": "#/components/schemas/JsonApiUserIdentifierOutWithLinks" - }, - { - "$ref": "#/components/schemas/JsonApiFactOutWithLinks" - }, - { - "$ref": "#/components/schemas/JsonApiAttributeOutWithLinks" - }, - { - "$ref": "#/components/schemas/JsonApiLabelOutWithLinks" - }, - { - "$ref": "#/components/schemas/JsonApiMetricOutWithLinks" - }, - { - "$ref": "#/components/schemas/JsonApiDatasetOutWithLinks" - } - ] - }, - "JsonApiMetricOutList": { + "JsonApiJwkOutList": { "description": "A JSON:API document with a list of resources", "properties": { "data": { "items": { - "$ref": "#/components/schemas/JsonApiMetricOutWithLinks" - }, - "type": "array", - "uniqueItems": true - }, - "included": { - "description": "Included resources", - "items": { - "$ref": "#/components/schemas/JsonApiMetricOutIncludes" + "$ref": "#/components/schemas/JsonApiJwkOutWithLinks" }, "type": "array", "uniqueItems": true @@ -9805,53 +10593,34 @@ ], "type": "object" }, - "JsonApiMetricOutWithLinks": { + "JsonApiJwkOutWithLinks": { "allOf": [ { - "$ref": "#/components/schemas/JsonApiMetricOut" + "$ref": "#/components/schemas/JsonApiJwkOut" }, { "$ref": "#/components/schemas/ObjectLinksContainer" } ] }, - "JsonApiMetricPatch": { - "description": "JSON:API representation of patching metric entity.", + "JsonApiJwkPatch": { + "description": "JSON:API representation of patching jwk entity.", "properties": { "attributes": { "properties": { - "areRelationsValid": { - "type": "boolean" - }, "content": { - "properties": { - "format": { - "maxLength": 2048, - "type": "string" - }, - "maql": { - "maxLength": 10000, - "type": "string" - } + "description": "Specification of the cryptographic key", + "example": { + "alg": "RS256", + "kyt": "RSA", + "use": "sig" }, - "required": [ - "maql" + "oneOf": [ + { + "$ref": "#/components/schemas/RsaSpecification" + } ], "type": "object" - }, - "description": { - "maxLength": 10000, - "type": "string" - }, - "tags": { - "items": { - "type": "string" - }, - "type": "array" - }, - "title": { - "maxLength": 255, - "type": "string" } }, "type": "object" @@ -9865,23 +10634,22 @@ "type": { "description": "Object type", "enum": [ - "metric" + "jwk" ], - "example": "metric", + "example": "jwk", "type": "string" } }, "required": [ - "attributes", "id", "type" ], "type": "object" }, - "JsonApiMetricPatchDocument": { + "JsonApiJwkPatchDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiMetricPatch" + "$ref": "#/components/schemas/JsonApiJwkPatch" } }, "required": [ @@ -9889,34 +10657,56 @@ ], "type": "object" }, - "JsonApiMetricPostOptionalId": { - "description": "JSON:API representation of metric entity.", + "JsonApiLabelLinkage": { + "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", + "properties": { + "id": { + "type": "string" + }, + "type": { + "enum": [ + "label" + ], + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "JsonApiLabelOut": { + "description": "JSON:API representation of label entity.", "properties": { "attributes": { "properties": { "areRelationsValid": { "type": "boolean" }, - "content": { - "properties": { - "format": { - "maxLength": 2048, - "type": "string" - }, - "maql": { - "maxLength": 10000, - "type": "string" - } - }, - "required": [ - "maql" - ], - "type": "object" - }, "description": { "maxLength": 10000, "type": "string" }, + "primary": { + "type": "boolean" + }, + "sourceColumn": { + "maxLength": 255, + "type": "string" + }, + "sourceColumnDataType": { + "enum": [ + "INT", + "STRING", + "DATE", + "NUMERIC", + "TIMESTAMP", + "TIMESTAMP_TZ", + "BOOLEAN" + ], + "type": "string" + }, "tags": { "items": { "type": "string" @@ -9926,11 +10716,19 @@ "title": { "maxLength": 255, "type": "string" + }, + "valueType": { + "enum": [ + "TEXT", + "HYPERLINK", + "GEO", + "GEO_LONGITUDE", + "GEO_LATITUDE", + "IMAGE" + ], + "type": "string" } }, - "required": [ - "content" - ], "type": "object" }, "id": { @@ -9939,116 +10737,54 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "type": { - "description": "Object type", - "enum": [ - "metric" - ], - "example": "metric", - "type": "string" - } - }, - "required": [ - "attributes", - "type" - ], - "type": "object" - }, - "JsonApiMetricPostOptionalIdDocument": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiMetricPostOptionalId" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "JsonApiMetricToManyLinkage": { - "description": "References to other resource objects in a to-many (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", - "items": { - "$ref": "#/components/schemas/JsonApiMetricLinkage" - }, - "type": "array" - }, - "JsonApiNotificationChannelIn": { - "description": "JSON:API representation of notificationChannel entity.", - "properties": { - "attributes": { + "meta": { "properties": { - "description": { - "maxLength": 10000, - "nullable": true, - "type": "string" - }, - "name": { - "maxLength": 255, - "nullable": true, - "type": "string" - }, - "triggers": { - "description": "The triggers that are to be used to send notifications to the channel.", - "items": { - "properties": { - "metadata": { - "$ref": "#/components/schemas/JsonNode" - }, - "type": { - "description": "The notification trigger type.", - "enum": [ - "SCHEDULE", - "ALERT" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "type": "array" - }, - "webhook": { + "origin": { "properties": { - "hasToken": { - "type": "boolean" - }, - "token": { - "description": "Bearer token for the webhook.", - "maxLength": 10000, - "nullable": true, + "originId": { + "description": "defines id of the workspace where the entity comes from", "type": "string" }, - "url": { - "description": "The webhook URL.", - "example": "https://example.com/webhook", - "maxLength": 255, - "pattern": "https?\\://.*", + "originType": { + "description": "defines type of the origin of the entity", + "enum": [ + "NATIVE", + "PARENT" + ], "type": "string" } }, "required": [ - "url" + "originId", + "originType" ], "type": "object" } }, "type": "object" }, - "id": { - "description": "API identifier of an object", - "example": "id1", - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", - "type": "string" + "relationships": { + "properties": { + "attribute": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiAttributeToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" }, "type": { "description": "Object type", "enum": [ - "notificationChannel" + "label" ], - "example": "notificationChannel", + "example": "label", "type": "string" } }, @@ -10058,10 +10794,21 @@ ], "type": "object" }, - "JsonApiNotificationChannelInDocument": { + "JsonApiLabelOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiNotificationChannelIn" + "$ref": "#/components/schemas/JsonApiLabelOut" + }, + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiAttributeOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ObjectLinks" } }, "required": [ @@ -10069,88 +10816,202 @@ ], "type": "object" }, - "JsonApiNotificationChannelLinkage": { - "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", + "JsonApiLabelOutList": { + "description": "A JSON:API document with a list of resources", "properties": { - "id": { - "type": "string" + "data": { + "items": { + "$ref": "#/components/schemas/JsonApiLabelOutWithLinks" + }, + "type": "array", + "uniqueItems": true }, - "type": { + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiAttributeOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ListLinks" + }, + "meta": { + "properties": { + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + }, + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiLabelOutWithLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiLabelOut" + }, + { + "$ref": "#/components/schemas/ObjectLinksContainer" + } + ] + }, + "JsonApiLabelToManyLinkage": { + "description": "References to other resource objects in a to-many (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "items": { + "$ref": "#/components/schemas/JsonApiLabelLinkage" + }, + "type": "array" + }, + "JsonApiLabelToOneLinkage": { + "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "nullable": true, + "oneOf": [ + { + "$ref": "#/components/schemas/JsonApiLabelLinkage" + } + ] + }, + "JsonApiLlmEndpointIn": { + "description": "JSON:API representation of llmEndpoint entity.", + "properties": { + "attributes": { + "properties": { + "baseUrl": { + "description": "Custom LLM endpoint.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "description": { + "description": "User-facing description of the LLM Provider.", + "maxLength": 10000, + "nullable": true, + "type": "string" + }, + "llmModel": { + "description": "LLM Model. We provide a default model for each provider, but you can override it here.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "llmOrganization": { + "description": "Organization in LLM provider.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "provider": { + "description": "LLM Provider.", + "enum": [ + "OPENAI" + ], + "example": "OPENAI", + "type": "string" + }, + "title": { + "description": "User-facing title of the LLM Provider.", + "maxLength": 255, + "type": "string" + }, + "token": { + "description": "The token to use to connect to the LLM provider.", + "maxLength": 10000, + "type": "string" + } + }, + "required": [ + "provider", + "title", + "token" + ], + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "description": "Object type", "enum": [ - "notificationChannel" + "llmEndpoint" ], + "example": "llmEndpoint", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiNotificationChannelOut": { - "description": "JSON:API representation of notificationChannel entity.", + "JsonApiLlmEndpointInDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiLlmEndpointIn" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiLlmEndpointOut": { + "description": "JSON:API representation of llmEndpoint entity.", "properties": { "attributes": { "properties": { + "baseUrl": { + "description": "Custom LLM endpoint.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, "description": { + "description": "User-facing description of the LLM Provider.", "maxLength": 10000, "nullable": true, "type": "string" }, - "name": { + "llmModel": { + "description": "LLM Model. We provide a default model for each provider, but you can override it here.", "maxLength": 255, "nullable": true, "type": "string" }, - "triggers": { - "description": "The triggers that are to be used to send notifications to the channel.", - "items": { - "properties": { - "metadata": { - "$ref": "#/components/schemas/JsonNode" - }, - "type": { - "description": "The notification trigger type.", - "enum": [ - "SCHEDULE", - "ALERT" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "type": "array" + "llmOrganization": { + "description": "Organization in LLM provider.", + "maxLength": 255, + "nullable": true, + "type": "string" }, - "webhook": { - "properties": { - "hasToken": { - "type": "boolean" - }, - "token": { - "description": "Bearer token for the webhook.", - "maxLength": 10000, - "nullable": true, - "type": "string" - }, - "url": { - "description": "The webhook URL.", - "example": "https://example.com/webhook", - "maxLength": 255, - "pattern": "https?\\://.*", - "type": "string" - } - }, - "required": [ - "url" + "provider": { + "description": "LLM Provider.", + "enum": [ + "OPENAI" ], - "type": "object" + "example": "OPENAI", + "type": "string" + }, + "title": { + "description": "User-facing title of the LLM Provider.", + "maxLength": 255, + "type": "string" } }, + "required": [ + "provider", + "title" + ], "type": "object" }, "id": { @@ -10162,22 +11023,23 @@ "type": { "description": "Object type", "enum": [ - "notificationChannel" + "llmEndpoint" ], - "example": "notificationChannel", + "example": "llmEndpoint", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiNotificationChannelOutDocument": { + "JsonApiLlmEndpointOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiNotificationChannelOut" + "$ref": "#/components/schemas/JsonApiLlmEndpointOut" }, "links": { "$ref": "#/components/schemas/ObjectLinks" @@ -10188,12 +11050,12 @@ ], "type": "object" }, - "JsonApiNotificationChannelOutList": { + "JsonApiLlmEndpointOutList": { "description": "A JSON:API document with a list of resources", "properties": { "data": { "items": { - "$ref": "#/components/schemas/JsonApiNotificationChannelOutWithLinks" + "$ref": "#/components/schemas/JsonApiLlmEndpointOutWithLinks" }, "type": "array", "uniqueItems": true @@ -10215,77 +11077,62 @@ ], "type": "object" }, - "JsonApiNotificationChannelOutWithLinks": { + "JsonApiLlmEndpointOutWithLinks": { "allOf": [ { - "$ref": "#/components/schemas/JsonApiNotificationChannelOut" + "$ref": "#/components/schemas/JsonApiLlmEndpointOut" }, { "$ref": "#/components/schemas/ObjectLinksContainer" } ] }, - "JsonApiNotificationChannelPatch": { - "description": "JSON:API representation of patching notificationChannel entity.", + "JsonApiLlmEndpointPatch": { + "description": "JSON:API representation of patching llmEndpoint entity.", "properties": { "attributes": { "properties": { + "baseUrl": { + "description": "Custom LLM endpoint.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, "description": { + "description": "User-facing description of the LLM Provider.", "maxLength": 10000, "nullable": true, "type": "string" }, - "name": { + "llmModel": { + "description": "LLM Model. We provide a default model for each provider, but you can override it here.", "maxLength": 255, "nullable": true, "type": "string" }, - "triggers": { - "description": "The triggers that are to be used to send notifications to the channel.", - "items": { - "properties": { - "metadata": { - "$ref": "#/components/schemas/JsonNode" - }, - "type": { - "description": "The notification trigger type.", - "enum": [ - "SCHEDULE", - "ALERT" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "type": "array" + "llmOrganization": { + "description": "Organization in LLM provider.", + "maxLength": 255, + "nullable": true, + "type": "string" }, - "webhook": { - "properties": { - "hasToken": { - "type": "boolean" - }, - "token": { - "description": "Bearer token for the webhook.", - "maxLength": 10000, - "nullable": true, - "type": "string" - }, - "url": { - "description": "The webhook URL.", - "example": "https://example.com/webhook", - "maxLength": 255, - "pattern": "https?\\://.*", - "type": "string" - } - }, - "required": [ - "url" + "provider": { + "description": "LLM Provider.", + "enum": [ + "OPENAI" ], - "type": "object" + "example": "OPENAI", + "type": "string" + }, + "title": { + "description": "User-facing title of the LLM Provider.", + "maxLength": 255, + "type": "string" + }, + "token": { + "description": "The token to use to connect to the LLM provider.", + "maxLength": 10000, + "type": "string" } }, "type": "object" @@ -10299,22 +11146,23 @@ "type": { "description": "Object type", "enum": [ - "notificationChannel" + "llmEndpoint" ], - "example": "notificationChannel", + "example": "llmEndpoint", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiNotificationChannelPatchDocument": { + "JsonApiLlmEndpointPatchDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiNotificationChannelPatch" + "$ref": "#/components/schemas/JsonApiLlmEndpointPatch" } }, "required": [ @@ -10322,69 +11170,48 @@ ], "type": "object" }, - "JsonApiNotificationChannelPostOptionalId": { - "description": "JSON:API representation of notificationChannel entity.", + "JsonApiMetricIn": { + "description": "JSON:API representation of metric entity.", "properties": { "attributes": { "properties": { - "description": { - "maxLength": 10000, - "nullable": true, - "type": "string" - }, - "name": { - "maxLength": 255, - "nullable": true, - "type": "string" - }, - "triggers": { - "description": "The triggers that are to be used to send notifications to the channel.", - "items": { - "properties": { - "metadata": { - "$ref": "#/components/schemas/JsonNode" - }, - "type": { - "description": "The notification trigger type.", - "enum": [ - "SCHEDULE", - "ALERT" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "type": "array" + "areRelationsValid": { + "type": "boolean" }, - "webhook": { + "content": { "properties": { - "hasToken": { - "type": "boolean" - }, - "token": { - "description": "Bearer token for the webhook.", - "maxLength": 10000, - "nullable": true, + "format": { + "maxLength": 2048, "type": "string" }, - "url": { - "description": "The webhook URL.", - "example": "https://example.com/webhook", - "maxLength": 255, - "pattern": "https?\\://.*", + "maql": { + "maxLength": 10000, "type": "string" } }, "required": [ - "url" + "maql" ], "type": "object" - } - }, + }, + "description": { + "maxLength": 10000, + "type": "string" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "maxLength": 255, + "type": "string" + } + }, + "required": [ + "content" + ], "type": "object" }, "id": { @@ -10396,21 +11223,23 @@ "type": { "description": "Object type", "enum": [ - "notificationChannel" + "metric" ], - "example": "notificationChannel", + "example": "metric", "type": "string" } }, "required": [ + "attributes", + "id", "type" ], "type": "object" }, - "JsonApiNotificationChannelPostOptionalIdDocument": { + "JsonApiMetricInDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiNotificationChannelPostOptionalId" + "$ref": "#/components/schemas/JsonApiMetricIn" } }, "required": [ @@ -10418,94 +11247,16 @@ ], "type": "object" }, - "JsonApiNotificationChannelToOneLinkage": { - "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", - "nullable": true, - "oneOf": [ - { - "$ref": "#/components/schemas/JsonApiNotificationChannelLinkage" - } - ] - }, - "JsonApiOrganizationIn": { - "description": "JSON:API representation of organization entity.", + "JsonApiMetricLinkage": { + "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", "properties": { - "attributes": { - "properties": { - "allowedOrigins": { - "items": { - "type": "string" - }, - "type": "array" - }, - "earlyAccess": { - "deprecated": true, - "description": "The early access feature identifier. It is used to enable experimental features. Deprecated in favor of earlyAccessValues.", - "maxLength": 255, - "nullable": true, - "type": "string" - }, - "earlyAccessValues": { - "description": "The early access feature identifiers. They are used to enable experimental features.", - "items": { - "maxLength": 255, - "type": "string" - }, - "nullable": true, - "type": "array" - }, - "hostname": { - "maxLength": 255, - "type": "string" - }, - "jitEnabled": { - "description": "Flag to enable/disable JIT provisioning in the given organization", - "type": "boolean" - }, - "name": { - "maxLength": 255, - "nullable": true, - "type": "string" - }, - "oauthClientId": { - "maxLength": 255, - "type": "string" - }, - "oauthClientSecret": { - "maxLength": 255, - "type": "string" - }, - "oauthIssuerId": { - "description": "Any string identifying the OIDC provider. This value is used as suffix for OAuth2 callback (redirect) URL. If not defined, the standard callback URL is used. This value is valid only for external OIDC providers, not for the internal DEX provider.", - "example": "myOidcProvider", - "maxLength": 255, - "type": "string" - }, - "oauthIssuerLocation": { - "maxLength": 255, - "type": "string" - }, - "oauthSubjectIdClaim": { - "description": "Any string identifying the claim in ID token, that should be used for user identification. The default value is 'sub'.", - "example": "oid", - "maxLength": 255, - "type": "string" - } - }, - "type": "object" - }, "id": { - "description": "API identifier of an object", - "example": "id1", - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, "type": { - "description": "Object type", "enum": [ - "organization" + "metric" ], - "example": "organization", "type": "string" } }, @@ -10515,95 +11266,56 @@ ], "type": "object" }, - "JsonApiOrganizationInDocument": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiOrganizationIn" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "JsonApiOrganizationOut": { - "description": "JSON:API representation of organization entity.", + "JsonApiMetricOut": { + "description": "JSON:API representation of metric entity.", "properties": { "attributes": { "properties": { - "allowedOrigins": { - "items": { - "type": "string" - }, - "type": "array" + "areRelationsValid": { + "type": "boolean" }, - "cacheSettings": { + "content": { "properties": { - "cacheStrategy": { - "enum": [ - "DURABLE", - "EPHEMERAL" - ], - "maxLength": 255, + "format": { + "maxLength": 2048, "type": "string" }, - "extraCacheBudget": { - "format": "int64", - "type": "integer" + "maql": { + "maxLength": 10000, + "type": "string" } }, + "required": [ + "maql" + ], "type": "object" }, - "earlyAccess": { - "deprecated": true, - "description": "The early access feature identifier. It is used to enable experimental features. Deprecated in favor of earlyAccessValues.", - "maxLength": 255, - "nullable": true, - "type": "string" - }, - "earlyAccessValues": { - "description": "The early access feature identifiers. They are used to enable experimental features.", - "items": { - "maxLength": 255, - "type": "string" - }, - "nullable": true, - "type": "array" - }, - "hostname": { - "maxLength": 255, - "type": "string" - }, - "jitEnabled": { - "description": "Flag to enable/disable JIT provisioning in the given organization", - "type": "boolean" - }, - "name": { - "maxLength": 255, - "nullable": true, + "createdAt": { + "format": "date-time", "type": "string" }, - "oauthClientId": { - "maxLength": 255, + "description": { + "maxLength": 10000, "type": "string" }, - "oauthIssuerId": { - "description": "Any string identifying the OIDC provider. This value is used as suffix for OAuth2 callback (redirect) URL. If not defined, the standard callback URL is used. This value is valid only for external OIDC providers, not for the internal DEX provider.", - "example": "myOidcProvider", - "maxLength": 255, + "modifiedAt": { + "format": "date-time", "type": "string" }, - "oauthIssuerLocation": { - "maxLength": 255, - "type": "string" + "tags": { + "items": { + "type": "string" + }, + "type": "array" }, - "oauthSubjectIdClaim": { - "description": "Any string identifying the claim in ID token, that should be used for user identification. The default value is 'sub'.", - "example": "oid", + "title": { "maxLength": 255, "type": "string" } }, + "required": [ + "content" + ], "type": "object" }, "id": { @@ -10614,26 +11326,36 @@ }, "meta": { "properties": { - "permissions": { - "description": "List of valid permissions for a logged-in user.", - "items": { - "enum": [ - "MANAGE", - "SELF_CREATE_TOKEN" - ], - "type": "string" + "origin": { + "properties": { + "originId": { + "description": "defines id of the workspace where the entity comes from", + "type": "string" + }, + "originType": { + "description": "defines type of the origin of the entity", + "enum": [ + "NATIVE", + "PARENT" + ], + "type": "string" + } }, - "type": "array" + "required": [ + "originId", + "originType" + ], + "type": "object" } }, "type": "object" }, "relationships": { "properties": { - "bootstrapUser": { + "attributes": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiUserToOneLinkage" + "$ref": "#/components/schemas/JsonApiAttributeToManyLinkage" } }, "required": [ @@ -10641,44 +11363,100 @@ ], "type": "object" }, - "bootstrapUserGroup": { + "createdBy": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiUserGroupToOneLinkage" + "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" } }, "required": [ "data" ], "type": "object" - } - }, - "type": "object" - }, - "type": { - "description": "Object type", - "enum": [ - "organization" - ], - "example": "organization", - "type": "string" - } + }, + "datasets": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiDatasetToManyLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "facts": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiFactToManyLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "labels": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiLabelToManyLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "metrics": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiMetricToManyLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "modifiedBy": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" + }, + "type": { + "description": "Object type", + "enum": [ + "metric" + ], + "example": "metric", + "type": "string" + } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiOrganizationOutDocument": { + "JsonApiMetricOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiOrganizationOut" + "$ref": "#/components/schemas/JsonApiMetricOut" }, "included": { "description": "Included resources", "items": { - "$ref": "#/components/schemas/JsonApiOrganizationOutIncludes" + "$ref": "#/components/schemas/JsonApiMetricOutIncludes" }, "type": "array", "uniqueItems": true @@ -10692,77 +11470,108 @@ ], "type": "object" }, - "JsonApiOrganizationOutIncludes": { + "JsonApiMetricOutIncludes": { "oneOf": [ { - "$ref": "#/components/schemas/JsonApiUserOutWithLinks" + "$ref": "#/components/schemas/JsonApiUserIdentifierOutWithLinks" }, { - "$ref": "#/components/schemas/JsonApiUserGroupOutWithLinks" + "$ref": "#/components/schemas/JsonApiFactOutWithLinks" + }, + { + "$ref": "#/components/schemas/JsonApiAttributeOutWithLinks" + }, + { + "$ref": "#/components/schemas/JsonApiLabelOutWithLinks" + }, + { + "$ref": "#/components/schemas/JsonApiMetricOutWithLinks" + }, + { + "$ref": "#/components/schemas/JsonApiDatasetOutWithLinks" } ] }, - "JsonApiOrganizationPatch": { - "description": "JSON:API representation of patching organization entity.", + "JsonApiMetricOutList": { + "description": "A JSON:API document with a list of resources", + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/JsonApiMetricOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiMetricOutIncludes" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ListLinks" + }, + "meta": { + "properties": { + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + }, + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiMetricOutWithLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiMetricOut" + }, + { + "$ref": "#/components/schemas/ObjectLinksContainer" + } + ] + }, + "JsonApiMetricPatch": { + "description": "JSON:API representation of patching metric entity.", "properties": { "attributes": { "properties": { - "allowedOrigins": { - "items": { - "type": "string" + "areRelationsValid": { + "type": "boolean" + }, + "content": { + "properties": { + "format": { + "maxLength": 2048, + "type": "string" + }, + "maql": { + "maxLength": 10000, + "type": "string" + } }, - "type": "array" + "required": [ + "maql" + ], + "type": "object" }, - "earlyAccess": { - "deprecated": true, - "description": "The early access feature identifier. It is used to enable experimental features. Deprecated in favor of earlyAccessValues.", - "maxLength": 255, - "nullable": true, + "description": { + "maxLength": 10000, "type": "string" }, - "earlyAccessValues": { - "description": "The early access feature identifiers. They are used to enable experimental features.", + "tags": { "items": { - "maxLength": 255, "type": "string" }, - "nullable": true, "type": "array" }, - "hostname": { - "maxLength": 255, - "type": "string" - }, - "jitEnabled": { - "description": "Flag to enable/disable JIT provisioning in the given organization", - "type": "boolean" - }, - "name": { - "maxLength": 255, - "nullable": true, - "type": "string" - }, - "oauthClientId": { - "maxLength": 255, - "type": "string" - }, - "oauthClientSecret": { - "maxLength": 255, - "type": "string" - }, - "oauthIssuerId": { - "description": "Any string identifying the OIDC provider. This value is used as suffix for OAuth2 callback (redirect) URL. If not defined, the standard callback URL is used. This value is valid only for external OIDC providers, not for the internal DEX provider.", - "example": "myOidcProvider", - "maxLength": 255, - "type": "string" - }, - "oauthIssuerLocation": { - "maxLength": 255, - "type": "string" - }, - "oauthSubjectIdClaim": { - "description": "Any string identifying the claim in ID token, that should be used for user identification. The default value is 'sub'.", - "example": "oid", + "title": { "maxLength": 255, "type": "string" } @@ -10778,22 +11587,23 @@ "type": { "description": "Object type", "enum": [ - "organization" + "metric" ], - "example": "organization", + "example": "metric", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiOrganizationPatchDocument": { + "JsonApiMetricPatchDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiOrganizationPatch" + "$ref": "#/components/schemas/JsonApiMetricPatch" } }, "required": [ @@ -10801,36 +11611,48 @@ ], "type": "object" }, - "JsonApiOrganizationSettingIn": { - "description": "JSON:API representation of organizationSetting entity.", + "JsonApiMetricPostOptionalId": { + "description": "JSON:API representation of metric entity.", "properties": { "attributes": { "properties": { + "areRelationsValid": { + "type": "boolean" + }, "content": { - "description": "Free-form JSON content. Maximum supported length is 15000 characters.", - "example": {}, + "properties": { + "format": { + "maxLength": 2048, + "type": "string" + }, + "maql": { + "maxLength": 10000, + "type": "string" + } + }, + "required": [ + "maql" + ], "type": "object" }, - "type": { - "enum": [ - "TIMEZONE", - "ACTIVE_THEME", - "ACTIVE_COLOR_PALETTE", - "WHITE_LABELING", - "LOCALE", - "METADATA_LOCALE", - "FORMAT_LOCALE", - "MAPBOX_TOKEN", - "WEEK_START", - "SHOW_HIDDEN_CATALOG_ITEMS", - "OPERATOR_OVERRIDES", - "TIMEZONE_VALIDATION_ENABLED", - "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" - ], + "description": { + "maxLength": 10000, + "type": "string" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "maxLength": 255, "type": "string" } }, + "required": [ + "content" + ], "type": "object" }, "id": { @@ -10842,9 +11664,101 @@ "type": { "description": "Object type", "enum": [ - "organizationSetting" + "metric" ], - "example": "organizationSetting", + "example": "metric", + "type": "string" + } + }, + "required": [ + "attributes", + "type" + ], + "type": "object" + }, + "JsonApiMetricPostOptionalIdDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiMetricPostOptionalId" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiMetricToManyLinkage": { + "description": "References to other resource objects in a to-many (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "items": { + "$ref": "#/components/schemas/JsonApiMetricLinkage" + }, + "type": "array" + }, + "JsonApiNotificationChannelIn": { + "description": "JSON:API representation of notificationChannel entity.", + "properties": { + "attributes": { + "properties": { + "allowedRecipients": { + "description": "Allowed recipients of notifications from this channel.\nCREATOR - only the creator\nINTERNAL - all users within the organization\n", + "enum": [ + "CREATOR", + "INTERNAL" + ], + "type": "string" + }, + "customDashboardUrl": { + "description": "Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}.", + "type": "string" + }, + "description": { + "maxLength": 10000, + "nullable": true, + "type": "string" + }, + "destination": { + "description": "The destination where the notifications are to be sent.", + "oneOf": [ + { + "$ref": "#/components/schemas/DefaultSmtp" + }, + { + "$ref": "#/components/schemas/Smtp" + }, + { + "$ref": "#/components/schemas/Webhook" + } + ] + }, + "destinationType": { + "enum": [ + "WEBHOOK", + "SMTP", + "DEFAULT_SMTP" + ], + "nullable": true, + "type": "string" + }, + "name": { + "maxLength": 255, + "nullable": true, + "type": "string" + } + }, + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "description": "Object type", + "enum": [ + "notificationChannel" + ], + "example": "notificationChannel", "type": "string" } }, @@ -10854,10 +11768,10 @@ ], "type": "object" }, - "JsonApiOrganizationSettingInDocument": { + "JsonApiNotificationChannelInDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiOrganizationSettingIn" + "$ref": "#/components/schemas/JsonApiNotificationChannelIn" } }, "required": [ @@ -10865,33 +11779,73 @@ ], "type": "object" }, - "JsonApiOrganizationSettingOut": { - "description": "JSON:API representation of organizationSetting entity.", + "JsonApiNotificationChannelLinkage": { + "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", + "properties": { + "id": { + "type": "string" + }, + "type": { + "enum": [ + "notificationChannel" + ], + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "JsonApiNotificationChannelOut": { + "description": "JSON:API representation of notificationChannel entity.", "properties": { "attributes": { "properties": { - "content": { - "description": "Free-form JSON content. Maximum supported length is 15000 characters.", - "example": {}, - "type": "object" + "allowedRecipients": { + "description": "Allowed recipients of notifications from this channel.\nCREATOR - only the creator\nINTERNAL - all users within the organization\n", + "enum": [ + "CREATOR", + "INTERNAL" + ], + "type": "string" }, - "type": { + "customDashboardUrl": { + "description": "Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}.", + "type": "string" + }, + "description": { + "maxLength": 10000, + "nullable": true, + "type": "string" + }, + "destination": { + "description": "The destination where the notifications are to be sent.", + "oneOf": [ + { + "$ref": "#/components/schemas/DefaultSmtp" + }, + { + "$ref": "#/components/schemas/Smtp" + }, + { + "$ref": "#/components/schemas/Webhook" + } + ] + }, + "destinationType": { "enum": [ - "TIMEZONE", - "ACTIVE_THEME", - "ACTIVE_COLOR_PALETTE", - "WHITE_LABELING", - "LOCALE", - "METADATA_LOCALE", - "FORMAT_LOCALE", - "MAPBOX_TOKEN", - "WEEK_START", - "SHOW_HIDDEN_CATALOG_ITEMS", - "OPERATOR_OVERRIDES", - "TIMEZONE_VALIDATION_ENABLED", - "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "WEBHOOK", + "SMTP", + "DEFAULT_SMTP" ], + "nullable": true, + "type": "string" + }, + "name": { + "maxLength": 255, + "nullable": true, "type": "string" } }, @@ -10906,9 +11860,9 @@ "type": { "description": "Object type", "enum": [ - "organizationSetting" + "notificationChannel" ], - "example": "organizationSetting", + "example": "notificationChannel", "type": "string" } }, @@ -10918,10 +11872,10 @@ ], "type": "object" }, - "JsonApiOrganizationSettingOutDocument": { + "JsonApiNotificationChannelOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiOrganizationSettingOut" + "$ref": "#/components/schemas/JsonApiNotificationChannelOut" }, "links": { "$ref": "#/components/schemas/ObjectLinks" @@ -10932,12 +11886,12 @@ ], "type": "object" }, - "JsonApiOrganizationSettingOutList": { + "JsonApiNotificationChannelOutList": { "description": "A JSON:API document with a list of resources", "properties": { "data": { "items": { - "$ref": "#/components/schemas/JsonApiOrganizationSettingOutWithLinks" + "$ref": "#/components/schemas/JsonApiNotificationChannelOutWithLinks" }, "type": "array", "uniqueItems": true @@ -10959,43 +11913,64 @@ ], "type": "object" }, - "JsonApiOrganizationSettingOutWithLinks": { + "JsonApiNotificationChannelOutWithLinks": { "allOf": [ { - "$ref": "#/components/schemas/JsonApiOrganizationSettingOut" + "$ref": "#/components/schemas/JsonApiNotificationChannelOut" }, { "$ref": "#/components/schemas/ObjectLinksContainer" } ] }, - "JsonApiOrganizationSettingPatch": { - "description": "JSON:API representation of patching organizationSetting entity.", + "JsonApiNotificationChannelPatch": { + "description": "JSON:API representation of patching notificationChannel entity.", "properties": { "attributes": { "properties": { - "content": { - "description": "Free-form JSON content. Maximum supported length is 15000 characters.", - "example": {}, - "type": "object" + "allowedRecipients": { + "description": "Allowed recipients of notifications from this channel.\nCREATOR - only the creator\nINTERNAL - all users within the organization\n", + "enum": [ + "CREATOR", + "INTERNAL" + ], + "type": "string" }, - "type": { + "customDashboardUrl": { + "description": "Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}.", + "type": "string" + }, + "description": { + "maxLength": 10000, + "nullable": true, + "type": "string" + }, + "destination": { + "description": "The destination where the notifications are to be sent.", + "oneOf": [ + { + "$ref": "#/components/schemas/DefaultSmtp" + }, + { + "$ref": "#/components/schemas/Smtp" + }, + { + "$ref": "#/components/schemas/Webhook" + } + ] + }, + "destinationType": { "enum": [ - "TIMEZONE", - "ACTIVE_THEME", - "ACTIVE_COLOR_PALETTE", - "WHITE_LABELING", - "LOCALE", - "METADATA_LOCALE", - "FORMAT_LOCALE", - "MAPBOX_TOKEN", - "WEEK_START", - "SHOW_HIDDEN_CATALOG_ITEMS", - "OPERATOR_OVERRIDES", - "TIMEZONE_VALIDATION_ENABLED", - "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "WEBHOOK", + "SMTP", + "DEFAULT_SMTP" ], + "nullable": true, + "type": "string" + }, + "name": { + "maxLength": 255, + "nullable": true, "type": "string" } }, @@ -11010,9 +11985,9 @@ "type": { "description": "Object type", "enum": [ - "organizationSetting" + "notificationChannel" ], - "example": "organizationSetting", + "example": "notificationChannel", "type": "string" } }, @@ -11022,10 +11997,10 @@ ], "type": "object" }, - "JsonApiOrganizationSettingPatchDocument": { + "JsonApiNotificationChannelPatchDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiOrganizationSettingPatch" + "$ref": "#/components/schemas/JsonApiNotificationChannelPatch" } }, "required": [ @@ -11033,79 +12008,57 @@ ], "type": "object" }, - "JsonApiThemeIn": { - "description": "JSON:API representation of theme entity.", + "JsonApiNotificationChannelPostOptionalId": { + "description": "JSON:API representation of notificationChannel entity.", "properties": { "attributes": { "properties": { - "content": { - "description": "Free-form JSON content. Maximum supported length is 15000 characters.", - "example": {}, - "type": "object" + "allowedRecipients": { + "description": "Allowed recipients of notifications from this channel.\nCREATOR - only the creator\nINTERNAL - all users within the organization\n", + "enum": [ + "CREATOR", + "INTERNAL" + ], + "type": "string" }, - "name": { - "maxLength": 255, + "customDashboardUrl": { + "description": "Custom dashboard url that is going to be used in the notification. If not specified it is going to be deduced based on the context. Allowed placeholders are {workspaceId}, {dashboardId}.", + "type": "string" + }, + "description": { + "maxLength": 10000, + "nullable": true, + "type": "string" + }, + "destination": { + "description": "The destination where the notifications are to be sent.", + "oneOf": [ + { + "$ref": "#/components/schemas/DefaultSmtp" + }, + { + "$ref": "#/components/schemas/Smtp" + }, + { + "$ref": "#/components/schemas/Webhook" + } + ] + }, + "destinationType": { + "enum": [ + "WEBHOOK", + "SMTP", + "DEFAULT_SMTP" + ], + "nullable": true, "type": "string" - } - }, - "required": [ - "content", - "name" - ], - "type": "object" - }, - "id": { - "description": "API identifier of an object", - "example": "id1", - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", - "type": "string" - }, - "type": { - "description": "Object type", - "enum": [ - "theme" - ], - "example": "theme", - "type": "string" - } - }, - "required": [ - "attributes", - "id", - "type" - ], - "type": "object" - }, - "JsonApiThemeInDocument": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiThemeIn" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "JsonApiThemeOut": { - "description": "JSON:API representation of theme entity.", - "properties": { - "attributes": { - "properties": { - "content": { - "description": "Free-form JSON content. Maximum supported length is 15000 characters.", - "example": {}, - "type": "object" }, "name": { "maxLength": 255, + "nullable": true, "type": "string" } }, - "required": [ - "content", - "name" - ], "type": "object" }, "id": { @@ -11117,53 +12070,21 @@ "type": { "description": "Object type", "enum": [ - "theme" + "notificationChannel" ], - "example": "theme", + "example": "notificationChannel", "type": "string" } }, "required": [ - "attributes", - "id", "type" ], "type": "object" }, - "JsonApiThemeOutDocument": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiThemeOut" - }, - "links": { - "$ref": "#/components/schemas/ObjectLinks" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "JsonApiThemeOutList": { - "description": "A JSON:API document with a list of resources", + "JsonApiNotificationChannelPostOptionalIdDocument": { "properties": { "data": { - "items": { - "$ref": "#/components/schemas/JsonApiThemeOutWithLinks" - }, - "type": "array", - "uniqueItems": true - }, - "links": { - "$ref": "#/components/schemas/ListLinks" - }, - "meta": { - "properties": { - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - }, - "type": "object" + "$ref": "#/components/schemas/JsonApiNotificationChannelPostOptionalId" } }, "required": [ @@ -11171,27 +12092,76 @@ ], "type": "object" }, - "JsonApiThemeOutWithLinks": { - "allOf": [ - { - "$ref": "#/components/schemas/JsonApiThemeOut" - }, + "JsonApiNotificationChannelToOneLinkage": { + "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "nullable": true, + "oneOf": [ { - "$ref": "#/components/schemas/ObjectLinksContainer" + "$ref": "#/components/schemas/JsonApiNotificationChannelLinkage" } ] }, - "JsonApiThemePatch": { - "description": "JSON:API representation of patching theme entity.", + "JsonApiOrganizationIn": { + "description": "JSON:API representation of organization entity.", "properties": { "attributes": { "properties": { - "content": { - "description": "Free-form JSON content. Maximum supported length is 15000 characters.", - "example": {}, - "type": "object" + "allowedOrigins": { + "items": { + "type": "string" + }, + "type": "array" + }, + "earlyAccess": { + "deprecated": true, + "description": "The early access feature identifier. It is used to enable experimental features. Deprecated in favor of earlyAccessValues.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "earlyAccessValues": { + "description": "The early access feature identifiers. They are used to enable experimental features.", + "items": { + "maxLength": 255, + "type": "string" + }, + "nullable": true, + "type": "array" + }, + "hostname": { + "maxLength": 255, + "type": "string" + }, + "jitEnabled": { + "description": "Flag to enable/disable JIT provisioning in the given organization", + "type": "boolean" }, "name": { + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "oauthClientId": { + "maxLength": 255, + "type": "string" + }, + "oauthClientSecret": { + "maxLength": 255, + "type": "string" + }, + "oauthIssuerId": { + "description": "Any string identifying the OIDC provider. This value is used as suffix for OAuth2 callback (redirect) URL. If not defined, the standard callback URL is used. This value is valid only for external OIDC providers, not for the internal DEX provider.", + "example": "myOidcProvider", + "maxLength": 255, + "type": "string" + }, + "oauthIssuerLocation": { + "maxLength": 255, + "type": "string" + }, + "oauthSubjectIdClaim": { + "description": "Any string identifying the claim in ID token, that should be used for user identification. The default value is 'sub'.", + "example": "oid", "maxLength": 255, "type": "string" } @@ -11207,23 +12177,22 @@ "type": { "description": "Object type", "enum": [ - "theme" + "organization" ], - "example": "theme", + "example": "organization", "type": "string" } }, "required": [ - "attributes", "id", "type" ], "type": "object" }, - "JsonApiThemePatchDocument": { + "JsonApiOrganizationInDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiThemePatch" + "$ref": "#/components/schemas/JsonApiOrganizationIn" } }, "required": [ @@ -11231,128 +12200,84 @@ ], "type": "object" }, - "JsonApiUserDataFilterIn": { - "description": "JSON:API representation of userDataFilter entity.", + "JsonApiOrganizationOut": { + "description": "JSON:API representation of organization entity.", "properties": { "attributes": { "properties": { - "areRelationsValid": { - "type": "boolean" + "allowedOrigins": { + "items": { + "type": "string" + }, + "type": "array" }, - "description": { - "maxLength": 10000, - "type": "string" + "cacheSettings": { + "properties": { + "cacheStrategy": { + "enum": [ + "DURABLE", + "EPHEMERAL" + ], + "maxLength": 255, + "type": "string" + }, + "extraCacheBudget": { + "format": "int64", + "type": "integer" + } + }, + "type": "object" }, - "maql": { - "maxLength": 10000, + "earlyAccess": { + "deprecated": true, + "description": "The early access feature identifier. It is used to enable experimental features. Deprecated in favor of earlyAccessValues.", + "maxLength": 255, + "nullable": true, "type": "string" }, - "tags": { + "earlyAccessValues": { + "description": "The early access feature identifiers. They are used to enable experimental features.", "items": { + "maxLength": 255, "type": "string" }, + "nullable": true, "type": "array" }, - "title": { + "hostname": { "maxLength": 255, "type": "string" - } - }, - "required": [ - "maql" - ], - "type": "object" - }, - "id": { - "description": "API identifier of an object", - "example": "id1", - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", - "type": "string" - }, - "relationships": { - "properties": { - "user": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserToOneLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" }, - "userGroup": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserGroupToOneLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - } - }, - "type": "object" - }, - "type": { - "description": "Object type", - "enum": [ - "userDataFilter" - ], - "example": "userDataFilter", - "type": "string" - } - }, - "required": [ - "attributes", - "id", - "type" - ], - "type": "object" - }, - "JsonApiUserDataFilterInDocument": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserDataFilterIn" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "JsonApiUserDataFilterOut": { - "description": "JSON:API representation of userDataFilter entity.", - "properties": { - "attributes": { - "properties": { - "areRelationsValid": { + "jitEnabled": { + "description": "Flag to enable/disable JIT provisioning in the given organization", "type": "boolean" }, - "description": { - "maxLength": 10000, + "name": { + "maxLength": 255, + "nullable": true, "type": "string" }, - "maql": { - "maxLength": 10000, + "oauthClientId": { + "maxLength": 255, "type": "string" }, - "tags": { - "items": { - "type": "string" - }, - "type": "array" + "oauthIssuerId": { + "description": "Any string identifying the OIDC provider. This value is used as suffix for OAuth2 callback (redirect) URL. If not defined, the standard callback URL is used. This value is valid only for external OIDC providers, not for the internal DEX provider.", + "example": "myOidcProvider", + "maxLength": 255, + "type": "string" }, - "title": { + "oauthIssuerLocation": { + "maxLength": 255, + "type": "string" + }, + "oauthSubjectIdClaim": { + "description": "Any string identifying the claim in ID token, that should be used for user identification. The default value is 'sub'.", + "example": "oid", "maxLength": 255, "type": "string" } }, - "required": [ - "maql" - ], "type": "object" }, "id": { @@ -11363,88 +12288,23 @@ }, "meta": { "properties": { - "origin": { - "properties": { - "originId": { - "description": "defines id of the workspace where the entity comes from", - "type": "string" - }, - "originType": { - "description": "defines type of the origin of the entity", - "enum": [ - "NATIVE", - "PARENT" - ], - "type": "string" - } + "permissions": { + "description": "List of valid permissions for a logged-in user.", + "items": { + "enum": [ + "MANAGE", + "SELF_CREATE_TOKEN" + ], + "type": "string" }, - "required": [ - "originId", - "originType" - ], - "type": "object" + "type": "array" } }, "type": "object" }, "relationships": { "properties": { - "attributes": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiAttributeToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "datasets": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiDatasetToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "facts": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiFactToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "labels": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiLabelToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "metrics": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiMetricToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "user": { + "bootstrapUser": { "properties": { "data": { "$ref": "#/components/schemas/JsonApiUserToOneLinkage" @@ -11455,7 +12315,7 @@ ], "type": "object" }, - "userGroup": { + "bootstrapUserGroup": { "properties": { "data": { "$ref": "#/components/schemas/JsonApiUserGroupToOneLinkage" @@ -11472,28 +12332,27 @@ "type": { "description": "Object type", "enum": [ - "userDataFilter" + "organization" ], - "example": "userDataFilter", + "example": "organization", "type": "string" } }, "required": [ - "attributes", "id", "type" ], "type": "object" }, - "JsonApiUserDataFilterOutDocument": { + "JsonApiOrganizationOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiUserDataFilterOut" + "$ref": "#/components/schemas/JsonApiOrganizationOut" }, "included": { "description": "Included resources", "items": { - "$ref": "#/components/schemas/JsonApiUserDataFilterOutIncludes" + "$ref": "#/components/schemas/JsonApiOrganizationOutIncludes" }, "type": "array", "uniqueItems": true @@ -11507,99 +12366,77 @@ ], "type": "object" }, - "JsonApiUserDataFilterOutIncludes": { + "JsonApiOrganizationOutIncludes": { "oneOf": [ { "$ref": "#/components/schemas/JsonApiUserOutWithLinks" }, { "$ref": "#/components/schemas/JsonApiUserGroupOutWithLinks" - }, - { - "$ref": "#/components/schemas/JsonApiFactOutWithLinks" - }, - { - "$ref": "#/components/schemas/JsonApiAttributeOutWithLinks" - }, - { - "$ref": "#/components/schemas/JsonApiLabelOutWithLinks" - }, - { - "$ref": "#/components/schemas/JsonApiMetricOutWithLinks" - }, - { - "$ref": "#/components/schemas/JsonApiDatasetOutWithLinks" - } - ] - }, - "JsonApiUserDataFilterOutList": { - "description": "A JSON:API document with a list of resources", - "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/JsonApiUserDataFilterOutWithLinks" - }, - "type": "array", - "uniqueItems": true - }, - "included": { - "description": "Included resources", - "items": { - "$ref": "#/components/schemas/JsonApiUserDataFilterOutIncludes" - }, - "type": "array", - "uniqueItems": true - }, - "links": { - "$ref": "#/components/schemas/ListLinks" - }, - "meta": { - "properties": { - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - }, - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "JsonApiUserDataFilterOutWithLinks": { - "allOf": [ - { - "$ref": "#/components/schemas/JsonApiUserDataFilterOut" - }, - { - "$ref": "#/components/schemas/ObjectLinksContainer" } ] }, - "JsonApiUserDataFilterPatch": { - "description": "JSON:API representation of patching userDataFilter entity.", + "JsonApiOrganizationPatch": { + "description": "JSON:API representation of patching organization entity.", "properties": { "attributes": { "properties": { - "areRelationsValid": { - "type": "boolean" - }, - "description": { - "maxLength": 10000, - "type": "string" - }, - "maql": { - "maxLength": 10000, - "type": "string" - }, - "tags": { + "allowedOrigins": { "items": { "type": "string" }, "type": "array" }, - "title": { + "earlyAccess": { + "deprecated": true, + "description": "The early access feature identifier. It is used to enable experimental features. Deprecated in favor of earlyAccessValues.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "earlyAccessValues": { + "description": "The early access feature identifiers. They are used to enable experimental features.", + "items": { + "maxLength": 255, + "type": "string" + }, + "nullable": true, + "type": "array" + }, + "hostname": { + "maxLength": 255, + "type": "string" + }, + "jitEnabled": { + "description": "Flag to enable/disable JIT provisioning in the given organization", + "type": "boolean" + }, + "name": { + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "oauthClientId": { + "maxLength": 255, + "type": "string" + }, + "oauthClientSecret": { + "maxLength": 255, + "type": "string" + }, + "oauthIssuerId": { + "description": "Any string identifying the OIDC provider. This value is used as suffix for OAuth2 callback (redirect) URL. If not defined, the standard callback URL is used. This value is valid only for external OIDC providers, not for the internal DEX provider.", + "example": "myOidcProvider", + "maxLength": 255, + "type": "string" + }, + "oauthIssuerLocation": { + "maxLength": 255, + "type": "string" + }, + "oauthSubjectIdClaim": { + "description": "Any string identifying the claim in ID token, that should be used for user identification. The default value is 'sub'.", + "example": "oid", "maxLength": 255, "type": "string" } @@ -11612,53 +12449,25 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "relationships": { - "properties": { - "user": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserToOneLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "userGroup": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserGroupToOneLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - } - }, - "type": "object" - }, "type": { "description": "Object type", "enum": [ - "userDataFilter" + "organization" ], - "example": "userDataFilter", + "example": "organization", "type": "string" } }, "required": [ - "attributes", "id", "type" ], "type": "object" }, - "JsonApiUserDataFilterPatchDocument": { + "JsonApiOrganizationPatchDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiUserDataFilterPatch" + "$ref": "#/components/schemas/JsonApiOrganizationPatch" } }, "required": [ @@ -11666,36 +12475,37 @@ ], "type": "object" }, - "JsonApiUserDataFilterPostOptionalId": { - "description": "JSON:API representation of userDataFilter entity.", + "JsonApiOrganizationSettingIn": { + "description": "JSON:API representation of organizationSetting entity.", "properties": { "attributes": { "properties": { - "areRelationsValid": { - "type": "boolean" - }, - "description": { - "maxLength": 10000, - "type": "string" - }, - "maql": { - "maxLength": 10000, - "type": "string" - }, - "tags": { - "items": { - "type": "string" - }, - "type": "array" + "content": { + "description": "Free-form JSON content. Maximum supported length is 15000 characters.", + "example": {}, + "type": "object" }, - "title": { - "maxLength": 255, + "type": { + "enum": [ + "TIMEZONE", + "ACTIVE_THEME", + "ACTIVE_COLOR_PALETTE", + "WHITE_LABELING", + "LOCALE", + "METADATA_LOCALE", + "FORMAT_LOCALE", + "MAPBOX_TOKEN", + "WEEK_START", + "SHOW_HIDDEN_CATALOG_ITEMS", + "OPERATOR_OVERRIDES", + "TIMEZONE_VALIDATION_ENABLED", + "OPENAI_CONFIG", + "ENABLE_FILE_ANALYTICS", + "ALERT" + ], "type": "string" } }, - "required": [ - "maql" - ], "type": "object" }, "id": { @@ -11704,52 +12514,25 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "relationships": { - "properties": { - "user": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserToOneLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "userGroup": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserGroupToOneLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - } - }, - "type": "object" - }, "type": { "description": "Object type", "enum": [ - "userDataFilter" + "organizationSetting" ], - "example": "userDataFilter", + "example": "organizationSetting", "type": "string" } }, "required": [ - "attributes", + "id", "type" ], "type": "object" }, - "JsonApiUserDataFilterPostOptionalIdDocument": { + "JsonApiOrganizationSettingInDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiUserDataFilterPostOptionalId" + "$ref": "#/components/schemas/JsonApiOrganizationSettingIn" } }, "required": [ @@ -11757,13 +12540,34 @@ ], "type": "object" }, - "JsonApiUserGroupIn": { - "description": "JSON:API representation of userGroup entity.", + "JsonApiOrganizationSettingOut": { + "description": "JSON:API representation of organizationSetting entity.", "properties": { "attributes": { "properties": { - "name": { - "maxLength": 255, + "content": { + "description": "Free-form JSON content. Maximum supported length is 15000 characters.", + "example": {}, + "type": "object" + }, + "type": { + "enum": [ + "TIMEZONE", + "ACTIVE_THEME", + "ACTIVE_COLOR_PALETTE", + "WHITE_LABELING", + "LOCALE", + "METADATA_LOCALE", + "FORMAT_LOCALE", + "MAPBOX_TOKEN", + "WEEK_START", + "SHOW_HIDDEN_CATALOG_ITEMS", + "OPERATOR_OVERRIDES", + "TIMEZONE_VALIDATION_ENABLED", + "OPENAI_CONFIG", + "ENABLE_FILE_ANALYTICS", + "ALERT" + ], "type": "string" } }, @@ -11775,28 +12579,12 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "relationships": { - "properties": { - "parents": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserGroupToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - } - }, - "type": "object" - }, "type": { "description": "Object type", "enum": [ - "userGroup" + "organizationSetting" ], - "example": "userGroup", + "example": "organizationSetting", "type": "string" } }, @@ -11806,10 +12594,13 @@ ], "type": "object" }, - "JsonApiUserGroupInDocument": { + "JsonApiOrganizationSettingOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiUserGroupIn" + "$ref": "#/components/schemas/JsonApiOrganizationSettingOut" + }, + "links": { + "$ref": "#/components/schemas/ObjectLinks" } }, "required": [ @@ -11817,32 +12608,71 @@ ], "type": "object" }, - "JsonApiUserGroupLinkage": { - "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", + "JsonApiOrganizationSettingOutList": { + "description": "A JSON:API document with a list of resources", "properties": { - "id": { - "type": "string" + "data": { + "items": { + "$ref": "#/components/schemas/JsonApiOrganizationSettingOutWithLinks" + }, + "type": "array", + "uniqueItems": true }, - "type": { - "enum": [ - "userGroup" - ], - "type": "string" + "links": { + "$ref": "#/components/schemas/ListLinks" + }, + "meta": { + "properties": { + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + }, + "type": "object" } }, "required": [ - "id", - "type" + "data" ], "type": "object" }, - "JsonApiUserGroupOut": { - "description": "JSON:API representation of userGroup entity.", - "properties": { - "attributes": { + "JsonApiOrganizationSettingOutWithLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiOrganizationSettingOut" + }, + { + "$ref": "#/components/schemas/ObjectLinksContainer" + } + ] + }, + "JsonApiOrganizationSettingPatch": { + "description": "JSON:API representation of patching organizationSetting entity.", + "properties": { + "attributes": { "properties": { - "name": { - "maxLength": 255, + "content": { + "description": "Free-form JSON content. Maximum supported length is 15000 characters.", + "example": {}, + "type": "object" + }, + "type": { + "enum": [ + "TIMEZONE", + "ACTIVE_THEME", + "ACTIVE_COLOR_PALETTE", + "WHITE_LABELING", + "LOCALE", + "METADATA_LOCALE", + "FORMAT_LOCALE", + "MAPBOX_TOKEN", + "WEEK_START", + "SHOW_HIDDEN_CATALOG_ITEMS", + "OPERATOR_OVERRIDES", + "TIMEZONE_VALIDATION_ENABLED", + "OPENAI_CONFIG", + "ENABLE_FILE_ANALYTICS", + "ALERT" + ], "type": "string" } }, @@ -11854,28 +12684,12 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "relationships": { - "properties": { - "parents": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserGroupToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - } - }, - "type": "object" - }, "type": { "description": "Object type", "enum": [ - "userGroup" + "organizationSetting" ], - "example": "userGroup", + "example": "organizationSetting", "type": "string" } }, @@ -11885,56 +12699,10 @@ ], "type": "object" }, - "JsonApiUserGroupOutDocument": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserGroupOut" - }, - "included": { - "description": "Included resources", - "items": { - "$ref": "#/components/schemas/JsonApiUserGroupOutWithLinks" - }, - "type": "array", - "uniqueItems": true - }, - "links": { - "$ref": "#/components/schemas/ObjectLinks" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "JsonApiUserGroupOutList": { - "description": "A JSON:API document with a list of resources", + "JsonApiOrganizationSettingPatchDocument": { "properties": { "data": { - "items": { - "$ref": "#/components/schemas/JsonApiUserGroupOutWithLinks" - }, - "type": "array", - "uniqueItems": true - }, - "included": { - "description": "Included resources", - "items": { - "$ref": "#/components/schemas/JsonApiUserGroupOutWithLinks" - }, - "type": "array", - "uniqueItems": true - }, - "links": { - "$ref": "#/components/schemas/ListLinks" - }, - "meta": { - "properties": { - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - }, - "type": "object" + "$ref": "#/components/schemas/JsonApiOrganizationSettingPatch" } }, "required": [ @@ -11942,26 +12710,25 @@ ], "type": "object" }, - "JsonApiUserGroupOutWithLinks": { - "allOf": [ - { - "$ref": "#/components/schemas/JsonApiUserGroupOut" - }, - { - "$ref": "#/components/schemas/ObjectLinksContainer" - } - ] - }, - "JsonApiUserGroupPatch": { - "description": "JSON:API representation of patching userGroup entity.", + "JsonApiThemeIn": { + "description": "JSON:API representation of theme entity.", "properties": { "attributes": { "properties": { + "content": { + "description": "Free-form JSON content. Maximum supported length is 15000 characters.", + "example": {}, + "type": "object" + }, "name": { "maxLength": 255, "type": "string" } }, + "required": [ + "content", + "name" + ], "type": "object" }, "id": { @@ -11970,41 +12737,26 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "relationships": { - "properties": { - "parents": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserGroupToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - } - }, - "type": "object" - }, "type": { "description": "Object type", "enum": [ - "userGroup" + "theme" ], - "example": "userGroup", + "example": "theme", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiUserGroupPatchDocument": { + "JsonApiThemeInDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiUserGroupPatch" + "$ref": "#/components/schemas/JsonApiThemeIn" } }, "required": [ @@ -12012,59 +12764,25 @@ ], "type": "object" }, - "JsonApiUserGroupToManyLinkage": { - "description": "References to other resource objects in a to-many (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", - "items": { - "$ref": "#/components/schemas/JsonApiUserGroupLinkage" - }, - "type": "array" - }, - "JsonApiUserGroupToOneLinkage": { - "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", - "nullable": true, - "oneOf": [ - { - "$ref": "#/components/schemas/JsonApiUserGroupLinkage" - } - ] - }, - "JsonApiUserIdentifierLinkage": { - "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", - "properties": { - "id": { - "type": "string" - }, - "type": { - "enum": [ - "userIdentifier" - ], - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "JsonApiUserIdentifierOut": { - "description": "JSON:API representation of userIdentifier entity.", + "JsonApiThemeOut": { + "description": "JSON:API representation of theme entity.", "properties": { "attributes": { "properties": { - "email": { - "maxLength": 255, - "type": "string" - }, - "firstname": { - "maxLength": 255, - "type": "string" + "content": { + "description": "Free-form JSON content. Maximum supported length is 15000 characters.", + "example": {}, + "type": "object" }, - "lastname": { + "name": { "maxLength": 255, "type": "string" } }, + "required": [ + "content", + "name" + ], "type": "object" }, "id": { @@ -12076,22 +12794,23 @@ "type": { "description": "Object type", "enum": [ - "userIdentifier" + "theme" ], - "example": "userIdentifier", + "example": "theme", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiUserIdentifierOutDocument": { + "JsonApiThemeOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiUserIdentifierOut" + "$ref": "#/components/schemas/JsonApiThemeOut" }, "links": { "$ref": "#/components/schemas/ObjectLinks" @@ -12102,12 +12821,12 @@ ], "type": "object" }, - "JsonApiUserIdentifierOutList": { + "JsonApiThemeOutList": { "description": "A JSON:API document with a list of resources", "properties": { "data": { "items": { - "$ref": "#/components/schemas/JsonApiUserIdentifierOutWithLinks" + "$ref": "#/components/schemas/JsonApiThemeOutWithLinks" }, "type": "array", "uniqueItems": true @@ -12129,43 +12848,27 @@ ], "type": "object" }, - "JsonApiUserIdentifierOutWithLinks": { + "JsonApiThemeOutWithLinks": { "allOf": [ { - "$ref": "#/components/schemas/JsonApiUserIdentifierOut" + "$ref": "#/components/schemas/JsonApiThemeOut" }, { "$ref": "#/components/schemas/ObjectLinksContainer" } ] }, - "JsonApiUserIdentifierToOneLinkage": { - "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", - "nullable": true, - "oneOf": [ - { - "$ref": "#/components/schemas/JsonApiUserIdentifierLinkage" - } - ] - }, - "JsonApiUserIn": { - "description": "JSON:API representation of user entity.", + "JsonApiThemePatch": { + "description": "JSON:API representation of patching theme entity.", "properties": { "attributes": { "properties": { - "authenticationId": { - "maxLength": 255, - "type": "string" - }, - "email": { - "maxLength": 255, - "type": "string" + "content": { + "description": "Free-form JSON content. Maximum supported length is 15000 characters.", + "example": {}, + "type": "object" }, - "firstname": { - "maxLength": 255, - "type": "string" - }, - "lastname": { + "name": { "maxLength": 255, "type": "string" } @@ -12178,41 +12881,26 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "relationships": { - "properties": { - "userGroups": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserGroupToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - } - }, - "type": "object" - }, "type": { "description": "Object type", "enum": [ - "user" + "theme" ], - "example": "user", + "example": "theme", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiUserInDocument": { + "JsonApiThemePatchDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiUserIn" + "$ref": "#/components/schemas/JsonApiThemePatch" } }, "required": [ @@ -12220,47 +12908,36 @@ ], "type": "object" }, - "JsonApiUserLinkage": { - "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", - "properties": { - "id": { - "type": "string" - }, - "type": { - "enum": [ - "user" - ], - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "JsonApiUserOut": { - "description": "JSON:API representation of user entity.", + "JsonApiUserDataFilterIn": { + "description": "JSON:API representation of userDataFilter entity.", "properties": { "attributes": { "properties": { - "authenticationId": { - "maxLength": 255, - "type": "string" + "areRelationsValid": { + "type": "boolean" }, - "email": { - "maxLength": 255, + "description": { + "maxLength": 10000, "type": "string" }, - "firstname": { - "maxLength": 255, + "maql": { + "maxLength": 10000, "type": "string" }, - "lastname": { + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { "maxLength": 255, "type": "string" } }, + "required": [ + "maql" + ], "type": "object" }, "id": { @@ -12271,10 +12948,21 @@ }, "relationships": { "properties": { - "userGroups": { + "user": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiUserGroupToManyLinkage" + "$ref": "#/components/schemas/JsonApiUserToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "userGroup": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserGroupToOneLinkage" } }, "required": [ @@ -12288,68 +12976,23 @@ "type": { "description": "Object type", "enum": [ - "user" + "userDataFilter" ], - "example": "user", + "example": "userDataFilter", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiUserOutDocument": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserOut" - }, - "included": { - "description": "Included resources", - "items": { - "$ref": "#/components/schemas/JsonApiUserGroupOutWithLinks" - }, - "type": "array", - "uniqueItems": true - }, - "links": { - "$ref": "#/components/schemas/ObjectLinks" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "JsonApiUserOutList": { - "description": "A JSON:API document with a list of resources", + "JsonApiUserDataFilterInDocument": { "properties": { "data": { - "items": { - "$ref": "#/components/schemas/JsonApiUserOutWithLinks" - }, - "type": "array", - "uniqueItems": true - }, - "included": { - "description": "Included resources", - "items": { - "$ref": "#/components/schemas/JsonApiUserGroupOutWithLinks" - }, - "type": "array", - "uniqueItems": true - }, - "links": { - "$ref": "#/components/schemas/ListLinks" - }, - "meta": { - "properties": { - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - }, - "type": "object" + "$ref": "#/components/schemas/JsonApiUserDataFilterIn" } }, "required": [ @@ -12357,38 +13000,36 @@ ], "type": "object" }, - "JsonApiUserOutWithLinks": { - "allOf": [ - { - "$ref": "#/components/schemas/JsonApiUserOut" - }, - { - "$ref": "#/components/schemas/ObjectLinksContainer" - } - ] - }, - "JsonApiUserPatch": { - "description": "JSON:API representation of patching user entity.", + "JsonApiUserDataFilterOut": { + "description": "JSON:API representation of userDataFilter entity.", "properties": { "attributes": { "properties": { - "authenticationId": { - "maxLength": 255, - "type": "string" + "areRelationsValid": { + "type": "boolean" }, - "email": { - "maxLength": 255, + "description": { + "maxLength": 10000, "type": "string" }, - "firstname": { - "maxLength": 255, + "maql": { + "maxLength": 10000, "type": "string" }, - "lastname": { + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { "maxLength": 255, "type": "string" } }, + "required": [ + "maql" + ], "type": "object" }, "id": { @@ -12397,169 +13038,142 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "relationships": { + "meta": { "properties": { - "userGroups": { + "origin": { "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserGroupToManyLinkage" + "originId": { + "description": "defines id of the workspace where the entity comes from", + "type": "string" + }, + "originType": { + "description": "defines type of the origin of the entity", + "enum": [ + "NATIVE", + "PARENT" + ], + "type": "string" } }, "required": [ - "data" + "originId", + "originType" ], "type": "object" } }, "type": "object" }, - "type": { - "description": "Object type", - "enum": [ - "user" - ], - "example": "user", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "JsonApiUserPatchDocument": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserPatch" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "JsonApiUserSettingIn": { - "description": "JSON:API representation of userSetting entity.", - "properties": { - "attributes": { + "relationships": { "properties": { - "content": { - "description": "Free-form JSON content. Maximum supported length is 15000 characters.", - "example": {}, + "attributes": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiAttributeToManyLinkage" + } + }, + "required": [ + "data" + ], "type": "object" }, - "type": { - "enum": [ - "TIMEZONE", - "ACTIVE_THEME", - "ACTIVE_COLOR_PALETTE", - "WHITE_LABELING", - "LOCALE", - "METADATA_LOCALE", - "FORMAT_LOCALE", - "MAPBOX_TOKEN", - "WEEK_START", - "SHOW_HIDDEN_CATALOG_ITEMS", - "OPERATOR_OVERRIDES", - "TIMEZONE_VALIDATION_ENABLED", - "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "datasets": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiDatasetToManyLinkage" + } + }, + "required": [ + "data" ], - "type": "string" - } - }, - "type": "object" - }, - "id": { - "description": "API identifier of an object", - "example": "id1", - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", - "type": "string" - }, - "type": { - "description": "Object type", - "enum": [ - "userSetting" - ], - "example": "userSetting", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "JsonApiUserSettingInDocument": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserSettingIn" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "JsonApiUserSettingOut": { - "description": "JSON:API representation of userSetting entity.", - "properties": { - "attributes": { - "properties": { - "content": { - "description": "Free-form JSON content. Maximum supported length is 15000 characters.", - "example": {}, "type": "object" }, - "type": { - "enum": [ - "TIMEZONE", - "ACTIVE_THEME", - "ACTIVE_COLOR_PALETTE", - "WHITE_LABELING", - "LOCALE", - "METADATA_LOCALE", - "FORMAT_LOCALE", - "MAPBOX_TOKEN", - "WEEK_START", - "SHOW_HIDDEN_CATALOG_ITEMS", - "OPERATOR_OVERRIDES", - "TIMEZONE_VALIDATION_ENABLED", - "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "facts": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiFactToManyLinkage" + } + }, + "required": [ + "data" ], - "type": "string" + "type": "object" + }, + "labels": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiLabelToManyLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "metrics": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiMetricToManyLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "user": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "userGroup": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserGroupToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" } }, "type": "object" }, - "id": { - "description": "API identifier of an object", - "example": "id1", - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", - "type": "string" - }, "type": { "description": "Object type", "enum": [ - "userSetting" + "userDataFilter" ], - "example": "userSetting", + "example": "userDataFilter", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiUserSettingOutDocument": { + "JsonApiUserDataFilterOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiUserSettingOut" + "$ref": "#/components/schemas/JsonApiUserDataFilterOut" + }, + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiUserDataFilterOutIncludes" + }, + "type": "array", + "uniqueItems": true }, "links": { "$ref": "#/components/schemas/ObjectLinks" @@ -12570,12 +13184,45 @@ ], "type": "object" }, - "JsonApiUserSettingOutList": { + "JsonApiUserDataFilterOutIncludes": { + "oneOf": [ + { + "$ref": "#/components/schemas/JsonApiUserOutWithLinks" + }, + { + "$ref": "#/components/schemas/JsonApiUserGroupOutWithLinks" + }, + { + "$ref": "#/components/schemas/JsonApiFactOutWithLinks" + }, + { + "$ref": "#/components/schemas/JsonApiAttributeOutWithLinks" + }, + { + "$ref": "#/components/schemas/JsonApiLabelOutWithLinks" + }, + { + "$ref": "#/components/schemas/JsonApiMetricOutWithLinks" + }, + { + "$ref": "#/components/schemas/JsonApiDatasetOutWithLinks" + } + ] + }, + "JsonApiUserDataFilterOutList": { "description": "A JSON:API document with a list of resources", "properties": { "data": { "items": { - "$ref": "#/components/schemas/JsonApiUserSettingOutWithLinks" + "$ref": "#/components/schemas/JsonApiUserDataFilterOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiUserDataFilterOutIncludes" }, "type": "array", "uniqueItems": true @@ -12597,55 +13244,32 @@ ], "type": "object" }, - "JsonApiUserSettingOutWithLinks": { + "JsonApiUserDataFilterOutWithLinks": { "allOf": [ { - "$ref": "#/components/schemas/JsonApiUserSettingOut" + "$ref": "#/components/schemas/JsonApiUserDataFilterOut" }, { "$ref": "#/components/schemas/ObjectLinksContainer" } ] }, - "JsonApiUserToManyLinkage": { - "description": "References to other resource objects in a to-many (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", - "items": { - "$ref": "#/components/schemas/JsonApiUserLinkage" - }, - "type": "array" - }, - "JsonApiUserToOneLinkage": { - "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", - "nullable": true, - "oneOf": [ - { - "$ref": "#/components/schemas/JsonApiUserLinkage" - } - ] - }, - "JsonApiVisualizationObjectIn": { - "description": "JSON:API representation of visualizationObject entity.", + "JsonApiUserDataFilterPatch": { + "description": "JSON:API representation of patching userDataFilter entity.", "properties": { "attributes": { "properties": { "areRelationsValid": { "type": "boolean" }, - "content": { - "description": "Free-form JSON content. Maximum supported length is 250000 characters.", - "example": { - "identifier": { - "id": "label.leaf", - "type": "label" - }, - "someBoolProp": false - }, - "type": "object" - }, "description": { "maxLength": 10000, "type": "string" }, + "maql": { + "maxLength": 10000, + "type": "string" + }, "tags": { "items": { "type": "string" @@ -12657,9 +13281,6 @@ "type": "string" } }, - "required": [ - "content" - ], "type": "object" }, "id": { @@ -12668,12 +13289,39 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, + "relationships": { + "properties": { + "user": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "userGroup": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserGroupToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" + }, "type": { "description": "Object type", "enum": [ - "visualizationObject" + "userDataFilter" ], - "example": "visualizationObject", + "example": "userDataFilter", "type": "string" } }, @@ -12684,10 +13332,10 @@ ], "type": "object" }, - "JsonApiVisualizationObjectInDocument": { + "JsonApiUserDataFilterPatchDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiVisualizationObjectIn" + "$ref": "#/components/schemas/JsonApiUserDataFilterPatch" } }, "required": [ @@ -12695,54 +13343,20 @@ ], "type": "object" }, - "JsonApiVisualizationObjectLinkage": { - "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", - "properties": { - "id": { - "type": "string" - }, - "type": { - "enum": [ - "visualizationObject" - ], - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "JsonApiVisualizationObjectOut": { - "description": "JSON:API representation of visualizationObject entity.", + "JsonApiUserDataFilterPostOptionalId": { + "description": "JSON:API representation of userDataFilter entity.", "properties": { "attributes": { "properties": { "areRelationsValid": { "type": "boolean" }, - "content": { - "description": "Free-form JSON content. Maximum supported length is 250000 characters.", - "example": { - "identifier": { - "id": "label.leaf", - "type": "label" - }, - "someBoolProp": false - }, - "type": "object" - }, - "createdAt": { - "format": "date-time", - "type": "string" - }, "description": { "maxLength": 10000, "type": "string" }, - "modifiedAt": { - "format": "date-time", + "maql": { + "maxLength": 10000, "type": "string" }, "tags": { @@ -12757,7 +13371,7 @@ } }, "required": [ - "content" + "maql" ], "type": "object" }, @@ -12767,93 +13381,12 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "meta": { - "properties": { - "origin": { - "properties": { - "originId": { - "description": "defines id of the workspace where the entity comes from", - "type": "string" - }, - "originType": { - "description": "defines type of the origin of the entity", - "enum": [ - "NATIVE", - "PARENT" - ], - "type": "string" - } - }, - "required": [ - "originId", - "originType" - ], - "type": "object" - } - }, - "type": "object" - }, "relationships": { "properties": { - "attributes": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiAttributeToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "createdBy": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "datasets": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiDatasetToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "facts": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiFactToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "labels": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiLabelToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "metrics": { + "user": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiMetricToManyLinkage" + "$ref": "#/components/schemas/JsonApiUserToOneLinkage" } }, "required": [ @@ -12861,10 +13394,10 @@ ], "type": "object" }, - "modifiedBy": { + "userGroup": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" + "$ref": "#/components/schemas/JsonApiUserGroupToOneLinkage" } }, "required": [ @@ -12878,69 +13411,22 @@ "type": { "description": "Object type", "enum": [ - "visualizationObject" + "userDataFilter" ], - "example": "visualizationObject", + "example": "userDataFilter", "type": "string" } }, "required": [ "attributes", - "id", "type" ], "type": "object" }, - "JsonApiVisualizationObjectOutDocument": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiVisualizationObjectOut" - }, - "included": { - "description": "Included resources", - "items": { - "$ref": "#/components/schemas/JsonApiMetricOutIncludes" - }, - "type": "array", - "uniqueItems": true - }, - "links": { - "$ref": "#/components/schemas/ObjectLinks" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "JsonApiVisualizationObjectOutList": { - "description": "A JSON:API document with a list of resources", + "JsonApiUserDataFilterPostOptionalIdDocument": { "properties": { "data": { - "items": { - "$ref": "#/components/schemas/JsonApiVisualizationObjectOutWithLinks" - }, - "type": "array", - "uniqueItems": true - }, - "included": { - "description": "Included resources", - "items": { - "$ref": "#/components/schemas/JsonApiMetricOutIncludes" - }, - "type": "array", - "uniqueItems": true - }, - "links": { - "$ref": "#/components/schemas/ListLinks" - }, - "meta": { - "properties": { - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - }, - "type": "object" + "$ref": "#/components/schemas/JsonApiUserDataFilterPostOptionalId" } }, "required": [ @@ -12948,46 +13434,12 @@ ], "type": "object" }, - "JsonApiVisualizationObjectOutWithLinks": { - "allOf": [ - { - "$ref": "#/components/schemas/JsonApiVisualizationObjectOut" - }, - { - "$ref": "#/components/schemas/ObjectLinksContainer" - } - ] - }, - "JsonApiVisualizationObjectPatch": { - "description": "JSON:API representation of patching visualizationObject entity.", + "JsonApiUserGroupIn": { + "description": "JSON:API representation of userGroup entity.", "properties": { "attributes": { "properties": { - "areRelationsValid": { - "type": "boolean" - }, - "content": { - "description": "Free-form JSON content. Maximum supported length is 250000 characters.", - "example": { - "identifier": { - "id": "label.leaf", - "type": "label" - }, - "someBoolProp": false - }, - "type": "object" - }, - "description": { - "maxLength": 10000, - "type": "string" - }, - "tags": { - "items": { - "type": "string" - }, - "type": "array" - }, - "title": { + "name": { "maxLength": 255, "type": "string" } @@ -13000,181 +13452,41 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, + "relationships": { + "properties": { + "parents": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserGroupToManyLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" + }, "type": { "description": "Object type", "enum": [ - "visualizationObject" + "userGroup" ], - "example": "visualizationObject", + "example": "userGroup", "type": "string" } }, "required": [ - "attributes", "id", "type" ], "type": "object" }, - "JsonApiVisualizationObjectPatchDocument": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiVisualizationObjectPatch" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "JsonApiVisualizationObjectPostOptionalId": { - "description": "JSON:API representation of visualizationObject entity.", - "properties": { - "attributes": { - "properties": { - "areRelationsValid": { - "type": "boolean" - }, - "content": { - "description": "Free-form JSON content. Maximum supported length is 250000 characters.", - "example": { - "identifier": { - "id": "label.leaf", - "type": "label" - }, - "someBoolProp": false - }, - "type": "object" - }, - "description": { - "maxLength": 10000, - "type": "string" - }, - "tags": { - "items": { - "type": "string" - }, - "type": "array" - }, - "title": { - "maxLength": 255, - "type": "string" - } - }, - "required": [ - "content" - ], - "type": "object" - }, - "id": { - "description": "API identifier of an object", - "example": "id1", - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", - "type": "string" - }, - "type": { - "description": "Object type", - "enum": [ - "visualizationObject" - ], - "example": "visualizationObject", - "type": "string" - } - }, - "required": [ - "attributes", - "type" - ], - "type": "object" - }, - "JsonApiVisualizationObjectPostOptionalIdDocument": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiVisualizationObjectPostOptionalId" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "JsonApiVisualizationObjectToManyLinkage": { - "description": "References to other resource objects in a to-many (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", - "items": { - "$ref": "#/components/schemas/JsonApiVisualizationObjectLinkage" - }, - "type": "array" - }, - "JsonApiVisualizationObjectToOneLinkage": { - "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", - "nullable": true, - "oneOf": [ - { - "$ref": "#/components/schemas/JsonApiVisualizationObjectLinkage" - } - ] - }, - "JsonApiWorkspaceDataFilterIn": { - "description": "JSON:API representation of workspaceDataFilter entity.", - "properties": { - "attributes": { - "properties": { - "columnName": { - "maxLength": 255, - "type": "string" - }, - "description": { - "maxLength": 10000, - "type": "string" - }, - "title": { - "maxLength": 255, - "type": "string" - } - }, - "type": "object" - }, - "id": { - "description": "API identifier of an object", - "example": "id1", - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", - "type": "string" - }, - "relationships": { - "properties": { - "filterSettings": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingToManyLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - } - }, - "type": "object" - }, - "type": { - "description": "Object type", - "enum": [ - "workspaceDataFilter" - ], - "example": "workspaceDataFilter", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "JsonApiWorkspaceDataFilterInDocument": { + "JsonApiUserGroupInDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterIn" + "$ref": "#/components/schemas/JsonApiUserGroupIn" } }, "required": [ @@ -13182,7 +13494,7 @@ ], "type": "object" }, - "JsonApiWorkspaceDataFilterLinkage": { + "JsonApiUserGroupLinkage": { "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", "properties": { "id": { @@ -13190,7 +13502,7 @@ }, "type": { "enum": [ - "workspaceDataFilter" + "userGroup" ], "type": "string" } @@ -13201,20 +13513,12 @@ ], "type": "object" }, - "JsonApiWorkspaceDataFilterOut": { - "description": "JSON:API representation of workspaceDataFilter entity.", + "JsonApiUserGroupOut": { + "description": "JSON:API representation of userGroup entity.", "properties": { "attributes": { "properties": { - "columnName": { - "maxLength": 255, - "type": "string" - }, - "description": { - "maxLength": 10000, - "type": "string" - }, - "title": { + "name": { "maxLength": 255, "type": "string" } @@ -13227,38 +13531,12 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "meta": { - "properties": { - "origin": { - "properties": { - "originId": { - "description": "defines id of the workspace where the entity comes from", - "type": "string" - }, - "originType": { - "description": "defines type of the origin of the entity", - "enum": [ - "NATIVE", - "PARENT" - ], - "type": "string" - } - }, - "required": [ - "originId", - "originType" - ], - "type": "object" - } - }, - "type": "object" - }, "relationships": { "properties": { - "filterSettings": { + "parents": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingToManyLinkage" + "$ref": "#/components/schemas/JsonApiUserGroupToManyLinkage" } }, "required": [ @@ -13272,9 +13550,9 @@ "type": { "description": "Object type", "enum": [ - "workspaceDataFilter" + "userGroup" ], - "example": "workspaceDataFilter", + "example": "userGroup", "type": "string" } }, @@ -13284,15 +13562,15 @@ ], "type": "object" }, - "JsonApiWorkspaceDataFilterOutDocument": { + "JsonApiUserGroupOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterOut" + "$ref": "#/components/schemas/JsonApiUserGroupOut" }, "included": { "description": "Included resources", "items": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingOutWithLinks" + "$ref": "#/components/schemas/JsonApiUserGroupOutWithLinks" }, "type": "array", "uniqueItems": true @@ -13306,12 +13584,12 @@ ], "type": "object" }, - "JsonApiWorkspaceDataFilterOutList": { + "JsonApiUserGroupOutList": { "description": "A JSON:API document with a list of resources", "properties": { "data": { "items": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterOutWithLinks" + "$ref": "#/components/schemas/JsonApiUserGroupOutWithLinks" }, "type": "array", "uniqueItems": true @@ -13319,7 +13597,7 @@ "included": { "description": "Included resources", "items": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingOutWithLinks" + "$ref": "#/components/schemas/JsonApiUserGroupOutWithLinks" }, "type": "array", "uniqueItems": true @@ -13341,30 +13619,22 @@ ], "type": "object" }, - "JsonApiWorkspaceDataFilterOutWithLinks": { + "JsonApiUserGroupOutWithLinks": { "allOf": [ { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterOut" + "$ref": "#/components/schemas/JsonApiUserGroupOut" }, { "$ref": "#/components/schemas/ObjectLinksContainer" } ] }, - "JsonApiWorkspaceDataFilterPatch": { - "description": "JSON:API representation of patching workspaceDataFilter entity.", + "JsonApiUserGroupPatch": { + "description": "JSON:API representation of patching userGroup entity.", "properties": { "attributes": { "properties": { - "columnName": { - "maxLength": 255, - "type": "string" - }, - "description": { - "maxLength": 10000, - "type": "string" - }, - "title": { + "name": { "maxLength": 255, "type": "string" } @@ -13379,10 +13649,10 @@ }, "relationships": { "properties": { - "filterSettings": { + "parents": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingToManyLinkage" + "$ref": "#/components/schemas/JsonApiUserGroupToManyLinkage" } }, "required": [ @@ -13396,9 +13666,9 @@ "type": { "description": "Object type", "enum": [ - "workspaceDataFilter" + "userGroup" ], - "example": "workspaceDataFilter", + "example": "userGroup", "type": "string" } }, @@ -13408,10 +13678,10 @@ ], "type": "object" }, - "JsonApiWorkspaceDataFilterPatchDocument": { + "JsonApiUserGroupPatchDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterPatch" + "$ref": "#/components/schemas/JsonApiUserGroupPatch" } }, "required": [ @@ -13419,22 +13689,160 @@ ], "type": "object" }, - "JsonApiWorkspaceDataFilterSettingIn": { - "description": "JSON:API representation of workspaceDataFilterSetting entity.", - "properties": { + "JsonApiUserGroupToManyLinkage": { + "description": "References to other resource objects in a to-many (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "items": { + "$ref": "#/components/schemas/JsonApiUserGroupLinkage" + }, + "type": "array" + }, + "JsonApiUserGroupToOneLinkage": { + "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "nullable": true, + "oneOf": [ + { + "$ref": "#/components/schemas/JsonApiUserGroupLinkage" + } + ] + }, + "JsonApiUserIdentifierLinkage": { + "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", + "properties": { + "id": { + "type": "string" + }, + "type": { + "enum": [ + "userIdentifier" + ], + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "JsonApiUserIdentifierOut": { + "description": "JSON:API representation of userIdentifier entity.", + "properties": { "attributes": { "properties": { - "description": { - "maxLength": 10000, + "email": { + "maxLength": 255, "type": "string" }, - "filterValues": { - "items": { - "type": "string" - }, - "type": "array" + "firstname": { + "maxLength": 255, + "type": "string" }, - "title": { + "lastname": { + "maxLength": 255, + "type": "string" + } + }, + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "description": "Object type", + "enum": [ + "userIdentifier" + ], + "example": "userIdentifier", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "JsonApiUserIdentifierOutDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserIdentifierOut" + }, + "links": { + "$ref": "#/components/schemas/ObjectLinks" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiUserIdentifierOutList": { + "description": "A JSON:API document with a list of resources", + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/JsonApiUserIdentifierOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ListLinks" + }, + "meta": { + "properties": { + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + }, + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiUserIdentifierOutWithLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiUserIdentifierOut" + }, + { + "$ref": "#/components/schemas/ObjectLinksContainer" + } + ] + }, + "JsonApiUserIdentifierToOneLinkage": { + "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "nullable": true, + "oneOf": [ + { + "$ref": "#/components/schemas/JsonApiUserIdentifierLinkage" + } + ] + }, + "JsonApiUserIn": { + "description": "JSON:API representation of user entity.", + "properties": { + "attributes": { + "properties": { + "authenticationId": { + "maxLength": 255, + "type": "string" + }, + "email": { + "maxLength": 255, + "type": "string" + }, + "firstname": { + "maxLength": 255, + "type": "string" + }, + "lastname": { "maxLength": 255, "type": "string" } @@ -13449,10 +13857,10 @@ }, "relationships": { "properties": { - "workspaceDataFilter": { + "userGroups": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterToOneLinkage" + "$ref": "#/components/schemas/JsonApiUserGroupToManyLinkage" } }, "required": [ @@ -13466,9 +13874,9 @@ "type": { "description": "Object type", "enum": [ - "workspaceDataFilterSetting" + "user" ], - "example": "workspaceDataFilterSetting", + "example": "user", "type": "string" } }, @@ -13478,10 +13886,10 @@ ], "type": "object" }, - "JsonApiWorkspaceDataFilterSettingInDocument": { + "JsonApiUserInDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingIn" + "$ref": "#/components/schemas/JsonApiUserIn" } }, "required": [ @@ -13489,7 +13897,7 @@ ], "type": "object" }, - "JsonApiWorkspaceDataFilterSettingLinkage": { + "JsonApiUserLinkage": { "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", "properties": { "id": { @@ -13497,7 +13905,7 @@ }, "type": { "enum": [ - "workspaceDataFilterSetting" + "user" ], "type": "string" } @@ -13508,22 +13916,24 @@ ], "type": "object" }, - "JsonApiWorkspaceDataFilterSettingOut": { - "description": "JSON:API representation of workspaceDataFilterSetting entity.", + "JsonApiUserOut": { + "description": "JSON:API representation of user entity.", "properties": { "attributes": { "properties": { - "description": { - "maxLength": 10000, + "authenticationId": { + "maxLength": 255, "type": "string" }, - "filterValues": { - "items": { - "type": "string" - }, - "type": "array" + "email": { + "maxLength": 255, + "type": "string" }, - "title": { + "firstname": { + "maxLength": 255, + "type": "string" + }, + "lastname": { "maxLength": 255, "type": "string" } @@ -13536,38 +13946,12 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "meta": { - "properties": { - "origin": { - "properties": { - "originId": { - "description": "defines id of the workspace where the entity comes from", - "type": "string" - }, - "originType": { - "description": "defines type of the origin of the entity", - "enum": [ - "NATIVE", - "PARENT" - ], - "type": "string" - } - }, - "required": [ - "originId", - "originType" - ], - "type": "object" - } - }, - "type": "object" - }, "relationships": { "properties": { - "workspaceDataFilter": { + "userGroups": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterToOneLinkage" + "$ref": "#/components/schemas/JsonApiUserGroupToManyLinkage" } }, "required": [ @@ -13581,9 +13965,9 @@ "type": { "description": "Object type", "enum": [ - "workspaceDataFilterSetting" + "user" ], - "example": "workspaceDataFilterSetting", + "example": "user", "type": "string" } }, @@ -13593,15 +13977,15 @@ ], "type": "object" }, - "JsonApiWorkspaceDataFilterSettingOutDocument": { + "JsonApiUserOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingOut" + "$ref": "#/components/schemas/JsonApiUserOut" }, "included": { "description": "Included resources", "items": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterOutWithLinks" + "$ref": "#/components/schemas/JsonApiUserGroupOutWithLinks" }, "type": "array", "uniqueItems": true @@ -13615,12 +13999,12 @@ ], "type": "object" }, - "JsonApiWorkspaceDataFilterSettingOutList": { + "JsonApiUserOutList": { "description": "A JSON:API document with a list of resources", "properties": { "data": { "items": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingOutWithLinks" + "$ref": "#/components/schemas/JsonApiUserOutWithLinks" }, "type": "array", "uniqueItems": true @@ -13628,7 +14012,7 @@ "included": { "description": "Included resources", "items": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterOutWithLinks" + "$ref": "#/components/schemas/JsonApiUserGroupOutWithLinks" }, "type": "array", "uniqueItems": true @@ -13650,32 +14034,34 @@ ], "type": "object" }, - "JsonApiWorkspaceDataFilterSettingOutWithLinks": { + "JsonApiUserOutWithLinks": { "allOf": [ { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingOut" + "$ref": "#/components/schemas/JsonApiUserOut" }, { "$ref": "#/components/schemas/ObjectLinksContainer" } ] }, - "JsonApiWorkspaceDataFilterSettingPatch": { - "description": "JSON:API representation of patching workspaceDataFilterSetting entity.", + "JsonApiUserPatch": { + "description": "JSON:API representation of patching user entity.", "properties": { "attributes": { "properties": { - "description": { - "maxLength": 10000, + "authenticationId": { + "maxLength": 255, "type": "string" }, - "filterValues": { - "items": { - "type": "string" - }, - "type": "array" + "email": { + "maxLength": 255, + "type": "string" }, - "title": { + "firstname": { + "maxLength": 255, + "type": "string" + }, + "lastname": { "maxLength": 255, "type": "string" } @@ -13690,10 +14076,10 @@ }, "relationships": { "properties": { - "workspaceDataFilter": { + "userGroups": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterToOneLinkage" + "$ref": "#/components/schemas/JsonApiUserGroupToManyLinkage" } }, "required": [ @@ -13707,9 +14093,9 @@ "type": { "description": "Object type", "enum": [ - "workspaceDataFilterSetting" + "user" ], - "example": "workspaceDataFilterSetting", + "example": "user", "type": "string" } }, @@ -13719,10 +14105,10 @@ ], "type": "object" }, - "JsonApiWorkspaceDataFilterSettingPatchDocument": { + "JsonApiUserPatchDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingPatch" + "$ref": "#/components/schemas/JsonApiUserPatch" } }, "required": [ @@ -13730,92 +14116,34 @@ ], "type": "object" }, - "JsonApiWorkspaceDataFilterSettingToManyLinkage": { - "description": "References to other resource objects in a to-many (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", - "items": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingLinkage" - }, - "type": "array" - }, - "JsonApiWorkspaceDataFilterToManyLinkage": { - "description": "References to other resource objects in a to-many (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", - "items": { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterLinkage" - }, - "type": "array" - }, - "JsonApiWorkspaceDataFilterToOneLinkage": { - "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", - "nullable": true, - "oneOf": [ - { - "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterLinkage" - } - ] - }, - "JsonApiWorkspaceIn": { - "description": "JSON:API representation of workspace entity.", + "JsonApiUserSettingIn": { + "description": "JSON:API representation of userSetting entity.", "properties": { "attributes": { "properties": { - "cacheExtraLimit": { - "format": "int64", - "type": "integer" - }, - "dataSource": { - "description": "The data source used for the particular workspace instead of the one defined in the LDM inherited from its parent workspace. Such data source cannot be defined for a single or a top-parent workspace.", - "properties": { - "id": { - "description": "The ID of the used data source.", - "example": "snowflake.instance.1", - "type": "string" - }, - "schemaPath": { - "description": "The full schema path as array of its path parts. Will be rendered as subPath1.subPath2...", - "items": { - "description": "The part of the schema path.", - "example": "subPath", - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "id" - ], + "content": { + "description": "Free-form JSON content. Maximum supported length is 15000 characters.", + "example": {}, "type": "object" }, - "description": { - "maxLength": 255, - "nullable": true, - "type": "string" - }, - "earlyAccess": { - "deprecated": true, - "description": "The early access feature identifier. It is used to enable experimental features. Deprecated in favor of earlyAccessValues.", - "maxLength": 255, - "nullable": true, - "type": "string" - }, - "earlyAccessValues": { - "description": "The early access feature identifiers. They are used to enable experimental features.", - "items": { - "maxLength": 255, - "type": "string" - }, - "nullable": true, - "type": "array" - }, - "name": { - "maxLength": 255, - "nullable": true, - "type": "string" - }, - "prefix": { - "description": "Custom prefix of entity identifiers in workspace", - "maxLength": 255, - "nullable": true, - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": { + "enum": [ + "TIMEZONE", + "ACTIVE_THEME", + "ACTIVE_COLOR_PALETTE", + "WHITE_LABELING", + "LOCALE", + "METADATA_LOCALE", + "FORMAT_LOCALE", + "MAPBOX_TOKEN", + "WEEK_START", + "SHOW_HIDDEN_CATALOG_ITEMS", + "OPERATOR_OVERRIDES", + "TIMEZONE_VALIDATION_ENABLED", + "OPENAI_CONFIG", + "ENABLE_FILE_ANALYTICS", + "ALERT" + ], "type": "string" } }, @@ -13827,28 +14155,12 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "relationships": { - "properties": { - "parent": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceToOneLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - } - }, - "type": "object" - }, "type": { "description": "Object type", "enum": [ - "workspace" + "userSetting" ], - "example": "workspace", + "example": "userSetting", "type": "string" } }, @@ -13858,10 +14170,10 @@ ], "type": "object" }, - "JsonApiWorkspaceInDocument": { + "JsonApiUserSettingInDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceIn" + "$ref": "#/components/schemas/JsonApiUserSettingIn" } }, "required": [ @@ -13869,16 +14181,51 @@ ], "type": "object" }, - "JsonApiWorkspaceLinkage": { - "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", + "JsonApiUserSettingOut": { + "description": "JSON:API representation of userSetting entity.", "properties": { + "attributes": { + "properties": { + "content": { + "description": "Free-form JSON content. Maximum supported length is 15000 characters.", + "example": {}, + "type": "object" + }, + "type": { + "enum": [ + "TIMEZONE", + "ACTIVE_THEME", + "ACTIVE_COLOR_PALETTE", + "WHITE_LABELING", + "LOCALE", + "METADATA_LOCALE", + "FORMAT_LOCALE", + "MAPBOX_TOKEN", + "WEEK_START", + "SHOW_HIDDEN_CATALOG_ITEMS", + "OPERATOR_OVERRIDES", + "TIMEZONE_VALIDATION_ENABLED", + "OPENAI_CONFIG", + "ENABLE_FILE_ANALYTICS", + "ALERT" + ], + "type": "string" + } + }, + "type": "object" + }, "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, "type": { + "description": "Object type", "enum": [ - "workspace" + "userSetting" ], + "example": "userSetting", "type": "string" } }, @@ -13888,192 +14235,138 @@ ], "type": "object" }, - "JsonApiWorkspaceOut": { - "description": "JSON:API representation of workspace entity.", + "JsonApiUserSettingOutDocument": { "properties": { - "attributes": { + "data": { + "$ref": "#/components/schemas/JsonApiUserSettingOut" + }, + "links": { + "$ref": "#/components/schemas/ObjectLinks" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiUserSettingOutList": { + "description": "A JSON:API document with a list of resources", + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/JsonApiUserSettingOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ListLinks" + }, + "meta": { "properties": { - "cacheExtraLimit": { - "format": "int64", - "type": "integer" - }, - "dataSource": { - "description": "The data source used for the particular workspace instead of the one defined in the LDM inherited from its parent workspace. Such data source cannot be defined for a single or a top-parent workspace.", - "properties": { - "id": { - "description": "The ID of the used data source.", - "example": "snowflake.instance.1", - "type": "string" - }, - "schemaPath": { - "description": "The full schema path as array of its path parts. Will be rendered as subPath1.subPath2...", - "items": { - "description": "The part of the schema path.", - "example": "subPath", - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "id" - ], - "type": "object" - }, - "description": { - "maxLength": 255, - "nullable": true, - "type": "string" - }, - "earlyAccess": { - "deprecated": true, - "description": "The early access feature identifier. It is used to enable experimental features. Deprecated in favor of earlyAccessValues.", - "maxLength": 255, - "nullable": true, - "type": "string" - }, - "earlyAccessValues": { - "description": "The early access feature identifiers. They are used to enable experimental features.", - "items": { - "maxLength": 255, - "type": "string" - }, - "nullable": true, - "type": "array" - }, - "name": { - "maxLength": 255, - "nullable": true, - "type": "string" - }, - "prefix": { - "description": "Custom prefix of entity identifiers in workspace", - "maxLength": 255, - "nullable": true, - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", - "type": "string" + "page": { + "$ref": "#/components/schemas/PageMetadata" } }, "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiUserSettingOutWithLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiUserSettingOut" }, - "id": { - "description": "API identifier of an object", - "example": "id1", - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", - "type": "string" - }, - "meta": { + { + "$ref": "#/components/schemas/ObjectLinksContainer" + } + ] + }, + "JsonApiUserToManyLinkage": { + "description": "References to other resource objects in a to-many (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "items": { + "$ref": "#/components/schemas/JsonApiUserLinkage" + }, + "type": "array" + }, + "JsonApiUserToOneLinkage": { + "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "nullable": true, + "oneOf": [ + { + "$ref": "#/components/schemas/JsonApiUserLinkage" + } + ] + }, + "JsonApiVisualizationObjectIn": { + "description": "JSON:API representation of visualizationObject entity.", + "properties": { + "attributes": { "properties": { - "config": { - "properties": { - "approximateCountAvailable": { - "default": false, - "description": "is approximate count enabled - based on type of data-source connected to this workspace", - "type": "boolean" - }, - "dataSamplingAvailable": { - "default": false, - "description": "is sampling enabled - based on type of data-source connected to this workspace", - "type": "boolean" - }, - "showAllValuesOnDatesAvailable": { - "default": false, - "description": "is 'show all values' displayed for dates - based on type of data-source connected to this workspace", - "type": "boolean" - } - }, - "type": "object" + "areRelationsValid": { + "type": "boolean" }, - "dataModel": { - "properties": { - "datasetCount": { - "description": "include the number of dataset of each workspace", - "format": "int32", - "type": "integer" - } + "content": { + "description": "Free-form JSON content. Maximum supported length is 250000 characters.", + "example": { + "identifier": { + "id": "label.leaf", + "type": "label" + }, + "someBoolProp": false }, - "required": [ - "datasetCount" - ], "type": "object" }, - "hierarchy": { - "properties": { - "childrenCount": { - "description": "include the number of direct children of each workspace", - "format": "int32", - "type": "integer" - } - }, - "required": [ - "childrenCount" - ], - "type": "object" + "description": { + "maxLength": 10000, + "type": "string" }, - "permissions": { - "description": "List of valid permissions for a logged-in user.", + "tags": { "items": { - "enum": [ - "MANAGE", - "ANALYZE", - "EXPORT", - "EXPORT_TABULAR", - "EXPORT_PDF", - "VIEW" - ], "type": "string" }, "type": "array" + }, + "title": { + "maxLength": 255, + "type": "string" } }, + "required": [ + "content" + ], "type": "object" }, - "relationships": { - "properties": { - "parent": { - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceToOneLinkage" - } - }, - "required": [ - "data" - ], - "type": "object" - } - }, - "type": "object" + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" }, "type": { "description": "Object type", "enum": [ - "workspace" + "visualizationObject" ], - "example": "workspace", + "example": "visualizationObject", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiWorkspaceOutDocument": { + "JsonApiVisualizationObjectInDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceOut" - }, - "included": { - "description": "Included resources", - "items": { - "$ref": "#/components/schemas/JsonApiWorkspaceOutWithLinks" - }, - "type": "array", - "uniqueItems": true - }, - "links": { - "$ref": "#/components/schemas/ObjectLinks" + "$ref": "#/components/schemas/JsonApiVisualizationObjectIn" } }, "required": [ @@ -14081,117 +14374,70 @@ ], "type": "object" }, - "JsonApiWorkspaceOutList": { - "description": "A JSON:API document with a list of resources", + "JsonApiVisualizationObjectLinkage": { + "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/JsonApiWorkspaceOutWithLinks" - }, - "type": "array", - "uniqueItems": true - }, - "included": { - "description": "Included resources", - "items": { - "$ref": "#/components/schemas/JsonApiWorkspaceOutWithLinks" - }, - "type": "array", - "uniqueItems": true - }, - "links": { - "$ref": "#/components/schemas/ListLinks" + "id": { + "type": "string" }, - "meta": { - "properties": { - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - }, - "type": "object" + "type": { + "enum": [ + "visualizationObject" + ], + "type": "string" } }, "required": [ - "data" + "id", + "type" ], "type": "object" }, - "JsonApiWorkspaceOutWithLinks": { - "allOf": [ - { - "$ref": "#/components/schemas/JsonApiWorkspaceOut" - }, - { - "$ref": "#/components/schemas/ObjectLinksContainer" - } - ] - }, - "JsonApiWorkspacePatch": { - "description": "JSON:API representation of patching workspace entity.", + "JsonApiVisualizationObjectOut": { + "description": "JSON:API representation of visualizationObject entity.", "properties": { "attributes": { "properties": { - "cacheExtraLimit": { - "format": "int64", - "type": "integer" + "areRelationsValid": { + "type": "boolean" }, - "dataSource": { - "description": "The data source used for the particular workspace instead of the one defined in the LDM inherited from its parent workspace. Such data source cannot be defined for a single or a top-parent workspace.", - "properties": { - "id": { - "description": "The ID of the used data source.", - "example": "snowflake.instance.1", - "type": "string" + "content": { + "description": "Free-form JSON content. Maximum supported length is 250000 characters.", + "example": { + "identifier": { + "id": "label.leaf", + "type": "label" }, - "schemaPath": { - "description": "The full schema path as array of its path parts. Will be rendered as subPath1.subPath2...", - "items": { - "description": "The part of the schema path.", - "example": "subPath", - "type": "string" - }, - "type": "array" - } + "someBoolProp": false }, - "required": [ - "id" - ], "type": "object" }, + "createdAt": { + "format": "date-time", + "type": "string" + }, "description": { - "maxLength": 255, - "nullable": true, + "maxLength": 10000, "type": "string" }, - "earlyAccess": { - "deprecated": true, - "description": "The early access feature identifier. It is used to enable experimental features. Deprecated in favor of earlyAccessValues.", - "maxLength": 255, - "nullable": true, + "modifiedAt": { + "format": "date-time", "type": "string" }, - "earlyAccessValues": { - "description": "The early access feature identifiers. They are used to enable experimental features.", + "tags": { "items": { - "maxLength": 255, "type": "string" }, - "nullable": true, "type": "array" }, - "name": { - "maxLength": 255, - "nullable": true, - "type": "string" - }, - "prefix": { - "description": "Custom prefix of entity identifiers in workspace", + "title": { "maxLength": 255, - "nullable": true, - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" } }, + "required": [ + "content" + ], "type": "object" }, "id": { @@ -14200,12 +14446,104 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, + "meta": { + "properties": { + "origin": { + "properties": { + "originId": { + "description": "defines id of the workspace where the entity comes from", + "type": "string" + }, + "originType": { + "description": "defines type of the origin of the entity", + "enum": [ + "NATIVE", + "PARENT" + ], + "type": "string" + } + }, + "required": [ + "originId", + "originType" + ], + "type": "object" + } + }, + "type": "object" + }, "relationships": { "properties": { - "parent": { + "attributes": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceToOneLinkage" + "$ref": "#/components/schemas/JsonApiAttributeToManyLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "createdBy": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "datasets": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiDatasetToManyLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "facts": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiFactToManyLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "labels": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiLabelToManyLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "metrics": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiMetricToManyLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "modifiedBy": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" } }, "required": [ @@ -14219,22 +14557,34 @@ "type": { "description": "Object type", "enum": [ - "workspace" + "visualizationObject" ], - "example": "workspace", + "example": "visualizationObject", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiWorkspacePatchDocument": { + "JsonApiVisualizationObjectOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspacePatch" + "$ref": "#/components/schemas/JsonApiVisualizationObjectOut" + }, + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiMetricOutIncludes" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ObjectLinks" } }, "required": [ @@ -14242,33 +14592,82 @@ ], "type": "object" }, - "JsonApiWorkspaceSettingIn": { - "description": "JSON:API representation of workspaceSetting entity.", + "JsonApiVisualizationObjectOutList": { + "description": "A JSON:API document with a list of resources", + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/JsonApiVisualizationObjectOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiMetricOutIncludes" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ListLinks" + }, + "meta": { + "properties": { + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + }, + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiVisualizationObjectOutWithLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiVisualizationObjectOut" + }, + { + "$ref": "#/components/schemas/ObjectLinksContainer" + } + ] + }, + "JsonApiVisualizationObjectPatch": { + "description": "JSON:API representation of patching visualizationObject entity.", "properties": { "attributes": { "properties": { + "areRelationsValid": { + "type": "boolean" + }, "content": { - "description": "Free-form JSON content. Maximum supported length is 15000 characters.", - "example": {}, + "description": "Free-form JSON content. Maximum supported length is 250000 characters.", + "example": { + "identifier": { + "id": "label.leaf", + "type": "label" + }, + "someBoolProp": false + }, "type": "object" }, - "type": { - "enum": [ - "TIMEZONE", - "ACTIVE_THEME", - "ACTIVE_COLOR_PALETTE", - "WHITE_LABELING", - "LOCALE", - "METADATA_LOCALE", - "FORMAT_LOCALE", - "MAPBOX_TOKEN", - "WEEK_START", - "SHOW_HIDDEN_CATALOG_ITEMS", - "OPERATOR_OVERRIDES", - "TIMEZONE_VALIDATION_ENABLED", - "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" - ], + "description": { + "maxLength": 10000, + "type": "string" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "maxLength": 255, "type": "string" } }, @@ -14283,22 +14682,23 @@ "type": { "description": "Object type", "enum": [ - "workspaceSetting" + "visualizationObject" ], - "example": "workspaceSetting", + "example": "visualizationObject", "type": "string" } }, "required": [ + "attributes", "id", "type" ], "type": "object" }, - "JsonApiWorkspaceSettingInDocument": { + "JsonApiVisualizationObjectPatchDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceSettingIn" + "$ref": "#/components/schemas/JsonApiVisualizationObjectPatch" } }, "required": [ @@ -14306,33 +14706,195 @@ ], "type": "object" }, - "JsonApiWorkspaceSettingOut": { - "description": "JSON:API representation of workspaceSetting entity.", + "JsonApiVisualizationObjectPostOptionalId": { + "description": "JSON:API representation of visualizationObject entity.", "properties": { "attributes": { "properties": { + "areRelationsValid": { + "type": "boolean" + }, "content": { - "description": "Free-form JSON content. Maximum supported length is 15000 characters.", - "example": {}, + "description": "Free-form JSON content. Maximum supported length is 250000 characters.", + "example": { + "identifier": { + "id": "label.leaf", + "type": "label" + }, + "someBoolProp": false + }, "type": "object" }, - "type": { - "enum": [ - "TIMEZONE", - "ACTIVE_THEME", - "ACTIVE_COLOR_PALETTE", - "WHITE_LABELING", - "LOCALE", - "METADATA_LOCALE", - "FORMAT_LOCALE", - "MAPBOX_TOKEN", - "WEEK_START", - "SHOW_HIDDEN_CATALOG_ITEMS", - "OPERATOR_OVERRIDES", - "TIMEZONE_VALIDATION_ENABLED", - "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "description": { + "maxLength": 10000, + "type": "string" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "maxLength": 255, + "type": "string" + } + }, + "required": [ + "content" + ], + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "description": "Object type", + "enum": [ + "visualizationObject" + ], + "example": "visualizationObject", + "type": "string" + } + }, + "required": [ + "attributes", + "type" + ], + "type": "object" + }, + "JsonApiVisualizationObjectPostOptionalIdDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiVisualizationObjectPostOptionalId" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiVisualizationObjectToManyLinkage": { + "description": "References to other resource objects in a to-many (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "items": { + "$ref": "#/components/schemas/JsonApiVisualizationObjectLinkage" + }, + "type": "array" + }, + "JsonApiVisualizationObjectToOneLinkage": { + "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "nullable": true, + "oneOf": [ + { + "$ref": "#/components/schemas/JsonApiVisualizationObjectLinkage" + } + ] + }, + "JsonApiWorkspaceDataFilterIn": { + "description": "JSON:API representation of workspaceDataFilter entity.", + "properties": { + "attributes": { + "properties": { + "columnName": { + "maxLength": 255, + "type": "string" + }, + "description": { + "maxLength": 10000, + "type": "string" + }, + "title": { + "maxLength": 255, + "type": "string" + } + }, + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "relationships": { + "properties": { + "filterSettings": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingToManyLinkage" + } + }, + "required": [ + "data" ], + "type": "object" + } + }, + "type": "object" + }, + "type": { + "description": "Object type", + "enum": [ + "workspaceDataFilter" + ], + "example": "workspaceDataFilter", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "JsonApiWorkspaceDataFilterInDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterIn" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiWorkspaceDataFilterLinkage": { + "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", + "properties": { + "id": { + "type": "string" + }, + "type": { + "enum": [ + "workspaceDataFilter" + ], + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "JsonApiWorkspaceDataFilterOut": { + "description": "JSON:API representation of workspaceDataFilter entity.", + "properties": { + "attributes": { + "properties": { + "columnName": { + "maxLength": 255, + "type": "string" + }, + "description": { + "maxLength": 10000, + "type": "string" + }, + "title": { + "maxLength": 255, "type": "string" } }, @@ -14370,12 +14932,28 @@ }, "type": "object" }, + "relationships": { + "properties": { + "filterSettings": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingToManyLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" + }, "type": { "description": "Object type", "enum": [ - "workspaceSetting" + "workspaceDataFilter" ], - "example": "workspaceSetting", + "example": "workspaceDataFilter", "type": "string" } }, @@ -14385,10 +14963,18 @@ ], "type": "object" }, - "JsonApiWorkspaceSettingOutDocument": { + "JsonApiWorkspaceDataFilterOutDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceSettingOut" + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterOut" + }, + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingOutWithLinks" + }, + "type": "array", + "uniqueItems": true }, "links": { "$ref": "#/components/schemas/ObjectLinks" @@ -14399,12 +14985,20 @@ ], "type": "object" }, - "JsonApiWorkspaceSettingOutList": { + "JsonApiWorkspaceDataFilterOutList": { "description": "A JSON:API document with a list of resources", "properties": { "data": { "items": { - "$ref": "#/components/schemas/JsonApiWorkspaceSettingOutWithLinks" + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingOutWithLinks" }, "type": "array", "uniqueItems": true @@ -14426,43 +15020,31 @@ ], "type": "object" }, - "JsonApiWorkspaceSettingOutWithLinks": { + "JsonApiWorkspaceDataFilterOutWithLinks": { "allOf": [ { - "$ref": "#/components/schemas/JsonApiWorkspaceSettingOut" + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterOut" }, { "$ref": "#/components/schemas/ObjectLinksContainer" } ] }, - "JsonApiWorkspaceSettingPatch": { - "description": "JSON:API representation of patching workspaceSetting entity.", + "JsonApiWorkspaceDataFilterPatch": { + "description": "JSON:API representation of patching workspaceDataFilter entity.", "properties": { "attributes": { "properties": { - "content": { - "description": "Free-form JSON content. Maximum supported length is 15000 characters.", - "example": {}, - "type": "object" + "columnName": { + "maxLength": 255, + "type": "string" }, - "type": { - "enum": [ - "TIMEZONE", - "ACTIVE_THEME", - "ACTIVE_COLOR_PALETTE", - "WHITE_LABELING", - "LOCALE", - "METADATA_LOCALE", - "FORMAT_LOCALE", - "MAPBOX_TOKEN", - "WEEK_START", - "SHOW_HIDDEN_CATALOG_ITEMS", - "OPERATOR_OVERRIDES", - "TIMEZONE_VALIDATION_ENABLED", - "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" - ], + "description": { + "maxLength": 10000, + "type": "string" + }, + "title": { + "maxLength": 255, "type": "string" } }, @@ -14474,12 +15056,28 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, + "relationships": { + "properties": { + "filterSettings": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingToManyLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" + }, "type": { "description": "Object type", "enum": [ - "workspaceSetting" + "workspaceDataFilter" ], - "example": "workspaceSetting", + "example": "workspaceDataFilter", "type": "string" } }, @@ -14489,10 +15087,10 @@ ], "type": "object" }, - "JsonApiWorkspaceSettingPatchDocument": { + "JsonApiWorkspaceDataFilterPatchDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceSettingPatch" + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterPatch" } }, "required": [ @@ -14500,33 +15098,23 @@ ], "type": "object" }, - "JsonApiWorkspaceSettingPostOptionalId": { - "description": "JSON:API representation of workspaceSetting entity.", + "JsonApiWorkspaceDataFilterSettingIn": { + "description": "JSON:API representation of workspaceDataFilterSetting entity.", "properties": { "attributes": { "properties": { - "content": { - "description": "Free-form JSON content. Maximum supported length is 15000 characters.", - "example": {}, - "type": "object" + "description": { + "maxLength": 10000, + "type": "string" }, - "type": { - "enum": [ - "TIMEZONE", - "ACTIVE_THEME", - "ACTIVE_COLOR_PALETTE", - "WHITE_LABELING", - "LOCALE", - "METADATA_LOCALE", - "FORMAT_LOCALE", - "MAPBOX_TOKEN", - "WEEK_START", - "SHOW_HIDDEN_CATALOG_ITEMS", - "OPERATOR_OVERRIDES", - "TIMEZONE_VALIDATION_ENABLED", - "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" - ], + "filterValues": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "maxLength": 255, "type": "string" } }, @@ -14538,24 +15126,41 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, + "relationships": { + "properties": { + "workspaceDataFilter": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" + }, "type": { "description": "Object type", "enum": [ - "workspaceSetting" + "workspaceDataFilterSetting" ], - "example": "workspaceSetting", + "example": "workspaceDataFilterSetting", "type": "string" } }, "required": [ + "id", "type" ], "type": "object" }, - "JsonApiWorkspaceSettingPostOptionalIdDocument": { + "JsonApiWorkspaceDataFilterSettingInDocument": { "properties": { "data": { - "$ref": "#/components/schemas/JsonApiWorkspaceSettingPostOptionalId" + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingIn" } }, "required": [ @@ -14563,37 +15168,16 @@ ], "type": "object" }, - "JsonApiWorkspaceToOneLinkage": { - "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", - "nullable": true, - "oneOf": [ - { - "$ref": "#/components/schemas/JsonApiWorkspaceLinkage" - } - ] - }, - "JsonNode": { - "description": "Free-form JSON object", - "example": {}, - "maxLength": 15000, - "nullable": true, - "type": "object" - }, - "LabelIdentifier": { - "description": "A label identifier.", + "JsonApiWorkspaceDataFilterSettingLinkage": { + "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", "properties": { "id": { - "description": "Label ID.", - "example": "label_id", - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, "type": { - "description": "A type of the label.", "enum": [ - "label" + "workspaceDataFilterSetting" ], - "example": "label", "type": "string" } }, @@ -14603,421 +15187,377 @@ ], "type": "object" }, - "ListLinks": { - "allOf": [ - { - "$ref": "#/components/schemas/ObjectLinks" - }, - { + "JsonApiWorkspaceDataFilterSettingOut": { + "description": "JSON:API representation of workspaceDataFilterSetting entity.", + "properties": { + "attributes": { "properties": { - "next": { - "description": "A string containing the link's URL for the next page of data.", - "format": "uri", + "description": { + "maxLength": 10000, + "type": "string" + }, + "filterValues": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "maxLength": 255, "type": "string" } }, "type": "object" - } - ] - }, - "LocaleRequest": { - "properties": { - "locale": { - "description": "Requested locale in the form of language tag (see RFC 5646).", - "example": "en-US", + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "meta": { + "properties": { + "origin": { + "properties": { + "originId": { + "description": "defines id of the workspace where the entity comes from", + "type": "string" + }, + "originType": { + "description": "defines type of the origin of the entity", + "enum": [ + "NATIVE", + "PARENT" + ], + "type": "string" + } + }, + "required": [ + "originId", + "originType" + ], + "type": "object" + } + }, + "type": "object" + }, + "relationships": { + "properties": { + "workspaceDataFilter": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" + }, + "type": { + "description": "Object type", + "enum": [ + "workspaceDataFilterSetting" + ], + "example": "workspaceDataFilterSetting", "type": "string" } }, "required": [ - "locale" + "id", + "type" ], "type": "object" }, - "Note": { + "JsonApiWorkspaceDataFilterSettingOutDocument": { "properties": { - "appliesTo": { - "enum": [ - "SOURCE", - "TARGET" - ], - "type": "string", - "xml": { - "attribute": true - } - }, - "category": { - "type": "string", - "xml": { - "attribute": true - } + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingOut" }, - "content": { - "type": "string" + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterOutWithLinks" + }, + "type": "array", + "uniqueItems": true }, - "id": { - "type": "string", - "xml": { - "attribute": true - } - }, - "otherAttributes": { - "additionalProperties": { - "type": "string" - }, - "type": "object" - }, - "priority": { - "format": "int32", - "type": "integer", - "xml": { - "attribute": true - } - } - }, - "type": "object", - "xml": { - "name": "note", - "namespace": "urn:oasis:names:tc:xliff:document:2.0" - } - }, - "Notes": { - "properties": { - "note": { - "items": { - "$ref": "#/components/schemas/Note" - }, - "type": "array" - } - }, - "required": [ - "note" - ], - "type": "object", - "xml": { - "name": "notes", - "namespace": "urn:oasis:names:tc:xliff:document:2.0" - } - }, - "NotificationTrigger": { - "properties": { - "metadata": { - "$ref": "#/components/schemas/JsonNode" - }, - "type": { - "description": "The notification trigger type.", - "enum": [ - "SCHEDULE", - "ALERT" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "ObjectLinks": { - "properties": { - "self": { - "description": "A string containing the link's URL.", - "format": "uri", - "type": "string" - } - }, - "required": [ - "self" - ], - "type": "object" - }, - "ObjectLinksContainer": { - "properties": { "links": { "$ref": "#/components/schemas/ObjectLinks" } }, + "required": [ + "data" + ], "type": "object" }, - "OrganizationPermissionAssignment": { - "description": "Organization permission assignments", + "JsonApiWorkspaceDataFilterSettingOutList": { + "description": "A JSON:API document with a list of resources", "properties": { - "assigneeIdentifier": { - "$ref": "#/components/schemas/AssigneeIdentifier" + "data": { + "items": { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingOutWithLinks" + }, + "type": "array", + "uniqueItems": true }, - "permissions": { + "included": { + "description": "Included resources", "items": { - "enum": [ - "MANAGE", - "SELF_CREATE_TOKEN" - ], - "type": "string" + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterOutWithLinks" }, - "type": "array" + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ListLinks" + }, + "meta": { + "properties": { + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + }, + "type": "object" } }, "required": [ - "assigneeIdentifier", - "permissions" + "data" ], "type": "object" }, - "PageMetadata": { - "properties": { - "number": { - "description": "The number of the current page", - "format": "int32", - "type": "integer" - }, - "size": { - "description": "The size of the current page", - "format": "int32", - "type": "integer" - }, - "totalElements": { - "description": "The total number of elements", - "format": "int32", - "type": "integer" + "JsonApiWorkspaceDataFilterSettingOutWithLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingOut" }, - "totalPages": { - "description": "The total number of pages", - "format": "int32", - "type": "integer" + { + "$ref": "#/components/schemas/ObjectLinksContainer" } - }, - "type": "object" + ] }, - "Parameter": { + "JsonApiWorkspaceDataFilterSettingPatch": { + "description": "JSON:API representation of patching workspaceDataFilterSetting entity.", "properties": { - "name": { - "type": "string" + "attributes": { + "properties": { + "description": { + "maxLength": 10000, + "type": "string" + }, + "filterValues": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "maxLength": 255, + "type": "string" + } + }, + "type": "object" }, - "value": { + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" - } - }, - "required": [ - "name", - "value" - ], - "type": "object" - }, - "PdfTableStyle": { - "description": "Custom CSS styles for the table. (PDF, HTML)", - "example": [ - { - "properties": [ - { - "key": "font-size", - "value": "30px" + }, + "relationships": { + "properties": { + "workspaceDataFilter": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" } - ], - "selector": "th" - } - ], - "properties": { - "properties": { - "description": "List of CSS properties.", - "items": { - "$ref": "#/components/schemas/PdfTableStyleProperty" }, - "type": "array" + "type": "object" }, - "selector": { - "description": "CSS selector where to apply given properties.", + "type": { + "description": "Object type", + "enum": [ + "workspaceDataFilterSetting" + ], + "example": "workspaceDataFilterSetting", "type": "string" } }, "required": [ - "selector" + "id", + "type" ], "type": "object" }, - "PdfTableStyleProperty": { - "description": "CSS property.", + "JsonApiWorkspaceDataFilterSettingPatchDocument": { "properties": { - "key": { - "description": "CSS property key.", - "type": "string" - }, - "value": { - "description": "CSS property value.", - "type": "string" + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingPatch" } }, "required": [ - "key", - "value" + "data" ], "type": "object" }, - "PdmLdmRequest": { - "description": "PDM additions wrapper.", - "properties": { - "sqls": { - "description": "List of SQL datasets.", - "items": { - "$ref": "#/components/schemas/PdmSql" - }, - "type": "array" - }, - "tables": { - "description": "List of physical database tables.", - "items": { - "$ref": "#/components/schemas/DeclarativeTable" - }, - "type": "array" - } + "JsonApiWorkspaceDataFilterSettingToManyLinkage": { + "description": "References to other resource objects in a to-many (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "items": { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterSettingLinkage" }, - "type": "object" + "type": "array" }, - "PdmSql": { - "description": "SQL dataset definition.", - "properties": { - "columns": { - "description": "Columns defining SQL dataset.", - "items": { - "$ref": "#/components/schemas/SqlColumn" - }, - "type": "array" - }, - "statement": { - "description": "SQL statement.", - "example": "select * from abc", - "type": "string" - }, - "title": { - "description": "SQL dataset title.", - "example": "My special dataset", - "type": "string" - } + "JsonApiWorkspaceDataFilterToManyLinkage": { + "description": "References to other resource objects in a to-many (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "items": { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterLinkage" }, - "required": [ - "statement", - "title" - ], - "type": "object" + "type": "array" }, - "PermissionsAssignment": { - "properties": { - "assignees": { - "items": { - "$ref": "#/components/schemas/AssigneeIdentifier" - }, - "type": "array" - }, - "dataSources": { - "items": { - "$ref": "#/components/schemas/UserManagementDataSourcePermissionAssignment" - }, - "type": "array" - }, - "workspaces": { - "items": { - "$ref": "#/components/schemas/UserManagementWorkspacePermissionAssignment" - }, - "type": "array" + "JsonApiWorkspaceDataFilterToOneLinkage": { + "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "nullable": true, + "oneOf": [ + { + "$ref": "#/components/schemas/JsonApiWorkspaceDataFilterLinkage" } - }, - "required": [ - "assignees" - ], - "type": "object" + ] }, - "PermissionsForAssignee": { - "allOf": [ - { - "$ref": "#/components/schemas/DashboardPermissionsAssignment" - }, - { + "JsonApiWorkspaceIn": { + "description": "JSON:API representation of workspace entity.", + "properties": { + "attributes": { "properties": { - "assigneeIdentifier": { - "$ref": "#/components/schemas/AssigneeIdentifier" + "cacheExtraLimit": { + "format": "int64", + "type": "integer" + }, + "dataSource": { + "description": "The data source used for the particular workspace instead of the one defined in the LDM inherited from its parent workspace. Such data source cannot be defined for a single or a top-parent workspace.", + "properties": { + "id": { + "description": "The ID of the used data source.", + "example": "snowflake.instance.1", + "type": "string" + }, + "schemaPath": { + "description": "The full schema path as array of its path parts. Will be rendered as subPath1.subPath2...", + "items": { + "description": "The part of the schema path.", + "example": "subPath", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "description": { + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "earlyAccess": { + "deprecated": true, + "description": "The early access feature identifier. It is used to enable experimental features. Deprecated in favor of earlyAccessValues.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "earlyAccessValues": { + "description": "The early access feature identifiers. They are used to enable experimental features.", + "items": { + "maxLength": 255, + "type": "string" + }, + "nullable": true, + "type": "array" + }, + "name": { + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "prefix": { + "description": "Custom prefix of entity identifiers in workspace", + "maxLength": 255, + "nullable": true, + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" } }, "type": "object" - } - ], - "description": "Desired levels of permissions for an assignee identified by an identifier.", - "required": [ - "assigneeIdentifier", - "permissions" - ], - "type": "object" - }, - "PermissionsForAssigneeRule": { - "allOf": [ - { - "$ref": "#/components/schemas/DashboardPermissionsAssignment" }, - { + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "relationships": { "properties": { - "assigneeRule": { - "$ref": "#/components/schemas/AssigneeRule" + "parent": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" } }, "type": "object" - } - ], - "description": "Desired levels of permissions for a collection of assignees identified by a rule.", - "required": [ - "assigneeRule", - "permissions" - ], - "type": "object" - }, - "PlatformUsage": { - "properties": { - "count": { - "format": "int32", - "type": "integer" }, - "name": { + "type": { + "description": "Object type", "enum": [ - "UserCount", - "WorkspaceCount" + "workspace" ], + "example": "workspace", "type": "string" } }, "required": [ - "name" + "id", + "type" ], "type": "object" }, - "PlatformUsageRequest": { + "JsonApiWorkspaceInDocument": { "properties": { - "usageItemNames": { - "items": { - "enum": [ - "UserCount", - "WorkspaceCount" - ], - "type": "string" - }, - "type": "array", - "uniqueItems": true + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceIn" } }, "required": [ - "usageItemNames" + "data" ], "type": "object" }, - "ReferenceIdentifier": { - "description": "A reference identifier.", + "JsonApiWorkspaceLinkage": { + "description": "The \\\"type\\\" and \\\"id\\\" to non-empty members.", "properties": { "id": { - "description": "Reference ID.", - "example": "customers", - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, "type": { - "description": "A type of the reference.", "enum": [ - "dataset" + "workspace" ], - "example": "DATASET", "type": "string" } }, @@ -15027,745 +15567,1016 @@ ], "type": "object" }, - "ReferenceSourceColumn": { - "properties": { - "column": { - "type": "string" - }, - "dataType": { - "enum": [ - "INT", - "STRING", - "DATE", - "NUMERIC", - "TIMESTAMP", - "TIMESTAMP_TZ", - "BOOLEAN" - ], - "type": "string" - }, - "target": { - "$ref": "#/components/schemas/DatasetGrain" - } - }, - "required": [ - "column", - "target" - ], - "type": "object" - }, - "ResolveSettingsRequest": { - "description": "A request containing setting IDs to resolve.", + "JsonApiWorkspaceOut": { + "description": "JSON:API representation of workspace entity.", "properties": { - "settings": { - "description": "An array of setting IDs to resolve.", - "example": [ - "timezone" - ], - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "settings" - ], - "type": "object" - }, - "ResolvedSetting": { - "description": "Setting and its value.", - "properties": { - "content": { - "$ref": "#/components/schemas/JsonNode" + "attributes": { + "properties": { + "cacheExtraLimit": { + "format": "int64", + "type": "integer" + }, + "dataSource": { + "description": "The data source used for the particular workspace instead of the one defined in the LDM inherited from its parent workspace. Such data source cannot be defined for a single or a top-parent workspace.", + "properties": { + "id": { + "description": "The ID of the used data source.", + "example": "snowflake.instance.1", + "type": "string" + }, + "schemaPath": { + "description": "The full schema path as array of its path parts. Will be rendered as subPath1.subPath2...", + "items": { + "description": "The part of the schema path.", + "example": "subPath", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "description": { + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "earlyAccess": { + "deprecated": true, + "description": "The early access feature identifier. It is used to enable experimental features. Deprecated in favor of earlyAccessValues.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "earlyAccessValues": { + "description": "The early access feature identifiers. They are used to enable experimental features.", + "items": { + "maxLength": 255, + "type": "string" + }, + "nullable": true, + "type": "array" + }, + "name": { + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "prefix": { + "description": "Custom prefix of entity identifiers in workspace", + "maxLength": 255, + "nullable": true, + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + }, + "type": "object" }, "id": { - "deprecated": true, - "description": "Setting ID. Formerly used to identify a type of a particular setting, going to be removed in a favor of setting's type.", + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, + "meta": { + "properties": { + "config": { + "properties": { + "approximateCountAvailable": { + "default": false, + "description": "is approximate count enabled - based on type of data-source connected to this workspace", + "type": "boolean" + }, + "dataSamplingAvailable": { + "default": false, + "description": "is sampling enabled - based on type of data-source connected to this workspace", + "type": "boolean" + }, + "showAllValuesOnDatesAvailable": { + "default": false, + "description": "is 'show all values' displayed for dates - based on type of data-source connected to this workspace", + "type": "boolean" + } + }, + "type": "object" + }, + "dataModel": { + "properties": { + "datasetCount": { + "description": "include the number of dataset of each workspace", + "format": "int32", + "type": "integer" + } + }, + "required": [ + "datasetCount" + ], + "type": "object" + }, + "hierarchy": { + "properties": { + "childrenCount": { + "description": "include the number of direct children of each workspace", + "format": "int32", + "type": "integer" + } + }, + "required": [ + "childrenCount" + ], + "type": "object" + }, + "permissions": { + "description": "List of valid permissions for a logged-in user.", + "items": { + "enum": [ + "MANAGE", + "ANALYZE", + "EXPORT", + "EXPORT_TABULAR", + "EXPORT_PDF", + "CREATE_AUTOMATION", + "CREATE_FILTER_VIEW", + "VIEW" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "relationships": { + "properties": { + "parent": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "type": "object" + }, "type": { - "description": "Type of the setting.", + "description": "Object type", "enum": [ - "TIMEZONE", - "ACTIVE_THEME", - "ACTIVE_COLOR_PALETTE", - "WHITE_LABELING", - "LOCALE", - "METADATA_LOCALE", - "FORMAT_LOCALE", - "MAPBOX_TOKEN", - "WEEK_START", - "SHOW_HIDDEN_CATALOG_ITEMS", - "OPERATOR_OVERRIDES", - "TIMEZONE_VALIDATION_ENABLED", - "OPENAI_CONFIG", - "ENABLE_FILE_ANALYTICS" + "workspace" ], - "example": "TIMEZONE", + "example": "workspace", "type": "string" } }, "required": [ - "id" + "id", + "type" ], "type": "object" }, - "RsaSpecification": { + "JsonApiWorkspaceOutDocument": { "properties": { - "alg": { - "enum": [ - "RS256", - "RS384", - "RS512" - ], - "type": "string" - }, - "e": { - "type": "string" - }, - "kid": { - "maxLength": 255, - "minLength": 0, - "pattern": "^[^.]", - "type": "string" - }, - "kty": { - "enum": [ - "RSA" - ], - "type": "string" - }, - "n": { - "type": "string" - }, - "use": { - "enum": [ - "sig" - ], - "type": "string" + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceOut" }, - "x5c": { + "included": { + "description": "Included resources", "items": { - "type": "string" + "$ref": "#/components/schemas/JsonApiWorkspaceOutWithLinks" }, - "type": "array" + "type": "array", + "uniqueItems": true }, - "x5t": { - "type": "string" + "links": { + "$ref": "#/components/schemas/ObjectLinks" } }, "required": [ - "alg", - "e", - "kid", - "kty", - "n", - "use" + "data" ], "type": "object" }, - "RulePermission": { - "description": "List of rules", + "JsonApiWorkspaceOutList": { + "description": "A JSON:API document with a list of resources", "properties": { - "permissions": { - "description": "Permissions granted by the rule", + "data": { "items": { - "$ref": "#/components/schemas/GrantedPermission" + "$ref": "#/components/schemas/JsonApiWorkspaceOutWithLinks" }, - "type": "array" + "type": "array", + "uniqueItems": true }, - "type": { - "description": "Type of the rule", - "example": "allWorkspaceUsers", - "type": "string" - } - }, - "required": [ - "type" + "included": { + "description": "Included resources", + "items": { + "$ref": "#/components/schemas/JsonApiWorkspaceOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ListLinks" + }, + "meta": { + "properties": { + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + }, + "type": "object" + } + }, + "required": [ + "data" ], "type": "object" }, - "Settings": { - "description": "Additional settings.", + "JsonApiWorkspaceOutWithLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiWorkspaceOut" + }, + { + "$ref": "#/components/schemas/ObjectLinksContainer" + } + ] + }, + "JsonApiWorkspacePatch": { + "description": "JSON:API representation of patching workspace entity.", "properties": { - "mergeHeaders": { - "description": "Merge equal headers in neighbouring cells. (XLSX)", - "example": true, - "type": "boolean" + "attributes": { + "properties": { + "cacheExtraLimit": { + "format": "int64", + "type": "integer" + }, + "dataSource": { + "description": "The data source used for the particular workspace instead of the one defined in the LDM inherited from its parent workspace. Such data source cannot be defined for a single or a top-parent workspace.", + "properties": { + "id": { + "description": "The ID of the used data source.", + "example": "snowflake.instance.1", + "type": "string" + }, + "schemaPath": { + "description": "The full schema path as array of its path parts. Will be rendered as subPath1.subPath2...", + "items": { + "description": "The part of the schema path.", + "example": "subPath", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "description": { + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "earlyAccess": { + "deprecated": true, + "description": "The early access feature identifier. It is used to enable experimental features. Deprecated in favor of earlyAccessValues.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "earlyAccessValues": { + "description": "The early access feature identifiers. They are used to enable experimental features.", + "items": { + "maxLength": 255, + "type": "string" + }, + "nullable": true, + "type": "array" + }, + "name": { + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "prefix": { + "description": "Custom prefix of entity identifiers in workspace", + "maxLength": 255, + "nullable": true, + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + }, + "type": "object" }, - "pdfPageSize": { - "description": "Page size and orientation. (PDF)", - "example": "a4 landscape", + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "pdfTableStyle": { - "description": "Custom CSS styles for the table. (PDF, HTML)", - "example": [ - { - "properties": [ - { - "key": "font-size", - "value": "30px" + "relationships": { + "properties": { + "parent": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceToOneLinkage" } + }, + "required": [ + "data" ], - "selector": "th" + "type": "object" } - ], - "items": { - "$ref": "#/components/schemas/PdfTableStyle" }, - "type": "array" - }, - "pdfTopLeftContent": { - "description": "Top left header content. (PDF)", - "example": "Good", - "type": "string" + "type": "object" }, - "pdfTopRightContent": { - "description": "Top right header content. (PDF)", - "example": "Morning", + "type": { + "description": "Object type", + "enum": [ + "workspace" + ], + "example": "workspace", "type": "string" - }, - "showFilters": { - "description": "Print applied filters on top of the document. (PDF/HTML when visualizationObject is given)", - "example": false, - "type": "boolean" } }, + "required": [ + "id", + "type" + ], "type": "object" }, - "Skeleton": { + "JsonApiWorkspacePatchDocument": { "properties": { - "content": { - "items": { - "type": "object" - }, - "type": "array" - }, - "href": { - "type": "string", - "xml": { - "attribute": true - } + "data": { + "$ref": "#/components/schemas/JsonApiWorkspacePatch" } }, - "type": "object", - "xml": { - "name": "skeleton", - "namespace": "urn:oasis:names:tc:xliff:document:2.0" - } + "required": [ + "data" + ], + "type": "object" }, - "SqlColumn": { - "description": "Columns defining SQL dataset.", + "JsonApiWorkspaceSettingIn": { + "description": "JSON:API representation of workspaceSetting entity.", "properties": { - "dataType": { - "description": "Column data type.", - "enum": [ - "INT", - "STRING", - "DATE", - "NUMERIC", - "TIMESTAMP", - "TIMESTAMP_TZ", - "BOOLEAN" - ], - "example": "STRING", + "attributes": { + "properties": { + "content": { + "description": "Free-form JSON content. Maximum supported length is 15000 characters.", + "example": {}, + "type": "object" + }, + "type": { + "enum": [ + "TIMEZONE", + "ACTIVE_THEME", + "ACTIVE_COLOR_PALETTE", + "WHITE_LABELING", + "LOCALE", + "METADATA_LOCALE", + "FORMAT_LOCALE", + "MAPBOX_TOKEN", + "WEEK_START", + "SHOW_HIDDEN_CATALOG_ITEMS", + "OPERATOR_OVERRIDES", + "TIMEZONE_VALIDATION_ENABLED", + "OPENAI_CONFIG", + "ENABLE_FILE_ANALYTICS", + "ALERT" + ], + "type": "string" + } + }, + "type": "object" + }, + "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "name": { - "description": "Column name.", - "example": "ABC", + "type": { + "description": "Object type", + "enum": [ + "workspaceSetting" + ], + "example": "workspaceSetting", "type": "string" } }, "required": [ - "dataType", - "name" + "id", + "type" ], "type": "object" }, - "TabularExportRequest": { - "description": "Export request object describing the export properties and overrides for tabular exports.", + "JsonApiWorkspaceSettingInDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceSettingIn" + } + }, "required": [ - "fileName", - "format" + "data" ], "type": "object" }, - "UserAssignee": { - "description": "List of users", + "JsonApiWorkspaceSettingOut": { + "description": "JSON:API representation of workspaceSetting entity.", "properties": { - "email": { - "description": "User email address", - "example": "user@example.com", - "type": "string" + "attributes": { + "properties": { + "content": { + "description": "Free-form JSON content. Maximum supported length is 15000 characters.", + "example": {}, + "type": "object" + }, + "type": { + "enum": [ + "TIMEZONE", + "ACTIVE_THEME", + "ACTIVE_COLOR_PALETTE", + "WHITE_LABELING", + "LOCALE", + "METADATA_LOCALE", + "FORMAT_LOCALE", + "MAPBOX_TOKEN", + "WEEK_START", + "SHOW_HIDDEN_CATALOG_ITEMS", + "OPERATOR_OVERRIDES", + "TIMEZONE_VALIDATION_ENABLED", + "OPENAI_CONFIG", + "ENABLE_FILE_ANALYTICS", + "ALERT" + ], + "type": "string" + } + }, + "type": "object" }, "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "name": { - "description": "User name", - "example": "John Wick", - "type": "string" - } - }, - "required": [ - "id" - ], - "type": "object" - }, - "UserGroupAssignee": { - "description": "List of user groups", - "properties": { - "id": { - "type": "string" + "meta": { + "properties": { + "origin": { + "properties": { + "originId": { + "description": "defines id of the workspace where the entity comes from", + "type": "string" + }, + "originType": { + "description": "defines type of the origin of the entity", + "enum": [ + "NATIVE", + "PARENT" + ], + "type": "string" + } + }, + "required": [ + "originId", + "originType" + ], + "type": "object" + } + }, + "type": "object" }, - "name": { - "description": "User group name", - "example": "admins", + "type": { + "description": "Object type", + "enum": [ + "workspaceSetting" + ], + "example": "workspaceSetting", "type": "string" } }, "required": [ - "id" + "id", + "type" ], "type": "object" }, - "UserGroupIdentifier": { - "description": "A list of groups where user is a member", + "JsonApiWorkspaceSettingOutDocument": { "properties": { - "id": { - "type": "string" + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceSettingOut" }, - "name": { - "type": "string" + "links": { + "$ref": "#/components/schemas/ObjectLinks" } }, "required": [ - "id" + "data" ], "type": "object" }, - "UserGroupPermission": { - "description": "List of user groups", + "JsonApiWorkspaceSettingOutList": { + "description": "A JSON:API document with a list of resources", "properties": { - "id": { - "type": "string" - }, - "name": { - "description": "Name of the user group", - "example": "admins", - "type": "string" - }, - "permissions": { - "description": "Permissions granted to the user group", + "data": { "items": { - "$ref": "#/components/schemas/GrantedPermission" + "$ref": "#/components/schemas/JsonApiWorkspaceSettingOutWithLinks" }, - "type": "array" - } - }, - "required": [ - "id" - ], - "type": "object" - }, - "UserManagementDataSourcePermissionAssignment": { - "description": "Datasource permission assignments for users and userGroups", - "properties": { - "id": { - "description": "Id of the datasource", - "type": "string" + "type": "array", + "uniqueItems": true }, - "name": { - "description": "Name of the datasource", - "readOnly": true, - "type": "string" + "links": { + "$ref": "#/components/schemas/ListLinks" }, - "permissions": { - "items": { - "enum": [ - "MANAGE", - "USE" - ], - "type": "string" + "meta": { + "properties": { + "page": { + "$ref": "#/components/schemas/PageMetadata" + } }, - "type": "array" + "type": "object" } }, "required": [ - "id", - "permissions" + "data" ], "type": "object" }, - "UserManagementPermissionAssignments": { - "properties": { - "dataSources": { - "items": { - "$ref": "#/components/schemas/UserManagementDataSourcePermissionAssignment" - }, - "type": "array" + "JsonApiWorkspaceSettingOutWithLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiWorkspaceSettingOut" }, - "workspaces": { - "items": { - "$ref": "#/components/schemas/UserManagementWorkspacePermissionAssignment" - }, - "type": "array" + { + "$ref": "#/components/schemas/ObjectLinksContainer" } - }, - "required": [ - "dataSources", - "workspaces" - ], - "type": "object" + ] }, - "UserManagementUserGroupMember": { + "JsonApiWorkspaceSettingPatch": { + "description": "JSON:API representation of patching workspaceSetting entity.", "properties": { + "attributes": { + "properties": { + "content": { + "description": "Free-form JSON content. Maximum supported length is 15000 characters.", + "example": {}, + "type": "object" + }, + "type": { + "enum": [ + "TIMEZONE", + "ACTIVE_THEME", + "ACTIVE_COLOR_PALETTE", + "WHITE_LABELING", + "LOCALE", + "METADATA_LOCALE", + "FORMAT_LOCALE", + "MAPBOX_TOKEN", + "WEEK_START", + "SHOW_HIDDEN_CATALOG_ITEMS", + "OPERATOR_OVERRIDES", + "TIMEZONE_VALIDATION_ENABLED", + "OPENAI_CONFIG", + "ENABLE_FILE_ANALYTICS", + "ALERT" + ], + "type": "string" + } + }, + "type": "object" + }, "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "name": { - "readOnly": true, + "type": { + "description": "Object type", + "enum": [ + "workspaceSetting" + ], + "example": "workspaceSetting", "type": "string" } }, "required": [ - "id" + "id", + "type" ], "type": "object" }, - "UserManagementUserGroupMembers": { + "JsonApiWorkspaceSettingPatchDocument": { "properties": { - "members": { - "items": { - "$ref": "#/components/schemas/UserManagementUserGroupMember" - }, - "type": "array" + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceSettingPatch" } }, "required": [ - "members" + "data" ], "type": "object" }, - "UserManagementUserGroups": { + "JsonApiWorkspaceSettingPostOptionalId": { + "description": "JSON:API representation of workspaceSetting entity.", "properties": { - "totalCount": { - "description": "Total number of groups", - "format": "int32", - "type": "integer" - }, - "userGroups": { - "items": { - "$ref": "#/components/schemas/UserManagementUserGroupsItem" - }, - "type": "array" - } - }, - "required": [ - "totalCount", - "userGroups" - ], - "type": "object" - }, - "UserManagementUserGroupsItem": { - "description": "List of groups", - "properties": { - "dataSources": { - "items": { - "$ref": "#/components/schemas/UserManagementDataSourcePermissionAssignment" + "attributes": { + "properties": { + "content": { + "description": "Free-form JSON content. Maximum supported length is 15000 characters.", + "example": {}, + "type": "object" + }, + "type": { + "enum": [ + "TIMEZONE", + "ACTIVE_THEME", + "ACTIVE_COLOR_PALETTE", + "WHITE_LABELING", + "LOCALE", + "METADATA_LOCALE", + "FORMAT_LOCALE", + "MAPBOX_TOKEN", + "WEEK_START", + "SHOW_HIDDEN_CATALOG_ITEMS", + "OPERATOR_OVERRIDES", + "TIMEZONE_VALIDATION_ENABLED", + "OPENAI_CONFIG", + "ENABLE_FILE_ANALYTICS", + "ALERT" + ], + "type": "string" + } }, - "type": "array" + "type": "object" }, "id": { + "description": "API identifier of an object", + "example": "id1", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "name": { - "description": "Group name", - "example": "admins", + "type": { + "description": "Object type", + "enum": [ + "workspaceSetting" + ], + "example": "workspaceSetting", "type": "string" - }, - "organizationAdmin": { - "description": "Is group organization admin", - "example": false, - "type": "boolean" - }, - "userCount": { - "description": "The number of users belonging to the group", - "format": "int32", - "type": "integer" - }, - "workspaces": { - "items": { - "$ref": "#/components/schemas/UserManagementWorkspacePermissionAssignment" - }, - "type": "array" } }, "required": [ - "dataSources", - "id", - "organizationAdmin", - "userCount", - "workspaces" + "type" ], "type": "object" }, - "UserManagementUsers": { + "JsonApiWorkspaceSettingPostOptionalIdDocument": { "properties": { - "totalCount": { - "description": "The total number of users is based on applied filters.", - "format": "int32", - "type": "integer" - }, - "users": { - "items": { - "$ref": "#/components/schemas/UserManagementUsersItem" - }, - "type": "array" + "data": { + "$ref": "#/components/schemas/JsonApiWorkspaceSettingPostOptionalId" } }, "required": [ - "totalCount", - "users" + "data" ], "type": "object" }, - "UserManagementUsersItem": { - "description": "List of users", + "JsonApiWorkspaceToOneLinkage": { + "description": "References to other resource objects in a to-one (\\\"relationship\\\"). Relationships can be specified by including a member in a resource's links object.", + "nullable": true, + "oneOf": [ + { + "$ref": "#/components/schemas/JsonApiWorkspaceLinkage" + } + ] + }, + "JsonNode": { + "description": "Free-form JSON object", + "example": {}, + "maxLength": 15000, + "nullable": true, + "type": "object" + }, + "LabelIdentifier": { + "description": "A label identifier.", "properties": { - "dataSources": { - "items": { - "$ref": "#/components/schemas/UserManagementDataSourcePermissionAssignment" - }, - "type": "array" - }, - "email": { - "description": "User email address", - "example": "user@example.com", - "type": "string" - }, "id": { + "description": "Label ID.", + "example": "label_id", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" }, - "name": { - "description": "User name", - "example": "John Wick", + "type": { + "description": "A type of the label.", + "enum": [ + "label" + ], + "example": "label", "type": "string" - }, - "organizationAdmin": { - "description": "Is user organization admin", - "example": false, - "type": "boolean" - }, - "userGroups": { - "items": { - "$ref": "#/components/schemas/UserGroupIdentifier" - }, - "type": "array" - }, - "workspaces": { - "items": { - "$ref": "#/components/schemas/UserManagementWorkspacePermissionAssignment" - }, - "type": "array" } }, "required": [ - "dataSources", "id", - "organizationAdmin", - "userGroups", - "workspaces" + "type" ], "type": "object" }, - "UserManagementWorkspacePermissionAssignment": { - "description": "Workspace permission assignments for users and userGroups", - "properties": { - "hierarchyPermissions": { - "items": { - "enum": [ - "MANAGE", - "ANALYZE", - "EXPORT", - "EXPORT_TABULAR", - "EXPORT_PDF", - "VIEW" - ], - "type": "string" - }, - "type": "array" - }, - "id": { - "type": "string" - }, - "name": { - "readOnly": true, - "type": "string" + "ListLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/ObjectLinks" }, - "permissions": { - "items": { - "enum": [ - "MANAGE", - "ANALYZE", - "EXPORT", - "EXPORT_TABULAR", - "EXPORT_PDF", - "VIEW" - ], - "type": "string" + { + "properties": { + "next": { + "description": "A string containing the link's URL for the next page of data.", + "format": "uri", + "type": "string" + } }, - "type": "array" + "type": "object" } - }, - "required": [ - "hierarchyPermissions", - "id", - "permissions" - ], - "type": "object" + ] }, - "UserPermission": { - "description": "List of users", + "LocalIdentifier": { "properties": { - "email": { - "description": "User email address", - "example": "user@example.com", + "format": { + "default": "#,##0.00", + "description": "Metric format.", + "example": "#,##0", + "maxLength": 2048, + "nullable": true, "type": "string" }, - "id": { + "localIdentifier": { + "description": "Local identifier of the metric to be compared.", + "example": "m1", "type": "string" }, - "name": { - "description": "Name of user", - "example": "John Wick", + "title": { + "description": "Metric title.", + "example": "Revenue", + "maxLength": 255, + "nullable": true, "type": "string" - }, - "permissions": { - "description": "Permissions granted to the user", - "items": { - "$ref": "#/components/schemas/GrantedPermission" - }, - "type": "array" } }, "required": [ - "id" - ], - "type": "object" - }, - "VisualExportRequest": { - "description": "Export request object describing the export properties and metadata for dashboard PDF exports.", - "required": [ - "dashboardId", - "fileName" + "localIdentifier" ], "type": "object" }, - "Webhook": { + "LocaleRequest": { "properties": { - "hasToken": { - "type": "boolean" - }, - "token": { - "description": "Bearer token for the webhook.", - "maxLength": 10000, - "nullable": true, - "type": "string" - }, - "url": { - "description": "The webhook URL.", - "example": "https://example.com/webhook", - "maxLength": 255, - "pattern": "https?\\://.*", + "locale": { + "description": "Requested locale in the form of language tag (see RFC 5646).", + "example": "en-US", "type": "string" } }, "required": [ - "url" + "locale" ], "type": "object" }, - "WorkspaceDataSource": { - "description": "The data source used for the particular workspace instead of the one defined in the LDM inherited from its parent workspace. Such data source cannot be defined for a single or a top-parent workspace.", + "MeasureDefinition": { + "description": "Abstract metric definition type", + "oneOf": [ + { + "$ref": "#/components/schemas/InlineMeasureDefinition" + }, + { + "$ref": "#/components/schemas/ArithmeticMeasureDefinition" + }, + { + "$ref": "#/components/schemas/SimpleMeasureDefinition" + }, + { + "$ref": "#/components/schemas/PopMeasureDefinition" + } + ], + "type": "object" + }, + "MeasureItem": { "properties": { - "id": { - "description": "The ID of the used data source.", - "example": "snowflake.instance.1", + "definition": { + "$ref": "#/components/schemas/MeasureDefinition" + }, + "localIdentifier": { + "example": "metric_1", + "pattern": "^[.a-zA-Z0-9_-]+$", "type": "string" + } + }, + "required": [ + "definition", + "localIdentifier" + ], + "type": "object" + }, + "MeasureValueFilter": { + "description": "Abstract filter definition type filtering by the value of the metric.", + "oneOf": [ + { + "$ref": "#/components/schemas/ComparisonMeasureValueFilter" }, - "schemaPath": { - "description": "The full schema path as array of its path parts. Will be rendered as subPath1.subPath2...", - "items": { - "description": "The part of the schema path.", - "example": "subPath", - "type": "string" + { + "$ref": "#/components/schemas/RangeMeasureValueFilter" + } + ], + "type": "object" + }, + "NegativeAttributeFilter": { + "description": "Filter able to limit element values by label and related selected negated elements.", + "properties": { + "negativeAttributeFilter": { + "properties": { + "applyOnResult": { + "type": "boolean" + }, + "label": { + "$ref": "#/components/schemas/AfmIdentifier" + }, + "notIn": { + "$ref": "#/components/schemas/AttributeFilterElements" + } }, - "type": "array" + "required": [ + "notIn", + "label" + ], + "type": "object" } }, "required": [ - "id" + "negativeAttributeFilter" ], "type": "object" }, - "WorkspaceIdentifier": { - "description": "A workspace identifier.", - "example": "{ id: demo, type: workspace }", + "Note": { "properties": { - "id": { - "description": "Identifier of the workspace.", - "example": "alpha.sales", - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "appliesTo": { + "enum": [ + "SOURCE", + "TARGET" + ], + "type": "string", + "xml": { + "attribute": true + } + }, + "category": { + "type": "string", + "xml": { + "attribute": true + } + }, + "content": { "type": "string" }, + "id": { + "type": "string", + "xml": { + "attribute": true + } + }, + "otherAttributes": { + "additionalProperties": { + "type": "string" + }, + "type": "object" + }, + "priority": { + "format": "int32", + "type": "integer", + "xml": { + "attribute": true + } + } + }, + "type": "object", + "xml": { + "name": "note", + "namespace": "urn:oasis:names:tc:xliff:document:2.0" + } + }, + "Notes": { + "properties": { + "note": { + "items": { + "$ref": "#/components/schemas/Note" + }, + "type": "array" + } + }, + "required": [ + "note" + ], + "type": "object", + "xml": { + "name": "notes", + "namespace": "urn:oasis:names:tc:xliff:document:2.0" + } + }, + "NotificationChannelDestination": { + "oneOf": [ + { + "$ref": "#/components/schemas/Webhook" + }, + { + "$ref": "#/components/schemas/Smtp" + }, + { + "$ref": "#/components/schemas/DefaultSmtp" + } + ], + "properties": { "type": { - "description": "A type.", - "enum": [ - "workspace" - ], - "example": "workspace", "type": "string" } }, "required": [ - "id", "type" ], "type": "object" }, - "WorkspacePermissionAssignment": { - "description": "Workspace permission assignments", + "ObjectLinks": { + "properties": { + "self": { + "description": "A string containing the link's URL.", + "format": "uri", + "type": "string" + } + }, + "required": [ + "self" + ], + "type": "object" + }, + "ObjectLinksContainer": { + "properties": { + "links": { + "$ref": "#/components/schemas/ObjectLinks" + } + }, + "type": "object" + }, + "OidcIdpSpecification": { + "description": "Specification of an OIDC identity provider", + "properties": { + "oauthClientId": { + "maxLength": 255, + "type": "string" + }, + "oauthClientSecret": { + "maxLength": 255, + "type": "string", + "writeOnly": true + }, + "oauthIssuerId": { + "description": "Any string identifying the OIDC provider. This value is used as suffix for OAuth2 callback (redirect) URL. If not defined, the standard callback URL is used. This value is valid only for external OIDC providers, not for the internal DEX provider.", + "example": "myOidcProvider", + "maxLength": 255, + "type": "string" + }, + "oauthIssuerLocation": { + "maxLength": 255, + "type": "string" + }, + "oauthSubjectIdClaim": { + "description": "Any string identifying the claim in ID token, that should be used for user identification. The default value is 'sub'.", + "example": "oid", + "maxLength": 255, + "type": "string" + } + }, + "required": [ + "oauthClientId", + "oauthClientSecret", + "oauthIssuerId", + "oauthIssuerLocation", + "oauthSubjectIdClaim" + ], + "type": "object" + }, + "OrganizationPermissionAssignment": { + "description": "Organization permission assignments", "properties": { "assigneeIdentifier": { "$ref": "#/components/schemas/AssigneeIdentifier" }, - "hierarchyPermissions": { - "items": { - "enum": [ - "MANAGE", - "ANALYZE", - "EXPORT", - "EXPORT_TABULAR", - "EXPORT_PDF", - "VIEW" - ], - "type": "string" - }, - "type": "array" - }, "permissions": { "items": { "enum": [ "MANAGE", - "ANALYZE", - "EXPORT", - "EXPORT_TABULAR", - "EXPORT_PDF", - "VIEW" + "SELF_CREATE_TOKEN" ], "type": "string" }, @@ -15773,208 +16584,2931 @@ } }, "required": [ - "assigneeIdentifier" + "assigneeIdentifier", + "permissions" ], "type": "object" }, - "WorkspaceUser": { - "description": "List of workspace users", + "PageMetadata": { "properties": { - "email": { - "description": "User email address", - "example": "user@example.com", - "type": "string" + "number": { + "description": "The number of the current page", + "format": "int32", + "type": "integer" }, - "id": { - "type": "string" + "size": { + "description": "The size of the current page", + "format": "int32", + "type": "integer" + }, + "totalElements": { + "description": "The total number of elements", + "format": "int32", + "type": "integer" }, + "totalPages": { + "description": "The total number of pages", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Parameter": { + "properties": { "name": { - "description": "User name", - "example": "John Wick", "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "name", + "value" + ], + "type": "object" + }, + "PdfTableStyle": { + "description": "Custom CSS styles for the table. (PDF, HTML)", + "example": [ + { + "properties": [ + { + "key": "font-size", + "value": "30px" + } + ], + "selector": "th" + } + ], + "properties": { + "properties": { + "description": "List of CSS properties.", + "items": { + "$ref": "#/components/schemas/PdfTableStyleProperty" + }, + "type": "array" + }, + "selector": { + "description": "CSS selector where to apply given properties.", + "type": "string" + } + }, + "required": [ + "selector" + ], + "type": "object" + }, + "PdfTableStyleProperty": { + "description": "CSS property.", + "properties": { + "key": { + "description": "CSS property key.", + "type": "string" + }, + "value": { + "description": "CSS property value.", + "type": "string" + } + }, + "required": [ + "key", + "value" + ], + "type": "object" + }, + "PdmLdmRequest": { + "description": "PDM additions wrapper.", + "properties": { + "sqls": { + "description": "List of SQL datasets.", + "items": { + "$ref": "#/components/schemas/PdmSql" + }, + "type": "array" + }, + "tables": { + "description": "List of physical database tables.", + "items": { + "$ref": "#/components/schemas/DeclarativeTable" + }, + "type": "array" + } + }, + "type": "object" + }, + "PdmSql": { + "description": "SQL dataset definition.", + "properties": { + "columns": { + "description": "Columns defining SQL dataset.", + "items": { + "$ref": "#/components/schemas/SqlColumn" + }, + "type": "array" + }, + "statement": { + "description": "SQL statement.", + "example": "select * from abc", + "type": "string" + }, + "title": { + "description": "SQL dataset title.", + "example": "My special dataset", + "type": "string" + } + }, + "required": [ + "statement", + "title" + ], + "type": "object" + }, + "PermissionsAssignment": { + "properties": { + "assignees": { + "items": { + "$ref": "#/components/schemas/AssigneeIdentifier" + }, + "type": "array" + }, + "dataSources": { + "items": { + "$ref": "#/components/schemas/UserManagementDataSourcePermissionAssignment" + }, + "type": "array" + }, + "workspaces": { + "items": { + "$ref": "#/components/schemas/UserManagementWorkspacePermissionAssignment" + }, + "type": "array" + } + }, + "required": [ + "assignees" + ], + "type": "object" + }, + "PermissionsForAssignee": { + "description": "Desired levels of permissions for an assignee identified by an identifier.", + "properties": { + "assigneeIdentifier": { + "$ref": "#/components/schemas/AssigneeIdentifier" + } + }, + "required": [ + "assigneeIdentifier" + ], + "type": "object" + }, + "PermissionsForAssigneeRule": { + "description": "Desired levels of permissions for a collection of assignees identified by a rule.", + "properties": { + "assigneeRule": { + "$ref": "#/components/schemas/AssigneeRule" + } + }, + "required": [ + "assigneeRule" + ], + "type": "object" + }, + "PlatformUsage": { + "properties": { + "count": { + "format": "int32", + "type": "integer" + }, + "name": { + "enum": [ + "UserCount", + "WorkspaceCount" + ], + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "PlatformUsageRequest": { + "properties": { + "usageItemNames": { + "items": { + "enum": [ + "UserCount", + "WorkspaceCount" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "required": [ + "usageItemNames" + ], + "type": "object" + }, + "PopDataset": { + "properties": { + "dataset": { + "$ref": "#/components/schemas/AfmObjectIdentifierDataset" + }, + "periodsAgo": { + "format": "int32", + "type": "integer" + } + }, + "required": [ + "dataset", + "periodsAgo" + ], + "type": "object" + }, + "PopDatasetMeasureDefinition": { + "description": "Previous period type of metric.", + "properties": { + "previousPeriodMeasure": { + "properties": { + "dateDatasets": { + "items": { + "$ref": "#/components/schemas/PopDataset" + }, + "type": "array" + }, + "measureIdentifier": { + "$ref": "#/components/schemas/AfmLocalIdentifier" + } + }, + "required": [ + "dateDatasets", + "measureIdentifier" + ], + "type": "object" + } + }, + "required": [ + "previousPeriodMeasure" + ], + "type": "object" + }, + "PopDate": { + "properties": { + "attribute": { + "$ref": "#/components/schemas/AfmObjectIdentifierAttribute" + }, + "periodsAgo": { + "format": "int32", + "type": "integer" + } + }, + "required": [ + "attribute", + "periodsAgo" + ], + "type": "object" + }, + "PopDateMeasureDefinition": { + "description": "Period over period type of metric.", + "properties": { + "overPeriodMeasure": { + "properties": { + "dateAttributes": { + "items": { + "$ref": "#/components/schemas/PopDate" + }, + "type": "array" + }, + "measureIdentifier": { + "$ref": "#/components/schemas/AfmLocalIdentifier" + } + }, + "required": [ + "dateAttributes", + "measureIdentifier" + ], + "type": "object" + } + }, + "required": [ + "overPeriodMeasure" + ], + "type": "object" + }, + "PopMeasureDefinition": { + "oneOf": [ + { + "$ref": "#/components/schemas/PopDatasetMeasureDefinition" + }, + { + "$ref": "#/components/schemas/PopDateMeasureDefinition" + } + ], + "type": "object" + }, + "PositiveAttributeFilter": { + "description": "Filter able to limit element values by label and related selected elements.", + "properties": { + "positiveAttributeFilter": { + "properties": { + "applyOnResult": { + "type": "boolean" + }, + "in": { + "$ref": "#/components/schemas/AttributeFilterElements" + }, + "label": { + "$ref": "#/components/schemas/AfmIdentifier" + } + }, + "required": [ + "in", + "label" + ], + "type": "object" + } + }, + "required": [ + "positiveAttributeFilter" + ], + "type": "object" + }, + "Range": { + "properties": { + "from": { + "$ref": "#/components/schemas/Value" + }, + "measure": { + "$ref": "#/components/schemas/LocalIdentifier" + }, + "operator": { + "enum": [ + "BETWEEN", + "NOT_BETWEEN" + ], + "type": "string" + }, + "to": { + "$ref": "#/components/schemas/Value" + } + }, + "required": [ + "from", + "measure", + "operator", + "to" + ], + "type": "object" + }, + "RangeMeasureValueFilter": { + "description": "Filter the result by comparing specified metric to given range of values.", + "properties": { + "rangeMeasureValueFilter": { + "properties": { + "applyOnResult": { + "type": "boolean" + }, + "from": { + "example": 100, + "type": "number" + }, + "measure": { + "$ref": "#/components/schemas/AfmIdentifier" + }, + "operator": { + "enum": [ + "BETWEEN", + "NOT_BETWEEN" + ], + "example": "BETWEEN", + "type": "string" + }, + "to": { + "example": 999, + "type": "number" + }, + "treatNullValuesAs": { + "example": 0, + "type": "number" + } + }, + "required": [ + "from", + "operator", + "to", + "measure" + ], + "type": "object" + } + }, + "required": [ + "rangeMeasureValueFilter" + ], + "type": "object" + }, + "RangeWrapper": { + "properties": { + "range": { + "$ref": "#/components/schemas/Range" + } + }, + "required": [ + "range" + ], + "type": "object" + }, + "RankingFilter": { + "description": "Filter the result on top/bottom N values according to given metric(s).", + "properties": { + "rankingFilter": { + "properties": { + "applyOnResult": { + "type": "boolean" + }, + "measures": { + "items": { + "$ref": "#/components/schemas/AfmIdentifier" + }, + "type": "array" + }, + "operator": { + "enum": [ + "TOP", + "BOTTOM" + ], + "type": "string" + }, + "value": { + "example": 5, + "format": "int32", + "type": "integer" + } + }, + "required": [ + "measures", + "operator", + "value" + ], + "type": "object" + } + }, + "required": [ + "rankingFilter" + ], + "type": "object" + }, + "ReferenceIdentifier": { + "description": "A reference identifier.", + "properties": { + "id": { + "description": "Reference ID.", + "example": "customers", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "description": "A type of the reference.", + "enum": [ + "dataset" + ], + "example": "DATASET", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "ReferenceSourceColumn": { + "properties": { + "column": { + "type": "string" + }, + "dataType": { + "enum": [ + "INT", + "STRING", + "DATE", + "NUMERIC", + "TIMESTAMP", + "TIMESTAMP_TZ", + "BOOLEAN" + ], + "type": "string" + }, + "target": { + "$ref": "#/components/schemas/DatasetGrain" + } + }, + "required": [ + "column", + "target" + ], + "type": "object" + }, + "Relative": { + "properties": { + "measure": { + "$ref": "#/components/schemas/ArithmeticMeasure" + }, + "operator": { + "description": "Relative condition operator.\nINCREASES_BY - the metric increases by the specified value.\nDECREASES_BY - the metric decreases by the specified value.\nCHANGES_BY - the metric increases or decreases by the specified value.\n", + "enum": [ + "INCREASES_BY", + "DECREASES_BY", + "CHANGES_BY" + ], + "type": "string" + }, + "threshold": { + "$ref": "#/components/schemas/Value" + } + }, + "required": [ + "measure", + "operator", + "threshold" + ], + "type": "object" + }, + "RelativeDateFilter": { + "description": "A date filter specifying a time interval that is relative to the current date. For example, last week, next month, and so on. Field dataset is representing qualifier of date dimension.", + "properties": { + "relativeDateFilter": { + "properties": { + "applyOnResult": { + "type": "boolean" + }, + "dataset": { + "$ref": "#/components/schemas/AfmObjectIdentifierDataset" + }, + "from": { + "description": "Start of the filtering interval. Specified by number of periods (with respect to given granularity). Typically negative (historical time interval like -2 for '2 days/weeks, ... ago').", + "example": -6, + "format": "int32", + "type": "integer" + }, + "granularity": { + "description": "Date granularity specifying particular date attribute in given dimension.", + "enum": [ + "MINUTE", + "HOUR", + "DAY", + "WEEK", + "MONTH", + "QUARTER", + "YEAR", + "MINUTE_OF_HOUR", + "HOUR_OF_DAY", + "DAY_OF_WEEK", + "DAY_OF_MONTH", + "DAY_OF_YEAR", + "WEEK_OF_YEAR", + "MONTH_OF_YEAR", + "QUARTER_OF_YEAR" + ], + "example": "DAY", + "type": "string" + }, + "to": { + "description": "End of the filtering interval. Specified by number of periods (with respect to given granularity). Value 'O' is representing current time-interval (current day, week, ...).", + "example": 0, + "format": "int32", + "type": "integer" + } + }, + "required": [ + "from", + "granularity", + "to", + "dataset" + ], + "type": "object" + } + }, + "required": [ + "relativeDateFilter" + ], + "type": "object" + }, + "RelativeWrapper": { + "properties": { + "relative": { + "$ref": "#/components/schemas/Relative" + } + }, + "required": [ + "relative" + ], + "type": "object" + }, + "ResolveSettingsRequest": { + "description": "A request containing setting IDs to resolve.", + "properties": { + "settings": { + "description": "An array of setting IDs to resolve.", + "example": [ + "timezone" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "settings" + ], + "type": "object" + }, + "ResolvedSetting": { + "description": "Setting and its value.", + "properties": { + "content": { + "$ref": "#/components/schemas/JsonNode" + }, + "id": { + "deprecated": true, + "description": "Setting ID. Formerly used to identify a type of a particular setting, going to be removed in a favor of setting's type.", + "type": "string" + }, + "type": { + "description": "Type of the setting.", + "enum": [ + "TIMEZONE", + "ACTIVE_THEME", + "ACTIVE_COLOR_PALETTE", + "WHITE_LABELING", + "LOCALE", + "METADATA_LOCALE", + "FORMAT_LOCALE", + "MAPBOX_TOKEN", + "WEEK_START", + "SHOW_HIDDEN_CATALOG_ITEMS", + "OPERATOR_OVERRIDES", + "TIMEZONE_VALIDATION_ENABLED", + "OPENAI_CONFIG", + "ENABLE_FILE_ANALYTICS", + "ALERT" + ], + "example": "TIMEZONE", + "type": "string" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "RsaSpecification": { + "properties": { + "alg": { + "enum": [ + "RS256", + "RS384", + "RS512" + ], + "type": "string" + }, + "e": { + "type": "string" + }, + "kid": { + "maxLength": 255, + "minLength": 0, + "pattern": "^[^.]", + "type": "string" + }, + "kty": { + "enum": [ + "RSA" + ], + "type": "string" + }, + "n": { + "type": "string" + }, + "use": { + "enum": [ + "sig" + ], + "type": "string" + }, + "x5c": { + "items": { + "type": "string" + }, + "type": "array" + }, + "x5t": { + "type": "string" + } + }, + "required": [ + "alg", + "e", + "kid", + "kty", + "n", + "use" + ], + "type": "object" + }, + "RulePermission": { + "description": "List of rules", + "properties": { + "permissions": { + "description": "Permissions granted by the rule", + "items": { + "$ref": "#/components/schemas/GrantedPermission" + }, + "type": "array" + }, + "type": { + "description": "Type of the rule", + "example": "allWorkspaceUsers", + "type": "string" + } + }, + "required": [ + "type" + ], + "type": "object" + }, + "SamlIdpSpecification": { + "description": "Specification of a SAML identity provider", + "properties": { + "metadata": { + "description": "Base64 encoded xml document with SAML metadata. This document is issued by your SAML provider. It includes the issuer's name, expiration information, and keys that can be used to validate the response from the identity provider.", + "maxLength": 15000, + "type": "string", + "writeOnly": true + } + }, + "required": [ + "metadata" + ], + "type": "object" + }, + "Settings": { + "description": "Additional settings.", + "properties": { + "mergeHeaders": { + "description": "Merge equal headers in neighbouring cells. (XLSX)", + "example": true, + "type": "boolean" + }, + "pdfPageSize": { + "description": "Page size and orientation. (PDF)", + "example": "a4 landscape", + "type": "string" + }, + "pdfTableStyle": { + "description": "Custom CSS styles for the table. (PDF, HTML)", + "example": [ + { + "properties": [ + { + "key": "font-size", + "value": "30px" + } + ], + "selector": "th" + } + ], + "items": { + "$ref": "#/components/schemas/PdfTableStyle" + }, + "type": "array" + }, + "pdfTopLeftContent": { + "description": "Top left header content. (PDF)", + "example": "Good", + "type": "string" + }, + "pdfTopRightContent": { + "description": "Top right header content. (PDF)", + "example": "Morning", + "type": "string" + }, + "showFilters": { + "description": "Print applied filters on top of the document. (PDF/HTML when visualizationObject is given)", + "example": false, + "type": "boolean" + } + }, + "type": "object" + }, + "SimpleMeasureDefinition": { + "properties": { + "measure": { + "properties": { + "aggregation": { + "description": "Definition of aggregation type of the metric.", + "enum": [ + "SUM", + "COUNT", + "AVG", + "MIN", + "MAX", + "MEDIAN", + "RUNSUM", + "APPROXIMATE_COUNT" + ], + "example": "SUM", + "type": "string" + }, + "computeRatio": { + "default": false, + "description": "If true compute the percentage of given metric values (broken down by AFM attributes) to the total (not broken down).", + "example": true, + "type": "boolean" + }, + "filters": { + "description": "Metrics can be filtered by attribute filters with the same interface as ones for global AFM. Note that only one DateFilter is allowed.", + "items": { + "$ref": "#/components/schemas/FilterDefinitionForSimpleMeasure" + }, + "type": "array" + }, + "item": { + "$ref": "#/components/schemas/AfmObjectIdentifierCore" + } + }, + "required": [ + "item" + ], + "type": "object" + } + }, + "required": [ + "measure" + ], + "type": "object" + }, + "Skeleton": { + "properties": { + "content": { + "items": { + "type": "object" + }, + "type": "array" + }, + "href": { + "type": "string", + "xml": { + "attribute": true + } + } + }, + "type": "object", + "xml": { + "name": "skeleton", + "namespace": "urn:oasis:names:tc:xliff:document:2.0" + } + }, + "Smtp": { + "allOf": [ + { + "properties": { + "fromEmail": { + "default": "no-reply@gooddata.com", + "description": "E-mail address to send notifications from.", + "pattern": "(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)])", + "type": "string" + }, + "fromEmailName": { + "default": "GoodData", + "description": "An optional e-mail name to send notifications from.", + "type": "string" + }, + "host": { + "description": "The SMTP server address.", + "type": "string" + }, + "password": { + "description": "The SMTP server password.", + "type": "string", + "writeOnly": true + }, + "port": { + "description": "The SMTP server port.", + "enum": [ + 25, + 465, + 587, + 2525 + ], + "format": "int32", + "type": "integer" + }, + "type": { + "description": "The destination type.", + "enum": [ + "SMTP" + ], + "type": "string" + }, + "username": { + "description": "The SMTP server username.", + "type": "string" + } + }, + "type": "object" + } + ], + "description": "Custom SMTP destination for notifications. The properties host, port, username, and password are required on create and update", + "required": [ + "type" + ], + "type": "object" + }, + "SqlColumn": { + "description": "Columns defining SQL dataset.", + "properties": { + "dataType": { + "description": "Column data type.", + "enum": [ + "INT", + "STRING", + "DATE", + "NUMERIC", + "TIMESTAMP", + "TIMESTAMP_TZ", + "BOOLEAN" + ], + "example": "STRING", + "type": "string" + }, + "name": { + "description": "Column name.", + "example": "ABC", + "type": "string" + } + }, + "required": [ + "dataType", + "name" + ], + "type": "object" + }, + "TabularExportRequest": { + "description": "Export request object describing the export properties and overrides for tabular exports.", + "properties": { + "customOverride": { + "$ref": "#/components/schemas/CustomOverride" + }, + "executionResult": { + "description": "Execution result identifier.", + "example": "ff483727196c9dc862c7fd3a5a84df55c96d61a4", + "type": "string" + }, + "fileName": { + "description": "Filename of downloaded file without extension.", + "example": "result", + "type": "string" + }, + "format": { + "description": "Expected file format.", + "enum": [ + "CSV", + "XLSX", + "HTML", + "PDF" + ], + "example": "CSV", + "type": "string" + }, + "metadata": { + "$ref": "#/components/schemas/JsonNode" + }, + "relatedDashboardId": { + "description": "Analytical dashboard identifier. Optional identifier, which informs the system that the export is related to a specific dashboard.", + "example": "761cd28b-3f57-4ac9-bbdc-1c552cc0d1d0", + "type": "string" + }, + "settings": { + "$ref": "#/components/schemas/Settings" + }, + "visualizationObject": { + "description": "Visualization object identifier. Alternative to executionResult property.", + "example": "f7c359bc-c230-4487-b15b-ad9685bcb537", + "type": "string" + }, + "visualizationObjectCustomFilters": { + "description": "Optional custom filters (as array of IFilter objects defined in UI SDK) to be applied when visualizationObject is given. (HTML/PDF only)", + "example": "[{\"negativeAttributeFilter\":{\"displayForm\":{\"identifier\":{\"id\":\"products.category\",\"type\":\"label\"}},\"notIn\":{\"values\":[\"Books\"]}}}]", + "items": { + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "fileName", + "format" + ], + "type": "object" + }, + "UserAssignee": { + "description": "List of users", + "properties": { + "email": { + "description": "User email address", + "example": "user@example.com", + "type": "string" + }, + "id": { + "type": "string" + }, + "name": { + "description": "User name", + "example": "John Wick", + "type": "string" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "UserGroupAssignee": { + "description": "List of user groups", + "properties": { + "id": { + "type": "string" + }, + "name": { + "description": "User group name", + "example": "admins", + "type": "string" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "UserGroupIdentifier": { + "description": "A list of groups where user is a member", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "UserGroupPermission": { + "description": "List of user groups", + "properties": { + "id": { + "type": "string" + }, + "name": { + "description": "Name of the user group", + "example": "admins", + "type": "string" + }, + "permissions": { + "description": "Permissions granted to the user group", + "items": { + "$ref": "#/components/schemas/GrantedPermission" + }, + "type": "array" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "UserManagementDataSourcePermissionAssignment": { + "description": "Datasource permission assignments for users and userGroups", + "properties": { + "id": { + "description": "Id of the datasource", + "type": "string" + }, + "name": { + "description": "Name of the datasource", + "readOnly": true, + "type": "string" + }, + "permissions": { + "items": { + "enum": [ + "MANAGE", + "USE" + ], + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "id", + "permissions" + ], + "type": "object" + }, + "UserManagementPermissionAssignments": { + "properties": { + "dataSources": { + "items": { + "$ref": "#/components/schemas/UserManagementDataSourcePermissionAssignment" + }, + "type": "array" + }, + "workspaces": { + "items": { + "$ref": "#/components/schemas/UserManagementWorkspacePermissionAssignment" + }, + "type": "array" + } + }, + "required": [ + "dataSources", + "workspaces" + ], + "type": "object" + }, + "UserManagementUserGroupMember": { + "properties": { + "id": { + "type": "string" + }, + "name": { + "readOnly": true, + "type": "string" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "UserManagementUserGroupMembers": { + "properties": { + "members": { + "items": { + "$ref": "#/components/schemas/UserManagementUserGroupMember" + }, + "type": "array" + } + }, + "required": [ + "members" + ], + "type": "object" + }, + "UserManagementUserGroups": { + "properties": { + "totalCount": { + "description": "Total number of groups", + "format": "int32", + "type": "integer" + }, + "userGroups": { + "items": { + "$ref": "#/components/schemas/UserManagementUserGroupsItem" + }, + "type": "array" + } + }, + "required": [ + "totalCount", + "userGroups" + ], + "type": "object" + }, + "UserManagementUserGroupsItem": { + "description": "List of groups", + "properties": { + "dataSources": { + "items": { + "$ref": "#/components/schemas/UserManagementDataSourcePermissionAssignment" + }, + "type": "array" + }, + "id": { + "type": "string" + }, + "name": { + "description": "Group name", + "example": "admins", + "type": "string" + }, + "organizationAdmin": { + "description": "Is group organization admin", + "example": false, + "type": "boolean" + }, + "userCount": { + "description": "The number of users belonging to the group", + "format": "int32", + "type": "integer" + }, + "workspaces": { + "items": { + "$ref": "#/components/schemas/UserManagementWorkspacePermissionAssignment" + }, + "type": "array" + } + }, + "required": [ + "dataSources", + "id", + "organizationAdmin", + "userCount", + "workspaces" + ], + "type": "object" + }, + "UserManagementUsers": { + "properties": { + "totalCount": { + "description": "The total number of users is based on applied filters.", + "format": "int32", + "type": "integer" + }, + "users": { + "items": { + "$ref": "#/components/schemas/UserManagementUsersItem" + }, + "type": "array" + } + }, + "required": [ + "totalCount", + "users" + ], + "type": "object" + }, + "UserManagementUsersItem": { + "description": "List of users", + "properties": { + "dataSources": { + "items": { + "$ref": "#/components/schemas/UserManagementDataSourcePermissionAssignment" + }, + "type": "array" + }, + "email": { + "description": "User email address", + "example": "user@example.com", + "type": "string" + }, + "id": { + "type": "string" + }, + "name": { + "description": "User name", + "example": "John Wick", + "type": "string" + }, + "organizationAdmin": { + "description": "Is user organization admin", + "example": false, + "type": "boolean" + }, + "userGroups": { + "items": { + "$ref": "#/components/schemas/UserGroupIdentifier" + }, + "type": "array" + }, + "workspaces": { + "items": { + "$ref": "#/components/schemas/UserManagementWorkspacePermissionAssignment" + }, + "type": "array" + } + }, + "required": [ + "dataSources", + "id", + "organizationAdmin", + "userGroups", + "workspaces" + ], + "type": "object" + }, + "UserManagementWorkspacePermissionAssignment": { + "description": "Workspace permission assignments for users and userGroups", + "properties": { + "hierarchyPermissions": { + "items": { + "enum": [ + "MANAGE", + "ANALYZE", + "EXPORT", + "EXPORT_TABULAR", + "EXPORT_PDF", + "CREATE_AUTOMATION", + "CREATE_FILTER_VIEW", + "VIEW" + ], + "type": "string" + }, + "type": "array" + }, + "id": { + "type": "string" + }, + "name": { + "readOnly": true, + "type": "string" + }, + "permissions": { + "items": { + "enum": [ + "MANAGE", + "ANALYZE", + "EXPORT", + "EXPORT_TABULAR", + "EXPORT_PDF", + "CREATE_AUTOMATION", + "CREATE_FILTER_VIEW", + "VIEW" + ], + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "hierarchyPermissions", + "id", + "permissions" + ], + "type": "object" + }, + "UserPermission": { + "description": "List of users", + "properties": { + "email": { + "description": "User email address", + "example": "user@example.com", + "type": "string" + }, + "id": { + "type": "string" + }, + "name": { + "description": "Name of user", + "example": "John Wick", + "type": "string" + }, + "permissions": { + "description": "Permissions granted to the user", + "items": { + "$ref": "#/components/schemas/GrantedPermission" + }, + "type": "array" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "Value": { + "properties": { + "value": { + "description": "Value of the alert threshold to compare the metric to.", + "example": 1000, + "type": "number" + } + }, + "required": [ + "value" + ], + "type": "object" + }, + "VisualExportRequest": { + "description": "Export request object describing the export properties and metadata for dashboard PDF exports.", + "properties": { + "dashboardId": { + "description": "Dashboard identifier", + "example": "761cd28b-3f57-4ac9-bbdc-1c552cc0d1d0", + "type": "string" + }, + "fileName": { + "description": "File name to be used for retrieving the pdf document.", + "example": "filename", + "type": "string" + }, + "metadata": { + "description": "Metadata definition in free-form JSON format.", + "example": "{}", + "type": "object" + } + }, + "required": [ + "dashboardId", + "fileName" + ], + "type": "object" + }, + "Webhook": { + "allOf": [ + { + "properties": { + "hasToken": { + "description": "Flag indicating if webhook has a token.", + "maxLength": 10000, + "nullable": true, + "readOnly": true, + "type": "boolean" + }, + "token": { + "description": "Bearer token for the webhook.", + "example": "secret", + "maxLength": 10000, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "type": { + "description": "The destination type.", + "enum": [ + "WEBHOOK" + ], + "type": "string" + }, + "url": { + "description": "The webhook URL.", + "example": "https://webhook.site/something", + "maxLength": 255, + "pattern": "https?\\://.*", + "type": "string" + } + }, + "type": "object" + } + ], + "description": "Webhook destination for notifications. The property url is required on create and update.", + "required": [ + "type" + ], + "type": "object" + }, + "WorkspaceDataSource": { + "description": "The data source used for the particular workspace instead of the one defined in the LDM inherited from its parent workspace. Such data source cannot be defined for a single or a top-parent workspace.", + "properties": { + "id": { + "description": "The ID of the used data source.", + "example": "snowflake.instance.1", + "type": "string" + }, + "schemaPath": { + "description": "The full schema path as array of its path parts. Will be rendered as subPath1.subPath2...", + "items": { + "description": "The part of the schema path.", + "example": "subPath", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "WorkspaceIdentifier": { + "description": "A workspace identifier.", + "example": "{ id: demo, type: workspace }", + "properties": { + "id": { + "description": "Identifier of the workspace.", + "example": "alpha.sales", + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + }, + "type": { + "description": "A type.", + "enum": [ + "workspace" + ], + "example": "workspace", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "WorkspacePermissionAssignment": { + "description": "Workspace permission assignments", + "properties": { + "assigneeIdentifier": { + "$ref": "#/components/schemas/AssigneeIdentifier" + }, + "hierarchyPermissions": { + "items": { + "enum": [ + "MANAGE", + "ANALYZE", + "EXPORT", + "EXPORT_TABULAR", + "EXPORT_PDF", + "CREATE_AUTOMATION", + "CREATE_FILTER_VIEW", + "VIEW" + ], + "type": "string" + }, + "type": "array" + }, + "permissions": { + "items": { + "enum": [ + "MANAGE", + "ANALYZE", + "EXPORT", + "EXPORT_TABULAR", + "EXPORT_PDF", + "CREATE_AUTOMATION", + "CREATE_FILTER_VIEW", + "VIEW" + ], + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "assigneeIdentifier" + ], + "type": "object" + }, + "WorkspaceUser": { + "description": "List of workspace users", + "properties": { + "email": { + "description": "User email address", + "example": "user@example.com", + "type": "string" + }, + "id": { + "type": "string" + }, + "name": { + "description": "User name", + "example": "John Wick", + "type": "string" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "WorkspaceUserGroup": { + "description": "List of workspace groups", + "properties": { + "id": { + "type": "string" + }, + "name": { + "description": "Group name", + "example": "admins", + "type": "string" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "WorkspaceUserGroups": { + "properties": { + "totalCount": { + "description": "Total number of groups", + "format": "int32", + "type": "integer" + }, + "userGroups": { + "items": { + "$ref": "#/components/schemas/WorkspaceUserGroup" + }, + "type": "array" + } + }, + "required": [ + "totalCount", + "userGroups" + ], + "type": "object" + }, + "WorkspaceUsers": { + "properties": { + "totalCount": { + "description": "The total number of users is based on applied filters.", + "format": "int32", + "type": "integer" + }, + "users": { + "items": { + "$ref": "#/components/schemas/WorkspaceUser" + }, + "type": "array" + } + }, + "required": [ + "totalCount", + "users" + ], + "type": "object" + }, + "Xliff": { + "properties": { + "file": { + "items": { + "$ref": "#/components/schemas/File" + }, + "type": "array" + }, + "otherAttributes": { + "additionalProperties": { + "type": "string" + }, + "type": "object" + }, + "space": { + "type": "string", + "xml": { + "attribute": true, + "namespace": "http://www.w3.org/XML/1998/namespace" + } + }, + "srcLang": { + "type": "string", + "xml": { + "attribute": true + } + }, + "trgLang": { + "type": "string", + "xml": { + "attribute": true + } + }, + "version": { + "type": "string", + "xml": { + "attribute": true + } + } + }, + "required": [ + "file" + ], + "type": "object", + "xml": { + "name": "xliff", + "namespace": "urn:oasis:names:tc:xliff:document:2.0" + } + } + } + }, + "info": { + "title": "OpenAPI definition", + "version": "v0" + }, + "openapi": "3.0.1", + "paths": { + "/api/v1/actions/collectUsage": { + "get": { + "description": "Provides information about platform usage, like amount of users, workspaces, ...", + "operationId": "allPlatformUsage", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/PlatformUsage" + }, + "type": "array" + } + } + }, + "description": "OK" + } + }, + "summary": "Info about the platform usage.", + "tags": [ + "Usage", + "actions" + ], + "x-gdc-security-info": { + "description": "Minimal permission required to use this endpoint.", + "permissions": [ + "MANAGE" + ] + } + }, + "post": { + "description": "Provides information about platform usage, like amount of users, workspaces, ...", + "operationId": "particularPlatformUsage", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PlatformUsageRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/PlatformUsage" + }, + "type": "array" + } + } + }, + "description": "OK" + } + }, + "summary": "Info about the platform usage for particular items.", + "tags": [ + "Usage", + "actions" + ], + "x-gdc-security-info": { + "description": "Minimal permission required to use this endpoint.", + "permissions": [ + "MANAGE" + ] + } + } + }, + "/api/v1/actions/dataSources/{dataSourceId}/generateLogicalModel": { + "post": { + "description": "Generate logical data model (LDM) from physical data model (PDM) stored in data source.", + "operationId": "generateLogicalModel", + "parameters": [ + { + "in": "path", + "name": "dataSourceId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GenerateLdmRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeclarativeModel" + } + } + }, + "description": "LDM generated successfully." + } + }, + "summary": "Generate logical data model (LDM) from physical data model (PDM)", + "tags": [ + "Generate Logical Data Model", + "actions" + ], + "x-gdc-security-info": { + "description": "Minimal permission required to use this endpoint.", + "permissions": [ + "MANAGE" + ] + } + } + }, + "/api/v1/actions/dataSources/{dataSourceId}/managePermissions": { + "post": { + "description": "Manage Permissions for a Data Source", + "operationId": "manageDataSourcePermissions", + "parameters": [ + { + "in": "path", + "name": "dataSourceId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "description": "An array of data source permissions assignments", + "items": { + "$ref": "#/components/schemas/DataSourcePermissionAssignment" + }, + "type": "array" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "No Content" + } + }, + "summary": "Manage Permissions for a Data Source", + "tags": [ + "Permissions", + "actions" + ] + } + }, + "/api/v1/actions/dataSources/{dataSourceId}/uploadNotification": { + "post": { + "description": "Notification sets up all reports to be computed again with new data.", + "operationId": "registerUploadNotification", + "parameters": [ + { + "in": "path", + "name": "dataSourceId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "An upload notification has been successfully registered." + } + }, + "summary": "Register an upload notification", + "tags": [ + "Invalidate Cache", + "actions" + ], + "x-gdc-security-info": { + "description": "Minimal permission required to use this endpoint.", + "permissions": [ + "MANAGE" + ] + } + } + }, + "/api/v1/actions/organization/automations/unsubscribe": { + "delete": { + "operationId": "unsubscribeAllAutomations", + "responses": { + "204": { + "description": "No Content" + } + }, + "summary": "Unsubscribe from all automations in all workspaces", + "tags": [ + "Unsubscribe", + "actions" + ] + } + }, + "/api/v1/actions/organization/managePermissions": { + "post": { + "description": "Manage Permissions for a Organization", + "operationId": "manageOrganizationPermissions", + "requestBody": { + "content": { + "application/json": { + "schema": { + "description": "An array of organization permissions assignments", + "items": { + "$ref": "#/components/schemas/OrganizationPermissionAssignment" + }, + "type": "array" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "No Content" + } + }, + "summary": "Manage Permissions for a Organization", + "tags": [ + "Permissions", + "actions" + ] + } + }, + "/api/v1/actions/organization/metadataSync": { + "post": { + "description": "(BETA) Temporary solution. Later relevant metadata actions will trigger sync in their scope only.", + "operationId": "metadataSyncOrganization", + "responses": { + "200": { + "description": "OK" + } + }, + "summary": "(BETA) Sync organization scope Metadata to other services", + "tags": [ + "AI", + "Metadata Sync", + "actions" + ] + } + }, + "/api/v1/actions/resolveEntitlements": { + "get": { + "description": "Resolves values of available entitlements for the organization.", + "operationId": "resolveAllEntitlements", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/ApiEntitlement" + }, + "type": "array" + } + } + }, + "description": "OK" + } + }, + "summary": "Values for all public entitlements.", + "tags": [ + "Entitlement", + "actions" + ], + "x-gdc-security-info": { + "description": "Minimal permission required to use this endpoint.", + "permissions": [ + "VIEW" + ] + } + }, + "post": { + "description": "Resolves values for requested entitlements in the organization.", + "operationId": "resolveRequestedEntitlements", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EntitlementsRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/ApiEntitlement" + }, + "type": "array" + } + } + }, + "description": "OK" + } + }, + "summary": "Values for requested public entitlements.", + "tags": [ + "Entitlement", + "actions" + ], + "x-gdc-security-info": { + "description": "Minimal permission required to use this endpoint.", + "permissions": [ + "VIEW" + ] + } + } + }, + "/api/v1/actions/resolveSettings": { + "get": { + "description": "Resolves values for all settings without workspace by current user, organization, or default settings.", + "operationId": "resolveAllSettingsWithoutWorkspace", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/ResolvedSetting" + }, + "type": "array" + } + } + }, + "description": "Values for selected settings." + } + }, + "summary": "Values for all settings without workspace.", + "tags": [ + "Reporting - Settings", + "actions" + ] + }, + "post": { + "description": "Resolves values for selected settings without workspace by current user, organization, or default settings.", + "operationId": "resolveSettingsWithoutWorkspace", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResolveSettingsRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/ResolvedSetting" + }, + "type": "array" + } + } + }, + "description": "Values for selected settings." + } + }, + "summary": "Values for selected settings without workspace.", + "tags": [ + "Reporting - Settings", + "actions" + ] + } + }, + "/api/v1/actions/userManagement/assignPermissions": { + "post": { + "operationId": "assignPermissions", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PermissionsAssignment" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "OK" + } + }, + "tags": [ + "User management" + ] + } + }, + "/api/v1/actions/userManagement/removeUsersUserGroups": { + "post": { + "operationId": "removeUsersUserGroups", + "requestBody": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/AssigneeIdentifier" + }, + "type": "array" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "OK" + } + }, + "tags": [ + "User management" + ] + } + }, + "/api/v1/actions/userManagement/revokePermissions": { + "post": { + "operationId": "revokePermissions", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PermissionsAssignment" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "OK" + } + }, + "tags": [ + "User management" + ] + } + }, + "/api/v1/actions/userManagement/userGroups": { + "get": { + "operationId": "listUserGroups", + "parameters": [ + { + "description": "Zero-based page index (0..N)", + "example": "page=0", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 0, + "format": "int32", + "type": "integer" + }, + "style": "form" + }, + { + "description": "The size of the page to be returned.", + "example": "size=20", + "in": "query", + "name": "size", + "required": false, + "schema": { + "default": 20, + "format": "int32", + "type": "integer" + }, + "style": "form" + }, + { + "description": "Filter by user name. Note that user name is case insensitive.", + "example": "name=charles", + "in": "query", + "name": "name", + "required": false, + "schema": { + "type": "string" + }, + "style": "form" + }, + { + "description": "Filter by workspaceId.", + "example": "workspace=demo", + "in": "query", + "name": "workspace", + "required": false, + "schema": { + "type": "string" + }, + "style": "form" + }, + { + "description": "Filter by dataSourceId.", + "example": "dataSource=demo-test-ds", + "in": "query", + "name": "dataSource", + "required": false, + "schema": { + "type": "string" + }, + "style": "form" + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserManagementUserGroups" + } + } + }, + "description": "OK" + } + }, + "tags": [ + "User management" + ] + } + }, + "/api/v1/actions/userManagement/userGroups/{userGroupId}/addMembers": { + "post": { + "operationId": "addGroupMembers", + "parameters": [ + { + "in": "path", + "name": "userGroupId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserManagementUserGroupMembers" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "No Content" + } + }, + "tags": [ + "User management" + ] + } + }, + "/api/v1/actions/userManagement/userGroups/{userGroupId}/members": { + "get": { + "operationId": "getGroupMembers", + "parameters": [ + { + "in": "path", + "name": "userGroupId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserManagementUserGroupMembers" + } + } + }, + "description": "OK" + } + }, + "tags": [ + "User management" + ] + } + }, + "/api/v1/actions/userManagement/userGroups/{userGroupId}/permissions": { + "get": { + "operationId": "listPermissionsForUserGroup", + "parameters": [ + { + "in": "path", + "name": "userGroupId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserManagementPermissionAssignments" + } + } + }, + "description": "OK" + } + }, + "tags": [ + "User management" + ] + }, + "post": { + "operationId": "managePermissionsForUserGroup", + "parameters": [ + { + "in": "path", + "name": "userGroupId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserManagementPermissionAssignments" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "No Content" + } + }, + "tags": [ + "User management" + ] + } + }, + "/api/v1/actions/userManagement/userGroups/{userGroupId}/removeMembers": { + "post": { + "operationId": "removeGroupMembers", + "parameters": [ + { + "in": "path", + "name": "userGroupId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserManagementUserGroupMembers" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "No Content" + } + }, + "tags": [ + "User management" + ] + } + }, + "/api/v1/actions/userManagement/users": { + "get": { + "operationId": "listUsers", + "parameters": [ + { + "description": "Zero-based page index (0..N)", + "example": "page=0", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 0, + "format": "int32", + "type": "integer" + }, + "style": "form" + }, + { + "description": "The size of the page to be returned.", + "example": "size=20", + "in": "query", + "name": "size", + "required": false, + "schema": { + "default": 20, + "format": "int32", + "type": "integer" + }, + "style": "form" + }, + { + "description": "Filter by user name. Note that user name is case insensitive.", + "example": "name=charles", + "in": "query", + "name": "name", + "required": false, + "schema": { + "type": "string" + }, + "style": "form" + }, + { + "description": "Filter by workspaceId.", + "example": "workspace=demo", + "in": "query", + "name": "workspace", + "required": false, + "schema": { + "type": "string" + }, + "style": "form" + }, + { + "description": "Filter by userGroupId.", + "example": "group=admin", + "in": "query", + "name": "group", + "required": false, + "schema": { + "type": "string" + }, + "style": "form" + }, + { + "description": "Filter by dataSourceId.", + "example": "dataSource=demo-test-ds", + "in": "query", + "name": "dataSource", + "required": false, + "schema": { + "type": "string" + }, + "style": "form" + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserManagementUsers" + } + } + }, + "description": "OK" + } + }, + "tags": [ + "User management" + ] + } + }, + "/api/v1/actions/userManagement/users/{userId}/permissions": { + "get": { + "operationId": "listPermissionsForUser", + "parameters": [ + { + "in": "path", + "name": "userId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserManagementPermissionAssignments" + } + } + }, + "description": "OK" + } + }, + "tags": [ + "User management" + ] + }, + "post": { + "operationId": "managePermissionsForUser", + "parameters": [ + { + "in": "path", + "name": "userId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserManagementPermissionAssignments" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "No Content" + } + }, + "tags": [ + "User management" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/analyticalDashboards/{dashboardId}/availableAssignees": { + "get": { + "operationId": "availableAssignees", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "dashboardId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AvailableAssignees" + } + } + }, + "description": "OK" + } + }, + "summary": "Get Available Assignees", + "tags": [ + "Permissions", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/analyticalDashboards/{dashboardId}/managePermissions": { + "post": { + "operationId": "manageDashboardPermissions", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "dashboardId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "description": "An array of dashboard permissions assignments", + "items": { + "oneOf": [ + { + "$ref": "#/components/schemas/PermissionsForAssignee" + }, + { + "$ref": "#/components/schemas/PermissionsForAssigneeRule" + } + ] + }, + "type": "array" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "No Content" } }, - "required": [ - "id" - ], - "type": "object" - }, - "WorkspaceUserGroup": { - "description": "List of workspace groups", - "properties": { - "id": { - "type": "string" + "summary": "Manage Permissions for a Dashboard", + "tags": [ + "Permissions", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/analyticalDashboards/{dashboardId}/permissions": { + "get": { + "operationId": "dashboardPermissions", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } }, - "name": { - "description": "Group name", - "example": "admins", - "type": "string" + { + "in": "path", + "name": "dashboardId", + "required": true, + "schema": { + "type": "string" + } } - }, - "required": [ - "id" ], - "type": "object" - }, - "WorkspaceUserGroups": { - "properties": { - "totalCount": { - "description": "Total number of groups", - "format": "int32", - "type": "integer" - }, - "userGroups": { - "items": { - "$ref": "#/components/schemas/WorkspaceUserGroup" + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardPermissions" + } + } }, - "type": "array" + "description": "OK" } }, - "required": [ - "totalCount", - "userGroups" + "summary": "Get Dashboard Permissions", + "tags": [ + "Permissions", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/automations/unsubscribe": { + "delete": { + "operationId": "unsubscribeWorkspaceAutomations", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + } ], - "type": "object" - }, - "WorkspaceUsers": { - "properties": { - "totalCount": { - "description": "The total number of users is based on applied filters.", - "format": "int32", - "type": "integer" - }, - "users": { - "items": { - "$ref": "#/components/schemas/WorkspaceUser" - }, - "type": "array" + "responses": { + "204": { + "description": "No Content" } }, - "required": [ - "totalCount", - "users" - ], - "type": "object" - }, - "Xliff": { - "properties": { - "file": { - "items": { - "$ref": "#/components/schemas/File" - }, - "type": "array" - }, - "otherAttributes": { - "additionalProperties": { + "summary": "Unsubscribe from all automations in the workspace", + "tags": [ + "Unsubscribe", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/automations/{automationId}/unsubscribe": { + "delete": { + "operationId": "unsubscribeAutomation", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { "type": "string" - }, - "type": "object" - }, - "space": { - "type": "string", - "xml": { - "attribute": true, - "namespace": "http://www.w3.org/XML/1998/namespace" } }, - "srcLang": { - "type": "string", - "xml": { - "attribute": true + { + "in": "path", + "name": "automationId", + "required": true, + "schema": { + "type": "string" } - }, - "trgLang": { - "type": "string", - "xml": { - "attribute": true + } + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "summary": "Unsubscribe from an automation", + "tags": [ + "Unsubscribe", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/checkEntityOverrides": { + "post": { + "description": "Finds entities with given ID in hierarchy (e.g. to check possible future conflicts).", + "operationId": "checkEntityOverrides", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" } - }, - "version": { - "type": "string", - "xml": { - "attribute": true + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "description": "An array of object identifications", + "items": { + "$ref": "#/components/schemas/HierarchyObjectIdentification" + }, + "type": "array" + } } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/IdentifierDuplications" + }, + "type": "array" + } + } + }, + "description": "Searching for entities finished successfully." } }, - "required": [ - "file" + "summary": "Finds entities with given ID in hierarchy.", + "tags": [ + "Hierarchy", + "actions" ], - "type": "object", - "xml": { - "name": "xliff", - "namespace": "urn:oasis:names:tc:xliff:document:2.0" + "x-gdc-security-info": { + "description": "Minimal permission required to use this endpoint.", + "permissions": [ + "ANALYZE" + ] } } - } - }, - "info": { - "title": "OpenAPI definition", - "version": "v0" - }, - "openapi": "3.0.1", - "paths": { - "/api/v1/actions/collectUsage": { + }, + "/api/v1/actions/workspaces/{workspaceId}/dependentEntitiesGraph": { "get": { - "description": "Provides information about platform usage, like amount of users, workspaces, ...", - "operationId": "allPlatformUsage", + "description": "Computes the dependent entities graph", + "operationId": "getDependentEntitiesGraph", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + } + ], "responses": { "200": { "content": { "application/json": { "schema": { - "items": { - "$ref": "#/components/schemas/PlatformUsage" - }, - "type": "array" + "$ref": "#/components/schemas/DependentEntitiesResponse" } } }, - "description": "OK" + "description": "Computes the dependent entities graph" } }, - "summary": "Info about the platform usage.", + "summary": "Computes the dependent entities graph", "tags": [ - "Usage", + "Dependency Graph", "actions" ], "x-gdc-security-info": { - "description": "Minimal permission required to use this endpoint.", + "description": "Permissions required to read the graph.", "permissions": [ - "MANAGE" + "VIEW" ] } }, "post": { - "description": "Provides information about platform usage, like amount of users, workspaces, ...", - "operationId": "particularPlatformUsage", + "description": "Computes the dependent entities graph from given entry points", + "operationId": "getDependentEntitiesGraphFromEntryPoints", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + } + ], "requestBody": { "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PlatformUsageRequest" + "$ref": "#/components/schemas/DependentEntitiesRequest" } } }, "required": true }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DependentEntitiesResponse" + } + } + }, + "description": "Computes the dependent entities graph from given entry points" + } + }, + "summary": "Computes the dependent entities graph from given entry points", + "tags": [ + "Dependency Graph", + "actions" + ], + "x-gdc-security-info": { + "description": "Permissions required to read the graph.", + "permissions": [ + "VIEW" + ] + } + } + }, + "/api/v1/actions/workspaces/{workspaceId}/inheritedEntityConflicts": { + "get": { + "description": "Finds API identifier conflicts in given workspace hierarchy.", + "operationId": "inheritedEntityConflicts", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + } + ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { - "$ref": "#/components/schemas/PlatformUsage" + "$ref": "#/components/schemas/IdentifierDuplications" }, "type": "array" } } }, - "description": "OK" + "description": "Searching for conflicting identifiers finished successfully" } }, - "summary": "Info about the platform usage for particular items.", + "summary": "Finds identifier conflicts in workspace hierarchy.", "tags": [ - "Usage", + "Hierarchy", "actions" ], "x-gdc-security-info": { @@ -15985,63 +19519,56 @@ } } }, - "/api/v1/actions/dataSources/{dataSourceId}/generateLogicalModel": { - "post": { - "description": "Generate logical data model (LDM) from physical data model (PDM) stored in data source.", - "operationId": "generateLogicalModel", + "/api/v1/actions/workspaces/{workspaceId}/inheritedEntityPrefixes": { + "get": { + "description": "Get used entity prefixes in hierarchy of parent workspaces", + "operationId": "inheritedEntityPrefixes", "parameters": [ { "in": "path", - "name": "dataSourceId", + "name": "workspaceId", "required": true, "schema": { "type": "string" } } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GenerateLdmRequest" - } - } - }, - "required": true - }, "responses": { "200": { "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/DeclarativeModel" + "items": { + "type": "string" + }, + "type": "array" } } }, - "description": "LDM generated successfully." + "description": "Prefixes used in parent entities" } }, - "summary": "Generate logical data model (LDM) from physical data model (PDM)", + "summary": "Get used entity prefixes in hierarchy", "tags": [ - "Generate Logical Data Model", + "Hierarchy", "actions" ], "x-gdc-security-info": { "description": "Minimal permission required to use this endpoint.", "permissions": [ - "MANAGE" + "VIEW" ] } } }, - "/api/v1/actions/dataSources/{dataSourceId}/managePermissions": { + "/api/v1/actions/workspaces/{workspaceId}/managePermissions": { "post": { - "description": "Manage Permissions for a Data Source", - "operationId": "manageDataSourcePermissions", + "description": "Manage Permissions for a Workspace and its Workspace Hierarchy", + "operationId": "manageWorkspacePermissions", "parameters": [ { "in": "path", - "name": "dataSourceId", + "name": "workspaceId", "required": true, "schema": { "type": "string" @@ -16052,9 +19579,9 @@ "content": { "application/json": { "schema": { - "description": "An array of data source permissions assignments", + "description": "An array of workspace permissions assignments", "items": { - "$ref": "#/components/schemas/DataSourcePermissionAssignment" + "$ref": "#/components/schemas/WorkspacePermissionAssignment" }, "type": "array" } @@ -16067,21 +19594,21 @@ "description": "No Content" } }, - "summary": "Manage Permissions for a Data Source", + "summary": "Manage Permissions for a Workspace", "tags": [ "Permissions", "actions" ] } }, - "/api/v1/actions/dataSources/{dataSourceId}/uploadNotification": { + "/api/v1/actions/workspaces/{workspaceId}/metadataSync": { "post": { - "description": "Notification sets up all reports to be computed again with new data.", - "operationId": "registerUploadNotification", + "description": "(BETA) Temporary solution. Later relevant metadata actions will trigger it in its scope only.", + "operationId": "metadataSync", "parameters": [ { "in": "path", - "name": "dataSourceId", + "name": "workspaceId", "required": true, "schema": { "type": "string" @@ -16089,115 +19616,92 @@ } ], "responses": { - "204": { - "description": "An upload notification has been successfully registered." - } - }, - "summary": "Register an upload notification", - "tags": [ - "Invalidate Cache", - "actions" - ], - "x-gdc-security-info": { - "description": "Minimal permission required to use this endpoint.", - "permissions": [ - "MANAGE" - ] - } - } - }, - "/api/v1/actions/organization/managePermissions": { - "post": { - "description": "Manage Permissions for a Organization", - "operationId": "manageOrganizationPermissions", - "requestBody": { - "content": { - "application/json": { - "schema": { - "description": "An array of organization permissions assignments", - "items": { - "$ref": "#/components/schemas/OrganizationPermissionAssignment" - }, - "type": "array" - } - } - }, - "required": true - }, - "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK" } }, - "summary": "Manage Permissions for a Organization", + "summary": "(BETA) Sync Metadata to other services", "tags": [ - "Permissions", + "AI", + "Metadata Sync", "actions" ] } }, - "/api/v1/actions/resolveEntitlements": { + "/api/v1/actions/workspaces/{workspaceId}/overriddenChildEntities": { "get": { - "description": "Resolves values of available entitlements for the organization.", - "operationId": "resolveAllEntitlements", + "description": "Finds API identifier overrides in given workspace hierarchy.", + "operationId": "overriddenChildEntities", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + } + ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { - "$ref": "#/components/schemas/ApiEntitlement" + "$ref": "#/components/schemas/IdentifierDuplications" }, "type": "array" } } }, - "description": "OK" + "description": "Searching for overridden identifiers finished successfully" } }, - "summary": "Values for all public entitlements.", + "summary": "Finds identifier overrides in workspace hierarchy.", "tags": [ - "Entitlement", + "Hierarchy", "actions" ], "x-gdc-security-info": { "description": "Minimal permission required to use this endpoint.", "permissions": [ - "VIEW" + "MANAGE" ] } - }, - "post": { - "description": "Resolves values for requested entitlements in the organization.", - "operationId": "resolveRequestedEntitlements", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/EntitlementsRequest" - } + } + }, + "/api/v1/actions/workspaces/{workspaceId}/resolveSettings": { + "get": { + "description": "Resolves values for all settings in a workspace by current user, workspace, organization, or default settings.", + "operationId": "workspaceResolveAllSettings", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" } - }, - "required": true - }, + } + ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { - "$ref": "#/components/schemas/ApiEntitlement" + "$ref": "#/components/schemas/ResolvedSetting" }, "type": "array" } } }, - "description": "OK" + "description": "Values for selected settings." } }, - "summary": "Values for requested public entitlements.", + "summary": "Values for all settings.", "tags": [ - "Entitlement", + "Workspaces - Settings", "actions" ], "x-gdc-security-info": { @@ -16206,12 +19710,30 @@ "VIEW" ] } - } - }, - "/api/v1/actions/resolveSettings": { - "get": { - "description": "Resolves values for all settings without workspace by current user, organization, or default settings.", - "operationId": "resolveAllSettingsWithoutWorkspace", + }, + "post": { + "description": "Resolves value for selected settings in a workspace by current user, workspace, organization, or default settings.", + "operationId": "workspaceResolveSettings", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResolveSettingsRequest" + } + } + }, + "required": true + }, "responses": { "200": { "content": { @@ -16227,81 +19749,122 @@ "description": "Values for selected settings." } }, - "summary": "Values for all settings without workspace.", + "summary": "Values for selected settings.", "tags": [ - "Reporting - Settings", + "Workspaces - Settings", "actions" - ] - }, - "post": { - "description": "Resolves values for selected settings without workspace by current user, organization, or default settings.", - "operationId": "resolveSettingsWithoutWorkspace", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ResolveSettingsRequest" - } + ], + "x-gdc-security-info": { + "description": "Minimal permission required to use this endpoint.", + "permissions": [ + "VIEW" + ] + } + } + }, + "/api/v1/actions/workspaces/{workspaceId}/translations": { + "get": { + "description": "Provides a list of effective translation tags.", + "operationId": "getTranslationTags", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" } - }, - "required": true - }, + } + ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { - "$ref": "#/components/schemas/ResolvedSetting" + "type": "string" }, "type": "array" } } }, - "description": "Values for selected settings." + "description": "Retrieved list of translation tags." } }, - "summary": "Values for selected settings without workspace.", + "summary": "Get translation tags.", "tags": [ - "Reporting - Settings", + "Translations", "actions" - ] + ], + "x-gdc-security-info": { + "description": "Minimal permission required to use this endpoint.", + "permissions": [ + "MANAGE" + ] + } } }, - "/api/v1/actions/userManagement/assignPermissions": { + "/api/v1/actions/workspaces/{workspaceId}/translations/clean": { "post": { - "operationId": "assignPermissions", + "description": "Cleans up all translations for a particular locale.", + "operationId": "cleanTranslations", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + } + ], "requestBody": { "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PermissionsAssignment" + "$ref": "#/components/schemas/LocaleRequest" } } }, "required": true }, "responses": { - "200": { - "description": "OK" + "204": { + "description": "Translations were successfully removed." } }, + "summary": "Cleans up translations.", "tags": [ - "User management" - ] + "Translations", + "actions" + ], + "x-gdc-security-info": { + "description": "Minimal permission required to use this endpoint.", + "permissions": [ + "MANAGE" + ] + } } }, - "/api/v1/actions/userManagement/removeUsersUserGroups": { + "/api/v1/actions/workspaces/{workspaceId}/translations/retrieve": { "post": { - "operationId": "removeUsersUserGroups", + "description": "Retrieve all translation for existing entities in a particular locale. The source translations returned by this endpoint are always original, not translated, texts. Because the XLIFF schema definition has the 'xs:language' constraint for the 'srcLang' attribute, it is always set to 'en-US' value.", + "operationId": "retrieveTranslations", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + } + ], "requestBody": { "content": { "application/json": { "schema": { - "items": { - "$ref": "#/components/schemas/AssigneeIdentifier" - }, - "type": "array" + "$ref": "#/components/schemas/LocaleRequest" } } }, @@ -16309,41 +19872,83 @@ }, "responses": { "200": { - "description": "OK" + "content": { + "application/xml": { + "schema": { + "$ref": "#/components/schemas/Xliff" + } + } + }, + "description": "XLIFF file containing translations for a particular locale." } }, + "summary": "Retrieve translations for entities.", "tags": [ - "User management" - ] + "Translations", + "actions" + ], + "x-gdc-security-info": { + "description": "Minimal permission required to use this endpoint.", + "permissions": [ + "MANAGE" + ] + } } }, - "/api/v1/actions/userManagement/revokePermissions": { + "/api/v1/actions/workspaces/{workspaceId}/translations/set": { "post": { - "operationId": "revokePermissions", + "description": "Set translation for existing entities in a particular locale.", + "operationId": "setTranslations", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + } + ], "requestBody": { "content": { - "application/json": { + "application/xml": { "schema": { - "$ref": "#/components/schemas/PermissionsAssignment" + "$ref": "#/components/schemas/Xliff" } } }, "required": true }, "responses": { - "200": { - "description": "OK" + "204": { + "description": "Translations were successfully set." } }, + "summary": "Set translations for entities.", "tags": [ - "User management" - ] + "Translations", + "actions" + ], + "x-gdc-security-info": { + "description": "Minimal permission required to use this endpoint.", + "permissions": [ + "MANAGE" + ] + } } }, - "/api/v1/actions/userManagement/userGroups": { + "/api/v1/actions/workspaces/{workspaceId}/userGroups": { "get": { - "operationId": "listUserGroups", + "operationId": "listWorkspaceUserGroups", "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, { "description": "Zero-based page index (0..N)", "example": "page=0", @@ -16380,28 +19985,6 @@ "type": "string" }, "style": "form" - }, - { - "description": "Filter by workspaceId.", - "example": "workspace=demo", - "in": "query", - "name": "workspace", - "required": false, - "schema": { - "type": "string" - }, - "style": "form" - }, - { - "description": "Filter by dataSourceId.", - "example": "dataSource=demo-test-ds", - "in": "query", - "name": "dataSource", - "required": false, - "schema": { - "type": "string" - }, - "style": "form" } ], "responses": { @@ -16409,7 +19992,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/UserManagementUserGroups" + "$ref": "#/components/schemas/WorkspaceUserGroups" } } }, @@ -16417,54 +20000,58 @@ } }, "tags": [ - "User management" + "actions" ] } }, - "/api/v1/actions/userManagement/userGroups/{userGroupId}/addMembers": { - "post": { - "operationId": "addGroupMembers", + "/api/v1/actions/workspaces/{workspaceId}/users": { + "get": { + "operationId": "listWorkspaceUsers", "parameters": [ { "in": "path", - "name": "userGroupId", + "name": "workspaceId", "required": true, "schema": { "type": "string" } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserManagementUserGroupMembers" - } - } }, - "required": true - }, - "responses": { - "204": { - "description": "No Content" - } - }, - "tags": [ - "User management" - ] - } - }, - "/api/v1/actions/userManagement/userGroups/{userGroupId}/members": { - "get": { - "operationId": "getGroupMembers", - "parameters": [ { - "in": "path", - "name": "userGroupId", - "required": true, + "description": "Zero-based page index (0..N)", + "example": "page=0", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 0, + "format": "int32", + "type": "integer" + }, + "style": "form" + }, + { + "description": "The size of the page to be returned.", + "example": "size=20", + "in": "query", + "name": "size", + "required": false, + "schema": { + "default": 20, + "format": "int32", + "type": "integer" + }, + "style": "form" + }, + { + "description": "Filter by user name. Note that user name is case insensitive.", + "example": "name=charles", + "in": "query", + "name": "name", + "required": false, "schema": { "type": "string" - } + }, + "style": "form" } ], "responses": { @@ -16472,7 +20059,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/UserManagementUserGroupMembers" + "$ref": "#/components/schemas/WorkspaceUsers" } } }, @@ -16480,18 +20067,22 @@ } }, "tags": [ - "User management" + "actions" ] } }, - "/api/v1/actions/userManagement/userGroups/{userGroupId}/permissions": { + "/api/v1/entities/admin/cookieSecurityConfigurations/{id}": { "get": { - "operationId": "listPermissionsForUserGroup", + "operationId": "getEntity@CookieSecurityConfigurations", "parameters": [ { - "in": "path", - "name": "userGroupId", - "required": true, + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=lastRotation==InstantValue;rotationInterval==DurationValue", + "in": "query", + "name": "filter", "schema": { "type": "string" } @@ -16500,26 +20091,33 @@ "responses": { "200": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/UserManagementPermissionAssignments" + "$ref": "#/components/schemas/JsonApiCookieSecurityConfigurationOutDocument" } } }, - "description": "OK" + "description": "Request successfully processed" } }, + "summary": "Get CookieSecurityConfiguration", "tags": [ - "User management" + "Cookie Security Configuration", + "entities", + "organization-controller" ] }, - "post": { - "operationId": "managePermissionsForUserGroup", + "patch": { + "operationId": "patchEntity@CookieSecurityConfigurations", "parameters": [ { - "in": "path", - "name": "userGroupId", - "required": true, + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=lastRotation==InstantValue;rotationInterval==DurationValue", + "in": "query", + "name": "filter", "schema": { "type": "string" } @@ -16527,32 +20125,44 @@ ], "requestBody": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/UserManagementPermissionAssignments" + "$ref": "#/components/schemas/JsonApiCookieSecurityConfigurationPatchDocument" } } }, "required": true }, "responses": { - "204": { - "description": "No Content" + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiCookieSecurityConfigurationOutDocument" + } + } + }, + "description": "Request successfully processed" } }, + "summary": "Patch CookieSecurityConfiguration", "tags": [ - "User management" + "Cookie Security Configuration", + "entities", + "organization-controller" ] - } - }, - "/api/v1/actions/userManagement/userGroups/{userGroupId}/removeMembers": { - "post": { - "operationId": "removeGroupMembers", + }, + "put": { + "operationId": "updateEntity@CookieSecurityConfigurations", "parameters": [ { - "in": "path", - "name": "userGroupId", - "required": true, + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=lastRotation==InstantValue;rotationInterval==DurationValue", + "in": "query", + "name": "filter", "schema": { "type": "string" } @@ -16560,95 +20170,91 @@ ], "requestBody": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/UserManagementUserGroupMembers" + "$ref": "#/components/schemas/JsonApiCookieSecurityConfigurationInDocument" } } }, "required": true }, "responses": { - "204": { - "description": "No Content" + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiCookieSecurityConfigurationOutDocument" + } + } + }, + "description": "Request successfully processed" } }, + "summary": "Put CookieSecurityConfiguration", "tags": [ - "User management" + "Cookie Security Configuration", + "entities", + "organization-controller" ] } }, - "/api/v1/actions/userManagement/users": { + "/api/v1/entities/admin/organizations/{id}": { "get": { - "operationId": "listUsers", + "operationId": "getEntity@Organizations", "parameters": [ { - "description": "Zero-based page index (0..N)", - "example": "page=0", - "in": "query", - "name": "page", - "required": false, - "schema": { - "default": 0, - "format": "int32", - "type": "integer" - }, - "style": "form" - }, - { - "description": "The size of the page to be returned.", - "example": "size=20", - "in": "query", - "name": "size", - "required": false, - "schema": { - "default": 20, - "format": "int32", - "type": "integer" - }, - "style": "form" - }, - { - "description": "Filter by user name. Note that user name is case insensitive.", - "example": "name=charles", - "in": "query", - "name": "name", - "required": false, - "schema": { - "type": "string" - }, - "style": "form" + "$ref": "#/components/parameters/idPathParameter" }, { - "description": "Filter by workspaceId.", - "example": "workspace=demo", + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString;hostname==someString;bootstrapUser.id==321;bootstrapUserGroup.id==321", "in": "query", - "name": "workspace", - "required": false, + "name": "filter", "schema": { "type": "string" - }, - "style": "form" + } }, { - "description": "Filter by userGroupId.", - "example": "group=admin", + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=bootstrapUser,bootstrapUserGroup", + "explode": false, "in": "query", - "name": "group", + "name": "include", "required": false, "schema": { - "type": "string" + "items": { + "enum": [ + "users", + "userGroups", + "bootstrapUser", + "bootstrapUserGroup", + "ALL" + ], + "type": "string" + }, + "type": "array" }, "style": "form" }, { - "description": "Filter by dataSourceId.", - "example": "dataSource=demo-test-ds", + "description": "Include Meta objects.", + "example": "metaInclude=permissions,all", + "explode": false, "in": "query", - "name": "dataSource", + "name": "metaInclude", "required": false, "schema": { - "type": "string" + "description": "Included meta objects", + "items": { + "enum": [ + "permissions", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true }, "style": "form" } @@ -16656,280 +20262,323 @@ "responses": { "200": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/UserManagementUsers" + "$ref": "#/components/schemas/JsonApiOrganizationOutDocument" } } }, - "description": "OK" + "description": "Request successfully processed" } }, + "summary": "Get Organizations", "tags": [ - "User management" - ] - } - }, - "/api/v1/actions/userManagement/users/{userId}/permissions": { - "get": { - "operationId": "listPermissionsForUser", - "parameters": [ - { - "in": "path", - "name": "userId", - "required": true, - "schema": { - "type": "string" - } - } + "Organization - Entity APIs", + "entities", + "organization-controller" ], - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserManagementPermissionAssignments" - } - } - }, - "description": "OK" - } - }, - "tags": [ - "User management" - ] + "x-gdc-security-info": { + "description": "Contains permissions required to manipulate the Organization.", + "permissions": [ + "MANAGE" + ] + } }, - "post": { - "operationId": "managePermissionsForUser", + "patch": { + "operationId": "patchEntity@Organizations", "parameters": [ { - "in": "path", - "name": "userId", - "required": true, + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString;hostname==someString;bootstrapUser.id==321;bootstrapUserGroup.id==321", + "in": "query", + "name": "filter", "schema": { "type": "string" } + }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=bootstrapUser,bootstrapUserGroup", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "users", + "userGroups", + "bootstrapUser", + "bootstrapUserGroup", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" } ], "requestBody": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/UserManagementPermissionAssignments" + "$ref": "#/components/schemas/JsonApiOrganizationPatchDocument" } } }, "required": true }, - "responses": { - "204": { - "description": "No Content" - } - }, - "tags": [ - "User management" - ] - } - }, - "/api/v1/actions/workspaces/{workspaceId}/analyticalDashboards/{dashboardId}/availableAssignees": { - "get": { - "operationId": "availableAssignees", - "parameters": [ - { - "in": "path", - "name": "workspaceId", - "required": true, - "schema": { - "type": "string" - } - }, - { - "in": "path", - "name": "dashboardId", - "required": true, - "schema": { - "type": "string" - } - } - ], "responses": { "200": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/AvailableAssignees" + "$ref": "#/components/schemas/JsonApiOrganizationOutDocument" } } }, - "description": "OK" + "description": "Request successfully processed" } }, - "summary": "Get Available Assignees", + "summary": "Patch Organization", "tags": [ - "Permissions", - "actions" - ] - } - }, - "/api/v1/actions/workspaces/{workspaceId}/analyticalDashboards/{dashboardId}/managePermissions": { - "post": { - "operationId": "manageDashboardPermissions", + "Organization - Entity APIs", + "entities", + "organization-controller" + ], + "x-gdc-security-info": { + "description": "Contains permissions required to manipulate the Organization.", + "permissions": [ + "MANAGE" + ] + } + }, + "put": { + "operationId": "updateEntity@Organizations", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString;hostname==someString;bootstrapUser.id==321;bootstrapUserGroup.id==321", + "in": "query", + "name": "filter", "schema": { "type": "string" } }, { - "in": "path", - "name": "dashboardId", - "required": true, + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=bootstrapUser,bootstrapUserGroup", + "explode": false, + "in": "query", + "name": "include", + "required": false, "schema": { - "type": "string" - } + "items": { + "enum": [ + "users", + "userGroups", + "bootstrapUser", + "bootstrapUserGroup", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" } ], "requestBody": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "description": "An array of dashboard permissions assignments", - "items": { - "oneOf": [ - { - "$ref": "#/components/schemas/PermissionsForAssignee" - }, - { - "$ref": "#/components/schemas/PermissionsForAssigneeRule" - } - ] - }, - "type": "array" + "$ref": "#/components/schemas/JsonApiOrganizationInDocument" } } }, "required": true }, "responses": { - "204": { - "description": "No Content" + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiOrganizationOutDocument" + } + } + }, + "description": "Request successfully processed" } }, - "summary": "Manage Permissions for a Dashboard", + "summary": "Put Organization", "tags": [ - "Permissions", - "actions" - ] + "Organization - Entity APIs", + "entities", + "organization-controller" + ], + "x-gdc-security-info": { + "description": "Contains permissions required to manipulate the Organization.", + "permissions": [ + "MANAGE" + ] + } } }, - "/api/v1/actions/workspaces/{workspaceId}/analyticalDashboards/{dashboardId}/permissions": { + "/api/v1/entities/colorPalettes": { "get": { - "operationId": "dashboardPermissions", + "operationId": "getAllEntities@ColorPalettes", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString;content==JsonNodeValue", + "in": "query", + "name": "filter", "schema": { "type": "string" } }, { - "in": "path", - "name": "dashboardId", - "required": true, + "$ref": "#/components/parameters/page" + }, + { + "$ref": "#/components/parameters/size" + }, + { + "$ref": "#/components/parameters/sort" + }, + { + "description": "Include Meta objects.", + "example": "metaInclude=page,all", + "explode": false, + "in": "query", + "name": "metaInclude", + "required": false, "schema": { - "type": "string" - } + "description": "Included meta objects", + "items": { + "enum": [ + "page", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" } ], "responses": { "200": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/DashboardPermissions" + "$ref": "#/components/schemas/JsonApiColorPaletteOutList" } } }, - "description": "OK" + "description": "Request successfully processed" } }, - "summary": "Get Dashboard Permissions", + "summary": "Get all Color Pallettes", "tags": [ - "Permissions", - "actions" + "Appearance", + "entities", + "organization-model-controller" ] - } - }, - "/api/v1/actions/workspaces/{workspaceId}/checkEntityOverrides": { + }, "post": { - "description": "Finds entities with given ID in hierarchy (e.g. to check possible future conflicts).", - "operationId": "checkEntityOverrides", - "parameters": [ - { - "in": "path", - "name": "workspaceId", - "required": true, - "schema": { - "type": "string" - } - } - ], + "operationId": "createEntity@ColorPalettes", "requestBody": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "description": "An array of object identifications", - "items": { - "$ref": "#/components/schemas/HierarchyObjectIdentification" - }, - "type": "array" + "$ref": "#/components/schemas/JsonApiColorPaletteInDocument" } } }, "required": true }, "responses": { - "200": { + "201": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "items": { - "$ref": "#/components/schemas/IdentifierDuplications" - }, - "type": "array" + "$ref": "#/components/schemas/JsonApiColorPaletteOutDocument" } } }, - "description": "Searching for entities finished successfully." + "description": "Request successfully processed" } }, - "summary": "Finds entities with given ID in hierarchy.", + "summary": "Post Color Pallettes", "tags": [ - "Hierarchy", - "actions" + "Appearance", + "entities", + "organization-model-controller" ], "x-gdc-security-info": { - "description": "Minimal permission required to use this endpoint.", + "description": "Contains minimal permission level required to manage this object type.", "permissions": [ - "ANALYZE" + "MANAGE" ] } } }, - "/api/v1/actions/workspaces/{workspaceId}/dependentEntitiesGraph": { + "/api/v1/entities/colorPalettes/{id}": { + "delete": { + "operationId": "deleteEntity@ColorPalettes", + "parameters": [ + { + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString;content==JsonNodeValue", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "$ref": "#/components/responses/Deleted" + } + }, + "summary": "Delete a Color Pallette", + "tags": [ + "Appearance", + "entities", + "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } + }, "get": { - "description": "Computes the dependent entities graph", - "operationId": "getDependentEntitiesGraph", + "operationId": "getEntity@ColorPalettes", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString;content==JsonNodeValue", + "in": "query", + "name": "filter", "schema": { "type": "string" } @@ -16938,35 +20587,33 @@ "responses": { "200": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/DependentEntitiesResponse" + "$ref": "#/components/schemas/JsonApiColorPaletteOutDocument" } } }, - "description": "Computes the dependent entities graph" + "description": "Request successfully processed" } }, - "summary": "Computes the dependent entities graph", + "summary": "Get Color Pallette", "tags": [ - "Dependency Graph", - "actions" - ], - "x-gdc-security-info": { - "description": "Permissions required to read the graph.", - "permissions": [ - "VIEW" - ] - } + "Appearance", + "entities", + "organization-model-controller" + ] }, - "post": { - "description": "Computes the dependent entities graph from given entry points", - "operationId": "getDependentEntitiesGraphFromEntryPoints", + "patch": { + "operationId": "patchEntity@ColorPalettes", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString;content==JsonNodeValue", + "in": "query", + "name": "filter", "schema": { "type": "string" } @@ -16974,9 +20621,9 @@ ], "requestBody": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/DependentEntitiesRequest" + "$ref": "#/components/schemas/JsonApiColorPalettePatchDocument" } } }, @@ -16985,187 +20632,220 @@ "responses": { "200": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/DependentEntitiesResponse" + "$ref": "#/components/schemas/JsonApiColorPaletteOutDocument" } } }, - "description": "Computes the dependent entities graph from given entry points" + "description": "Request successfully processed" } }, - "summary": "Computes the dependent entities graph from given entry points", + "summary": "Patch Color Pallette", "tags": [ - "Dependency Graph", - "actions" + "Appearance", + "entities", + "organization-model-controller" ], "x-gdc-security-info": { - "description": "Permissions required to read the graph.", + "description": "Contains minimal permission level required to manage this object type.", "permissions": [ - "VIEW" + "MANAGE" ] } - } - }, - "/api/v1/actions/workspaces/{workspaceId}/inheritedEntityConflicts": { - "get": { - "description": "Finds API identifier conflicts in given workspace hierarchy.", - "operationId": "inheritedEntityConflicts", + }, + "put": { + "operationId": "updateEntity@ColorPalettes", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString;content==JsonNodeValue", + "in": "query", + "name": "filter", "schema": { "type": "string" } } ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiColorPaletteInDocument" + } + } + }, + "required": true + }, "responses": { "200": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "items": { - "$ref": "#/components/schemas/IdentifierDuplications" - }, - "type": "array" + "$ref": "#/components/schemas/JsonApiColorPaletteOutDocument" } } }, - "description": "Searching for conflicting identifiers finished successfully" + "description": "Request successfully processed" } }, - "summary": "Finds identifier conflicts in workspace hierarchy.", + "summary": "Put Color Pallette", "tags": [ - "Hierarchy", - "actions" + "Appearance", + "entities", + "organization-model-controller" ], "x-gdc-security-info": { - "description": "Minimal permission required to use this endpoint.", + "description": "Contains minimal permission level required to manage this object type.", "permissions": [ "MANAGE" ] } } }, - "/api/v1/actions/workspaces/{workspaceId}/inheritedEntityPrefixes": { + "/api/v1/entities/cspDirectives": { "get": { - "description": "Get used entity prefixes in hierarchy of parent workspaces", - "operationId": "inheritedEntityPrefixes", + "description": " Context Security Police Directive", + "operationId": "getAllEntities@CspDirectives", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=sources==v1,v2,v3", + "in": "query", + "name": "filter", "schema": { "type": "string" } + }, + { + "$ref": "#/components/parameters/page" + }, + { + "$ref": "#/components/parameters/size" + }, + { + "$ref": "#/components/parameters/sort" + }, + { + "description": "Include Meta objects.", + "example": "metaInclude=page,all", + "explode": false, + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "description": "Included meta objects", + "items": { + "enum": [ + "page", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" } ], "responses": { "200": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "items": { - "type": "string" - }, - "type": "array" + "$ref": "#/components/schemas/JsonApiCspDirectiveOutList" } } }, - "description": "Prefixes used in parent entities" - } - }, - "summary": "Get used entity prefixes in hierarchy", - "tags": [ - "Hierarchy", - "actions" - ], - "x-gdc-security-info": { - "description": "Minimal permission required to use this endpoint.", - "permissions": [ - "VIEW" - ] - } - } - }, - "/api/v1/actions/workspaces/{workspaceId}/managePermissions": { - "post": { - "description": "Manage Permissions for a Workspace and its Workspace Hierarchy", - "operationId": "manageWorkspacePermissions", - "parameters": [ - { - "in": "path", - "name": "workspaceId", - "required": true, - "schema": { - "type": "string" - } + "description": "Request successfully processed" } - ], + }, + "summary": "Get CSP Directives", + "tags": [ + "CSP Directives", + "entities", + "organization-model-controller" + ] + }, + "post": { + "description": " Context Security Police Directive", + "operationId": "createEntity@CspDirectives", "requestBody": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "description": "An array of workspace permissions assignments", - "items": { - "$ref": "#/components/schemas/WorkspacePermissionAssignment" - }, - "type": "array" + "$ref": "#/components/schemas/JsonApiCspDirectiveInDocument" } } }, "required": true }, "responses": { - "204": { - "description": "No Content" + "201": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiCspDirectiveOutDocument" + } + } + }, + "description": "Request successfully processed" } }, - "summary": "Manage Permissions for a Workspace", + "summary": "Post CSP Directives", "tags": [ - "Permissions", - "actions" + "CSP Directives", + "entities", + "organization-model-controller" ] } }, - "/api/v1/actions/workspaces/{workspaceId}/metadataSync": { - "post": { - "description": "(BETA) Temporary solution. Later relevant metadata actions will trigger it in its scope only.", - "operationId": "metadataSync", + "/api/v1/entities/cspDirectives/{id}": { + "delete": { + "description": " Context Security Police Directive", + "operationId": "deleteEntity@CspDirectives", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=sources==v1,v2,v3", + "in": "query", + "name": "filter", "schema": { "type": "string" } } ], "responses": { - "200": { - "description": "OK" + "204": { + "$ref": "#/components/responses/Deleted" } }, - "summary": "(BETA) Sync Metadata to AI services", + "summary": "Delete CSP Directives", "tags": [ - "AI", - "actions" + "CSP Directives", + "entities", + "organization-model-controller" ] - } - }, - "/api/v1/actions/workspaces/{workspaceId}/overriddenChildEntities": { + }, "get": { - "description": "Finds API identifier overrides in given workspace hierarchy.", - "operationId": "overriddenChildEntities", + "description": " Context Security Police Directive", + "operationId": "getEntity@CspDirectives", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=sources==v1,v2,v3", + "in": "query", + "name": "filter", "schema": { "type": "string" } @@ -17174,80 +20854,80 @@ "responses": { "200": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "items": { - "$ref": "#/components/schemas/IdentifierDuplications" - }, - "type": "array" + "$ref": "#/components/schemas/JsonApiCspDirectiveOutDocument" } } }, - "description": "Searching for overridden identifiers finished successfully" + "description": "Request successfully processed" } }, - "summary": "Finds identifier overrides in workspace hierarchy.", + "summary": "Get CSP Directives", "tags": [ - "Hierarchy", - "actions" - ], - "x-gdc-security-info": { - "description": "Minimal permission required to use this endpoint.", - "permissions": [ - "MANAGE" - ] - } - } - }, - "/api/v1/actions/workspaces/{workspaceId}/resolveSettings": { - "get": { - "description": "Resolves values for all settings in a workspace by current user, workspace, organization, or default settings.", - "operationId": "workspaceResolveAllSettings", + "CSP Directives", + "entities", + "organization-model-controller" + ] + }, + "patch": { + "description": " Context Security Police Directive", + "operationId": "patchEntity@CspDirectives", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=sources==v1,v2,v3", + "in": "query", + "name": "filter", "schema": { "type": "string" } } ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiCspDirectivePatchDocument" + } + } + }, + "required": true + }, "responses": { "200": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "items": { - "$ref": "#/components/schemas/ResolvedSetting" - }, - "type": "array" + "$ref": "#/components/schemas/JsonApiCspDirectiveOutDocument" } } }, - "description": "Values for selected settings." + "description": "Request successfully processed" } }, - "summary": "Values for all settings.", + "summary": "Patch CSP Directives", "tags": [ - "Workspaces - Settings", - "actions" - ], - "x-gdc-security-info": { - "description": "Minimal permission required to use this endpoint.", - "permissions": [ - "VIEW" - ] - } + "CSP Directives", + "entities", + "organization-model-controller" + ] }, - "post": { - "description": "Resolves value for selected settings in a workspace by current user, workspace, organization, or default settings.", - "operationId": "workspaceResolveSettings", + "put": { + "description": " Context Security Police Directive", + "operationId": "updateEntity@CspDirectives", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=sources==v1,v2,v3", + "in": "query", + "name": "filter", "schema": { "type": "string" } @@ -17255,9 +20935,9 @@ ], "requestBody": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/ResolveSettingsRequest" + "$ref": "#/components/schemas/JsonApiCspDirectiveInDocument" } } }, @@ -17266,319 +20946,366 @@ "responses": { "200": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "items": { - "$ref": "#/components/schemas/ResolvedSetting" - }, - "type": "array" + "$ref": "#/components/schemas/JsonApiCspDirectiveOutDocument" } } }, - "description": "Values for selected settings." + "description": "Request successfully processed" } }, - "summary": "Values for selected settings.", + "summary": "Put CSP Directives", "tags": [ - "Workspaces - Settings", - "actions" - ], - "x-gdc-security-info": { - "description": "Minimal permission required to use this endpoint.", - "permissions": [ - "VIEW" - ] - } + "CSP Directives", + "entities", + "organization-model-controller" + ] } }, - "/api/v1/actions/workspaces/{workspaceId}/translations": { + "/api/v1/entities/dataSourceIdentifiers": { "get": { - "description": "Provides a list of effective translation tags.", - "operationId": "getTranslationTags", + "operationId": "getAllEntities@DataSourceIdentifiers", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString;schema==someString", + "in": "query", + "name": "filter", "schema": { "type": "string" } + }, + { + "$ref": "#/components/parameters/page" + }, + { + "$ref": "#/components/parameters/size" + }, + { + "$ref": "#/components/parameters/sort" + }, + { + "description": "Include Meta objects.", + "example": "metaInclude=permissions,page,all", + "explode": false, + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "description": "Included meta objects", + "items": { + "enum": [ + "permissions", + "page", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" } ], "responses": { "200": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "items": { - "type": "string" - }, - "type": "array" + "$ref": "#/components/schemas/JsonApiDataSourceIdentifierOutList" } } }, - "description": "Retrieved list of translation tags." + "description": "Request successfully processed" } }, - "summary": "Get translation tags.", + "summary": "Get all Data Source Identifiers", "tags": [ - "Translations", - "actions" + "Data Source - Entity APIs", + "entities", + "organization-model-controller" ], "x-gdc-security-info": { - "description": "Minimal permission required to use this endpoint.", + "description": "Contains minimal permission level required to view this object type.", "permissions": [ - "MANAGE" + "USE" ] } } }, - "/api/v1/actions/workspaces/{workspaceId}/translations/clean": { - "post": { - "description": "Cleans up all translations for a particular locale.", - "operationId": "cleanTranslations", + "/api/v1/entities/dataSourceIdentifiers/{id}": { + "get": { + "operationId": "getEntity@DataSourceIdentifiers", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString;schema==someString", + "in": "query", + "name": "filter", "schema": { "type": "string" } + }, + { + "description": "Include Meta objects.", + "example": "metaInclude=permissions,all", + "explode": false, + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "description": "Included meta objects", + "items": { + "enum": [ + "permissions", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/LocaleRequest" - } - } - }, - "required": true - }, "responses": { - "204": { - "description": "Translations were successfully removed." + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiDataSourceIdentifierOutDocument" + } + } + }, + "description": "Request successfully processed" } }, - "summary": "Cleans up translations.", + "summary": "Get Data Source Identifier", "tags": [ - "Translations", - "actions" + "Data Source - Entity APIs", + "entities", + "organization-model-controller" ], "x-gdc-security-info": { - "description": "Minimal permission required to use this endpoint.", + "description": "Contains minimal permission level required to view this object type.", "permissions": [ - "MANAGE" + "USE" ] } } }, - "/api/v1/actions/workspaces/{workspaceId}/translations/retrieve": { - "post": { - "description": "Retrieve all translation for existing entities in a particular locale. The source translations returned by this endpoint are always original, not translated, texts. Because the XLIFF schema definition has the 'xs:language' constraint for the 'srcLang' attribute, it is always set to 'en-US' value.", - "operationId": "retrieveTranslations", + "/api/v1/entities/dataSources": { + "get": { + "description": "Data Source - represents data source for the workspace", + "operationId": "getAllEntities@DataSources", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString;type==DatabaseTypeValue", + "in": "query", + "name": "filter", "schema": { "type": "string" } + }, + { + "$ref": "#/components/parameters/page" + }, + { + "$ref": "#/components/parameters/size" + }, + { + "$ref": "#/components/parameters/sort" + }, + { + "description": "Include Meta objects.", + "example": "metaInclude=permissions,page,all", + "explode": false, + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "description": "Included meta objects", + "items": { + "enum": [ + "permissions", + "page", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/LocaleRequest" - } - } - }, - "required": true - }, "responses": { "200": { "content": { - "application/xml": { + "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/Xliff" + "$ref": "#/components/schemas/JsonApiDataSourceOutList" } } }, - "description": "XLIFF file containing translations for a particular locale." + "description": "Request successfully processed" } }, - "summary": "Retrieve translations for entities.", + "summary": "Get Data Source entities", "tags": [ - "Translations", - "actions" + "Data Source - Entity APIs", + "entities", + "organization-model-controller" ], "x-gdc-security-info": { - "description": "Minimal permission required to use this endpoint.", + "description": "Contains minimal permission level required to view this object type.", "permissions": [ "MANAGE" ] } - } - }, - "/api/v1/actions/workspaces/{workspaceId}/translations/set": { + }, "post": { - "description": "Set translation for existing entities in a particular locale.", - "operationId": "setTranslations", + "description": "Data Source - represents data source for the workspace", + "operationId": "createEntity@DataSources", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, + "description": "Include Meta objects.", + "example": "metaInclude=permissions,all", + "explode": false, + "in": "query", + "name": "metaInclude", + "required": false, "schema": { - "type": "string" - } + "description": "Included meta objects", + "items": { + "enum": [ + "permissions", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" } ], "requestBody": { "content": { - "application/xml": { + "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/Xliff" + "$ref": "#/components/schemas/JsonApiDataSourceInDocument" } } }, "required": true }, "responses": { - "204": { - "description": "Translations were successfully set." + "201": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiDataSourceOutDocument" + } + } + }, + "description": "Request successfully processed" } }, - "summary": "Set translations for entities.", + "summary": "Post Data Sources", "tags": [ - "Translations", - "actions" + "Data Source - Entity APIs", + "entities", + "organization-model-controller" ], "x-gdc-security-info": { - "description": "Minimal permission required to use this endpoint.", + "description": "Contains minimal permission level required to manage this object type.", "permissions": [ "MANAGE" ] } } }, - "/api/v1/actions/workspaces/{workspaceId}/userGroups": { - "get": { - "operationId": "listWorkspaceUserGroups", + "/api/v1/entities/dataSources/{id}": { + "delete": { + "description": "Data Source - represents data source for the workspace", + "operationId": "deleteEntity@DataSources", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, - "schema": { - "type": "string" - } - }, - { - "description": "Zero-based page index (0..N)", - "example": "page=0", - "in": "query", - "name": "page", - "required": false, - "schema": { - "default": 0, - "format": "int32", - "type": "integer" - }, - "style": "form" - }, - { - "description": "The size of the page to be returned.", - "example": "size=20", - "in": "query", - "name": "size", - "required": false, - "schema": { - "default": 20, - "format": "int32", - "type": "integer" - }, - "style": "form" + "$ref": "#/components/parameters/idPathParameter" }, { - "description": "Filter by user name. Note that user name is case insensitive.", - "example": "name=charles", + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString;type==DatabaseTypeValue", "in": "query", - "name": "name", - "required": false, + "name": "filter", "schema": { "type": "string" - }, - "style": "form" + } } ], "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/WorkspaceUserGroups" - } - } - }, - "description": "OK" + "204": { + "$ref": "#/components/responses/Deleted" } }, + "summary": "Delete Data Source entity", "tags": [ - "actions" - ] - } - }, - "/api/v1/actions/workspaces/{workspaceId}/users": { + "Data Source - Entity APIs", + "entities", + "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } + }, "get": { - "operationId": "listWorkspaceUsers", + "description": "Data Source - represents data source for the workspace", + "operationId": "getEntity@DataSources", "parameters": [ { - "in": "path", - "name": "workspaceId", - "required": true, - "schema": { - "type": "string" - } - }, - { - "description": "Zero-based page index (0..N)", - "example": "page=0", - "in": "query", - "name": "page", - "required": false, - "schema": { - "default": 0, - "format": "int32", - "type": "integer" - }, - "style": "form" + "$ref": "#/components/parameters/idPathParameter" }, { - "description": "The size of the page to be returned.", - "example": "size=20", + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString;type==DatabaseTypeValue", "in": "query", - "name": "size", - "required": false, + "name": "filter", "schema": { - "default": 20, - "format": "int32", - "type": "integer" - }, - "style": "form" + "type": "string" + } }, { - "description": "Filter by user name. Note that user name is case insensitive.", - "example": "name=charles", + "description": "Include Meta objects.", + "example": "metaInclude=permissions,all", + "explode": false, "in": "query", - "name": "name", + "name": "metaInclude", "required": false, "schema": { - "type": "string" + "description": "Included meta objects", + "items": { + "enum": [ + "permissions", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true }, "style": "form" } @@ -17586,30 +21313,38 @@ "responses": { "200": { "content": { - "application/json": { + "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/WorkspaceUsers" + "$ref": "#/components/schemas/JsonApiDataSourceOutDocument" } } }, - "description": "OK" + "description": "Request successfully processed" } }, + "summary": "Get Data Source entity", "tags": [ - "actions" - ] - } - }, - "/api/v1/entities/admin/cookieSecurityConfigurations/{id}": { - "get": { - "operationId": "getEntity@CookieSecurityConfigurations", + "Data Source - Entity APIs", + "entities", + "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to view this object type.", + "permissions": [ + "MANAGE" + ] + } + }, + "patch": { + "description": "Data Source - represents data source for the workspace", + "operationId": "patchEntity@DataSources", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=lastRotation==InstantValue;rotationInterval==DurationValue", + "example": "filter=name==someString;type==DatabaseTypeValue", "in": "query", "name": "filter", "schema": { @@ -17617,34 +21352,51 @@ } } ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiDataSourcePatchDocument" + } + } + }, + "required": true + }, "responses": { "200": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCookieSecurityConfigurationOutDocument" + "$ref": "#/components/schemas/JsonApiDataSourceOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get CookieSecurityConfiguration", + "summary": "Patch Data Source entity", "tags": [ - "Cookie Security Configuration", + "Data Source - Entity APIs", "entities", - "organization-controller" - ] + "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } }, - "patch": { - "operationId": "patchEntity@CookieSecurityConfigurations", + "put": { + "description": "Data Source - represents data source for the workspace", + "operationId": "updateEntity@DataSources", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=lastRotation==InstantValue;rotationInterval==DurationValue", + "example": "filter=name==someString;type==DatabaseTypeValue", "in": "query", "name": "filter", "schema": { @@ -17656,7 +21408,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCookieSecurityConfigurationPatchDocument" + "$ref": "#/components/schemas/JsonApiDataSourceInDocument" } } }, @@ -17667,76 +21419,138 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCookieSecurityConfigurationOutDocument" + "$ref": "#/components/schemas/JsonApiDataSourceOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch CookieSecurityConfiguration", + "summary": "Put Data Source entity", "tags": [ - "Cookie Security Configuration", + "Data Source - Entity APIs", "entities", - "organization-controller" - ] - }, - "put": { - "operationId": "updateEntity@CookieSecurityConfigurations", + "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } + } + }, + "/api/v1/entities/entitlements": { + "get": { + "description": "Space of the shared interest", + "operationId": "getAllEntities@Entitlements", "parameters": [ - { - "$ref": "#/components/parameters/idPathParameter" - }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=lastRotation==InstantValue;rotationInterval==DurationValue", + "example": "filter=value==someString;expiry==LocalDateValue", "in": "query", "name": "filter", "schema": { "type": "string" } + }, + { + "$ref": "#/components/parameters/page" + }, + { + "$ref": "#/components/parameters/size" + }, + { + "$ref": "#/components/parameters/sort" + }, + { + "description": "Include Meta objects.", + "example": "metaInclude=page,all", + "explode": false, + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "description": "Included meta objects", + "items": { + "enum": [ + "page", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" } ], - "requestBody": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiCookieSecurityConfigurationInDocument" + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiEntitlementOutList" + } } + }, + "description": "Request successfully processed" + } + }, + "summary": "Get Entitlements", + "tags": [ + "Entitlement", + "entities", + "organization-model-controller" + ] + } + }, + "/api/v1/entities/entitlements/{id}": { + "get": { + "description": "Space of the shared interest", + "operationId": "getEntity@Entitlements", + "parameters": [ + { + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=value==someString;expiry==LocalDateValue", + "in": "query", + "name": "filter", + "schema": { + "type": "string" } - }, - "required": true - }, + } + ], "responses": { "200": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCookieSecurityConfigurationOutDocument" + "$ref": "#/components/schemas/JsonApiEntitlementOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put CookieSecurityConfiguration", + "summary": "Get Entitlement", "tags": [ - "Cookie Security Configuration", + "Entitlement", "entities", - "organization-controller" + "organization-model-controller" ] } }, - "/api/v1/entities/admin/organizations/{id}": { + "/api/v1/entities/identityProviders": { "get": { - "operationId": "getEntity@Organizations", + "operationId": "getAllEntities@IdentityProviders", "parameters": [ - { - "$ref": "#/components/parameters/idPathParameter" - }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;hostname==someString;bootstrapUser.id==321;bootstrapUserGroup.id==321", + "example": "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3", "in": "query", "name": "filter", "schema": { @@ -17744,30 +21558,17 @@ } }, { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=bootstrapUser,bootstrapUserGroup", - "explode": false, - "in": "query", - "name": "include", - "required": false, - "schema": { - "items": { - "enum": [ - "users", - "userGroups", - "bootstrapUser", - "bootstrapUserGroup", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" + "$ref": "#/components/parameters/page" + }, + { + "$ref": "#/components/parameters/size" + }, + { + "$ref": "#/components/parameters/sort" }, { "description": "Include Meta objects.", - "example": "metaInclude=permissions,all", + "example": "metaInclude=page,all", "explode": false, "in": "query", "name": "metaInclude", @@ -17776,7 +21577,7 @@ "description": "Included meta objects", "items": { "enum": [ - "permissions", + "page", "all", "ALL" ], @@ -17793,69 +21594,149 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiOrganizationOutDocument" + "$ref": "#/components/schemas/JsonApiIdentityProviderOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get Organizations", + "summary": "Get all Identity Providers", "tags": [ - "Organization - Entity APIs", + "Identity Providers", "entities", - "organization-controller" + "organization-model-controller" + ] + }, + "post": { + "operationId": "createEntity@IdentityProviders", + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiIdentityProviderInDocument" + } + } + }, + "required": true + }, + "responses": { + "201": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiIdentityProviderOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Post Identity Providers", + "tags": [ + "Identity Providers", + "entities", + "organization-model-controller" ], "x-gdc-security-info": { - "description": "Contains permissions required to manipulate the Organization.", + "description": "Contains minimal permission level required to manage this object type.", "permissions": [ "MANAGE" ] } - }, - "patch": { - "operationId": "patchEntity@Organizations", + } + }, + "/api/v1/entities/identityProviders/{id}": { + "delete": { + "operationId": "deleteEntity@IdentityProviders", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;hostname==someString;bootstrapUser.id==321;bootstrapUserGroup.id==321", + "example": "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3", "in": "query", "name": "filter", "schema": { "type": "string" } + } + ], + "responses": { + "204": { + "$ref": "#/components/responses/Deleted" + } + }, + "summary": "Delete Identity Provider", + "tags": [ + "Identity Providers", + "entities", + "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } + }, + "get": { + "operationId": "getEntity@IdentityProviders", + "parameters": [ + { + "$ref": "#/components/parameters/idPathParameter" }, { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=bootstrapUser,bootstrapUserGroup", - "explode": false, + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3", "in": "query", - "name": "include", - "required": false, + "name": "filter", "schema": { - "items": { - "enum": [ - "users", - "userGroups", - "bootstrapUser", - "bootstrapUserGroup", - "ALL" - ], - "type": "string" - }, - "type": "array" + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiIdentityProviderOutDocument" + } + } }, - "style": "form" + "description": "Request successfully processed" + } + }, + "summary": "Get Identity Provider", + "tags": [ + "Identity Providers", + "entities", + "organization-model-controller" + ] + }, + "patch": { + "operationId": "patchEntity@IdentityProviders", + "parameters": [ + { + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiOrganizationPatchDocument" + "$ref": "#/components/schemas/JsonApiIdentityProviderPatchDocument" } } }, @@ -17866,69 +21747,47 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiOrganizationOutDocument" + "$ref": "#/components/schemas/JsonApiIdentityProviderOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch Organization", + "summary": "Patch Identity Provider", "tags": [ - "Organization - Entity APIs", + "Identity Providers", "entities", - "organization-controller" + "organization-model-controller" ], "x-gdc-security-info": { - "description": "Contains permissions required to manipulate the Organization.", + "description": "Contains minimal permission level required to manage this object type.", "permissions": [ "MANAGE" ] } }, "put": { - "operationId": "updateEntity@Organizations", + "operationId": "updateEntity@IdentityProviders", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;hostname==someString;bootstrapUser.id==321;bootstrapUserGroup.id==321", + "example": "filter=type==IdentityProviderTypeValue;identifiers==v1,v2,v3", "in": "query", "name": "filter", "schema": { "type": "string" } - }, - { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=bootstrapUser,bootstrapUserGroup", - "explode": false, - "in": "query", - "name": "include", - "required": false, - "schema": { - "items": { - "enum": [ - "users", - "userGroups", - "bootstrapUser", - "bootstrapUserGroup", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiOrganizationInDocument" + "$ref": "#/components/schemas/JsonApiIdentityProviderInDocument" } } }, @@ -17939,34 +21798,35 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiOrganizationOutDocument" + "$ref": "#/components/schemas/JsonApiIdentityProviderOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put Organization", + "summary": "Put Identity Provider", "tags": [ - "Organization - Entity APIs", + "Identity Providers", "entities", - "organization-controller" + "organization-model-controller" ], "x-gdc-security-info": { - "description": "Contains permissions required to manipulate the Organization.", + "description": "Contains minimal permission level required to manage this object type.", "permissions": [ "MANAGE" ] } } }, - "/api/v1/entities/colorPalettes": { + "/api/v1/entities/jwks": { "get": { - "operationId": "getAllEntities@ColorPalettes", + "description": "Returns all JSON web keys - used to verify JSON web tokens (Jwts)", + "operationId": "getAllEntities@Jwks", "parameters": [ { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;content==JsonNodeValue", + "example": "filter=content==JwkSpecificationValue", "in": "query", "name": "filter", "schema": { @@ -18010,27 +21870,28 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiColorPaletteOutList" + "$ref": "#/components/schemas/JsonApiJwkOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get all Color Pallettes", + "summary": "Get all Jwks", "tags": [ - "Appearance", + "JWKS", "entities", "organization-model-controller" ] }, "post": { - "operationId": "createEntity@ColorPalettes", + "description": "Creates JSON web key - used to verify JSON web tokens (Jwts)", + "operationId": "createEntity@Jwks", "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiColorPaletteInDocument" + "$ref": "#/components/schemas/JsonApiJwkInDocument" } } }, @@ -18041,16 +21902,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiColorPaletteOutDocument" + "$ref": "#/components/schemas/JsonApiJwkOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post Color Pallettes", + "summary": "Post Jwks", "tags": [ - "Appearance", + "JWKS", "entities", "organization-model-controller" ], @@ -18062,16 +21923,17 @@ } } }, - "/api/v1/entities/colorPalettes/{id}": { + "/api/v1/entities/jwks/{id}": { "delete": { - "operationId": "deleteEntity@ColorPalettes", + "description": "Deletes JSON web key - used to verify JSON web tokens (Jwts)", + "operationId": "deleteEntity@Jwks", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;content==JsonNodeValue", + "example": "filter=content==JwkSpecificationValue", "in": "query", "name": "filter", "schema": { @@ -18084,9 +21946,9 @@ "$ref": "#/components/responses/Deleted" } }, - "summary": "Delete a Color Pallette", + "summary": "Delete Jwk", "tags": [ - "Appearance", + "JWKS", "entities", "organization-model-controller" ], @@ -18098,14 +21960,15 @@ } }, "get": { - "operationId": "getEntity@ColorPalettes", + "description": "Returns JSON web key - used to verify JSON web tokens (Jwts)", + "operationId": "getEntity@Jwks", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;content==JsonNodeValue", + "example": "filter=content==JwkSpecificationValue", "in": "query", "name": "filter", "schema": { @@ -18118,29 +21981,30 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiColorPaletteOutDocument" + "$ref": "#/components/schemas/JsonApiJwkOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get Color Pallette", + "summary": "Get Jwk", "tags": [ - "Appearance", + "JWKS", "entities", "organization-model-controller" ] }, "patch": { - "operationId": "patchEntity@ColorPalettes", + "description": "Patches JSON web key - used to verify JSON web tokens (Jwts)", + "operationId": "patchEntity@Jwks", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;content==JsonNodeValue", + "example": "filter=content==JwkSpecificationValue", "in": "query", "name": "filter", "schema": { @@ -18152,7 +22016,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiColorPalettePatchDocument" + "$ref": "#/components/schemas/JsonApiJwkPatchDocument" } } }, @@ -18163,16 +22027,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiColorPaletteOutDocument" + "$ref": "#/components/schemas/JsonApiJwkOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch Color Pallette", + "summary": "Patch Jwk", "tags": [ - "Appearance", + "JWKS", "entities", "organization-model-controller" ], @@ -18184,14 +22048,15 @@ } }, "put": { - "operationId": "updateEntity@ColorPalettes", + "description": "Updates JSON web key - used to verify JSON web tokens (Jwts)", + "operationId": "updateEntity@Jwks", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;content==JsonNodeValue", + "example": "filter=content==JwkSpecificationValue", "in": "query", "name": "filter", "schema": { @@ -18203,7 +22068,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiColorPaletteInDocument" + "$ref": "#/components/schemas/JsonApiJwkInDocument" } } }, @@ -18214,16 +22079,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiColorPaletteOutDocument" + "$ref": "#/components/schemas/JsonApiJwkOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put Color Pallette", + "summary": "Put Jwk", "tags": [ - "Appearance", + "JWKS", "entities", "organization-model-controller" ], @@ -18235,14 +22100,13 @@ } } }, - "/api/v1/entities/cspDirectives": { + "/api/v1/entities/llmEndpoints": { "get": { - "description": " Context Security Police Directive", - "operationId": "getAllEntities@CspDirectives", + "operationId": "getAllEntities@LlmEndpoints", "parameters": [ { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=sources==v1,v2,v3", + "example": "filter=title==someString;description==someString", "in": "query", "name": "filter", "schema": { @@ -18286,28 +22150,27 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCspDirectiveOutList" + "$ref": "#/components/schemas/JsonApiLlmEndpointOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get CSP Directives", + "summary": "Get all LLM endpoint entities", "tags": [ - "CSP Directives", + "LLM Endpoints", "entities", "organization-model-controller" ] }, "post": { - "description": " Context Security Police Directive", - "operationId": "createEntity@CspDirectives", + "operationId": "createEntity@LlmEndpoints", "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCspDirectiveInDocument" + "$ref": "#/components/schemas/JsonApiLlmEndpointInDocument" } } }, @@ -18318,32 +22181,31 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCspDirectiveOutDocument" + "$ref": "#/components/schemas/JsonApiLlmEndpointOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post CSP Directives", + "summary": "Post LLM endpoint entities", "tags": [ - "CSP Directives", + "LLM Endpoints", "entities", "organization-model-controller" ] } }, - "/api/v1/entities/cspDirectives/{id}": { + "/api/v1/entities/llmEndpoints/{id}": { "delete": { - "description": " Context Security Police Directive", - "operationId": "deleteEntity@CspDirectives", + "operationId": "deleteEntity@LlmEndpoints", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=sources==v1,v2,v3", + "example": "filter=title==someString;description==someString", "in": "query", "name": "filter", "schema": { @@ -18356,23 +22218,21 @@ "$ref": "#/components/responses/Deleted" } }, - "summary": "Delete CSP Directives", "tags": [ - "CSP Directives", + "LLM Endpoints", "entities", "organization-model-controller" ] }, "get": { - "description": " Context Security Police Directive", - "operationId": "getEntity@CspDirectives", + "operationId": "getEntity@LlmEndpoints", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=sources==v1,v2,v3", + "example": "filter=title==someString;description==someString", "in": "query", "name": "filter", "schema": { @@ -18385,30 +22245,29 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCspDirectiveOutDocument" + "$ref": "#/components/schemas/JsonApiLlmEndpointOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get CSP Directives", + "summary": "Get LLM endpoint entity", "tags": [ - "CSP Directives", + "LLM Endpoints", "entities", "organization-model-controller" ] }, "patch": { - "description": " Context Security Police Directive", - "operationId": "patchEntity@CspDirectives", + "operationId": "patchEntity@LlmEndpoints", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=sources==v1,v2,v3", + "example": "filter=title==someString;description==someString", "in": "query", "name": "filter", "schema": { @@ -18420,7 +22279,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCspDirectivePatchDocument" + "$ref": "#/components/schemas/JsonApiLlmEndpointPatchDocument" } } }, @@ -18431,30 +22290,29 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCspDirectiveOutDocument" + "$ref": "#/components/schemas/JsonApiLlmEndpointOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch CSP Directives", + "summary": "Patch LLM endpoint entity", "tags": [ - "CSP Directives", + "LLM Endpoints", "entities", "organization-model-controller" ] }, "put": { - "description": " Context Security Police Directive", - "operationId": "updateEntity@CspDirectives", + "operationId": "updateEntity@LlmEndpoints", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=sources==v1,v2,v3", + "example": "filter=title==someString;description==someString", "in": "query", "name": "filter", "schema": { @@ -18466,7 +22324,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCspDirectiveInDocument" + "$ref": "#/components/schemas/JsonApiLlmEndpointInDocument" } } }, @@ -18477,166 +22335,28 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCspDirectiveOutDocument" + "$ref": "#/components/schemas/JsonApiLlmEndpointOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put CSP Directives", + "summary": "PUT LLM endpoint entity", "tags": [ - "CSP Directives", + "LLM Endpoints", "entities", "organization-model-controller" ] } }, - "/api/v1/entities/dataSourceIdentifiers": { - "get": { - "operationId": "getAllEntities@DataSourceIdentifiers", - "parameters": [ - { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;schema==someString", - "in": "query", - "name": "filter", - "schema": { - "type": "string" - } - }, - { - "$ref": "#/components/parameters/page" - }, - { - "$ref": "#/components/parameters/size" - }, - { - "$ref": "#/components/parameters/sort" - }, - { - "description": "Include Meta objects.", - "example": "metaInclude=permissions,page,all", - "explode": false, - "in": "query", - "name": "metaInclude", - "required": false, - "schema": { - "description": "Included meta objects", - "items": { - "enum": [ - "permissions", - "page", - "all", - "ALL" - ], - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "style": "form" - } - ], - "responses": { - "200": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiDataSourceIdentifierOutList" - } - } - }, - "description": "Request successfully processed" - } - }, - "summary": "Get all Data Source Identifiers", - "tags": [ - "Data Source - Entity APIs", - "entities", - "organization-model-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to view this object type.", - "permissions": [ - "USE" - ] - } - } - }, - "/api/v1/entities/dataSourceIdentifiers/{id}": { - "get": { - "operationId": "getEntity@DataSourceIdentifiers", - "parameters": [ - { - "$ref": "#/components/parameters/idPathParameter" - }, - { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;schema==someString", - "in": "query", - "name": "filter", - "schema": { - "type": "string" - } - }, - { - "description": "Include Meta objects.", - "example": "metaInclude=permissions,all", - "explode": false, - "in": "query", - "name": "metaInclude", - "required": false, - "schema": { - "description": "Included meta objects", - "items": { - "enum": [ - "permissions", - "all", - "ALL" - ], - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "style": "form" - } - ], - "responses": { - "200": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiDataSourceIdentifierOutDocument" - } - } - }, - "description": "Request successfully processed" - } - }, - "summary": "Get Data Source Identifier", - "tags": [ - "Data Source - Entity APIs", - "entities", - "organization-model-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to view this object type.", - "permissions": [ - "USE" - ] - } - } - }, - "/api/v1/entities/dataSources": { + "/api/v1/entities/notificationChannels": { "get": { - "description": "Data Source - represents data source for the workspace", - "operationId": "getAllEntities@DataSources", + "operationId": "getAllEntities@NotificationChannels", "parameters": [ { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;type==DatabaseTypeValue", + "example": "filter=name==someString;description==someString", "in": "query", "name": "filter", "schema": { @@ -18654,7 +22374,7 @@ }, { "description": "Include Meta objects.", - "example": "metaInclude=permissions,page,all", + "example": "metaInclude=page,all", "explode": false, "in": "query", "name": "metaInclude", @@ -18663,7 +22383,6 @@ "description": "Included meta objects", "items": { "enum": [ - "permissions", "page", "all", "ALL" @@ -18677,62 +22396,31 @@ } ], "responses": { - "200": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiDataSourceOutList" - } - } - }, - "description": "Request successfully processed" - } - }, - "summary": "Get Data Source entities", - "tags": [ - "Data Source - Entity APIs", - "entities", - "organization-model-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to view this object type.", - "permissions": [ - "MANAGE" - ] - } - }, - "post": { - "description": "Data Source - represents data source for the workspace", - "operationId": "createEntity@DataSources", - "parameters": [ - { - "description": "Include Meta objects.", - "example": "metaInclude=permissions,all", - "explode": false, - "in": "query", - "name": "metaInclude", - "required": false, - "schema": { - "description": "Included meta objects", - "items": { - "enum": [ - "permissions", - "all", - "ALL" - ], - "type": "string" - }, - "type": "array", - "uniqueItems": true + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiNotificationChannelOutList" + } + } }, - "style": "form" + "description": "Request successfully processed" } - ], + }, + "summary": "Get all Notification Channel entities", + "tags": [ + "Notification Channels", + "entities", + "organization-model-controller" + ] + }, + "post": { + "operationId": "createEntity@NotificationChannels", "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiDataSourceInDocument" + "$ref": "#/components/schemas/JsonApiNotificationChannelPostOptionalIdDocument" } } }, @@ -18743,16 +22431,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiDataSourceOutDocument" + "$ref": "#/components/schemas/JsonApiNotificationChannelOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post Data Sources", + "summary": "Post Notification Channel entities", "tags": [ - "Data Source - Entity APIs", + "Notification Channels", "entities", "organization-model-controller" ], @@ -18764,17 +22452,16 @@ } } }, - "/api/v1/entities/dataSources/{id}": { + "/api/v1/entities/notificationChannels/{id}": { "delete": { - "description": "Data Source - represents data source for the workspace", - "operationId": "deleteEntity@DataSources", + "operationId": "deleteEntity@NotificationChannels", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;type==DatabaseTypeValue", + "example": "filter=name==someString;description==someString", "in": "query", "name": "filter", "schema": { @@ -18787,9 +22474,9 @@ "$ref": "#/components/responses/Deleted" } }, - "summary": "Delete Data Source entity", + "summary": "Delete Notification Channel entity", "tags": [ - "Data Source - Entity APIs", + "Notification Channels", "entities", "organization-model-controller" ], @@ -18801,42 +22488,19 @@ } }, "get": { - "description": "Data Source - represents data source for the workspace", - "operationId": "getEntity@DataSources", + "operationId": "getEntity@NotificationChannels", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;type==DatabaseTypeValue", + "example": "filter=name==someString;description==someString", "in": "query", "name": "filter", "schema": { "type": "string" } - }, - { - "description": "Include Meta objects.", - "example": "metaInclude=permissions,all", - "explode": false, - "in": "query", - "name": "metaInclude", - "required": false, - "schema": { - "description": "Included meta objects", - "items": { - "enum": [ - "permissions", - "all", - "ALL" - ], - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "style": "form" } ], "responses": { @@ -18844,36 +22508,29 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiDataSourceOutDocument" + "$ref": "#/components/schemas/JsonApiNotificationChannelOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get Data Source entity", + "summary": "Get Notification Channel entity", "tags": [ - "Data Source - Entity APIs", + "Notification Channels", "entities", "organization-model-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to view this object type.", - "permissions": [ - "MANAGE" - ] - } + ] }, "patch": { - "description": "Data Source - represents data source for the workspace", - "operationId": "patchEntity@DataSources", + "operationId": "patchEntity@NotificationChannels", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;type==DatabaseTypeValue", + "example": "filter=name==someString;description==someString", "in": "query", "name": "filter", "schema": { @@ -18885,7 +22542,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiDataSourcePatchDocument" + "$ref": "#/components/schemas/JsonApiNotificationChannelPatchDocument" } } }, @@ -18896,16 +22553,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiDataSourceOutDocument" + "$ref": "#/components/schemas/JsonApiNotificationChannelOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch Data Source entity", + "summary": "Patch Notification Channel entity", "tags": [ - "Data Source - Entity APIs", + "Notification Channels", "entities", "organization-model-controller" ], @@ -18917,15 +22574,14 @@ } }, "put": { - "description": "Data Source - represents data source for the workspace", - "operationId": "updateEntity@DataSources", + "operationId": "updateEntity@NotificationChannels", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;type==DatabaseTypeValue", + "example": "filter=name==someString;description==someString", "in": "query", "name": "filter", "schema": { @@ -18937,7 +22593,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiDataSourceInDocument" + "$ref": "#/components/schemas/JsonApiNotificationChannelInDocument" } } }, @@ -18948,16 +22604,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiDataSourceOutDocument" + "$ref": "#/components/schemas/JsonApiNotificationChannelOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put Data Source entity", + "summary": "Put Notification Channel entity", "tags": [ - "Data Source - Entity APIs", + "Notification Channels", "entities", "organization-model-controller" ], @@ -18969,118 +22625,50 @@ } } }, - "/api/v1/entities/entitlements": { + "/api/v1/entities/organization": { "get": { - "description": "Space of the shared interest", - "operationId": "getAllEntities@Entitlements", + "description": "Gets a basic information about organization.", + "operationId": "getOrganization", "parameters": [ { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=value==someString;expiry==LocalDateValue", - "in": "query", - "name": "filter", - "schema": { - "type": "string" - } - }, - { - "$ref": "#/components/parameters/page" - }, - { - "$ref": "#/components/parameters/size" - }, - { - "$ref": "#/components/parameters/sort" - }, - { - "description": "Include Meta objects.", - "example": "metaInclude=page,all", + "description": "Return list of permissions available to logged user.", + "example": "metaInclude=permissions", "explode": false, "in": "query", "name": "metaInclude", - "required": false, "schema": { - "description": "Included meta objects", "items": { + "description": "Available meta objects to include.", "enum": [ - "page", - "all", - "ALL" + "permissions", + "all" ], "type": "string" }, "type": "array", "uniqueItems": true - }, - "style": "form" - } - ], - "responses": { - "200": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiEntitlementOutList" - } - } - }, - "description": "Request successfully processed" - } - }, - "summary": "Get Entitlements", - "tags": [ - "Entitlement", - "entities", - "organization-model-controller" - ] - } - }, - "/api/v1/entities/entitlements/{id}": { - "get": { - "description": "Space of the shared interest", - "operationId": "getEntity@Entitlements", - "parameters": [ - { - "$ref": "#/components/parameters/idPathParameter" - }, - { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=value==someString;expiry==LocalDateValue", - "in": "query", - "name": "filter", - "schema": { - "type": "string" } } ], "responses": { - "200": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiEntitlementOutDocument" - } - } - }, - "description": "Request successfully processed" + "302": { + "description": "Redirect to entity URI." } }, - "summary": "Get Entitlement", + "summary": "Get current organization info", "tags": [ - "Entitlement", - "entities", - "organization-model-controller" + "Organization - Entity APIs", + "entities" ] } }, - "/api/v1/entities/jwks": { + "/api/v1/entities/organizationSettings": { "get": { - "description": "Returns all JSON web keys - used to verify JSON web tokens (Jwts)", - "operationId": "getAllEntities@Jwks", + "operationId": "getAllEntities@OrganizationSettings", "parameters": [ { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=content==JwkSpecificationValue", + "example": "filter=content==JsonNodeValue;type==SettingTypeValue", "in": "query", "name": "filter", "schema": { @@ -19124,28 +22712,27 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiJwkOutList" + "$ref": "#/components/schemas/JsonApiOrganizationSettingOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get all Jwks", + "summary": "Get Organization entities", "tags": [ - "JWKS", + "Organization - Entity APIs", "entities", "organization-model-controller" ] }, "post": { - "description": "Creates JSON web key - used to verify JSON web tokens (Jwts)", - "operationId": "createEntity@Jwks", + "operationId": "createEntity@OrganizationSettings", "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiJwkInDocument" + "$ref": "#/components/schemas/JsonApiOrganizationSettingInDocument" } } }, @@ -19156,32 +22743,37 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiJwkOutDocument" + "$ref": "#/components/schemas/JsonApiOrganizationSettingOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post Jwks", + "summary": "Post Organization Setting entities", "tags": [ - "JWKS", + "Organization - Entity APIs", "entities", "organization-model-controller" - ] + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } } }, - "/api/v1/entities/jwks/{id}": { + "/api/v1/entities/organizationSettings/{id}": { "delete": { - "description": "Deletes JSON web key - used to verify JSON web tokens (Jwts)", - "operationId": "deleteEntity@Jwks", + "operationId": "deleteEntity@OrganizationSettings", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=content==JwkSpecificationValue", + "example": "filter=content==JsonNodeValue;type==SettingTypeValue", "in": "query", "name": "filter", "schema": { @@ -19194,23 +22786,28 @@ "$ref": "#/components/responses/Deleted" } }, - "summary": "Delete Jwk", + "summary": "Delete Organization entity", "tags": [ - "JWKS", + "Organization - Entity APIs", "entities", "organization-model-controller" - ] + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } }, "get": { - "description": "Returns JSON web key - used to verify JSON web tokens (Jwts)", - "operationId": "getEntity@Jwks", + "operationId": "getEntity@OrganizationSettings", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=content==JwkSpecificationValue", + "example": "filter=content==JsonNodeValue;type==SettingTypeValue", "in": "query", "name": "filter", "schema": { @@ -19223,30 +22820,29 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiJwkOutDocument" + "$ref": "#/components/schemas/JsonApiOrganizationSettingOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get Jwk", + "summary": "Get Organization entity", "tags": [ - "JWKS", + "Organization - Entity APIs", "entities", "organization-model-controller" ] }, "patch": { - "description": "Patches JSON web key - used to verify JSON web tokens (Jwts)", - "operationId": "patchEntity@Jwks", + "operationId": "patchEntity@OrganizationSettings", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=content==JwkSpecificationValue", + "example": "filter=content==JsonNodeValue;type==SettingTypeValue", "in": "query", "name": "filter", "schema": { @@ -19258,7 +22854,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiJwkPatchDocument" + "$ref": "#/components/schemas/JsonApiOrganizationSettingPatchDocument" } } }, @@ -19269,30 +22865,35 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiJwkOutDocument" + "$ref": "#/components/schemas/JsonApiOrganizationSettingOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch Jwk", + "summary": "Patch Organization entity", "tags": [ - "JWKS", + "Organization - Entity APIs", "entities", "organization-model-controller" - ] + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } }, "put": { - "description": "Updates JSON web key - used to verify JSON web tokens (Jwts)", - "operationId": "updateEntity@Jwks", + "operationId": "updateEntity@OrganizationSettings", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=content==JwkSpecificationValue", + "example": "filter=content==JsonNodeValue;type==SettingTypeValue", "in": "query", "name": "filter", "schema": { @@ -19304,7 +22905,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiJwkInDocument" + "$ref": "#/components/schemas/JsonApiOrganizationSettingInDocument" } } }, @@ -19315,28 +22916,34 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiJwkOutDocument" + "$ref": "#/components/schemas/JsonApiOrganizationSettingOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put Jwk", + "summary": "Put Organization entity", "tags": [ - "JWKS", + "Organization - Entity APIs", "entities", "organization-model-controller" - ] + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } } }, - "/api/v1/entities/notificationChannels": { + "/api/v1/entities/themes": { "get": { - "operationId": "getAllEntities@NotificationChannels", + "operationId": "getAllEntities@Themes", "parameters": [ { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;description==someString", + "example": "filter=name==someString;content==JsonNodeValue", "in": "query", "name": "filter", "schema": { @@ -19380,27 +22987,27 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiNotificationChannelOutList" + "$ref": "#/components/schemas/JsonApiThemeOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get all Notification Channel entities", + "summary": "Get all Theming entities", "tags": [ - "Notification Channels", + "Appearance", "entities", "organization-model-controller" ] }, "post": { - "operationId": "createEntity@NotificationChannels", + "operationId": "createEntity@Themes", "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiNotificationChannelPostOptionalIdDocument" + "$ref": "#/components/schemas/JsonApiThemeInDocument" } } }, @@ -19411,16 +23018,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiNotificationChannelOutDocument" + "$ref": "#/components/schemas/JsonApiThemeOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post Notification Channel entities", + "summary": "Post Theming", "tags": [ - "Notification Channels", + "Appearance", "entities", "organization-model-controller" ], @@ -19432,16 +23039,16 @@ } } }, - "/api/v1/entities/notificationChannels/{id}": { + "/api/v1/entities/themes/{id}": { "delete": { - "operationId": "deleteEntity@NotificationChannels", + "operationId": "deleteEntity@Themes", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;description==someString", + "example": "filter=name==someString;content==JsonNodeValue", "in": "query", "name": "filter", "schema": { @@ -19454,8 +23061,9 @@ "$ref": "#/components/responses/Deleted" } }, + "summary": "Delete Theming", "tags": [ - "Notification Channels", + "Appearance", "entities", "organization-model-controller" ], @@ -19467,14 +23075,14 @@ } }, "get": { - "operationId": "getEntity@NotificationChannels", + "operationId": "getEntity@Themes", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;description==someString", + "example": "filter=name==someString;content==JsonNodeValue", "in": "query", "name": "filter", "schema": { @@ -19487,29 +23095,29 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiNotificationChannelOutDocument" + "$ref": "#/components/schemas/JsonApiThemeOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get Notification Channel entity", + "summary": "Get Theming", "tags": [ - "Notification Channels", + "Appearance", "entities", "organization-model-controller" ] }, "patch": { - "operationId": "patchEntity@NotificationChannels", + "operationId": "patchEntity@Themes", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;description==someString", + "example": "filter=name==someString;content==JsonNodeValue", "in": "query", "name": "filter", "schema": { @@ -19521,7 +23129,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiNotificationChannelPatchDocument" + "$ref": "#/components/schemas/JsonApiThemePatchDocument" } } }, @@ -19532,16 +23140,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiNotificationChannelOutDocument" + "$ref": "#/components/schemas/JsonApiThemeOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch Notification Channel entity", + "summary": "Patch Theming", "tags": [ - "Notification Channels", + "Appearance", "entities", "organization-model-controller" ], @@ -19553,14 +23161,14 @@ } }, "put": { - "operationId": "updateEntity@NotificationChannels", + "operationId": "updateEntity@Themes", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;description==someString", + "example": "filter=name==someString;content==JsonNodeValue", "in": "query", "name": "filter", "schema": { @@ -19572,7 +23180,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiNotificationChannelInDocument" + "$ref": "#/components/schemas/JsonApiThemeInDocument" } } }, @@ -19583,16 +23191,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiNotificationChannelOutDocument" + "$ref": "#/components/schemas/JsonApiThemeOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put Notification Channel entity", + "summary": "Put Theming", "tags": [ - "Notification Channels", + "Appearance", "entities", "organization-model-controller" ], @@ -19604,55 +23212,39 @@ } } }, - "/api/v1/entities/organization": { + "/api/v1/entities/userGroups": { "get": { - "description": "Gets a basic information about organization.", - "operationId": "getOrganization", + "description": "User Group - creates tree-like structure for categorizing users", + "operationId": "getAllEntities@UserGroups", "parameters": [ { - "description": "Return list of permissions available to logged user.", - "example": "metaInclude=permissions", + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=parents", "explode": false, "in": "query", - "name": "metaInclude", + "name": "include", + "required": false, "schema": { "items": { - "description": "Available meta objects to include.", "enum": [ - "permissions", - "all" + "userGroups", + "parents", + "ALL" ], "type": "string" }, - "type": "array", - "uniqueItems": true - } - } - ], - "responses": { - "302": { - "description": "Redirect to entity URI." - } - }, - "summary": "Get current organization info", - "tags": [ - "Organization - Entity APIs", - "entities" - ] - } - }, - "/api/v1/entities/organizationSettings": { - "get": { - "operationId": "getAllEntities@OrganizationSettings", - "parameters": [ - { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=content==JsonNodeValue;type==SettingTypeValue", - "in": "query", - "name": "filter", - "schema": { - "type": "string" - } + "type": "array" + }, + "style": "form" }, { "$ref": "#/components/parameters/page" @@ -19691,27 +23283,56 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiOrganizationSettingOutList" + "$ref": "#/components/schemas/JsonApiUserGroupOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get Organization entities", + "summary": "Get UserGroup entities", "tags": [ - "Organization - Entity APIs", + "UserGroups - Entity APIs", "entities", "organization-model-controller" - ] + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to view this object type.", + "permissions": [ + "MANAGE" + ] + } }, "post": { - "operationId": "createEntity@OrganizationSettings", + "description": "User Group - creates tree-like structure for categorizing users", + "operationId": "createEntity@UserGroups", + "parameters": [ + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=parents", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "userGroups", + "parents", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + } + ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiOrganizationSettingInDocument" + "$ref": "#/components/schemas/JsonApiUserGroupInDocument" } } }, @@ -19722,16 +23343,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiOrganizationSettingOutDocument" + "$ref": "#/components/schemas/JsonApiUserGroupOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post Organization Setting entities", + "summary": "Post User Group entities", "tags": [ - "Organization - Entity APIs", + "UserGroups - Entity APIs", "entities", "organization-model-controller" ], @@ -19743,16 +23364,17 @@ } } }, - "/api/v1/entities/organizationSettings/{id}": { + "/api/v1/entities/userGroups/{id}": { "delete": { - "operationId": "deleteEntity@OrganizationSettings", + "description": "User Group - creates tree-like structure for categorizing users", + "operationId": "deleteEntity@UserGroups", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=content==JsonNodeValue;type==SettingTypeValue", + "example": "filter=name==someString", "in": "query", "name": "filter", "schema": { @@ -19765,9 +23387,9 @@ "$ref": "#/components/responses/Deleted" } }, - "summary": "Delete Organization entity", + "summary": "Delete UserGroup entity", "tags": [ - "Organization - Entity APIs", + "UserGroups - Entity APIs", "entities", "organization-model-controller" ], @@ -19779,19 +23401,40 @@ } }, "get": { - "operationId": "getEntity@OrganizationSettings", + "description": "User Group - creates tree-like structure for categorizing users", + "operationId": "getEntity@UserGroups", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=content==JsonNodeValue;type==SettingTypeValue", + "example": "filter=name==someString", "in": "query", "name": "filter", "schema": { "type": "string" } + }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=parents", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "userGroups", + "parents", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" } ], "responses": { @@ -19799,41 +23442,68 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiOrganizationSettingOutDocument" + "$ref": "#/components/schemas/JsonApiUserGroupOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get Organization entity", + "summary": "Get UserGroup entity", "tags": [ - "Organization - Entity APIs", + "UserGroups - Entity APIs", "entities", "organization-model-controller" - ] + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to view this object type.", + "permissions": [ + "MANAGE" + ] + } }, "patch": { - "operationId": "patchEntity@OrganizationSettings", + "description": "User Group - creates tree-like structure for categorizing users", + "operationId": "patchEntity@UserGroups", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=content==JsonNodeValue;type==SettingTypeValue", + "example": "filter=name==someString", "in": "query", "name": "filter", "schema": { "type": "string" } + }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=parents", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "userGroups", + "parents", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiOrganizationSettingPatchDocument" + "$ref": "#/components/schemas/JsonApiUserGroupPatchDocument" } } }, @@ -19844,16 +23514,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiOrganizationSettingOutDocument" + "$ref": "#/components/schemas/JsonApiUserGroupOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch Organization entity", + "summary": "Patch UserGroup entity", "tags": [ - "Organization - Entity APIs", + "UserGroups - Entity APIs", "entities", "organization-model-controller" ], @@ -19865,26 +23535,47 @@ } }, "put": { - "operationId": "updateEntity@OrganizationSettings", + "description": "User Group - creates tree-like structure for categorizing users", + "operationId": "updateEntity@UserGroups", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=content==JsonNodeValue;type==SettingTypeValue", + "example": "filter=name==someString", "in": "query", "name": "filter", "schema": { "type": "string" } + }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=parents", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "userGroups", + "parents", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiOrganizationSettingInDocument" + "$ref": "#/components/schemas/JsonApiUserGroupInDocument" } } }, @@ -19895,16 +23586,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiOrganizationSettingOutDocument" + "$ref": "#/components/schemas/JsonApiUserGroupOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put Organization entity", + "summary": "Put UserGroup entity", "tags": [ - "Organization - Entity APIs", + "UserGroups - Entity APIs", "entities", "organization-model-controller" ], @@ -19916,13 +23607,14 @@ } } }, - "/api/v1/entities/themes": { + "/api/v1/entities/userIdentifiers": { "get": { - "operationId": "getAllEntities@Themes", + "description": "UserIdentifier - represents entity interacting with platform", + "operationId": "getAllEntities@UserIdentifiers", "parameters": [ { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;content==JsonNodeValue", + "example": "filter=firstname==someString;lastname==someString", "in": "query", "name": "filter", "schema": { @@ -19966,188 +23658,32 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiThemeOutList" - } - } - }, - "description": "Request successfully processed" - } - }, - "summary": "Get all Theming entities", - "tags": [ - "Appearance", - "entities", - "organization-model-controller" - ] - }, - "post": { - "operationId": "createEntity@Themes", - "requestBody": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiThemeInDocument" - } - } - }, - "required": true - }, - "responses": { - "201": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiThemeOutDocument" - } - } - }, - "description": "Request successfully processed" - } - }, - "summary": "Post Theming", - "tags": [ - "Appearance", - "entities", - "organization-model-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "MANAGE" - ] - } - } - }, - "/api/v1/entities/themes/{id}": { - "delete": { - "operationId": "deleteEntity@Themes", - "parameters": [ - { - "$ref": "#/components/parameters/idPathParameter" - }, - { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;content==JsonNodeValue", - "in": "query", - "name": "filter", - "schema": { - "type": "string" - } - } - ], - "responses": { - "204": { - "$ref": "#/components/responses/Deleted" - } - }, - "summary": "Delete Theming", - "tags": [ - "Appearance", - "entities", - "organization-model-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "MANAGE" - ] - } - }, - "get": { - "operationId": "getEntity@Themes", - "parameters": [ - { - "$ref": "#/components/parameters/idPathParameter" - }, - { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;content==JsonNodeValue", - "in": "query", - "name": "filter", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiThemeOutDocument" - } - } - }, - "description": "Request successfully processed" - } - }, - "summary": "Get Theming", - "tags": [ - "Appearance", - "entities", - "organization-model-controller" - ] - }, - "patch": { - "operationId": "patchEntity@Themes", - "parameters": [ - { - "$ref": "#/components/parameters/idPathParameter" - }, - { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;content==JsonNodeValue", - "in": "query", - "name": "filter", - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiThemePatchDocument" - } - } - }, - "required": true - }, - "responses": { - "200": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiThemeOutDocument" + "$ref": "#/components/schemas/JsonApiUserIdentifierOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Patch Theming", + "summary": "Get UserIdentifier entities", "tags": [ - "Appearance", - "entities", - "organization-model-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "MANAGE" - ] - } - }, - "put": { - "operationId": "updateEntity@Themes", + "User Identifiers", + "entities", + "organization-model-controller" + ] + } + }, + "/api/v1/entities/userIdentifiers/{id}": { + "get": { + "description": "UserIdentifier - represents basic information about entity interacting with platform", + "operationId": "getEntity@UserIdentifiers", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;content==JsonNodeValue", + "example": "filter=firstname==someString;lastname==someString", "in": "query", "name": "filter", "schema": { @@ -20155,50 +23691,34 @@ } } ], - "requestBody": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiThemeInDocument" - } - } - }, - "required": true - }, "responses": { "200": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiThemeOutDocument" + "$ref": "#/components/schemas/JsonApiUserIdentifierOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put Theming", + "summary": "Get UserIdentifier entity", "tags": [ - "Appearance", + "User Identifiers", "entities", "organization-model-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "MANAGE" - ] - } + ] } }, - "/api/v1/entities/userGroups": { + "/api/v1/entities/users": { "get": { - "description": "User Group - creates tree-like structure for categorizing users", - "operationId": "getAllEntities@UserGroups", + "description": "User - represents entity interacting with platform", + "operationId": "getAllEntities@Users", "parameters": [ { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString", + "example": "filter=authenticationId==someString;firstname==someString", "in": "query", "name": "filter", "schema": { @@ -20207,7 +23727,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=parents", + "example": "include=userGroups", "explode": false, "in": "query", "name": "include", @@ -20216,7 +23736,6 @@ "items": { "enum": [ "userGroups", - "parents", "ALL" ], "type": "string" @@ -20262,16 +23781,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserGroupOutList" + "$ref": "#/components/schemas/JsonApiUserOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get UserGroup entities", + "summary": "Get User entities", "tags": [ - "UserGroups - Entity APIs", + "Users - Entity APIs", "entities", "organization-model-controller" ], @@ -20283,12 +23802,12 @@ } }, "post": { - "description": "User Group - creates tree-like structure for categorizing users", - "operationId": "createEntity@UserGroups", + "description": "User - represents entity interacting with platform", + "operationId": "createEntity@Users", "parameters": [ { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=parents", + "example": "include=userGroups", "explode": false, "in": "query", "name": "include", @@ -20297,7 +23816,6 @@ "items": { "enum": [ "userGroups", - "parents", "ALL" ], "type": "string" @@ -20311,7 +23829,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserGroupInDocument" + "$ref": "#/components/schemas/JsonApiUserInDocument" } } }, @@ -20322,16 +23840,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserGroupOutDocument" + "$ref": "#/components/schemas/JsonApiUserOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post User Group entities", + "summary": "Post User entities", "tags": [ - "UserGroups - Entity APIs", + "Users - Entity APIs", "entities", "organization-model-controller" ], @@ -20343,17 +23861,17 @@ } } }, - "/api/v1/entities/userGroups/{id}": { + "/api/v1/entities/users/{id}": { "delete": { - "description": "User Group - creates tree-like structure for categorizing users", - "operationId": "deleteEntity@UserGroups", + "description": "User - represents entity interacting with platform", + "operationId": "deleteEntity@Users", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString", + "example": "filter=authenticationId==someString;firstname==someString", "in": "query", "name": "filter", "schema": { @@ -20366,9 +23884,9 @@ "$ref": "#/components/responses/Deleted" } }, - "summary": "Delete UserGroup entity", + "summary": "Delete User entity", "tags": [ - "UserGroups - Entity APIs", + "Users - Entity APIs", "entities", "organization-model-controller" ], @@ -20380,15 +23898,15 @@ } }, "get": { - "description": "User Group - creates tree-like structure for categorizing users", - "operationId": "getEntity@UserGroups", + "description": "User - represents entity interacting with platform", + "operationId": "getEntity@Users", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString", + "example": "filter=authenticationId==someString;firstname==someString", "in": "query", "name": "filter", "schema": { @@ -20397,7 +23915,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=parents", + "example": "include=userGroups", "explode": false, "in": "query", "name": "include", @@ -20406,7 +23924,6 @@ "items": { "enum": [ "userGroups", - "parents", "ALL" ], "type": "string" @@ -20421,16 +23938,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserGroupOutDocument" + "$ref": "#/components/schemas/JsonApiUserOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get UserGroup entity", + "summary": "Get User entity", "tags": [ - "UserGroups - Entity APIs", + "Users - Entity APIs", "entities", "organization-model-controller" ], @@ -20442,15 +23959,15 @@ } }, "patch": { - "description": "User Group - creates tree-like structure for categorizing users", - "operationId": "patchEntity@UserGroups", + "description": "User - represents entity interacting with platform", + "operationId": "patchEntity@Users", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString", + "example": "filter=authenticationId==someString;firstname==someString", "in": "query", "name": "filter", "schema": { @@ -20459,7 +23976,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=parents", + "example": "include=userGroups", "explode": false, "in": "query", "name": "include", @@ -20468,7 +23985,6 @@ "items": { "enum": [ "userGroups", - "parents", "ALL" ], "type": "string" @@ -20482,7 +23998,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserGroupPatchDocument" + "$ref": "#/components/schemas/JsonApiUserPatchDocument" } } }, @@ -20493,16 +24009,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserGroupOutDocument" + "$ref": "#/components/schemas/JsonApiUserOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch UserGroup entity", + "summary": "Patch User entity", "tags": [ - "UserGroups - Entity APIs", + "Users - Entity APIs", "entities", "organization-model-controller" ], @@ -20514,15 +24030,15 @@ } }, "put": { - "description": "User Group - creates tree-like structure for categorizing users", - "operationId": "updateEntity@UserGroups", + "description": "User - represents entity interacting with platform", + "operationId": "updateEntity@Users", "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString", + "example": "filter=authenticationId==someString;firstname==someString", "in": "query", "name": "filter", "schema": { @@ -20531,7 +24047,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=parents", + "example": "include=userGroups", "explode": false, "in": "query", "name": "include", @@ -20540,7 +24056,6 @@ "items": { "enum": [ "userGroups", - "parents", "ALL" ], "type": "string" @@ -20554,7 +24069,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserGroupInDocument" + "$ref": "#/components/schemas/JsonApiUserInDocument" } } }, @@ -20565,16 +24080,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserGroupOutDocument" + "$ref": "#/components/schemas/JsonApiUserOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put UserGroup entity", + "summary": "Put User entity", "tags": [ - "UserGroups - Entity APIs", + "Users - Entity APIs", "entities", "organization-model-controller" ], @@ -20586,14 +24101,21 @@ } } }, - "/api/v1/entities/userIdentifiers": { + "/api/v1/entities/users/{userId}/apiTokens": { "get": { - "description": "UserIdentifier - represents entity interacting with platform", - "operationId": "getAllEntities@UserIdentifiers", + "operationId": "getAllEntities@ApiTokens", "parameters": [ + { + "in": "path", + "name": "userId", + "required": true, + "schema": { + "type": "string" + } + }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=firstname==someString;lastname==someString", + "example": "filter=bearerToken==someString", "in": "query", "name": "filter", "schema": { @@ -20637,32 +24159,116 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserIdentifierOutList" + "$ref": "#/components/schemas/JsonApiApiTokenOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get UserIdentifier entities", + "summary": "List all api tokens for a user", "tags": [ - "User Identifiers", + "API tokens", "entities", - "organization-model-controller" + "user-model-controller" + ] + }, + "post": { + "operationId": "createEntity@ApiTokens", + "parameters": [ + { + "in": "path", + "name": "userId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiApiTokenInDocument" + } + } + }, + "required": true + }, + "responses": { + "201": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiApiTokenOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Post a new API token for the user", + "tags": [ + "API tokens", + "entities", + "user-model-controller" ] } }, - "/api/v1/entities/userIdentifiers/{id}": { + "/api/v1/entities/users/{userId}/apiTokens/{id}": { + "delete": { + "operationId": "deleteEntity@ApiTokens", + "parameters": [ + { + "in": "path", + "name": "userId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=bearerToken==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "$ref": "#/components/responses/Deleted" + } + }, + "summary": "Delete an API Token for a user", + "tags": [ + "API tokens", + "entities", + "user-model-controller" + ] + }, "get": { - "description": "UserIdentifier - represents basic information about entity interacting with platform", - "operationId": "getEntity@UserIdentifiers", + "operationId": "getEntity@ApiTokens", "parameters": [ + { + "in": "path", + "name": "userId", + "required": true, + "schema": { + "type": "string" + } + }, { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=firstname==someString;lastname==someString", + "example": "filter=bearerToken==someString", "in": "query", "name": "filter", "schema": { @@ -20675,53 +24281,41 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserIdentifierOutDocument" + "$ref": "#/components/schemas/JsonApiApiTokenOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get UserIdentifier entity", + "summary": "Get an API Token for a user", "tags": [ - "User Identifiers", + "API tokens", "entities", - "organization-model-controller" + "user-model-controller" ] } }, - "/api/v1/entities/users": { - "get": { - "description": "User - represents entity interacting with platform", - "operationId": "getAllEntities@Users", + "/api/v1/entities/users/{userId}/userSettings": { + "get": { + "operationId": "getAllEntities@UserSettings", "parameters": [ { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=authenticationId==someString;firstname==someString", - "in": "query", - "name": "filter", + "in": "path", + "name": "userId", + "required": true, "schema": { "type": "string" } }, { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=userGroups", - "explode": false, + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=content==JsonNodeValue;type==SettingTypeValue", "in": "query", - "name": "include", - "required": false, + "name": "filter", "schema": { - "items": { - "enum": [ - "userGroups", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" + "type": "string" + } }, { "$ref": "#/components/parameters/page" @@ -20760,55 +24354,37 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserOutList" + "$ref": "#/components/schemas/JsonApiUserSettingOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get User entities", + "summary": "List all settings for a user", "tags": [ - "Users - Entity APIs", + "User Settings", "entities", - "organization-model-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to view this object type.", - "permissions": [ - "MANAGE" - ] - } + "user-model-controller" + ] }, "post": { - "description": "User - represents entity interacting with platform", - "operationId": "createEntity@Users", + "operationId": "createEntity@UserSettings", "parameters": [ { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=userGroups", - "explode": false, - "in": "query", - "name": "include", - "required": false, + "in": "path", + "name": "userId", + "required": true, "schema": { - "items": { - "enum": [ - "userGroups", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" + "type": "string" + } } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserInDocument" + "$ref": "#/components/schemas/JsonApiUserSettingInDocument" } } }, @@ -20819,38 +24395,39 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserOutDocument" + "$ref": "#/components/schemas/JsonApiUserSettingOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post User entities", + "summary": "Post new user settings for the user", "tags": [ - "Users - Entity APIs", + "User Settings", "entities", - "organization-model-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "MANAGE" - ] - } + "user-model-controller" + ] } }, - "/api/v1/entities/users/{id}": { + "/api/v1/entities/users/{userId}/userSettings/{id}": { "delete": { - "description": "User - represents entity interacting with platform", - "operationId": "deleteEntity@Users", + "operationId": "deleteEntity@UserSettings", "parameters": [ + { + "in": "path", + "name": "userId", + "required": true, + "schema": { + "type": "string" + } + }, { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=authenticationId==someString;firstname==someString", + "example": "filter=content==JsonNodeValue;type==SettingTypeValue", "in": "query", "name": "filter", "schema": { @@ -20863,192 +24440,85 @@ "$ref": "#/components/responses/Deleted" } }, - "summary": "Delete User entity", + "summary": "Delete a setting for a user", "tags": [ - "Users - Entity APIs", + "User Settings", "entities", - "organization-model-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "MANAGE" - ] - } + "user-model-controller" + ] }, "get": { - "description": "User - represents entity interacting with platform", - "operationId": "getEntity@Users", + "operationId": "getEntity@UserSettings", "parameters": [ { - "$ref": "#/components/parameters/idPathParameter" - }, - { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=authenticationId==someString;firstname==someString", - "in": "query", - "name": "filter", + "in": "path", + "name": "userId", + "required": true, "schema": { "type": "string" } }, - { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=userGroups", - "explode": false, - "in": "query", - "name": "include", - "required": false, - "schema": { - "items": { - "enum": [ - "userGroups", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" - } - ], - "responses": { - "200": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiUserOutDocument" - } - } - }, - "description": "Request successfully processed" - } - }, - "summary": "Get User entity", - "tags": [ - "Users - Entity APIs", - "entities", - "organization-model-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to view this object type.", - "permissions": [ - "MANAGE" - ] - } - }, - "patch": { - "description": "User - represents entity interacting with platform", - "operationId": "patchEntity@Users", - "parameters": [ { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=authenticationId==someString;firstname==someString", + "example": "filter=content==JsonNodeValue;type==SettingTypeValue", "in": "query", "name": "filter", "schema": { "type": "string" } - }, - { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=userGroups", - "explode": false, - "in": "query", - "name": "include", - "required": false, - "schema": { - "items": { - "enum": [ - "userGroups", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" } ], - "requestBody": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiUserPatchDocument" - } - } - }, - "required": true - }, "responses": { "200": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserOutDocument" + "$ref": "#/components/schemas/JsonApiUserSettingOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch User entity", + "summary": "Get a setting for a user", "tags": [ - "Users - Entity APIs", + "User Settings", "entities", - "organization-model-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "MANAGE" - ] - } + "user-model-controller" + ] }, "put": { - "description": "User - represents entity interacting with platform", - "operationId": "updateEntity@Users", + "operationId": "updateEntity@UserSettings", "parameters": [ { - "$ref": "#/components/parameters/idPathParameter" - }, - { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=authenticationId==someString;firstname==someString", - "in": "query", - "name": "filter", + "in": "path", + "name": "userId", + "required": true, "schema": { "type": "string" } }, - { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=userGroups", - "explode": false, - "in": "query", - "name": "include", - "required": false, - "schema": { - "items": { - "enum": [ - "userGroups", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" + { + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=content==JsonNodeValue;type==SettingTypeValue", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserInDocument" + "$ref": "#/components/schemas/JsonApiUserSettingInDocument" } } }, @@ -21059,47 +24529,54 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserOutDocument" + "$ref": "#/components/schemas/JsonApiUserSettingOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put User entity", + "summary": "Put new user settings for the user", "tags": [ - "Users - Entity APIs", + "User Settings", "entities", - "organization-model-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "MANAGE" - ] - } + "user-model-controller" + ] } }, - "/api/v1/entities/users/{userId}/apiTokens": { + "/api/v1/entities/workspaces": { "get": { - "operationId": "getAllEntities@ApiTokens", + "description": "Space of the shared interest", + "operationId": "getAllEntities@Workspaces", "parameters": [ { - "in": "path", - "name": "userId", - "required": true, + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString;earlyAccess==someString;parent.id==321", + "in": "query", + "name": "filter", "schema": { "type": "string" } }, { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=bearerToken==someString", + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=parent", + "explode": false, "in": "query", - "name": "filter", + "name": "include", + "required": false, "schema": { - "type": "string" - } + "items": { + "enum": [ + "workspaces", + "parent", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" }, { "$ref": "#/components/parameters/page" @@ -21112,7 +24589,7 @@ }, { "description": "Include Meta objects.", - "example": "metaInclude=page,all", + "example": "metaInclude=config,permissions,hierarchy,dataModelDatasets,page,all", "explode": false, "in": "query", "name": "metaInclude", @@ -21121,6 +24598,10 @@ "description": "Included meta objects", "items": { "enum": [ + "config", + "permissions", + "hierarchy", + "dataModelDatasets", "page", "all", "ALL" @@ -21138,37 +24619,81 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiApiTokenOutList" + "$ref": "#/components/schemas/JsonApiWorkspaceOutList" } } }, "description": "Request successfully processed" } }, - "summary": "List all api tokens for a user", + "summary": "Get Workspace entities", "tags": [ - "API tokens", + "Workspaces - Entity APIs", "entities", - "user-model-controller" - ] + "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to view this object type.", + "permissions": [ + "VIEW" + ] + } }, "post": { - "operationId": "createEntity@ApiTokens", + "description": "Space of the shared interest", + "operationId": "createEntity@Workspaces", "parameters": [ { - "in": "path", - "name": "userId", - "required": true, + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=parent", + "explode": false, + "in": "query", + "name": "include", + "required": false, "schema": { - "type": "string" - } + "items": { + "enum": [ + "workspaces", + "parent", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Include Meta objects.", + "example": "metaInclude=config,permissions,hierarchy,dataModelDatasets,all", + "explode": false, + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "description": "Included meta objects", + "items": { + "enum": [ + "config", + "permissions", + "hierarchy", + "dataModelDatasets", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiApiTokenInDocument" + "$ref": "#/components/schemas/JsonApiWorkspaceInDocument" } } }, @@ -21179,39 +24704,38 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiApiTokenOutDocument" + "$ref": "#/components/schemas/JsonApiWorkspaceOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post a new API token for the user", + "summary": "Post Workspace entities", "tags": [ - "API tokens", + "Workspaces - Entity APIs", "entities", - "user-model-controller" - ] + "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } } }, - "/api/v1/entities/users/{userId}/apiTokens/{id}": { + "/api/v1/entities/workspaces/{id}": { "delete": { - "operationId": "deleteEntity@ApiTokens", + "description": "Space of the shared interest", + "operationId": "deleteEntity@Workspaces", "parameters": [ - { - "in": "path", - "name": "userId", - "required": true, - "schema": { - "type": "string" - } - }, { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=bearerToken==someString", + "example": "filter=name==someString;earlyAccess==someString;parent.id==321", "in": "query", "name": "filter", "schema": { @@ -21224,90 +24748,58 @@ "$ref": "#/components/responses/Deleted" } }, - "summary": "Delete an API Token for a user", + "summary": "Delete Workspace entity", "tags": [ - "API tokens", + "Workspaces - Entity APIs", "entities", - "user-model-controller" - ] + "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } }, "get": { - "operationId": "getEntity@ApiTokens", + "description": "Space of the shared interest", + "operationId": "getEntity@Workspaces", "parameters": [ - { - "in": "path", - "name": "userId", - "required": true, - "schema": { - "type": "string" - } - }, { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=bearerToken==someString", + "example": "filter=name==someString;earlyAccess==someString;parent.id==321", "in": "query", "name": "filter", "schema": { "type": "string" } - } - ], - "responses": { - "200": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiApiTokenOutDocument" - } - } - }, - "description": "Request successfully processed" - } - }, - "summary": "Get an API Token for a user", - "tags": [ - "API tokens", - "entities", - "user-model-controller" - ] - } - }, - "/api/v1/entities/users/{userId}/userSettings": { - "get": { - "operationId": "getAllEntities@UserSettings", - "parameters": [ - { - "in": "path", - "name": "userId", - "required": true, - "schema": { - "type": "string" - } }, { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=content==JsonNodeValue;type==SettingTypeValue", + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=parent", + "explode": false, "in": "query", - "name": "filter", + "name": "include", + "required": false, "schema": { - "type": "string" - } - }, - { - "$ref": "#/components/parameters/page" - }, - { - "$ref": "#/components/parameters/size" - }, - { - "$ref": "#/components/parameters/sort" + "items": { + "enum": [ + "workspaces", + "parent", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" }, { "description": "Include Meta objects.", - "example": "metaInclude=page,all", + "example": "metaInclude=config,permissions,hierarchy,dataModelDatasets,all", "explode": false, "in": "query", "name": "metaInclude", @@ -21316,7 +24808,10 @@ "description": "Included meta objects", "items": { "enum": [ - "page", + "config", + "permissions", + "hierarchy", + "dataModelDatasets", "all", "ALL" ], @@ -21333,171 +24828,140 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserSettingOutList" + "$ref": "#/components/schemas/JsonApiWorkspaceOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "List all settings for a user", + "summary": "Get Workspace entity", "tags": [ - "User Settings", + "Workspaces - Entity APIs", "entities", - "user-model-controller" - ] + "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to view this object type.", + "permissions": [ + "VIEW" + ] + } }, - "post": { - "operationId": "createEntity@UserSettings", + "patch": { + "description": "Space of the shared interest", + "operationId": "patchEntity@Workspaces", "parameters": [ { - "in": "path", - "name": "userId", - "required": true, + "$ref": "#/components/parameters/idPathParameter" + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=name==someString;earlyAccess==someString;parent.id==321", + "in": "query", + "name": "filter", "schema": { "type": "string" } + }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=parent", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "workspaces", + "parent", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserSettingInDocument" + "$ref": "#/components/schemas/JsonApiWorkspacePatchDocument" } } }, "required": true }, "responses": { - "201": { + "200": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserSettingOutDocument" + "$ref": "#/components/schemas/JsonApiWorkspaceOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post new user settings for the user", + "summary": "Patch Workspace entity", "tags": [ - "User Settings", + "Workspaces - Entity APIs", "entities", - "user-model-controller" - ] - } - }, - "/api/v1/entities/users/{userId}/userSettings/{id}": { - "delete": { - "operationId": "deleteEntity@UserSettings", - "parameters": [ - { - "in": "path", - "name": "userId", - "required": true, - "schema": { - "type": "string" - } - }, - { - "$ref": "#/components/parameters/idPathParameter" - }, - { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=content==JsonNodeValue;type==SettingTypeValue", - "in": "query", - "name": "filter", - "schema": { - "type": "string" - } - } + "organization-model-controller" ], - "responses": { - "204": { - "$ref": "#/components/responses/Deleted" - } - }, - "summary": "Delete a setting for a user", - "tags": [ - "User Settings", - "entities", - "user-model-controller" - ] + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } }, - "get": { - "operationId": "getEntity@UserSettings", + "put": { + "description": "Space of the shared interest", + "operationId": "updateEntity@Workspaces", "parameters": [ - { - "in": "path", - "name": "userId", - "required": true, - "schema": { - "type": "string" - } - }, { "$ref": "#/components/parameters/idPathParameter" }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=content==JsonNodeValue;type==SettingTypeValue", + "example": "filter=name==someString;earlyAccess==someString;parent.id==321", "in": "query", "name": "filter", "schema": { "type": "string" } - } - ], - "responses": { - "200": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiUserSettingOutDocument" - } - } - }, - "description": "Request successfully processed" - } - }, - "summary": "Get a setting for a user", - "tags": [ - "User Settings", - "entities", - "user-model-controller" - ] - }, - "put": { - "operationId": "updateEntity@UserSettings", - "parameters": [ - { - "in": "path", - "name": "userId", - "required": true, - "schema": { - "type": "string" - } - }, - { - "$ref": "#/components/parameters/idPathParameter" }, { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=content==JsonNodeValue;type==SettingTypeValue", + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=parent", + "explode": false, "in": "query", - "name": "filter", + "name": "include", + "required": false, "schema": { - "type": "string" - } + "items": { + "enum": [ + "workspaces", + "parent", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserSettingInDocument" + "$ref": "#/components/schemas/JsonApiWorkspaceInDocument" } } }, @@ -21508,29 +24972,57 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiUserSettingOutDocument" + "$ref": "#/components/schemas/JsonApiWorkspaceOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put new user settings for the user", + "summary": "Put Workspace entity", "tags": [ - "User Settings", + "Workspaces - Entity APIs", "entities", - "user-model-controller" - ] + "organization-model-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "MANAGE" + ] + } } }, - "/api/v1/entities/workspaces": { + "/api/v1/entities/workspaces/{workspaceId}/analyticalDashboards": { "get": { - "description": "Space of the shared interest", - "operationId": "getAllEntities@Workspaces", + "operationId": "getAllEntities@AnalyticalDashboards", "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "query", + "name": "origin", + "required": false, + "schema": { + "default": "ALL", + "description": "Defines scope of origin of objects. All by default.", + "enum": [ + "ALL", + "PARENTS", + "NATIVE" + ], + "type": "string" + } + }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;earlyAccess==someString;parent.id==321", + "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", "in": "query", "name": "filter", "schema": { @@ -21539,7 +25031,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=parent", + "example": "include=createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", "explode": false, "in": "query", "name": "include", @@ -21547,8 +25039,16 @@ "schema": { "items": { "enum": [ - "workspaces", - "parent", + "userIdentifiers", + "visualizationObjects", + "analyticalDashboards", + "labels", + "metrics", + "datasets", + "filterContexts", + "dashboardPlugins", + "createdBy", + "modifiedBy", "ALL" ], "type": "string" @@ -21566,9 +25066,18 @@ { "$ref": "#/components/parameters/sort" }, + { + "in": "header", + "name": "X-GDC-VALIDATE-RELATIONS", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, { "description": "Include Meta objects.", - "example": "metaInclude=config,permissions,hierarchy,dataModelDatasets,page,all", + "example": "metaInclude=permissions,origin,accessInfo,page,all", "explode": false, "in": "query", "name": "metaInclude", @@ -21577,10 +25086,9 @@ "description": "Included meta objects", "items": { "enum": [ - "config", "permissions", - "hierarchy", - "dataModelDatasets", + "origin", + "accessInfo", "page", "all", "ALL" @@ -21598,18 +25106,18 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiWorkspaceOutList" + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get Workspace entities", + "summary": "Get all Dashboards", "tags": [ - "Workspaces - Entity APIs", + "Dashboards", "entities", - "organization-model-controller" + "workspace-object-controller" ], "x-gdc-security-info": { "description": "Contains minimal permission level required to view this object type.", @@ -21619,12 +25127,19 @@ } }, "post": { - "description": "Space of the shared interest", - "operationId": "createEntity@Workspaces", + "operationId": "createEntity@AnalyticalDashboards", "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=parent", + "example": "include=createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", "explode": false, "in": "query", "name": "include", @@ -21632,8 +25147,16 @@ "schema": { "items": { "enum": [ - "workspaces", - "parent", + "userIdentifiers", + "visualizationObjects", + "analyticalDashboards", + "labels", + "metrics", + "datasets", + "filterContexts", + "dashboardPlugins", + "createdBy", + "modifiedBy", "ALL" ], "type": "string" @@ -21644,7 +25167,7 @@ }, { "description": "Include Meta objects.", - "example": "metaInclude=config,permissions,hierarchy,dataModelDatasets,all", + "example": "metaInclude=permissions,origin,accessInfo,all", "explode": false, "in": "query", "name": "metaInclude", @@ -21653,10 +25176,9 @@ "description": "Included meta objects", "items": { "enum": [ - "config", "permissions", - "hierarchy", - "dataModelDatasets", + "origin", + "accessInfo", "all", "ALL" ], @@ -21672,7 +25194,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiWorkspaceInDocument" + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardPostOptionalIdDocument" } } }, @@ -21683,38 +25205,50 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiWorkspaceOutDocument" + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post Workspace entities", + "summary": "Post Dashboards", "tags": [ - "Workspaces - Entity APIs", + "Dashboards", "entities", - "organization-model-controller" + "workspace-object-controller" ], "x-gdc-security-info": { "description": "Contains minimal permission level required to manage this object type.", "permissions": [ - "MANAGE" + "ANALYZE" ] } } }, - "/api/v1/entities/workspaces/{id}": { + "/api/v1/entities/workspaces/{workspaceId}/analyticalDashboards/{objectId}": { "delete": { - "description": "Space of the shared interest", - "operationId": "deleteEntity@Workspaces", + "operationId": "deleteEntity@AnalyticalDashboards", "parameters": [ { - "$ref": "#/components/parameters/idPathParameter" + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "objectId", + "required": true, + "schema": { + "type": "string" + } }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;earlyAccess==someString;parent.id==321", + "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", "in": "query", "name": "filter", "schema": { @@ -21727,29 +25261,41 @@ "$ref": "#/components/responses/Deleted" } }, - "summary": "Delete Workspace entity", + "summary": "Delete a Dashboard", "tags": [ - "Workspaces - Entity APIs", + "Dashboards", "entities", - "organization-model-controller" + "workspace-object-controller" ], "x-gdc-security-info": { "description": "Contains minimal permission level required to manage this object type.", "permissions": [ - "MANAGE" + "ANALYZE" ] } }, "get": { - "description": "Space of the shared interest", - "operationId": "getEntity@Workspaces", + "operationId": "getEntity@AnalyticalDashboards", "parameters": [ { - "$ref": "#/components/parameters/idPathParameter" + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "objectId", + "required": true, + "schema": { + "type": "string" + } }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;earlyAccess==someString;parent.id==321", + "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", "in": "query", "name": "filter", "schema": { @@ -21758,7 +25304,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=parent", + "example": "include=createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", "explode": false, "in": "query", "name": "include", @@ -21766,8 +25312,16 @@ "schema": { "items": { "enum": [ - "workspaces", - "parent", + "userIdentifiers", + "visualizationObjects", + "analyticalDashboards", + "labels", + "metrics", + "datasets", + "filterContexts", + "dashboardPlugins", + "createdBy", + "modifiedBy", "ALL" ], "type": "string" @@ -21776,9 +25330,18 @@ }, "style": "form" }, + { + "in": "header", + "name": "X-GDC-VALIDATE-RELATIONS", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, { "description": "Include Meta objects.", - "example": "metaInclude=config,permissions,hierarchy,dataModelDatasets,all", + "example": "metaInclude=permissions,origin,accessInfo,all", "explode": false, "in": "query", "name": "metaInclude", @@ -21787,10 +25350,9 @@ "description": "Included meta objects", "items": { "enum": [ - "config", "permissions", - "hierarchy", - "dataModelDatasets", + "origin", + "accessInfo", "all", "ALL" ], @@ -21807,18 +25369,18 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiWorkspaceOutDocument" + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get Workspace entity", + "summary": "Get a Dashboard", "tags": [ - "Workspaces - Entity APIs", + "Dashboards", "entities", - "organization-model-controller" + "workspace-object-controller" ], "x-gdc-security-info": { "description": "Contains minimal permission level required to view this object type.", @@ -21828,15 +25390,27 @@ } }, "patch": { - "description": "Space of the shared interest", - "operationId": "patchEntity@Workspaces", + "operationId": "patchEntity@AnalyticalDashboards", "parameters": [ { - "$ref": "#/components/parameters/idPathParameter" + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "objectId", + "required": true, + "schema": { + "type": "string" + } }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;earlyAccess==someString;parent.id==321", + "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", "in": "query", "name": "filter", "schema": { @@ -21845,7 +25419,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=parent", + "example": "include=createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", "explode": false, "in": "query", "name": "include", @@ -21853,8 +25427,16 @@ "schema": { "items": { "enum": [ - "workspaces", - "parent", + "userIdentifiers", + "visualizationObjects", + "analyticalDashboards", + "labels", + "metrics", + "datasets", + "filterContexts", + "dashboardPlugins", + "createdBy", + "modifiedBy", "ALL" ], "type": "string" @@ -21868,7 +25450,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiWorkspacePatchDocument" + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardPatchDocument" } } }, @@ -21879,36 +25461,48 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiWorkspaceOutDocument" + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch Workspace entity", + "summary": "Patch a Dashboard", "tags": [ - "Workspaces - Entity APIs", + "Dashboards", "entities", - "organization-model-controller" + "workspace-object-controller" ], "x-gdc-security-info": { "description": "Contains minimal permission level required to manage this object type.", "permissions": [ - "MANAGE" + "ANALYZE" ] } }, "put": { - "description": "Space of the shared interest", - "operationId": "updateEntity@Workspaces", + "operationId": "updateEntity@AnalyticalDashboards", "parameters": [ { - "$ref": "#/components/parameters/idPathParameter" + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "objectId", + "required": true, + "schema": { + "type": "string" + } }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=name==someString;earlyAccess==someString;parent.id==321", + "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", "in": "query", "name": "filter", "schema": { @@ -21917,7 +25511,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=parent", + "example": "include=createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", "explode": false, "in": "query", "name": "include", @@ -21925,8 +25519,16 @@ "schema": { "items": { "enum": [ - "workspaces", - "parent", + "userIdentifiers", + "visualizationObjects", + "analyticalDashboards", + "labels", + "metrics", + "datasets", + "filterContexts", + "dashboardPlugins", + "createdBy", + "modifiedBy", "ALL" ], "type": "string" @@ -21940,7 +25542,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiWorkspaceInDocument" + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardInDocument" } } }, @@ -21951,30 +25553,30 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiWorkspaceOutDocument" + "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put Workspace entity", + "summary": "Put Dashboards", "tags": [ - "Workspaces - Entity APIs", + "Dashboards", "entities", - "organization-model-controller" + "workspace-object-controller" ], "x-gdc-security-info": { "description": "Contains minimal permission level required to manage this object type.", "permissions": [ - "MANAGE" + "ANALYZE" ] } } }, - "/api/v1/entities/workspaces/{workspaceId}/analyticalDashboards": { + "/api/v1/entities/workspaces/{workspaceId}/attributeHierarchies": { "get": { - "operationId": "getAllEntities@AnalyticalDashboards", + "operationId": "getAllEntities@AttributeHierarchies", "parameters": [ { "in": "path", @@ -22010,22 +25612,16 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "example": "include=createdBy,modifiedBy,attributes", "explode": false, "in": "query", "name": "include", "required": false, - "schema": { - "items": { - "enum": [ - "userIdentifiers", - "visualizationObjects", - "analyticalDashboards", - "labels", - "metrics", - "datasets", - "filterContexts", - "dashboardPlugins", + "schema": { + "items": { + "enum": [ + "userIdentifiers", + "attributes", "createdBy", "modifiedBy", "ALL" @@ -22056,7 +25652,7 @@ }, { "description": "Include Meta objects.", - "example": "metaInclude=permissions,origin,accessInfo,page,all", + "example": "metaInclude=origin,page,all", "explode": false, "in": "query", "name": "metaInclude", @@ -22065,9 +25661,7 @@ "description": "Included meta objects", "items": { "enum": [ - "permissions", "origin", - "accessInfo", "page", "all", "ALL" @@ -22085,16 +25679,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutList" + "$ref": "#/components/schemas/JsonApiAttributeHierarchyOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get all Dashboards", + "summary": "Get all Attribute Hierarchies", "tags": [ - "Dashboards", + "Attribute Hierarchies", "entities", "workspace-object-controller" ], @@ -22106,7 +25700,7 @@ } }, "post": { - "operationId": "createEntity@AnalyticalDashboards", + "operationId": "createEntity@AttributeHierarchies", "parameters": [ { "in": "path", @@ -22118,7 +25712,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "example": "include=createdBy,modifiedBy,attributes", "explode": false, "in": "query", "name": "include", @@ -22127,13 +25721,7 @@ "items": { "enum": [ "userIdentifiers", - "visualizationObjects", - "analyticalDashboards", - "labels", - "metrics", - "datasets", - "filterContexts", - "dashboardPlugins", + "attributes", "createdBy", "modifiedBy", "ALL" @@ -22146,7 +25734,7 @@ }, { "description": "Include Meta objects.", - "example": "metaInclude=permissions,origin,accessInfo,all", + "example": "metaInclude=origin,all", "explode": false, "in": "query", "name": "metaInclude", @@ -22155,9 +25743,7 @@ "description": "Included meta objects", "items": { "enum": [ - "permissions", "origin", - "accessInfo", "all", "ALL" ], @@ -22173,7 +25759,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAnalyticalDashboardPostOptionalIdDocument" + "$ref": "#/components/schemas/JsonApiAttributeHierarchyInDocument" } } }, @@ -22184,16 +25770,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutDocument" + "$ref": "#/components/schemas/JsonApiAttributeHierarchyOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post Dashboards", + "summary": "Post Attribute Hierarchies", "tags": [ - "Dashboards", + "Attribute Hierarchies", "entities", "workspace-object-controller" ], @@ -22205,9 +25791,9 @@ } } }, - "/api/v1/entities/workspaces/{workspaceId}/analyticalDashboards/{objectId}": { + "/api/v1/entities/workspaces/{workspaceId}/attributeHierarchies/{objectId}": { "delete": { - "operationId": "deleteEntity@AnalyticalDashboards", + "operationId": "deleteEntity@AttributeHierarchies", "parameters": [ { "in": "path", @@ -22240,9 +25826,9 @@ "$ref": "#/components/responses/Deleted" } }, - "summary": "Delete a Dashboard", + "summary": "Delete an Attribute Hierarchy", "tags": [ - "Dashboards", + "Attribute Hierarchies", "entities", "workspace-object-controller" ], @@ -22254,7 +25840,7 @@ } }, "get": { - "operationId": "getEntity@AnalyticalDashboards", + "operationId": "getEntity@AttributeHierarchies", "parameters": [ { "in": "path", @@ -22283,7 +25869,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "example": "include=createdBy,modifiedBy,attributes", "explode": false, "in": "query", "name": "include", @@ -22292,13 +25878,7 @@ "items": { "enum": [ "userIdentifiers", - "visualizationObjects", - "analyticalDashboards", - "labels", - "metrics", - "datasets", - "filterContexts", - "dashboardPlugins", + "attributes", "createdBy", "modifiedBy", "ALL" @@ -22320,7 +25900,7 @@ }, { "description": "Include Meta objects.", - "example": "metaInclude=permissions,origin,accessInfo,all", + "example": "metaInclude=origin,all", "explode": false, "in": "query", "name": "metaInclude", @@ -22329,9 +25909,7 @@ "description": "Included meta objects", "items": { "enum": [ - "permissions", "origin", - "accessInfo", "all", "ALL" ], @@ -22348,16 +25926,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutDocument" + "$ref": "#/components/schemas/JsonApiAttributeHierarchyOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get a Dashboard", + "summary": "Get an Attribute Hierarchy", "tags": [ - "Dashboards", + "Attribute Hierarchies", "entities", "workspace-object-controller" ], @@ -22369,7 +25947,7 @@ } }, "patch": { - "operationId": "patchEntity@AnalyticalDashboards", + "operationId": "patchEntity@AttributeHierarchies", "parameters": [ { "in": "path", @@ -22398,7 +25976,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "example": "include=createdBy,modifiedBy,attributes", "explode": false, "in": "query", "name": "include", @@ -22407,13 +25985,7 @@ "items": { "enum": [ "userIdentifiers", - "visualizationObjects", - "analyticalDashboards", - "labels", - "metrics", - "datasets", - "filterContexts", - "dashboardPlugins", + "attributes", "createdBy", "modifiedBy", "ALL" @@ -22429,7 +26001,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAnalyticalDashboardPatchDocument" + "$ref": "#/components/schemas/JsonApiAttributeHierarchyPatchDocument" } } }, @@ -22440,16 +26012,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutDocument" + "$ref": "#/components/schemas/JsonApiAttributeHierarchyOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch a Dashboard", + "summary": "Patch an Attribute Hierarchy", "tags": [ - "Dashboards", + "Attribute Hierarchies", "entities", "workspace-object-controller" ], @@ -22461,7 +26033,7 @@ } }, "put": { - "operationId": "updateEntity@AnalyticalDashboards", + "operationId": "updateEntity@AttributeHierarchies", "parameters": [ { "in": "path", @@ -22490,7 +26062,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "example": "include=createdBy,modifiedBy,attributes", "explode": false, "in": "query", "name": "include", @@ -22499,13 +26071,7 @@ "items": { "enum": [ "userIdentifiers", - "visualizationObjects", - "analyticalDashboards", - "labels", - "metrics", - "datasets", - "filterContexts", - "dashboardPlugins", + "attributes", "createdBy", "modifiedBy", "ALL" @@ -22521,7 +26087,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAnalyticalDashboardInDocument" + "$ref": "#/components/schemas/JsonApiAttributeHierarchyInDocument" } } }, @@ -22532,16 +26098,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAnalyticalDashboardOutDocument" + "$ref": "#/components/schemas/JsonApiAttributeHierarchyOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put Dashboards", + "summary": "Put an Attribute Hierarchy", "tags": [ - "Dashboards", + "Attribute Hierarchies", "entities", "workspace-object-controller" ], @@ -22553,9 +26119,9 @@ } } }, - "/api/v1/entities/workspaces/{workspaceId}/attributeHierarchies": { + "/api/v1/entities/workspaces/{workspaceId}/attributes": { "get": { - "operationId": "getAllEntities@AttributeHierarchies", + "operationId": "getAllEntities@Attributes", "parameters": [ { "in": "path", @@ -22582,7 +26148,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", + "example": "filter=title==someString;description==someString;dataset.id==321;defaultView.id==321", "in": "query", "name": "filter", "schema": { @@ -22591,7 +26157,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=createdBy,modifiedBy,attributes", + "example": "include=dataset,defaultView,labels,attributeHierarchies", "explode": false, "in": "query", "name": "include", @@ -22599,10 +26165,11 @@ "schema": { "items": { "enum": [ - "userIdentifiers", - "attributes", - "createdBy", - "modifiedBy", + "datasets", + "labels", + "attributeHierarchies", + "dataset", + "defaultView", "ALL" ], "type": "string" @@ -22658,28 +26225,24 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAttributeHierarchyOutList" + "$ref": "#/components/schemas/JsonApiAttributeOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get all Attribute Hierarchies", + "summary": "Get all Attributes", "tags": [ - "Attribute Hierarchies", + "Attributes", "entities", "workspace-object-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to view this object type.", - "permissions": [ - "VIEW" - ] - } - }, - "post": { - "operationId": "createEntity@AttributeHierarchies", + ] + } + }, + "/api/v1/entities/workspaces/{workspaceId}/attributes/{objectId}": { + "get": { + "operationId": "getEntity@Attributes", "parameters": [ { "in": "path", @@ -22690,136 +26253,100 @@ } }, { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=createdBy,modifiedBy,attributes", - "explode": false, + "in": "path", + "name": "objectId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString;dataset.id==321;defaultView.id==321", "in": "query", - "name": "include", - "required": false, + "name": "filter", "schema": { - "items": { - "enum": [ - "userIdentifiers", - "attributes", - "createdBy", - "modifiedBy", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" + "type": "string" + } }, { - "description": "Include Meta objects.", - "example": "metaInclude=origin,all", + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=dataset,defaultView,labels,attributeHierarchies", "explode": false, "in": "query", - "name": "metaInclude", + "name": "include", "required": false, "schema": { - "description": "Included meta objects", "items": { "enum": [ - "origin", - "all", + "datasets", + "labels", + "attributeHierarchies", + "dataset", + "defaultView", "ALL" ], "type": "string" }, - "type": "array", - "uniqueItems": true + "type": "array" }, "style": "form" - } - ], - "requestBody": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiAttributeHierarchyInDocument" - } - } - }, - "required": true - }, - "responses": { - "201": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiAttributeHierarchyOutDocument" - } - } - }, - "description": "Request successfully processed" - } - }, - "summary": "Post Attribute Hierarchies", - "tags": [ - "Attribute Hierarchies", - "entities", - "workspace-object-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "ANALYZE" - ] - } - } - }, - "/api/v1/entities/workspaces/{workspaceId}/attributeHierarchies/{objectId}": { - "delete": { - "operationId": "deleteEntity@AttributeHierarchies", - "parameters": [ - { - "in": "path", - "name": "workspaceId", - "required": true, - "schema": { - "type": "string" - } }, { - "in": "path", - "name": "objectId", - "required": true, + "in": "header", + "name": "X-GDC-VALIDATE-RELATIONS", + "required": false, "schema": { - "type": "string" + "default": false, + "type": "boolean" } }, { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", + "description": "Include Meta objects.", + "example": "metaInclude=origin,all", + "explode": false, "in": "query", - "name": "filter", + "name": "metaInclude", + "required": false, "schema": { - "type": "string" - } + "description": "Included meta objects", + "items": { + "enum": [ + "origin", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" } ], "responses": { - "204": { - "$ref": "#/components/responses/Deleted" + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiAttributeOutDocument" + } + } + }, + "description": "Request successfully processed" } }, - "summary": "Delete an Attribute Hierarchy", + "summary": "Get an Attribute", "tags": [ - "Attribute Hierarchies", + "Attributes", "entities", "workspace-object-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "ANALYZE" - ] - } - }, + ] + } + }, + "/api/v1/entities/workspaces/{workspaceId}/automations": { "get": { - "operationId": "getEntity@AttributeHierarchies", + "operationId": "getAllEntities@Automations", "parameters": [ { "in": "path", @@ -22830,16 +26357,23 @@ } }, { - "in": "path", - "name": "objectId", - "required": true, + "in": "query", + "name": "origin", + "required": false, "schema": { + "default": "ALL", + "description": "Defines scope of origin of objects. All by default.", + "enum": [ + "ALL", + "PARENTS", + "NATIVE" + ], "type": "string" } }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", + "example": "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321", "in": "query", "name": "filter", "schema": { @@ -22848,7 +26382,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=createdBy,modifiedBy,attributes", + "example": "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", "explode": false, "in": "query", "name": "include", @@ -22856,10 +26390,16 @@ "schema": { "items": { "enum": [ + "notificationChannels", + "analyticalDashboards", "userIdentifiers", - "attributes", + "exportDefinitions", + "users", + "notificationChannel", + "analyticalDashboard", "createdBy", "modifiedBy", + "recipients", "ALL" ], "type": "string" @@ -22868,6 +26408,15 @@ }, "style": "form" }, + { + "$ref": "#/components/parameters/page" + }, + { + "$ref": "#/components/parameters/size" + }, + { + "$ref": "#/components/parameters/sort" + }, { "in": "header", "name": "X-GDC-VALIDATE-RELATIONS", @@ -22879,7 +26428,7 @@ }, { "description": "Include Meta objects.", - "example": "metaInclude=origin,all", + "example": "metaInclude=origin,page,all", "explode": false, "in": "query", "name": "metaInclude", @@ -22889,6 +26438,7 @@ "items": { "enum": [ "origin", + "page", "all", "ALL" ], @@ -22905,16 +26455,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAttributeHierarchyOutDocument" + "$ref": "#/components/schemas/JsonApiAutomationOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get an Attribute Hierarchy", + "summary": "Get all Automations", "tags": [ - "Attribute Hierarchies", + "Automations", "entities", "workspace-object-controller" ], @@ -22925,8 +26475,8 @@ ] } }, - "patch": { - "operationId": "patchEntity@AttributeHierarchies", + "post": { + "operationId": "createEntity@Automations", "parameters": [ { "in": "path", @@ -22936,26 +26486,9 @@ "type": "string" } }, - { - "in": "path", - "name": "objectId", - "required": true, - "schema": { - "type": "string" - } - }, - { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", - "in": "query", - "name": "filter", - "schema": { - "type": "string" - } - }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=createdBy,modifiedBy,attributes", + "example": "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", "explode": false, "in": "query", "name": "include", @@ -22963,10 +26496,16 @@ "schema": { "items": { "enum": [ + "notificationChannels", + "analyticalDashboards", "userIdentifiers", - "attributes", + "exportDefinitions", + "users", + "notificationChannel", + "analyticalDashboard", "createdBy", "modifiedBy", + "recipients", "ALL" ], "type": "string" @@ -22974,45 +26513,69 @@ "type": "array" }, "style": "form" + }, + { + "description": "Include Meta objects.", + "example": "metaInclude=origin,all", + "explode": false, + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "description": "Included meta objects", + "items": { + "enum": [ + "origin", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAttributeHierarchyPatchDocument" + "$ref": "#/components/schemas/JsonApiAutomationInDocument" } } }, "required": true }, "responses": { - "200": { + "201": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAttributeHierarchyOutDocument" + "$ref": "#/components/schemas/JsonApiAutomationOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch an Attribute Hierarchy", + "summary": "Post Automations", "tags": [ - "Attribute Hierarchies", + "Automations", "entities", "workspace-object-controller" ], "x-gdc-security-info": { "description": "Contains minimal permission level required to manage this object type.", "permissions": [ - "ANALYZE" + "CREATE_AUTOMATION" ] } - }, - "put": { - "operationId": "updateEntity@AttributeHierarchies", + } + }, + "/api/v1/entities/workspaces/{workspaceId}/automations/{objectId}": { + "delete": { + "operationId": "deleteEntity@Automations", "parameters": [ { "in": "path", @@ -23032,75 +26595,34 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", + "example": "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321", "in": "query", "name": "filter", "schema": { "type": "string" } - }, - { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=createdBy,modifiedBy,attributes", - "explode": false, - "in": "query", - "name": "include", - "required": false, - "schema": { - "items": { - "enum": [ - "userIdentifiers", - "attributes", - "createdBy", - "modifiedBy", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" } ], - "requestBody": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiAttributeHierarchyInDocument" - } - } - }, - "required": true - }, "responses": { - "200": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiAttributeHierarchyOutDocument" - } - } - }, - "description": "Request successfully processed" + "204": { + "$ref": "#/components/responses/Deleted" } }, - "summary": "Put an Attribute Hierarchy", + "summary": "Delete an Automation", "tags": [ - "Attribute Hierarchies", + "Automations", "entities", "workspace-object-controller" ], "x-gdc-security-info": { "description": "Contains minimal permission level required to manage this object type.", "permissions": [ - "ANALYZE" + "CREATE_AUTOMATION" ] } - } - }, - "/api/v1/entities/workspaces/{workspaceId}/attributes": { + }, "get": { - "operationId": "getAllEntities@Attributes", + "operationId": "getEntity@Automations", "parameters": [ { "in": "path", @@ -23111,23 +26633,16 @@ } }, { - "in": "query", - "name": "origin", - "required": false, + "in": "path", + "name": "objectId", + "required": true, "schema": { - "default": "ALL", - "description": "Defines scope of origin of objects. All by default.", - "enum": [ - "ALL", - "PARENTS", - "NATIVE" - ], "type": "string" } }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;dataset.id==321;defaultView.id==321", + "example": "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321", "in": "query", "name": "filter", "schema": { @@ -23136,7 +26651,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=dataset,defaultView,labels,attributeHierarchies", + "example": "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", "explode": false, "in": "query", "name": "include", @@ -23144,11 +26659,16 @@ "schema": { "items": { "enum": [ - "datasets", - "labels", - "attributeHierarchies", - "dataset", - "defaultView", + "notificationChannels", + "analyticalDashboards", + "userIdentifiers", + "exportDefinitions", + "users", + "notificationChannel", + "analyticalDashboard", + "createdBy", + "modifiedBy", + "recipients", "ALL" ], "type": "string" @@ -23157,15 +26677,6 @@ }, "style": "form" }, - { - "$ref": "#/components/parameters/page" - }, - { - "$ref": "#/components/parameters/size" - }, - { - "$ref": "#/components/parameters/sort" - }, { "in": "header", "name": "X-GDC-VALIDATE-RELATIONS", @@ -23177,7 +26688,7 @@ }, { "description": "Include Meta objects.", - "example": "metaInclude=origin,page,all", + "example": "metaInclude=origin,all", "explode": false, "in": "query", "name": "metaInclude", @@ -23187,7 +26698,6 @@ "items": { "enum": [ "origin", - "page", "all", "ALL" ], @@ -23204,24 +26714,28 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAttributeOutList" + "$ref": "#/components/schemas/JsonApiAutomationOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get all Attributes", + "summary": "Get an Automation", "tags": [ - "Attributes", + "Automations", "entities", "workspace-object-controller" - ] - } - }, - "/api/v1/entities/workspaces/{workspaceId}/attributes/{objectId}": { - "get": { - "operationId": "getEntity@Attributes", + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to view this object type.", + "permissions": [ + "VIEW" + ] + } + }, + "patch": { + "operationId": "patchEntity@Automations", "parameters": [ { "in": "path", @@ -23241,7 +26755,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;dataset.id==321;defaultView.id==321", + "example": "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321", "in": "query", "name": "filter", "schema": { @@ -23250,7 +26764,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=dataset,defaultView,labels,attributeHierarchies", + "example": "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", "explode": false, "in": "query", "name": "include", @@ -23258,11 +26772,16 @@ "schema": { "items": { "enum": [ - "datasets", - "labels", - "attributeHierarchies", - "dataset", - "defaultView", + "notificationChannels", + "analyticalDashboards", + "userIdentifiers", + "exportDefinitions", + "users", + "notificationChannel", + "analyticalDashboard", + "createdBy", + "modifiedBy", + "recipients", "ALL" ], "type": "string" @@ -23270,62 +26789,139 @@ "type": "array" }, "style": "form" + } + ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiAutomationPatchDocument" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiAutomationOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Patch an Automation", + "tags": [ + "Automations", + "entities", + "workspace-object-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "CREATE_AUTOMATION" + ] + } + }, + "put": { + "operationId": "updateEntity@Automations", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } }, { - "in": "header", - "name": "X-GDC-VALIDATE-RELATIONS", - "required": false, + "in": "path", + "name": "objectId", + "required": true, "schema": { - "default": false, - "type": "boolean" + "type": "string" } }, { - "description": "Include Meta objects.", - "example": "metaInclude=origin,all", + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString;notificationChannel.id==321;analyticalDashboard.id==321", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=notificationChannel,analyticalDashboard,createdBy,modifiedBy,exportDefinitions,recipients", "explode": false, "in": "query", - "name": "metaInclude", + "name": "include", "required": false, "schema": { - "description": "Included meta objects", "items": { "enum": [ - "origin", - "all", + "notificationChannels", + "analyticalDashboards", + "userIdentifiers", + "exportDefinitions", + "users", + "notificationChannel", + "analyticalDashboard", + "createdBy", + "modifiedBy", + "recipients", "ALL" ], "type": "string" }, - "type": "array", - "uniqueItems": true + "type": "array" }, "style": "form" } ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiAutomationInDocument" + } + } + }, + "required": true + }, "responses": { "200": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAttributeOutDocument" + "$ref": "#/components/schemas/JsonApiAutomationOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get an Attribute", + "summary": "Put an Automation", "tags": [ - "Attributes", + "Automations", "entities", "workspace-object-controller" - ] + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "CREATE_AUTOMATION" + ] + } } }, - "/api/v1/entities/workspaces/{workspaceId}/automations": { + "/api/v1/entities/workspaces/{workspaceId}/customApplicationSettings": { "get": { - "operationId": "getAllEntities@Automations", + "operationId": "getAllEntities@CustomApplicationSettings", "parameters": [ { "in": "path", @@ -23352,39 +26948,13 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321", + "example": "filter=applicationName==someString;content==JsonNodeValue", "in": "query", "name": "filter", "schema": { "type": "string" } }, - { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", - "explode": false, - "in": "query", - "name": "include", - "required": false, - "schema": { - "items": { - "enum": [ - "notificationChannels", - "userIdentifiers", - "exportDefinitions", - "users", - "notificationChannel", - "createdBy", - "modifiedBy", - "recipients", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, { "$ref": "#/components/parameters/page" }, @@ -23432,16 +27002,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAutomationOutList" + "$ref": "#/components/schemas/JsonApiCustomApplicationSettingOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get all Automations", + "summary": "Get all Custom Application Settings", "tags": [ - "Automations", + "Workspaces - Settings", "entities", "workspace-object-controller" ], @@ -23453,7 +27023,7 @@ } }, "post": { - "operationId": "createEntity@Automations", + "operationId": "createEntity@CustomApplicationSettings", "parameters": [ { "in": "path", @@ -23463,32 +27033,6 @@ "type": "string" } }, - { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", - "explode": false, - "in": "query", - "name": "include", - "required": false, - "schema": { - "items": { - "enum": [ - "notificationChannels", - "userIdentifiers", - "exportDefinitions", - "users", - "notificationChannel", - "createdBy", - "modifiedBy", - "recipients", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, { "description": "Include Meta objects.", "example": "metaInclude=origin,all", @@ -23516,7 +27060,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAutomationInDocument" + "$ref": "#/components/schemas/JsonApiCustomApplicationSettingPostOptionalIdDocument" } } }, @@ -23527,30 +27071,24 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAutomationOutDocument" + "$ref": "#/components/schemas/JsonApiCustomApplicationSettingOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post Automations", + "summary": "Post Custom Application Settings", "tags": [ - "Automations", + "Workspaces - Settings", "entities", "workspace-object-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "ANALYZE" - ] - } + ] } }, - "/api/v1/entities/workspaces/{workspaceId}/automations/{objectId}": { + "/api/v1/entities/workspaces/{workspaceId}/customApplicationSettings/{objectId}": { "delete": { - "operationId": "deleteEntity@Automations", + "operationId": "deleteEntity@CustomApplicationSettings", "parameters": [ { "in": "path", @@ -23570,7 +27108,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321", + "example": "filter=applicationName==someString;content==JsonNodeValue", "in": "query", "name": "filter", "schema": { @@ -23583,21 +27121,15 @@ "$ref": "#/components/responses/Deleted" } }, - "summary": "Delete an Automation", + "summary": "Delete a Custom Application Setting", "tags": [ - "Automations", + "Workspaces - Settings", "entities", "workspace-object-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "ANALYZE" - ] - } + ] }, "get": { - "operationId": "getEntity@Automations", + "operationId": "getEntity@CustomApplicationSettings", "parameters": [ { "in": "path", @@ -23617,38 +27149,12 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321", - "in": "query", - "name": "filter", - "schema": { - "type": "string" - } - }, - { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", - "explode": false, + "example": "filter=applicationName==someString;content==JsonNodeValue", "in": "query", - "name": "include", - "required": false, + "name": "filter", "schema": { - "items": { - "enum": [ - "notificationChannels", - "userIdentifiers", - "exportDefinitions", - "users", - "notificationChannel", - "createdBy", - "modifiedBy", - "recipients", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" + "type": "string" + } }, { "in": "header", @@ -23687,16 +27193,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAutomationOutDocument" + "$ref": "#/components/schemas/JsonApiCustomApplicationSettingOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get an Automation", + "summary": "Get a Custom Application Setting", "tags": [ - "Automations", + "Workspaces - Settings", "entities", "workspace-object-controller" ], @@ -23708,7 +27214,7 @@ } }, "patch": { - "operationId": "patchEntity@Automations", + "operationId": "patchEntity@CustomApplicationSettings", "parameters": [ { "in": "path", @@ -23728,45 +27234,19 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321", + "example": "filter=applicationName==someString;content==JsonNodeValue", "in": "query", "name": "filter", "schema": { "type": "string" } - }, - { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", - "explode": false, - "in": "query", - "name": "include", - "required": false, - "schema": { - "items": { - "enum": [ - "notificationChannels", - "userIdentifiers", - "exportDefinitions", - "users", - "notificationChannel", - "createdBy", - "modifiedBy", - "recipients", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAutomationPatchDocument" + "$ref": "#/components/schemas/JsonApiCustomApplicationSettingPatchDocument" } } }, @@ -23777,28 +27257,22 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAutomationOutDocument" + "$ref": "#/components/schemas/JsonApiCustomApplicationSettingOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch an Automation", + "summary": "Patch a Custom Application Setting", "tags": [ - "Automations", + "Workspaces - Settings", "entities", "workspace-object-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "ANALYZE" - ] - } + ] }, "put": { - "operationId": "updateEntity@Automations", + "operationId": "updateEntity@CustomApplicationSettings", "parameters": [ { "in": "path", @@ -23818,45 +27292,19 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;notificationChannel.id==321;createdBy.id==321", + "example": "filter=applicationName==someString;content==JsonNodeValue", "in": "query", "name": "filter", "schema": { "type": "string" } - }, - { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=notificationChannel,createdBy,modifiedBy,exportDefinitions,recipients", - "explode": false, - "in": "query", - "name": "include", - "required": false, - "schema": { - "items": { - "enum": [ - "notificationChannels", - "userIdentifiers", - "exportDefinitions", - "users", - "notificationChannel", - "createdBy", - "modifiedBy", - "recipients", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAutomationInDocument" + "$ref": "#/components/schemas/JsonApiCustomApplicationSettingInDocument" } } }, @@ -23867,30 +27315,24 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiAutomationOutDocument" + "$ref": "#/components/schemas/JsonApiCustomApplicationSettingOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put an Automation", + "summary": "Put a Custom Application Setting", "tags": [ - "Automations", + "Workspaces - Settings", "entities", "workspace-object-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "ANALYZE" - ] - } + ] } }, - "/api/v1/entities/workspaces/{workspaceId}/customApplicationSettings": { + "/api/v1/entities/workspaces/{workspaceId}/dashboardPlugins": { "get": { - "operationId": "getAllEntities@CustomApplicationSettings", + "operationId": "getAllEntities@DashboardPlugins", "parameters": [ { "in": "path", @@ -23917,13 +27359,34 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=applicationName==someString;content==JsonNodeValue", + "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", "in": "query", "name": "filter", "schema": { "type": "string" } }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=createdBy,modifiedBy", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "userIdentifiers", + "createdBy", + "modifiedBy", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, { "$ref": "#/components/parameters/page" }, @@ -23971,16 +27434,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCustomApplicationSettingOutList" + "$ref": "#/components/schemas/JsonApiDashboardPluginOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get all Custom Application Settings", + "summary": "Get all Plugins", "tags": [ - "Workspaces - Settings", + "Plugins", "entities", "workspace-object-controller" ], @@ -23992,7 +27455,7 @@ } }, "post": { - "operationId": "createEntity@CustomApplicationSettings", + "operationId": "createEntity@DashboardPlugins", "parameters": [ { "in": "path", @@ -24002,6 +27465,27 @@ "type": "string" } }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=createdBy,modifiedBy", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "userIdentifiers", + "createdBy", + "modifiedBy", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, { "description": "Include Meta objects.", "example": "metaInclude=origin,all", @@ -24029,7 +27513,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCustomApplicationSettingPostOptionalIdDocument" + "$ref": "#/components/schemas/JsonApiDashboardPluginPostOptionalIdDocument" } } }, @@ -24040,24 +27524,30 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCustomApplicationSettingOutDocument" + "$ref": "#/components/schemas/JsonApiDashboardPluginOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post Custom Application Settings", + "summary": "Post Plugins", "tags": [ - "Workspaces - Settings", + "Plugins", "entities", "workspace-object-controller" - ] + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "ANALYZE" + ] + } } }, - "/api/v1/entities/workspaces/{workspaceId}/customApplicationSettings/{objectId}": { + "/api/v1/entities/workspaces/{workspaceId}/dashboardPlugins/{objectId}": { "delete": { - "operationId": "deleteEntity@CustomApplicationSettings", + "operationId": "deleteEntity@DashboardPlugins", "parameters": [ { "in": "path", @@ -24077,7 +27567,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=applicationName==someString;content==JsonNodeValue", + "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", "in": "query", "name": "filter", "schema": { @@ -24090,15 +27580,21 @@ "$ref": "#/components/responses/Deleted" } }, - "summary": "Delete a Custom Application Setting", + "summary": "Delete a Plugin", "tags": [ - "Workspaces - Settings", + "Plugins", "entities", "workspace-object-controller" - ] + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "ANALYZE" + ] + } }, "get": { - "operationId": "getEntity@CustomApplicationSettings", + "operationId": "getEntity@DashboardPlugins", "parameters": [ { "in": "path", @@ -24118,13 +27614,34 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=applicationName==someString;content==JsonNodeValue", + "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", "in": "query", "name": "filter", "schema": { "type": "string" } }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=createdBy,modifiedBy", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "userIdentifiers", + "createdBy", + "modifiedBy", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, { "in": "header", "name": "X-GDC-VALIDATE-RELATIONS", @@ -24162,16 +27679,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCustomApplicationSettingOutDocument" + "$ref": "#/components/schemas/JsonApiDashboardPluginOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get a Custom Application Setting", + "summary": "Get a Plugin", "tags": [ - "Workspaces - Settings", + "Plugins", "entities", "workspace-object-controller" ], @@ -24183,7 +27700,7 @@ } }, "patch": { - "operationId": "patchEntity@CustomApplicationSettings", + "operationId": "patchEntity@DashboardPlugins", "parameters": [ { "in": "path", @@ -24203,19 +27720,40 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=applicationName==someString;content==JsonNodeValue", + "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", "in": "query", "name": "filter", "schema": { "type": "string" } + }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=createdBy,modifiedBy", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "userIdentifiers", + "createdBy", + "modifiedBy", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCustomApplicationSettingPatchDocument" + "$ref": "#/components/schemas/JsonApiDashboardPluginPatchDocument" } } }, @@ -24226,22 +27764,28 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCustomApplicationSettingOutDocument" + "$ref": "#/components/schemas/JsonApiDashboardPluginOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch a Custom Application Setting", + "summary": "Patch a Plugin", "tags": [ - "Workspaces - Settings", + "Plugins", "entities", "workspace-object-controller" - ] + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "ANALYZE" + ] + } }, "put": { - "operationId": "updateEntity@CustomApplicationSettings", + "operationId": "updateEntity@DashboardPlugins", "parameters": [ { "in": "path", @@ -24261,19 +27805,40 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=applicationName==someString;content==JsonNodeValue", + "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", "in": "query", "name": "filter", "schema": { "type": "string" } + }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=createdBy,modifiedBy", + "explode": false, + "in": "query", + "name": "include", + "required": false, + "schema": { + "items": { + "enum": [ + "userIdentifiers", + "createdBy", + "modifiedBy", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCustomApplicationSettingInDocument" + "$ref": "#/components/schemas/JsonApiDashboardPluginInDocument" } } }, @@ -24284,24 +27849,30 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiCustomApplicationSettingOutDocument" + "$ref": "#/components/schemas/JsonApiDashboardPluginOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put a Custom Application Setting", + "summary": "Put a Plugin", "tags": [ - "Workspaces - Settings", + "Plugins", "entities", "workspace-object-controller" - ] + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "ANALYZE" + ] + } } }, - "/api/v1/entities/workspaces/{workspaceId}/dashboardPlugins": { + "/api/v1/entities/workspaces/{workspaceId}/datasets": { "get": { - "operationId": "getAllEntities@DashboardPlugins", + "operationId": "getAllEntities@Datasets", "parameters": [ { "in": "path", @@ -24328,7 +27899,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", + "example": "filter=title==someString;description==someString", "in": "query", "name": "filter", "schema": { @@ -24337,7 +27908,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=createdBy,modifiedBy", + "example": "include=attributes,facts,references,workspaceDataFilters", "explode": false, "in": "query", "name": "include", @@ -24345,9 +27916,11 @@ "schema": { "items": { "enum": [ - "userIdentifiers", - "createdBy", - "modifiedBy", + "attributes", + "facts", + "datasets", + "workspaceDataFilters", + "references", "ALL" ], "type": "string" @@ -24403,28 +27976,24 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiDashboardPluginOutList" + "$ref": "#/components/schemas/JsonApiDatasetOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get all Plugins", + "summary": "Get all Datasets", "tags": [ - "Plugins", + "Datasets", "entities", "workspace-object-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to view this object type.", - "permissions": [ - "VIEW" - ] - } - }, - "post": { - "operationId": "createEntity@DashboardPlugins", + ] + } + }, + "/api/v1/entities/workspaces/{workspaceId}/datasets/{objectId}": { + "get": { + "operationId": "getEntity@Datasets", "parameters": [ { "in": "path", @@ -24434,9 +28003,26 @@ "type": "string" } }, + { + "in": "path", + "name": "objectId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=createdBy,modifiedBy", + "example": "include=attributes,facts,references,workspaceDataFilters", "explode": false, "in": "query", "name": "include", @@ -24444,9 +28030,11 @@ "schema": { "items": { "enum": [ - "userIdentifiers", - "createdBy", - "modifiedBy", + "attributes", + "facts", + "datasets", + "workspaceDataFilters", + "references", "ALL" ], "type": "string" @@ -24455,6 +28043,15 @@ }, "style": "form" }, + { + "in": "header", + "name": "X-GDC-VALIDATE-RELATIONS", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, { "description": "Include Meta objects.", "example": "metaInclude=origin,all", @@ -24478,92 +28075,29 @@ "style": "form" } ], - "requestBody": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiDashboardPluginPostOptionalIdDocument" - } - } - }, - "required": true - }, "responses": { - "201": { + "200": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiDashboardPluginOutDocument" + "$ref": "#/components/schemas/JsonApiDatasetOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post Plugins", + "summary": "Get a Dataset", "tags": [ - "Plugins", + "Datasets", "entities", "workspace-object-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "ANALYZE" - ] - } + ] } }, - "/api/v1/entities/workspaces/{workspaceId}/dashboardPlugins/{objectId}": { - "delete": { - "operationId": "deleteEntity@DashboardPlugins", - "parameters": [ - { - "in": "path", - "name": "workspaceId", - "required": true, - "schema": { - "type": "string" - } - }, - { - "in": "path", - "name": "objectId", - "required": true, - "schema": { - "type": "string" - } - }, - { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", - "in": "query", - "name": "filter", - "schema": { - "type": "string" - } - } - ], - "responses": { - "204": { - "$ref": "#/components/responses/Deleted" - } - }, - "summary": "Delete a Plugin", - "tags": [ - "Plugins", - "entities", - "workspace-object-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "ANALYZE" - ] - } - }, + "/api/v1/entities/workspaces/{workspaceId}/exportDefinitions": { "get": { - "operationId": "getEntity@DashboardPlugins", + "operationId": "getAllEntities@ExportDefinitions", "parameters": [ { "in": "path", @@ -24574,16 +28108,23 @@ } }, { - "in": "path", - "name": "objectId", - "required": true, + "in": "query", + "name": "origin", + "required": false, "schema": { + "default": "ALL", + "description": "Defines scope of origin of objects. All by default.", + "enum": [ + "ALL", + "PARENTS", + "NATIVE" + ], "type": "string" } }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", + "example": "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321", "in": "query", "name": "filter", "schema": { @@ -24592,7 +28133,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=createdBy,modifiedBy", + "example": "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", "explode": false, "in": "query", "name": "include", @@ -24600,7 +28141,13 @@ "schema": { "items": { "enum": [ + "visualizationObjects", + "analyticalDashboards", + "automations", "userIdentifiers", + "visualizationObject", + "analyticalDashboard", + "automation", "createdBy", "modifiedBy", "ALL" @@ -24611,6 +28158,15 @@ }, "style": "form" }, + { + "$ref": "#/components/parameters/page" + }, + { + "$ref": "#/components/parameters/size" + }, + { + "$ref": "#/components/parameters/sort" + }, { "in": "header", "name": "X-GDC-VALIDATE-RELATIONS", @@ -24622,7 +28178,7 @@ }, { "description": "Include Meta objects.", - "example": "metaInclude=origin,all", + "example": "metaInclude=origin,page,all", "explode": false, "in": "query", "name": "metaInclude", @@ -24632,6 +28188,7 @@ "items": { "enum": [ "origin", + "page", "all", "ALL" ], @@ -24648,16 +28205,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiDashboardPluginOutDocument" + "$ref": "#/components/schemas/JsonApiExportDefinitionOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get a Plugin", + "summary": "Get all Export Definitions", "tags": [ - "Plugins", + "Export Definitions", "entities", "workspace-object-controller" ], @@ -24667,9 +28224,9 @@ "VIEW" ] } - }, - "patch": { - "operationId": "patchEntity@DashboardPlugins", + }, + "post": { + "operationId": "createEntity@ExportDefinitions", "parameters": [ { "in": "path", @@ -24679,26 +28236,9 @@ "type": "string" } }, - { - "in": "path", - "name": "objectId", - "required": true, - "schema": { - "type": "string" - } - }, - { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", - "in": "query", - "name": "filter", - "schema": { - "type": "string" - } - }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=createdBy,modifiedBy", + "example": "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", "explode": false, "in": "query", "name": "include", @@ -24706,7 +28246,13 @@ "schema": { "items": { "enum": [ + "visualizationObjects", + "analyticalDashboards", + "automations", "userIdentifiers", + "visualizationObject", + "analyticalDashboard", + "automation", "createdBy", "modifiedBy", "ALL" @@ -24716,33 +28262,55 @@ "type": "array" }, "style": "form" + }, + { + "description": "Include Meta objects.", + "example": "metaInclude=origin,all", + "explode": false, + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "description": "Included meta objects", + "items": { + "enum": [ + "origin", + "all", + "ALL" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "style": "form" } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiDashboardPluginPatchDocument" + "$ref": "#/components/schemas/JsonApiExportDefinitionPostOptionalIdDocument" } } }, "required": true }, "responses": { - "200": { + "201": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiDashboardPluginOutDocument" + "$ref": "#/components/schemas/JsonApiExportDefinitionOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch a Plugin", + "summary": "Post Export Definitions", "tags": [ - "Plugins", + "Export Definitions", "entities", "workspace-object-controller" ], @@ -24752,9 +28320,11 @@ "ANALYZE" ] } - }, - "put": { - "operationId": "updateEntity@DashboardPlugins", + } + }, + "/api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId}": { + "delete": { + "operationId": "deleteEntity@ExportDefinitions", "parameters": [ { "in": "path", @@ -24774,60 +28344,22 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;createdBy.id==321;modifiedBy.id==321", + "example": "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321", "in": "query", "name": "filter", "schema": { "type": "string" } - }, - { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=createdBy,modifiedBy", - "explode": false, - "in": "query", - "name": "include", - "required": false, - "schema": { - "items": { - "enum": [ - "userIdentifiers", - "createdBy", - "modifiedBy", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" } ], - "requestBody": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiDashboardPluginInDocument" - } - } - }, - "required": true - }, "responses": { - "200": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiDashboardPluginOutDocument" - } - } - }, - "description": "Request successfully processed" + "204": { + "$ref": "#/components/responses/Deleted" } }, - "summary": "Put a Plugin", + "summary": "Delete an Export Definition", "tags": [ - "Plugins", + "Export Definitions", "entities", "workspace-object-controller" ], @@ -24837,11 +28369,9 @@ "ANALYZE" ] } - } - }, - "/api/v1/entities/workspaces/{workspaceId}/datasets": { + }, "get": { - "operationId": "getAllEntities@Datasets", + "operationId": "getEntity@ExportDefinitions", "parameters": [ { "in": "path", @@ -24852,23 +28382,16 @@ } }, { - "in": "query", - "name": "origin", - "required": false, + "in": "path", + "name": "objectId", + "required": true, "schema": { - "default": "ALL", - "description": "Defines scope of origin of objects. All by default.", - "enum": [ - "ALL", - "PARENTS", - "NATIVE" - ], "type": "string" } }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString", + "example": "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321", "in": "query", "name": "filter", "schema": { @@ -24877,7 +28400,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=attributes,facts,references,workspaceDataFilters", + "example": "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", "explode": false, "in": "query", "name": "include", @@ -24885,11 +28408,15 @@ "schema": { "items": { "enum": [ - "attributes", - "facts", - "datasets", - "workspaceDataFilters", - "references", + "visualizationObjects", + "analyticalDashboards", + "automations", + "userIdentifiers", + "visualizationObject", + "analyticalDashboard", + "automation", + "createdBy", + "modifiedBy", "ALL" ], "type": "string" @@ -24898,15 +28425,6 @@ }, "style": "form" }, - { - "$ref": "#/components/parameters/page" - }, - { - "$ref": "#/components/parameters/size" - }, - { - "$ref": "#/components/parameters/sort" - }, { "in": "header", "name": "X-GDC-VALIDATE-RELATIONS", @@ -24918,7 +28436,7 @@ }, { "description": "Include Meta objects.", - "example": "metaInclude=origin,page,all", + "example": "metaInclude=origin,all", "explode": false, "in": "query", "name": "metaInclude", @@ -24928,7 +28446,6 @@ "items": { "enum": [ "origin", - "page", "all", "ALL" ], @@ -24945,24 +28462,28 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiDatasetOutList" + "$ref": "#/components/schemas/JsonApiExportDefinitionOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get all Datasets", + "summary": "Get an Export Definition", "tags": [ - "Datasets", + "Export Definitions", "entities", "workspace-object-controller" - ] - } - }, - "/api/v1/entities/workspaces/{workspaceId}/datasets/{objectId}": { - "get": { - "operationId": "getEntity@Datasets", + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to view this object type.", + "permissions": [ + "VIEW" + ] + } + }, + "patch": { + "operationId": "patchEntity@ExportDefinitions", "parameters": [ { "in": "path", @@ -24982,7 +28503,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString", + "example": "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321", "in": "query", "name": "filter", "schema": { @@ -24991,7 +28512,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=attributes,facts,references,workspaceDataFilters", + "example": "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", "explode": false, "in": "query", "name": "include", @@ -24999,11 +28520,15 @@ "schema": { "items": { "enum": [ - "attributes", - "facts", - "datasets", - "workspaceDataFilters", - "references", + "visualizationObjects", + "analyticalDashboards", + "automations", + "userIdentifiers", + "visualizationObject", + "analyticalDashboard", + "automation", + "createdBy", + "modifiedBy", "ALL" ], "type": "string" @@ -25011,62 +28536,138 @@ "type": "array" }, "style": "form" + } + ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiExportDefinitionPatchDocument" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiExportDefinitionOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Patch an Export Definition", + "tags": [ + "Export Definitions", + "entities", + "workspace-object-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "ANALYZE" + ] + } + }, + "put": { + "operationId": "updateEntity@ExportDefinitions", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } }, { - "in": "header", - "name": "X-GDC-VALIDATE-RELATIONS", - "required": false, + "in": "path", + "name": "objectId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321", + "in": "query", + "name": "filter", "schema": { - "default": false, - "type": "boolean" + "type": "string" } }, { - "description": "Include Meta objects.", - "example": "metaInclude=origin,all", + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=visualizationObject,analyticalDashboard,automation,createdBy,modifiedBy", "explode": false, "in": "query", - "name": "metaInclude", + "name": "include", "required": false, "schema": { - "description": "Included meta objects", "items": { "enum": [ - "origin", - "all", + "visualizationObjects", + "analyticalDashboards", + "automations", + "userIdentifiers", + "visualizationObject", + "analyticalDashboard", + "automation", + "createdBy", + "modifiedBy", "ALL" ], "type": "string" }, - "type": "array", - "uniqueItems": true + "type": "array" }, "style": "form" } ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiExportDefinitionInDocument" + } + } + }, + "required": true + }, "responses": { "200": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiDatasetOutDocument" + "$ref": "#/components/schemas/JsonApiExportDefinitionOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get a Dataset", + "summary": "Put an Export Definition", "tags": [ - "Datasets", + "Export Definitions", "entities", "workspace-object-controller" - ] + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "ANALYZE" + ] + } } }, - "/api/v1/entities/workspaces/{workspaceId}/exportDefinitions": { + "/api/v1/entities/workspaces/{workspaceId}/facts": { "get": { - "operationId": "getAllEntities@ExportDefinitions", + "operationId": "getAllEntities@Facts", "parameters": [ { "in": "path", @@ -25093,7 +28694,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321", + "example": "filter=title==someString;description==someString;dataset.id==321", "in": "query", "name": "filter", "schema": { @@ -25102,7 +28703,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "example": "include=dataset", "explode": false, "in": "query", "name": "include", @@ -25110,13 +28711,8 @@ "schema": { "items": { "enum": [ - "visualizationObjects", - "analyticalDashboards", - "userIdentifiers", - "visualizationObject", - "analyticalDashboard", - "createdBy", - "modifiedBy", + "datasets", + "dataset", "ALL" ], "type": "string" @@ -25172,16 +28768,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiExportDefinitionOutList" + "$ref": "#/components/schemas/JsonApiFactOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get all Export Definitions", + "summary": "Get all Facts", "tags": [ - "Export Definitions", + "Facts", "entities", "workspace-object-controller" ], @@ -25191,9 +28787,11 @@ "VIEW" ] } - }, - "post": { - "operationId": "createEntity@ExportDefinitions", + } + }, + "/api/v1/entities/workspaces/{workspaceId}/facts/{objectId}": { + "get": { + "operationId": "getEntity@Facts", "parameters": [ { "in": "path", @@ -25203,9 +28801,26 @@ "type": "string" } }, + { + "in": "path", + "name": "objectId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString;dataset.id==321", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "example": "include=dataset", "explode": false, "in": "query", "name": "include", @@ -25213,13 +28828,8 @@ "schema": { "items": { "enum": [ - "visualizationObjects", - "analyticalDashboards", - "userIdentifiers", - "visualizationObject", - "analyticalDashboard", - "createdBy", - "modifiedBy", + "datasets", + "dataset", "ALL" ], "type": "string" @@ -25228,6 +28838,15 @@ }, "style": "form" }, + { + "in": "header", + "name": "X-GDC-VALIDATE-RELATIONS", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, { "description": "Include Meta objects.", "example": "metaInclude=origin,all", @@ -25251,92 +28870,35 @@ "style": "form" } ], - "requestBody": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiExportDefinitionPostOptionalIdDocument" - } - } - }, - "required": true - }, "responses": { - "201": { + "200": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiExportDefinitionOutDocument" + "$ref": "#/components/schemas/JsonApiFactOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post Export Definitions", + "summary": "Get a Fact", "tags": [ - "Export Definitions", + "Facts", "entities", "workspace-object-controller" ], "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", + "description": "Contains minimal permission level required to view this object type.", "permissions": [ - "ANALYZE" + "VIEW" ] } } }, - "/api/v1/entities/workspaces/{workspaceId}/exportDefinitions/{objectId}": { - "delete": { - "operationId": "deleteEntity@ExportDefinitions", - "parameters": [ - { - "in": "path", - "name": "workspaceId", - "required": true, - "schema": { - "type": "string" - } - }, - { - "in": "path", - "name": "objectId", - "required": true, - "schema": { - "type": "string" - } - }, - { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321", - "in": "query", - "name": "filter", - "schema": { - "type": "string" - } - } - ], - "responses": { - "204": { - "$ref": "#/components/responses/Deleted" - } - }, - "summary": "Delete an Export Definition", - "tags": [ - "Export Definitions", - "entities", - "workspace-object-controller" - ], - "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", - "permissions": [ - "ANALYZE" - ] - } - }, + "/api/v1/entities/workspaces/{workspaceId}/filterContexts": { "get": { - "operationId": "getEntity@ExportDefinitions", + "operationId": "getAllEntities@FilterContexts", "parameters": [ { "in": "path", @@ -25347,16 +28909,23 @@ } }, { - "in": "path", - "name": "objectId", - "required": true, + "in": "query", + "name": "origin", + "required": false, "schema": { + "default": "ALL", + "description": "Defines scope of origin of objects. All by default.", + "enum": [ + "ALL", + "PARENTS", + "NATIVE" + ], "type": "string" } }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321", + "example": "filter=title==someString;description==someString", "in": "query", "name": "filter", "schema": { @@ -25365,7 +28934,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "example": "include=attributes,datasets,labels", "explode": false, "in": "query", "name": "include", @@ -25373,13 +28942,9 @@ "schema": { "items": { "enum": [ - "visualizationObjects", - "analyticalDashboards", - "userIdentifiers", - "visualizationObject", - "analyticalDashboard", - "createdBy", - "modifiedBy", + "attributes", + "datasets", + "labels", "ALL" ], "type": "string" @@ -25388,6 +28953,15 @@ }, "style": "form" }, + { + "$ref": "#/components/parameters/page" + }, + { + "$ref": "#/components/parameters/size" + }, + { + "$ref": "#/components/parameters/sort" + }, { "in": "header", "name": "X-GDC-VALIDATE-RELATIONS", @@ -25399,7 +28973,7 @@ }, { "description": "Include Meta objects.", - "example": "metaInclude=origin,all", + "example": "metaInclude=origin,page,all", "explode": false, "in": "query", "name": "metaInclude", @@ -25409,6 +28983,7 @@ "items": { "enum": [ "origin", + "page", "all", "ALL" ], @@ -25425,16 +29000,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiExportDefinitionOutDocument" + "$ref": "#/components/schemas/JsonApiFilterContextOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get an Export Definition", + "summary": "Get all Context Filters", "tags": [ - "Export Definitions", + "Context Filters", "entities", "workspace-object-controller" ], @@ -25445,8 +29020,8 @@ ] } }, - "patch": { - "operationId": "patchEntity@ExportDefinitions", + "post": { + "operationId": "createEntity@FilterContexts", "parameters": [ { "in": "path", @@ -25457,44 +29032,45 @@ } }, { - "in": "path", - "name": "objectId", - "required": true, - "schema": { - "type": "string" - } - }, - { - "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321", + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=attributes,datasets,labels", + "explode": false, "in": "query", - "name": "filter", + "name": "include", + "required": false, "schema": { - "type": "string" - } + "items": { + "enum": [ + "attributes", + "datasets", + "labels", + "ALL" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" }, { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", + "description": "Include Meta objects.", + "example": "metaInclude=origin,all", "explode": false, "in": "query", - "name": "include", + "name": "metaInclude", "required": false, "schema": { + "description": "Included meta objects", "items": { "enum": [ - "visualizationObjects", - "analyticalDashboards", - "userIdentifiers", - "visualizationObject", - "analyticalDashboard", - "createdBy", - "modifiedBy", + "origin", + "all", "ALL" ], "type": "string" }, - "type": "array" + "type": "array", + "uniqueItems": true }, "style": "form" } @@ -25503,27 +29079,27 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiExportDefinitionPatchDocument" + "$ref": "#/components/schemas/JsonApiFilterContextPostOptionalIdDocument" } } }, "required": true }, "responses": { - "200": { + "201": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiExportDefinitionOutDocument" + "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch an Export Definition", + "summary": "Post Context Filters", "tags": [ - "Export Definitions", + "Context Filters", "entities", "workspace-object-controller" ], @@ -25533,9 +29109,11 @@ "ANALYZE" ] } - }, - "put": { - "operationId": "updateEntity@ExportDefinitions", + } + }, + "/api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId}": { + "delete": { + "operationId": "deleteEntity@FilterContexts", "parameters": [ { "in": "path", @@ -25555,64 +29133,22 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;visualizationObject.id==321;analyticalDashboard.id==321", + "example": "filter=title==someString;description==someString", "in": "query", "name": "filter", "schema": { "type": "string" } - }, - { - "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=visualizationObject,analyticalDashboard,createdBy,modifiedBy", - "explode": false, - "in": "query", - "name": "include", - "required": false, - "schema": { - "items": { - "enum": [ - "visualizationObjects", - "analyticalDashboards", - "userIdentifiers", - "visualizationObject", - "analyticalDashboard", - "createdBy", - "modifiedBy", - "ALL" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" } ], - "requestBody": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiExportDefinitionInDocument" - } - } - }, - "required": true - }, "responses": { - "200": { - "content": { - "application/vnd.gooddata.api+json": { - "schema": { - "$ref": "#/components/schemas/JsonApiExportDefinitionOutDocument" - } - } - }, - "description": "Request successfully processed" + "204": { + "$ref": "#/components/responses/Deleted" } }, - "summary": "Put an Export Definition", + "summary": "Delete a Context Filter", "tags": [ - "Export Definitions", + "Context Filters", "entities", "workspace-object-controller" ], @@ -25622,11 +29158,9 @@ "ANALYZE" ] } - } - }, - "/api/v1/entities/workspaces/{workspaceId}/facts": { + }, "get": { - "operationId": "getAllEntities@Facts", + "operationId": "getEntity@FilterContexts", "parameters": [ { "in": "path", @@ -25637,23 +29171,16 @@ } }, { - "in": "query", - "name": "origin", - "required": false, + "in": "path", + "name": "objectId", + "required": true, "schema": { - "default": "ALL", - "description": "Defines scope of origin of objects. All by default.", - "enum": [ - "ALL", - "PARENTS", - "NATIVE" - ], "type": "string" } }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;dataset.id==321", + "example": "filter=title==someString;description==someString", "in": "query", "name": "filter", "schema": { @@ -25662,7 +29189,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=dataset", + "example": "include=attributes,datasets,labels", "explode": false, "in": "query", "name": "include", @@ -25670,8 +29197,9 @@ "schema": { "items": { "enum": [ + "attributes", "datasets", - "dataset", + "labels", "ALL" ], "type": "string" @@ -25680,15 +29208,6 @@ }, "style": "form" }, - { - "$ref": "#/components/parameters/page" - }, - { - "$ref": "#/components/parameters/size" - }, - { - "$ref": "#/components/parameters/sort" - }, { "in": "header", "name": "X-GDC-VALIDATE-RELATIONS", @@ -25700,7 +29219,7 @@ }, { "description": "Include Meta objects.", - "example": "metaInclude=origin,page,all", + "example": "metaInclude=origin,all", "explode": false, "in": "query", "name": "metaInclude", @@ -25710,7 +29229,6 @@ "items": { "enum": [ "origin", - "page", "all", "ALL" ], @@ -25727,16 +29245,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFactOutList" + "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get all Facts", + "summary": "Get a Context Filter", "tags": [ - "Facts", + "Context Filters", "entities", "workspace-object-controller" ], @@ -25746,11 +29264,9 @@ "VIEW" ] } - } - }, - "/api/v1/entities/workspaces/{workspaceId}/facts/{objectId}": { - "get": { - "operationId": "getEntity@Facts", + }, + "patch": { + "operationId": "patchEntity@FilterContexts", "parameters": [ { "in": "path", @@ -25770,7 +29286,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString;dataset.id==321", + "example": "filter=title==someString;description==someString", "in": "query", "name": "filter", "schema": { @@ -25779,7 +29295,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=dataset", + "example": "include=attributes,datasets,labels", "explode": false, "in": "query", "name": "include", @@ -25787,8 +29303,9 @@ "schema": { "items": { "enum": [ + "attributes", "datasets", - "dataset", + "labels", "ALL" ], "type": "string" @@ -25796,68 +29313,132 @@ "type": "array" }, "style": "form" + } + ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiFilterContextPatchDocument" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Patch a Context Filter", + "tags": [ + "Context Filters", + "entities", + "workspace-object-controller" + ], + "x-gdc-security-info": { + "description": "Contains minimal permission level required to manage this object type.", + "permissions": [ + "ANALYZE" + ] + } + }, + "put": { + "operationId": "updateEntity@FilterContexts", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } }, { - "in": "header", - "name": "X-GDC-VALIDATE-RELATIONS", - "required": false, + "in": "path", + "name": "objectId", + "required": true, "schema": { - "default": false, - "type": "boolean" + "type": "string" } }, { - "description": "Include Meta objects.", - "example": "metaInclude=origin,all", + "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", + "example": "filter=title==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + }, + { + "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", + "example": "include=attributes,datasets,labels", "explode": false, "in": "query", - "name": "metaInclude", + "name": "include", "required": false, "schema": { - "description": "Included meta objects", "items": { "enum": [ - "origin", - "all", + "attributes", + "datasets", + "labels", "ALL" ], "type": "string" }, - "type": "array", - "uniqueItems": true + "type": "array" }, "style": "form" } ], + "requestBody": { + "content": { + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiFilterContextInDocument" + } + } + }, + "required": true + }, "responses": { "200": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFactOutDocument" + "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get a Fact", + "summary": "Put a Context Filter", "tags": [ - "Facts", + "Context Filters", "entities", "workspace-object-controller" ], "x-gdc-security-info": { - "description": "Contains minimal permission level required to view this object type.", + "description": "Contains minimal permission level required to manage this object type.", "permissions": [ - "VIEW" + "ANALYZE" ] } } }, - "/api/v1/entities/workspaces/{workspaceId}/filterContexts": { + "/api/v1/entities/workspaces/{workspaceId}/filterViews": { "get": { - "operationId": "getAllEntities@FilterContexts", + "operationId": "getAllEntities@FilterViews", "parameters": [ { "in": "path", @@ -25884,7 +29465,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString", + "example": "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321", "in": "query", "name": "filter", "schema": { @@ -25893,7 +29474,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=attributes,datasets,labels", + "example": "include=analyticalDashboard,user", "explode": false, "in": "query", "name": "include", @@ -25901,9 +29482,10 @@ "schema": { "items": { "enum": [ - "attributes", - "datasets", - "labels", + "analyticalDashboards", + "users", + "analyticalDashboard", + "user", "ALL" ], "type": "string" @@ -25932,7 +29514,7 @@ }, { "description": "Include Meta objects.", - "example": "metaInclude=origin,page,all", + "example": "metaInclude=page,all", "explode": false, "in": "query", "name": "metaInclude", @@ -25941,7 +29523,6 @@ "description": "Included meta objects", "items": { "enum": [ - "origin", "page", "all", "ALL" @@ -25959,16 +29540,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextOutList" + "$ref": "#/components/schemas/JsonApiFilterViewOutList" } } }, "description": "Request successfully processed" } }, - "summary": "Get all Context Filters", + "summary": "Get all Filter views", "tags": [ - "Context Filters", + "Filter Views", "entities", "workspace-object-controller" ], @@ -25980,7 +29561,7 @@ } }, "post": { - "operationId": "createEntity@FilterContexts", + "operationId": "createEntity@FilterViews", "parameters": [ { "in": "path", @@ -25992,7 +29573,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=attributes,datasets,labels", + "example": "include=analyticalDashboard,user", "explode": false, "in": "query", "name": "include", @@ -26000,9 +29581,10 @@ "schema": { "items": { "enum": [ - "attributes", - "datasets", - "labels", + "analyticalDashboards", + "users", + "analyticalDashboard", + "user", "ALL" ], "type": "string" @@ -26010,35 +29592,13 @@ "type": "array" }, "style": "form" - }, - { - "description": "Include Meta objects.", - "example": "metaInclude=origin,all", - "explode": false, - "in": "query", - "name": "metaInclude", - "required": false, - "schema": { - "description": "Included meta objects", - "items": { - "enum": [ - "origin", - "all", - "ALL" - ], - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "style": "form" } ], "requestBody": { "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextPostOptionalIdDocument" + "$ref": "#/components/schemas/JsonApiFilterViewInDocument" } } }, @@ -26049,30 +29609,30 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" + "$ref": "#/components/schemas/JsonApiFilterViewOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Post Context Filters", + "summary": "Post Filter views", "tags": [ - "Context Filters", + "Filter Views", "entities", "workspace-object-controller" ], "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", + "description": "Contains minimal permission level required to manage Filter Views", "permissions": [ - "ANALYZE" + "CREATE_FILTER_VIEW" ] } } }, - "/api/v1/entities/workspaces/{workspaceId}/filterContexts/{objectId}": { + "/api/v1/entities/workspaces/{workspaceId}/filterViews/{objectId}": { "delete": { - "operationId": "deleteEntity@FilterContexts", + "operationId": "deleteEntity@FilterViews", "parameters": [ { "in": "path", @@ -26092,7 +29652,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString", + "example": "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321", "in": "query", "name": "filter", "schema": { @@ -26105,21 +29665,21 @@ "$ref": "#/components/responses/Deleted" } }, - "summary": "Delete a Context Filter", + "summary": "Delete Filter view", "tags": [ - "Context Filters", + "Filter Views", "entities", "workspace-object-controller" ], "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", + "description": "Contains minimal permission level required to manage Filter Views", "permissions": [ - "ANALYZE" + "CREATE_FILTER_VIEW" ] } }, "get": { - "operationId": "getEntity@FilterContexts", + "operationId": "getEntity@FilterViews", "parameters": [ { "in": "path", @@ -26139,7 +29699,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString", + "example": "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321", "in": "query", "name": "filter", "schema": { @@ -26148,7 +29708,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=attributes,datasets,labels", + "example": "include=analyticalDashboard,user", "explode": false, "in": "query", "name": "include", @@ -26156,9 +29716,10 @@ "schema": { "items": { "enum": [ - "attributes", - "datasets", - "labels", + "analyticalDashboards", + "users", + "analyticalDashboard", + "user", "ALL" ], "type": "string" @@ -26175,28 +29736,6 @@ "default": false, "type": "boolean" } - }, - { - "description": "Include Meta objects.", - "example": "metaInclude=origin,all", - "explode": false, - "in": "query", - "name": "metaInclude", - "required": false, - "schema": { - "description": "Included meta objects", - "items": { - "enum": [ - "origin", - "all", - "ALL" - ], - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "style": "form" } ], "responses": { @@ -26204,16 +29743,16 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" + "$ref": "#/components/schemas/JsonApiFilterViewOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Get a Context Filter", + "summary": "Get Filter view", "tags": [ - "Context Filters", + "Filter Views", "entities", "workspace-object-controller" ], @@ -26225,7 +29764,7 @@ } }, "patch": { - "operationId": "patchEntity@FilterContexts", + "operationId": "patchEntity@FilterViews", "parameters": [ { "in": "path", @@ -26245,7 +29784,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString", + "example": "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321", "in": "query", "name": "filter", "schema": { @@ -26254,7 +29793,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=attributes,datasets,labels", + "example": "include=analyticalDashboard,user", "explode": false, "in": "query", "name": "include", @@ -26262,9 +29801,10 @@ "schema": { "items": { "enum": [ - "attributes", - "datasets", - "labels", + "analyticalDashboards", + "users", + "analyticalDashboard", + "user", "ALL" ], "type": "string" @@ -26278,7 +29818,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextPatchDocument" + "$ref": "#/components/schemas/JsonApiFilterViewPatchDocument" } } }, @@ -26289,28 +29829,28 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" + "$ref": "#/components/schemas/JsonApiFilterViewOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Patch a Context Filter", + "summary": "Patch Filter view", "tags": [ - "Context Filters", + "Filter Views", "entities", "workspace-object-controller" ], "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", + "description": "Contains minimal permission level required to manage Filter Views", "permissions": [ - "ANALYZE" + "CREATE_FILTER_VIEW" ] } }, "put": { - "operationId": "updateEntity@FilterContexts", + "operationId": "updateEntity@FilterViews", "parameters": [ { "in": "path", @@ -26330,7 +29870,7 @@ }, { "description": "Filtering parameter in RSQL. See https://github.com/jirutka/rsql-parser. You can specify any object parameter and parameter of related entity (for example title=='Some Title';description=='desc'). Additionally, if the entity relationship represents a polymorphic entity type, it can be casted to its subtypes (for example relatedEntity::subtype.subtypeProperty=='Value 123').", - "example": "filter=title==someString;description==someString", + "example": "filter=title==someString;description==someString;analyticalDashboard.id==321;user.id==321", "in": "query", "name": "filter", "schema": { @@ -26339,7 +29879,7 @@ }, { "description": "Array of included collections or individual relationships. Includes are separated by commas (e.g. include=entity1s,entity2s). Collection include represents the inclusion of every relationship between this entity and the given collection. Relationship include represents the inclusion of the particular relationships only. If single parameter \"ALL\" is present, all possible includes are used (include=ALL).\n\n__WARNING:__ Individual include types (collection, relationship or ALL) cannot be combined together.", - "example": "include=attributes,datasets,labels", + "example": "include=analyticalDashboard,user", "explode": false, "in": "query", "name": "include", @@ -26347,9 +29887,10 @@ "schema": { "items": { "enum": [ - "attributes", - "datasets", - "labels", + "analyticalDashboards", + "users", + "analyticalDashboard", + "user", "ALL" ], "type": "string" @@ -26363,7 +29904,7 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextInDocument" + "$ref": "#/components/schemas/JsonApiFilterViewInDocument" } } }, @@ -26374,23 +29915,23 @@ "content": { "application/vnd.gooddata.api+json": { "schema": { - "$ref": "#/components/schemas/JsonApiFilterContextOutDocument" + "$ref": "#/components/schemas/JsonApiFilterViewOutDocument" } } }, "description": "Request successfully processed" } }, - "summary": "Put a Context Filter", + "summary": "Put Filter views", "tags": [ - "Context Filters", + "Filter Views", "entities", "workspace-object-controller" ], "x-gdc-security-info": { - "description": "Contains minimal permission level required to manage this object type.", + "description": "Contains minimal permission level required to manage Filter Views", "permissions": [ - "ANALYZE" + "CREATE_FILTER_VIEW" ] } } @@ -29907,6 +33448,63 @@ } } }, + "/api/v1/layout/notificationChannels": { + "get": { + "description": "Gets complete layout of notification channels.", + "operationId": "getNotificationChannelsLayout", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeclarativeNotificationChannels" + } + } + }, + "description": "Retrieved layout of all notification channels." + } + }, + "summary": "Get all notification channels layout", + "tags": [ + "layout" + ], + "x-gdc-security-info": { + "description": "Permission required to get notification channels layout.", + "permissions": [ + "MANAGE" + ] + } + }, + "put": { + "description": "Sets notification channels in organization.", + "operationId": "setNotificationChannels", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeclarativeNotificationChannels" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "All notification channels set." + } + }, + "summary": "Set all notification channels", + "tags": [ + "layout" + ], + "x-gdc-security-info": { + "description": "Permission required to set data filters layout.", + "permissions": [ + "MANAGE" + ] + } + } + }, "/api/v1/layout/organization": { "get": { "description": "Retrieve complete layout of organization, workspaces, user-groups, etc.", @@ -30707,6 +34305,106 @@ } } }, + "/api/v1/layout/workspaces/{workspaceId}/automations": { + "get": { + "description": "Retrieve automations for the specific workspace", + "operationId": "getAutomations", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "query", + "name": "exclude", + "required": false, + "schema": { + "items": { + "description": "Defines properties which should not be included in the payload.", + "enum": [ + "ACTIVITY_INFO" + ], + "type": "string" + }, + "type": "array" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/DeclarativeAutomation" + }, + "type": "array" + } + } + }, + "description": "Retrieved automations." + } + }, + "summary": "Get automations", + "tags": [ + "layout", + "Automations" + ], + "x-gdc-security-info": { + "description": "Permissions to read the automations.", + "permissions": [ + "MANAGE" + ] + } + }, + "put": { + "description": "Set automations for the specific workspace.", + "operationId": "setAutomations", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/DeclarativeAutomation" + }, + "type": "array" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "Automations successfully set." + } + }, + "summary": "Set automations", + "tags": [ + "layout", + "Automations" + ], + "x-gdc-security-info": { + "description": "Permissions to modify the automations.", + "permissions": [ + "MANAGE" + ] + } + } + }, "/api/v1/layout/workspaces/{workspaceId}/logicalModel": { "get": { "description": "Retrieve current logical model of the workspace in declarative form.", From e7e23c9da3a21627c46cc3e83093253bfe66e684 Mon Sep 17 00:00:00 2001 From: Jan Kadlec Date: Mon, 7 Oct 2024 11:31:44 +0200 Subject: [PATCH 3/4] feat: adapt automation, export definitions Adapt automation on workspace level and export definition on analytics model level. JIRA: TRIVIAL risk: low --- .../workspace/analytics_model/analytics_model.py | 1 + .../catalog/workspace/declarative_model/workspace/workspace.py | 1 + 2 files changed, 2 insertions(+) diff --git a/gooddata-sdk/gooddata_sdk/catalog/workspace/declarative_model/workspace/analytics_model/analytics_model.py b/gooddata-sdk/gooddata_sdk/catalog/workspace/declarative_model/workspace/analytics_model/analytics_model.py index e3f10e4e7..6bfcc0066 100644 --- a/gooddata-sdk/gooddata_sdk/catalog/workspace/declarative_model/workspace/analytics_model/analytics_model.py +++ b/gooddata-sdk/gooddata_sdk/catalog/workspace/declarative_model/workspace/analytics_model/analytics_model.py @@ -70,6 +70,7 @@ class CatalogDeclarativeAnalyticsLayer(Base): filter_contexts: list[CatalogDeclarativeFilterContext] = attr.field(factory=list) metrics: list[CatalogDeclarativeMetric] = attr.field(factory=list) visualization_objects: list[CatalogDeclarativeVisualizationObject] = attr.field(factory=list) + export_definitions: list[dict] = attr.field(factory=list) @staticmethod def client_class() -> type[DeclarativeAnalyticsLayer]: diff --git a/gooddata-sdk/gooddata_sdk/catalog/workspace/declarative_model/workspace/workspace.py b/gooddata-sdk/gooddata_sdk/catalog/workspace/declarative_model/workspace/workspace.py index 058c2f368..e66504c82 100644 --- a/gooddata-sdk/gooddata_sdk/catalog/workspace/declarative_model/workspace/workspace.py +++ b/gooddata-sdk/gooddata_sdk/catalog/workspace/declarative_model/workspace/workspace.py @@ -83,6 +83,7 @@ class CatalogDeclarativeWorkspace(Base): settings: list[CatalogDeclarativeSetting] = attr.field(factory=list) user_data_filters: list[CatalogDeclarativeUserDataFilter] = attr.field(factory=list) custom_application_settings: list[CatalogDeclarativeCustomApplicationSetting] = attr.field(factory=list) + automations: list[dict] = attr.field(factory=list) @staticmethod def client_class() -> type[DeclarativeWorkspace]: From 7dd2a548b94ab807e6383dc4dda53f9ecd9090d2 Mon Sep 17 00:00:00 2001 From: Jan Kadlec Date: Mon, 7 Oct 2024 11:30:56 +0200 Subject: [PATCH 4/4] test: update cassettes JIRA: TRIVIAL risk: low --- .../execute_compute_table_all_columns.yaml | 36 +- .../execute_compute_table_metrics_only.yaml | 34 +- ...ompute_table_with_reduced_granularity.yaml | 35 +- .../fixtures/execute_insight_all_columns.yaml | 68 +- .../execute_insight_some_columns.yaml | 68 +- .../import_compute_without_restrictions.yaml | 186 ++- .../import_insights_without_restrictions.yaml | 248 ++-- ...ame_for_exec_def_bytes_limits_failure.yaml | 60 +- ...or_exec_def_dimensions_limits_failure.yaml | 60 +- .../dataframe_for_exec_def_one_dim1.yaml | 99 +- .../dataframe_for_exec_def_one_dim2.yaml | 195 ++-- .../dataframe_for_exec_def_totals1.yaml | 99 +- .../dataframe_for_exec_def_totals2.yaml | 99 +- .../dataframe_for_exec_def_totals3.yaml | 99 +- .../dataframe_for_exec_def_totals4.yaml | 99 +- .../dataframe_for_exec_def_two_dim1.yaml | 138 ++- .../dataframe_for_exec_def_two_dim2.yaml | 131 +-- .../dataframe_for_exec_def_two_dim3.yaml | 99 +- .../fixtures/dataframe_for_items.yaml | 222 ++-- .../dataframe_for_items_no_index.yaml | 222 ++-- .../fixtures/dataframe_for_visualization.yaml | 242 ++-- .../dataframe_for_visualization_date.yaml | 334 +++--- .../dataframe_for_visualization_no_index.yaml | 242 ++-- .../fixtures/empty_indexed_dataframe.yaml | 221 ++-- .../fixtures/empty_not_indexed_dataframe.yaml | 221 ++-- ...ulti_index_filtered_metrics_and_label.yaml | 223 ++-- ...ndex_filtered_metrics_and_label_reuse.yaml | 222 ++-- .../fixtures/multi_index_metrics.yaml | 222 ++-- .../multi_index_metrics_and_label.yaml | 223 ++-- ...t_indexed_filtered_metrics_and_labels.yaml | 221 ++-- .../fixtures/not_indexed_metrics.yaml | 220 ++-- .../not_indexed_metrics_and_labels.yaml | 221 ++-- ...mple_index_filtered_metrics_and_label.yaml | 222 ++-- .../fixtures/simple_index_metrics.yaml | 222 ++-- .../simple_index_metrics_and_label.yaml | 221 ++-- .../simple_index_metrics_no_duplicate.yaml | 221 ++-- .../fixtures/multi_index_filtered_series.yaml | 222 ++-- .../fixtures/multi_index_metric_series.yaml | 222 ++-- .../not_indexed_filtered_metric_series.yaml | 440 ++++--- .../fixtures/not_indexed_label_series.yaml | 221 ++-- ...indexed_label_series_with_granularity.yaml | 222 ++-- .../fixtures/not_indexed_metric_series.yaml | 220 ++-- ...ndexed_metric_series_with_granularity.yaml | 221 ++-- .../simple_index_filtered_series.yaml | 222 ++-- .../fixtures/simple_index_label_series.yaml | 221 ++-- .../fixtures/simple_index_metric_series.yaml | 221 ++-- .../expected/declarative_analytics_model.json | 3 +- .../declarative_analytics_model_child.json | 3 +- .../expected/declarative_workspaces.json | 18 +- .../declarative_workspaces_snake_case.json | 18 +- .../fixtures/data_sources/bigquery.yaml | 36 +- .../data_sources/demo_cache_strategy.yaml | 32 +- .../data_sources/demo_data_sources_list.yaml | 11 +- .../demo_delete_declarative_data_sources.yaml | 24 +- .../demo_generate_logical_model.yaml | 28 +- ...o_generate_logical_model_sql_datasets.yaml | 14 +- ...load_and_put_declarative_data_sources.yaml | 53 +- .../demo_put_declarative_data_sources.yaml | 32 +- ...t_declarative_data_sources_connection.yaml | 42 +- .../demo_register_upload_notification.yaml | 112 +- ...o_scan_pdm_and_generate_logical_model.yaml | 42 +- ...d_generate_logical_model_sql_datasets.yaml | 28 +- .../data_sources/demo_scan_schemata.yaml | 14 +- .../demo_store_declarative_data_sources.yaml | 58 +- .../demo_test_declarative_data_sources.yaml | 24 +- .../data_sources/demo_test_scan_model.yaml | 28 +- .../demo_test_scan_model_with_schemata.yaml | 14 +- ...emo_test_scan_model_with_table_prefix.yaml | 14 +- .../catalog/fixtures/data_sources/dremio.yaml | 36 +- .../catalog/fixtures/data_sources/patch.yaml | 71 +- .../fixtures/data_sources/redshift.yaml | 36 +- .../scan_scan_sql_without_preview.yaml | 14 +- .../fixtures/data_sources/scan_sql.yaml | 14 +- .../scan_sql_with_nulls_in_preview.yaml | 14 +- .../fixtures/data_sources/snowflake.yaml | 72 +- .../data_sources/test_create_update.yaml | 86 +- .../fixtures/data_sources/vertica.yaml | 36 +- .../organization/create_csp_directive.yaml | 56 +- .../fixtures/organization/create_jwk.yaml | 74 +- .../create_organization_setting.yaml | 56 +- .../organization/delete_csp_directive.yaml | 74 +- .../fixtures/organization/delete_jwk.yaml | 92 +- .../delete_organization_setting.yaml | 74 +- .../organization/list_csp_directives.yaml | 84 +- .../fixtures/organization/list_jwk.yaml | 120 +- .../list_organization_settings.yaml | 84 +- .../fixtures/organization/organization.yaml | 30 +- .../organization/update_allowed_origins.yaml | 156 ++- .../organization/update_csp_directive.yaml | 70 +- .../fixtures/organization/update_jwk.yaml | 102 +- .../fixtures/organization/update_name.yaml | 186 ++- .../organization/update_oidc_settings.yaml | 176 ++- .../update_organization_setting.yaml | 70 +- .../get_declarative_permissions.yaml | 28 +- .../permissions/list_available_assignees.yaml | 14 +- .../list_dashboard_permissions.yaml | 56 +- ...ard_permissions_declarative_workspace.yaml | 161 ++- .../manage_organization_permissions.yaml | 56 +- ..._declarative_organization_permissions.yaml | 56 +- .../put_declarative_permissions.yaml | 70 +- .../fixtures/users/create_delete_user.yaml | 129 +-- .../users/create_delete_user_group.yaml | 102 +- .../users/get_declarative_user_groups.yaml | 28 +- .../fixtures/users/get_declarative_users.yaml | 46 +- .../get_declarative_users_user_groups.yaml | 46 +- .../catalog/fixtures/users/get_user.yaml | 16 +- .../fixtures/users/get_user_group.yaml | 14 +- .../fixtures/users/list_user_groups.yaml | 14 +- .../catalog/fixtures/users/list_users.yaml | 23 +- .../load_and_put_declarative_user_groups.yaml | 201 ++-- .../users/load_and_put_declarative_users.yaml | 139 ++- ...and_put_declarative_users_user_groups.yaml | 153 ++- .../users/put_declarative_user_groups.yaml | 151 ++- .../fixtures/users/put_declarative_users.yaml | 125 +- .../put_declarative_users_user_groups.yaml | 159 +-- .../users/store_declarative_user_groups.yaml | 88 +- .../users/store_declarative_users.yaml | 106 +- .../store_declarative_users_user_groups.yaml | 106 +- .../users/test_assign_permissions_bulk.yaml | 126 +- .../test_get_user_group_permissions.yaml | 18 +- .../users/test_get_user_permissions.yaml | 18 +- .../test_manage_user_group_permissions.yaml | 72 +- .../users/test_manage_user_permissions.yaml | 72 +- .../users/test_revoke_permissions_bulk.yaml | 72 +- .../users/test_user_add_user_group.yaml | 16 +- .../users/test_user_add_user_groups.yaml | 16 +- .../users/test_user_remove_user_groups.yaml | 16 +- .../users/test_user_replace_user_groups.yaml | 16 +- .../catalog/fixtures/users/update_user.yaml | 133 +-- .../fixtures/users/update_user_group.yaml | 112 +- .../analytics_store_load.yaml | 210 ++-- .../workspace_content/demo_catalog.yaml | 724 ++++++------ .../demo_catalog_availability.yaml | 738 ++++++------ .../demo_catalog_list_attributes.yaml | 18 +- .../demo_catalog_list_facts.yaml | 14 +- .../demo_catalog_list_labels.yaml | 14 +- .../demo_catalog_list_metrics.yaml | 92 +- .../demo_get_declarative_analytics_model.yaml | 17 +- ...get_declarative_analytics_model_child.yaml | 17 +- .../demo_get_declarative_ldm.yaml | 14 +- .../demo_get_dependent_entities_graph.yaml | 258 ++--- ...dent_entities_graph_from_entry_points.yaml | 14 +- ...and_modify_ds_and_put_declarative_ldm.yaml | 132 ++- ...d_and_put_declarative_analytics_model.yaml | 165 ++- .../demo_load_and_put_declarative_ldm.yaml | 130 +-- ...ad_ldm_and_modify_tables_columns_case.yaml | 14 +- .../demo_put_declarative_analytics_model.yaml | 135 +-- .../demo_put_declarative_ldm.yaml | 100 +- ...emo_store_declarative_analytics_model.yaml | 270 +++-- .../demo_store_declarative_ldm.yaml | 88 +- .../explicit_workspace_data_filter.yaml | 324 +++--- .../workspace_content/label_elements.yaml | 100 +- .../workspace_content/ldm_store_load.yaml | 28 +- .../workspaces/add_metadata_locale.yaml | 588 +++++----- .../workspaces/clean_metadata_locale.yaml | 728 ++++++------ .../workspaces/create_workspace_setting.yaml | 74 +- .../workspaces/delete_workspace_setting.yaml | 102 +- .../workspaces/demo_clone_workspace.yaml | 1029 +++++++++-------- .../workspaces/demo_create_workspace.yaml | 106 +- .../demo_declarative_workspaces.yaml | 56 +- .../demo_delete_non_existing_workspace.yaml | 42 +- .../demo_delete_parent_workspace.yaml | 42 +- .../workspaces/demo_delete_workspace.yaml | 76 +- ...emo_get_declarative_user_data_filters.yaml | 28 +- .../demo_get_declarative_workspace.yaml | 34 +- ...et_declarative_workspace_data_filters.yaml | 28 +- .../demo_get_declarative_workspaces.yaml | 28 +- ...get_declarative_workspaces_snake_case.yaml | 28 +- .../workspaces/demo_get_workspace.yaml | 40 +- ...and_put_declarative_user_data_filters.yaml | 120 +- ...mo_load_and_put_declarative_workspace.yaml | 130 +-- ...ut_declarative_workspace_data_filters.yaml | 120 +- ...o_load_and_put_declarative_workspaces.yaml | 126 +- ...emo_put_declarative_user_data_filters.yaml | 48 +- .../demo_put_declarative_workspace.yaml | 107 +- ...ut_declarative_workspace_data_filters.yaml | 90 +- .../demo_put_declarative_workspaces.yaml | 124 +- ...o_store_declarative_user_data_filters.yaml | 88 +- .../demo_store_declarative_workspace.yaml | 94 +- ...re_declarative_workspace_data_filters.yaml | 88 +- .../demo_store_declarative_workspaces.yaml | 292 ++--- .../workspaces/demo_translate_workspace.yaml | 561 +++++---- .../demo_update_workspace_invalid.yaml | 88 +- .../demo_update_workspace_valid.yaml | 122 +- .../workspaces/demo_workspace_list.yaml | 14 +- .../workspaces/get_metadata_localization.yaml | 140 ++- .../workspaces/list_workspace_settings.yaml | 120 +- .../workspaces/set_metadata_localization.yaml | 280 +++-- .../workspaces/update_workspace_setting.yaml | 116 +- .../user_data_filters_for_user_group.yaml | 122 +- .../user_data_filters_life_cycle.yaml | 136 ++- .../export/fixtures/test_export_csv.yaml | 218 +--- .../test_export_csv_by_visualization_id.yaml | 300 ++--- .../export/fixtures/test_export_excel.yaml | 201 +--- ...test_export_excel_by_visualization_id.yaml | 460 +++----- .../tests/support/fixtures/is_available.yaml | 14 +- .../fixtures/is_available_no_access.yaml | 8 +- .../fixtures/wait_till_available_no_wait.yaml | 14 +- .../table_with_attribute_and_metric.yaml | 35 +- ...able_with_attribute_metric_and_filter.yaml | 35 +- .../table_with_attribute_show_all_values.yaml | 376 +++--- .../fixtures/table_with_just_attribute.yaml | 35 +- .../fixtures/table_with_just_metric.yaml | 34 +- 203 files changed, 11913 insertions(+), 13320 deletions(-) diff --git a/gooddata-fdw/tests/execute/fixtures/execute_compute_table_all_columns.yaml b/gooddata-fdw/tests/execute/fixtures/execute_compute_table_all_columns.yaml index 03c062cd5..a41d57a99 100644 --- a/gooddata-fdw/tests/execute/fixtures/execute_compute_table_all_columns.yaml +++ b/gooddata-fdw/tests/execute/fixtures/execute_compute_table_all_columns.yaml @@ -93,10 +93,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -122,9 +120,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -135,9 +130,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1025' + - '1128' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:00 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -157,6 +155,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - attributeHeader: localIdentifier: products_product_name label: @@ -171,6 +170,7 @@ interactions: primaryLabel: id: product_name type: label + valueType: TEXT localIdentifier: dim_0 - headers: - measureGroupHeaders: @@ -184,10 +184,10 @@ interactions: name: Revenue localIdentifier: dim_1 links: - executionResult: a77bb0f0613bd7bbed1b5660a980134f21ee9ba9 + executionResult: 4d1f50398791ab893b174e2513c169a3e36ad2f8:8d7f88b42888fa431c50f3c14bd8d364a4eedd36c2511475e2e172825e5e9b1e - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/a77bb0f0613bd7bbed1b5660a980134f21ee9ba9?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4d1f50398791ab893b174e2513c169a3e36ad2f8%3A8d7f88b42888fa431c50f3c14bd8d364a4eedd36c2511475e2e172825e5e9b1e?offset=0%2C0&limit=512%2C256 body: null headers: Accept: @@ -214,10 +214,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -242,9 +240,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -255,9 +250,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '3876' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:01 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-fdw/tests/execute/fixtures/execute_compute_table_metrics_only.yaml b/gooddata-fdw/tests/execute/fixtures/execute_compute_table_metrics_only.yaml index 0710d71cd..7b232df99 100644 --- a/gooddata-fdw/tests/execute/fixtures/execute_compute_table_metrics_only.yaml +++ b/gooddata-fdw/tests/execute/fixtures/execute_compute_table_metrics_only.yaml @@ -79,10 +79,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -108,9 +106,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -121,9 +116,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '400' + - '465' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:01 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -140,10 +138,10 @@ interactions: name: Revenue localIdentifier: dim_0 links: - executionResult: 1c36f278e69004209cdfeda90e9f8957e0048523 + executionResult: 8cc84286f0e6b329283c9e36405ab82e72712527:9bfe3e91a3030795be0ee9f44557d7cf51c7b685c56cbbb11b75843f082e8b13 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/1c36f278e69004209cdfeda90e9f8957e0048523?offset=0&limit=256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/8cc84286f0e6b329283c9e36405ab82e72712527%3A9bfe3e91a3030795be0ee9f44557d7cf51c7b685c56cbbb11b75843f082e8b13?offset=0&limit=256 body: null headers: Accept: @@ -170,10 +168,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -198,9 +194,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -211,9 +204,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '308' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:01 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-fdw/tests/execute/fixtures/execute_compute_table_with_reduced_granularity.yaml b/gooddata-fdw/tests/execute/fixtures/execute_compute_table_with_reduced_granularity.yaml index f1955c832..9094b8ffe 100644 --- a/gooddata-fdw/tests/execute/fixtures/execute_compute_table_with_reduced_granularity.yaml +++ b/gooddata-fdw/tests/execute/fixtures/execute_compute_table_with_reduced_granularity.yaml @@ -68,10 +68,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -97,9 +95,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -110,9 +105,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '605' + - '689' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:01 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -132,6 +130,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_0 - headers: - measureGroupHeaders: @@ -141,10 +140,10 @@ interactions: name: Revenue localIdentifier: dim_1 links: - executionResult: d75dd01bf9e504b45cad040ec460580b1cfae316 + executionResult: 8f03cec0e651217541eb6deb8a938f07876ba6bb:aca5815bbec8945ca684559a8769323b614bb0cb22669a87ee7970ee0c38189b - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/d75dd01bf9e504b45cad040ec460580b1cfae316?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/8f03cec0e651217541eb6deb8a938f07876ba6bb%3Aaca5815bbec8945ca684559a8769323b614bb0cb22669a87ee7970ee0c38189b?offset=0%2C0&limit=512%2C256 body: null headers: Accept: @@ -171,10 +170,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -199,9 +196,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -212,9 +206,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '618' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:01 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-fdw/tests/execute/fixtures/execute_insight_all_columns.yaml b/gooddata-fdw/tests/execute/fixtures/execute_insight_all_columns.yaml index cfbdf8dfa..8d952d246 100644 --- a/gooddata-fdw/tests/execute/fixtures/execute_insight_all_columns.yaml +++ b/gooddata-fdw/tests/execute/fixtures/execute_insight_all_columns.yaml @@ -36,11 +36,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/vnd.gooddata.api+json DATE: &id001 @@ -59,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:02 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -172,7 +172,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-03-06 16:55 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -219,7 +219,7 @@ interactions: attributes: title: Revenue description: '' - createdAt: 2024-03-06 16:55 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -272,7 +272,7 @@ interactions: type: metric attributes: title: '% Revenue in Category' - createdAt: 2024-03-06 16:55 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -394,11 +394,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: *id001 @@ -416,9 +416,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -429,9 +426,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1132' + - '1235' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:02 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -451,6 +451,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - attributeHeader: localIdentifier: 192668bfb6a74e9ab7b5d1ce7cb68ea3 label: @@ -465,6 +466,7 @@ interactions: primaryLabel: id: product_name type: label + valueType: TEXT localIdentifier: dim_0 - headers: - measureGroupHeaders: @@ -478,10 +480,10 @@ interactions: name: Revenue localIdentifier: dim_1 links: - executionResult: a1b0f348ce3be65a6ebde2392367783e991c8712 + executionResult: 290c375bb3fdca5bf5b463342cb66709f2029fcd:46da4f32e268e4d4bebe451bfb76726d3dc0f13d462a4a18e6692b56c8371c5a - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/a1b0f348ce3be65a6ebde2392367783e991c8712?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/290c375bb3fdca5bf5b463342cb66709f2029fcd%3A46da4f32e268e4d4bebe451bfb76726d3dc0f13d462a4a18e6692b56c8371c5a?offset=0%2C0&limit=512%2C256 body: null headers: Accept: @@ -512,11 +514,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: *id001 @@ -534,9 +536,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -547,9 +546,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '4052' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:02 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-fdw/tests/execute/fixtures/execute_insight_some_columns.yaml b/gooddata-fdw/tests/execute/fixtures/execute_insight_some_columns.yaml index cfbdf8dfa..8d952d246 100644 --- a/gooddata-fdw/tests/execute/fixtures/execute_insight_some_columns.yaml +++ b/gooddata-fdw/tests/execute/fixtures/execute_insight_some_columns.yaml @@ -36,11 +36,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/vnd.gooddata.api+json DATE: &id001 @@ -59,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:02 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -172,7 +172,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-03-06 16:55 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -219,7 +219,7 @@ interactions: attributes: title: Revenue description: '' - createdAt: 2024-03-06 16:55 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -272,7 +272,7 @@ interactions: type: metric attributes: title: '% Revenue in Category' - createdAt: 2024-03-06 16:55 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -394,11 +394,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: *id001 @@ -416,9 +416,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -429,9 +426,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1132' + - '1235' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:02 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -451,6 +451,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - attributeHeader: localIdentifier: 192668bfb6a74e9ab7b5d1ce7cb68ea3 label: @@ -465,6 +466,7 @@ interactions: primaryLabel: id: product_name type: label + valueType: TEXT localIdentifier: dim_0 - headers: - measureGroupHeaders: @@ -478,10 +480,10 @@ interactions: name: Revenue localIdentifier: dim_1 links: - executionResult: a1b0f348ce3be65a6ebde2392367783e991c8712 + executionResult: 290c375bb3fdca5bf5b463342cb66709f2029fcd:46da4f32e268e4d4bebe451bfb76726d3dc0f13d462a4a18e6692b56c8371c5a - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/a1b0f348ce3be65a6ebde2392367783e991c8712?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/290c375bb3fdca5bf5b463342cb66709f2029fcd%3A46da4f32e268e4d4bebe451bfb76726d3dc0f13d462a4a18e6692b56c8371c5a?offset=0%2C0&limit=512%2C256 body: null headers: Accept: @@ -512,11 +514,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: *id001 @@ -534,9 +536,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -547,9 +546,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '4052' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:02 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-fdw/tests/import_foreign_schema/fixtures/import_compute_without_restrictions.yaml b/gooddata-fdw/tests/import_foreign_schema/fixtures/import_compute_without_restrictions.yaml index 0c84de8ee..ad0864530 100644 --- a/gooddata-fdw/tests/import_foreign_schema/fixtures/import_compute_without_restrictions.yaml +++ b/gooddata-fdw/tests/import_foreign_schema/fixtures/import_compute_without_restrictions.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:02 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -297,10 +295,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -616,15 +614,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -640,26 +638,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -668,10 +666,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1046,10 +1044,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1074,9 +1070,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1085,7 +1078,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:02 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1121,18 +1117,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1187,14 +1183,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1213,15 +1209,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1237,26 +1233,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1266,10 +1262,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1285,18 +1281,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1322,10 +1318,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1345,15 +1341,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1655,10 +1651,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1683,9 +1677,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1694,7 +1685,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1703,7 +1697,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1718,7 +1712,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1733,7 +1727,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1750,7 +1744,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1766,7 +1760,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1781,7 +1775,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1796,7 +1790,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1811,7 +1805,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1827,7 +1821,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1843,7 +1837,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1859,7 +1853,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1875,7 +1869,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -1891,7 +1885,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -1908,7 +1902,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -1924,7 +1918,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -1940,7 +1934,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -1956,7 +1950,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -1972,7 +1966,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -1988,7 +1982,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2003,7 +1997,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2018,7 +2012,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2033,7 +2027,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2048,7 +2042,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2063,7 +2057,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER diff --git a/gooddata-fdw/tests/import_foreign_schema/fixtures/import_insights_without_restrictions.yaml b/gooddata-fdw/tests/import_foreign_schema/fixtures/import_insights_without_restrictions.yaml index be9ef725a..b19f52acd 100644 --- a/gooddata-fdw/tests/import_foreign_schema/fixtures/import_insights_without_restrictions.yaml +++ b/gooddata-fdw/tests/import_foreign_schema/fixtures/import_insights_without_restrictions.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -297,10 +295,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -616,15 +614,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -640,26 +638,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -668,10 +666,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1046,10 +1044,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1074,9 +1070,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1085,7 +1078,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1121,18 +1117,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1187,14 +1183,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1213,15 +1209,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1237,26 +1233,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1266,10 +1262,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1285,18 +1281,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1322,10 +1318,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1345,15 +1341,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1655,10 +1651,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1683,9 +1677,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1694,7 +1685,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1703,7 +1697,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1718,7 +1712,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1733,7 +1727,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1750,7 +1744,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1766,7 +1760,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1781,7 +1775,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1796,7 +1790,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1811,7 +1805,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1827,7 +1821,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1843,7 +1837,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1859,7 +1853,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1875,7 +1869,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -1891,7 +1885,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -1908,7 +1902,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -1924,7 +1918,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -1940,7 +1934,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -1956,7 +1950,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -1972,7 +1966,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -1988,7 +1982,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2003,7 +1997,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2018,7 +2012,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2033,7 +2027,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2048,7 +2042,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2063,7 +2057,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2107,10 +2101,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2135,9 +2127,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2146,7 +2135,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:15:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2213,7 +2205,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -2312,7 +2304,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -2416,7 +2408,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -2500,7 +2492,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -2582,7 +2574,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -2656,7 +2648,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -2752,7 +2744,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -2838,7 +2830,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -2958,7 +2950,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -3045,7 +3037,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -3109,7 +3101,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -3184,7 +3176,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -3273,7 +3265,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -3355,7 +3347,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -3433,7 +3425,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -3460,7 +3452,7 @@ interactions: type: metric attributes: title: '# of Orders' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -3471,7 +3463,7 @@ interactions: attributes: title: Revenue description: '' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -3529,7 +3521,7 @@ interactions: type: metric attributes: title: '% Revenue in Category' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -3540,7 +3532,7 @@ interactions: type: metric attributes: title: Revenue per Customer - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -3550,7 +3542,7 @@ interactions: type: metric attributes: title: Revenue / Top 10 - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -3571,7 +3563,7 @@ interactions: type: metric attributes: title: '% Revenue per Product' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -3672,7 +3664,7 @@ interactions: type: metric attributes: title: '# of Active Customers' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -3695,7 +3687,7 @@ interactions: type: metric attributes: title: Campaign Spend - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -3705,7 +3697,7 @@ interactions: type: metric attributes: title: Revenue per Dollar Spent - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_bytes_limits_failure.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_bytes_limits_failure.yaml index 570abfd76..78ac3d50a 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_bytes_limits_failure.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_bytes_limits_failure.yaml @@ -80,10 +80,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -109,9 +107,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -122,9 +117,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1097' + - '1219' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -144,6 +142,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: region label: @@ -158,6 +157,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -174,6 +174,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -181,10 +182,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 698b289b514347f11d919b5708eeb36beb54521b + executionResult: 4e372376a5bef9f8d64b3eec9022efea2e41c7d5:05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/698b289b514347f11d919b5708eeb36beb54521b/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4e372376a5bef9f8d64b3eec9022efea2e41c7d5%3A05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2/metadata body: null headers: Accept: @@ -211,10 +212,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -239,9 +238,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -252,9 +248,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2046' + - '2168' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -316,6 +315,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: region label: @@ -330,6 +330,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -346,6 +347,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -353,7 +355,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 698b289b514347f11d919b5708eeb36beb54521b + executionResult: 4e372376a5bef9f8d64b3eec9022efea2e41c7d5:05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2 resultSpec: dimensions: - localIdentifier: dim_0 @@ -370,7 +372,7 @@ interactions: resultSize: 4237 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/698b289b514347f11d919b5708eeb36beb54521b?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4e372376a5bef9f8d64b3eec9022efea2e41c7d5%3A05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -397,10 +399,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -425,9 +425,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -438,9 +435,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '11295' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_dimensions_limits_failure.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_dimensions_limits_failure.yaml index 570abfd76..9e67115da 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_dimensions_limits_failure.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_dimensions_limits_failure.yaml @@ -80,10 +80,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -109,9 +107,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -122,9 +117,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1097' + - '1219' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -144,6 +142,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: region label: @@ -158,6 +157,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -174,6 +174,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -181,10 +182,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 698b289b514347f11d919b5708eeb36beb54521b + executionResult: 4e372376a5bef9f8d64b3eec9022efea2e41c7d5:05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/698b289b514347f11d919b5708eeb36beb54521b/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4e372376a5bef9f8d64b3eec9022efea2e41c7d5%3A05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2/metadata body: null headers: Accept: @@ -211,10 +212,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -239,9 +238,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -252,9 +248,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2046' + - '2168' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -316,6 +315,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: region label: @@ -330,6 +330,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -346,6 +347,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -353,7 +355,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 698b289b514347f11d919b5708eeb36beb54521b + executionResult: 4e372376a5bef9f8d64b3eec9022efea2e41c7d5:05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2 resultSpec: dimensions: - localIdentifier: dim_0 @@ -370,7 +372,7 @@ interactions: resultSize: 4237 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/698b289b514347f11d919b5708eeb36beb54521b?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4e372376a5bef9f8d64b3eec9022efea2e41c7d5%3A05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -397,10 +399,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -425,9 +425,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -438,9 +435,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '11295' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim1.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim1.yaml index 82bcfe8f2..a7fde25a4 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim1.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim1.yaml @@ -78,10 +78,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -107,9 +105,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -120,9 +115,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1057' + - '1179' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -142,6 +140,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -156,6 +155,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: product_category label: @@ -170,6 +170,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -177,10 +178,10 @@ interactions: name: Order Amount localIdentifier: dim_0 links: - executionResult: 3e4d67f16f285a9a05060411025944503ba94077 + executionResult: 6d6c03d47ad8bedf8a436f87a7f2638bfe2e0fc8:5e583be017c9937b7fe0f13ba25eb2c731d1b4f9bf129b1384ed5b1b9db86b90 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/3e4d67f16f285a9a05060411025944503ba94077/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/6d6c03d47ad8bedf8a436f87a7f2638bfe2e0fc8%3A5e583be017c9937b7fe0f13ba25eb2c731d1b4f9bf129b1384ed5b1b9db86b90/metadata body: null headers: Accept: @@ -207,10 +208,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -235,9 +234,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -248,9 +244,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1945' + - '2067' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -312,6 +311,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -326,6 +326,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: product_category label: @@ -340,6 +341,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -347,7 +349,7 @@ interactions: name: Order Amount localIdentifier: dim_0 links: - executionResult: 3e4d67f16f285a9a05060411025944503ba94077 + executionResult: 6d6c03d47ad8bedf8a436f87a7f2638bfe2e0fc8:5e583be017c9937b7fe0f13ba25eb2c731d1b4f9bf129b1384ed5b1b9db86b90 resultSpec: dimensions: - localIdentifier: dim_0 @@ -361,7 +363,7 @@ interactions: resultSize: 2913 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/3e4d67f16f285a9a05060411025944503ba94077?offset=0&limit=500 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/6d6c03d47ad8bedf8a436f87a7f2638bfe2e0fc8%3A5e583be017c9937b7fe0f13ba25eb2c731d1b4f9bf129b1384ed5b1b9db86b90?offset=0&limit=500 body: null headers: Accept: @@ -388,10 +390,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -416,9 +416,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -429,9 +426,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '98918' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -4819,7 +4819,7 @@ interactions: - 364 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/3e4d67f16f285a9a05060411025944503ba94077/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/6d6c03d47ad8bedf8a436f87a7f2638bfe2e0fc8%3A5e583be017c9937b7fe0f13ba25eb2c731d1b4f9bf129b1384ed5b1b9db86b90/metadata body: null headers: Accept: @@ -4846,10 +4846,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -4874,9 +4872,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -4887,9 +4882,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1945' + - '2067' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -4951,6 +4949,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -4965,6 +4964,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: product_category label: @@ -4979,6 +4979,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -4986,7 +4987,7 @@ interactions: name: Order Amount localIdentifier: dim_0 links: - executionResult: 3e4d67f16f285a9a05060411025944503ba94077 + executionResult: 6d6c03d47ad8bedf8a436f87a7f2638bfe2e0fc8:5e583be017c9937b7fe0f13ba25eb2c731d1b4f9bf129b1384ed5b1b9db86b90 resultSpec: dimensions: - localIdentifier: dim_0 @@ -5000,7 +5001,7 @@ interactions: resultSize: 2913 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/3e4d67f16f285a9a05060411025944503ba94077?offset=0&limit=500 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/6d6c03d47ad8bedf8a436f87a7f2638bfe2e0fc8%3A5e583be017c9937b7fe0f13ba25eb2c731d1b4f9bf129b1384ed5b1b9db86b90?offset=0&limit=500 body: null headers: Accept: @@ -5027,10 +5028,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -5055,9 +5054,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -5068,9 +5064,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '98918' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim2.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim2.yaml index c8194d7c3..3f5d58dec 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim2.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim2.yaml @@ -80,10 +80,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -109,9 +107,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -122,9 +117,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1098' + - '1220' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -146,6 +144,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -160,6 +159,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: product_category label: @@ -174,6 +174,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -181,10 +182,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 2d5cf45c0e9a8a6b895c38ed1485e99f08d6378a + executionResult: 64d30531a7bfa919d530c5f14e62c739773fc091:8b754ccb606d7ce289a028436001256df1bfb5a35015b394864af050b79b6edb - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2d5cf45c0e9a8a6b895c38ed1485e99f08d6378a/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/64d30531a7bfa919d530c5f14e62c739773fc091%3A8b754ccb606d7ce289a028436001256df1bfb5a35015b394864af050b79b6edb/metadata body: null headers: Accept: @@ -211,10 +212,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -239,9 +238,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -252,9 +248,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2048' + - '2170' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -318,6 +317,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -332,6 +332,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: product_category label: @@ -346,6 +347,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -353,7 +355,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 2d5cf45c0e9a8a6b895c38ed1485e99f08d6378a + executionResult: 64d30531a7bfa919d530c5f14e62c739773fc091:8b754ccb606d7ce289a028436001256df1bfb5a35015b394864af050b79b6edb resultSpec: dimensions: - localIdentifier: dim_0 @@ -370,7 +372,7 @@ interactions: resultSize: 2913 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2d5cf45c0e9a8a6b895c38ed1485e99f08d6378a?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/64d30531a7bfa919d530c5f14e62c739773fc091%3A8b754ccb606d7ce289a028436001256df1bfb5a35015b394864af050b79b6edb?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -397,10 +399,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -425,9 +425,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -438,9 +435,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '27491' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1664,7 +1664,7 @@ interactions: - 364 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2d5cf45c0e9a8a6b895c38ed1485e99f08d6378a?offset=0%2C100&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/64d30531a7bfa919d530c5f14e62c739773fc091%3A8b754ccb606d7ce289a028436001256df1bfb5a35015b394864af050b79b6edb?offset=0%2C100&limit=100%2C100 body: null headers: Accept: @@ -1691,10 +1691,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1719,9 +1717,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1732,9 +1727,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '27723' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2958,7 +2956,7 @@ interactions: - 364 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2d5cf45c0e9a8a6b895c38ed1485e99f08d6378a?offset=0%2C200&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/64d30531a7bfa919d530c5f14e62c739773fc091%3A8b754ccb606d7ce289a028436001256df1bfb5a35015b394864af050b79b6edb?offset=0%2C200&limit=100%2C100 body: null headers: Accept: @@ -2985,10 +2983,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3013,9 +3009,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -3026,9 +3019,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '27251' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -4252,7 +4248,7 @@ interactions: - 364 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2d5cf45c0e9a8a6b895c38ed1485e99f08d6378a?offset=0%2C300&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/64d30531a7bfa919d530c5f14e62c739773fc091%3A8b754ccb606d7ce289a028436001256df1bfb5a35015b394864af050b79b6edb?offset=0%2C300&limit=100%2C100 body: null headers: Accept: @@ -4279,10 +4275,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -4307,9 +4301,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -4320,9 +4311,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '17095' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -5114,7 +5108,7 @@ interactions: - 364 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2d5cf45c0e9a8a6b895c38ed1485e99f08d6378a/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/64d30531a7bfa919d530c5f14e62c739773fc091%3A8b754ccb606d7ce289a028436001256df1bfb5a35015b394864af050b79b6edb/metadata body: null headers: Accept: @@ -5141,10 +5135,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -5169,9 +5161,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -5182,9 +5171,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2048' + - '2170' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -5248,6 +5240,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -5262,6 +5255,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: product_category label: @@ -5276,6 +5270,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -5283,7 +5278,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 2d5cf45c0e9a8a6b895c38ed1485e99f08d6378a + executionResult: 64d30531a7bfa919d530c5f14e62c739773fc091:8b754ccb606d7ce289a028436001256df1bfb5a35015b394864af050b79b6edb resultSpec: dimensions: - localIdentifier: dim_0 @@ -5300,7 +5295,7 @@ interactions: resultSize: 2913 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2d5cf45c0e9a8a6b895c38ed1485e99f08d6378a?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/64d30531a7bfa919d530c5f14e62c739773fc091%3A8b754ccb606d7ce289a028436001256df1bfb5a35015b394864af050b79b6edb?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -5327,10 +5322,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -5355,9 +5348,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -5368,9 +5358,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '27491' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -6594,7 +6587,7 @@ interactions: - 364 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2d5cf45c0e9a8a6b895c38ed1485e99f08d6378a?offset=0%2C100&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/64d30531a7bfa919d530c5f14e62c739773fc091%3A8b754ccb606d7ce289a028436001256df1bfb5a35015b394864af050b79b6edb?offset=0%2C100&limit=100%2C100 body: null headers: Accept: @@ -6621,10 +6614,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -6649,9 +6640,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -6662,9 +6650,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '27723' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -7888,7 +7879,7 @@ interactions: - 364 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2d5cf45c0e9a8a6b895c38ed1485e99f08d6378a?offset=0%2C200&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/64d30531a7bfa919d530c5f14e62c739773fc091%3A8b754ccb606d7ce289a028436001256df1bfb5a35015b394864af050b79b6edb?offset=0%2C200&limit=100%2C100 body: null headers: Accept: @@ -7915,10 +7906,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -7943,9 +7932,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -7956,9 +7942,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '27251' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -9182,7 +9171,7 @@ interactions: - 364 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2d5cf45c0e9a8a6b895c38ed1485e99f08d6378a?offset=0%2C300&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/64d30531a7bfa919d530c5f14e62c739773fc091%3A8b754ccb606d7ce289a028436001256df1bfb5a35015b394864af050b79b6edb?offset=0%2C300&limit=100%2C100 body: null headers: Accept: @@ -9209,10 +9198,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -9237,9 +9224,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -9250,9 +9234,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '17095' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:51 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals1.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals1.yaml index de1535497..3327e5143 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals1.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals1.yaml @@ -99,10 +99,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -128,9 +126,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -141,9 +136,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1097' + - '1219' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:45 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -163,6 +161,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -179,6 +178,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -193,6 +193,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -200,10 +201,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 894be7423e580e6d3202fcebff6a7773d8bd0229 + executionResult: 2fe44a2ae0aac23b4c46c8ca7c0ffa74ab82fdae:8e81554da21411a91a2ea8a427524a53eab44e9ac6af2931f9788342029edc5c - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/894be7423e580e6d3202fcebff6a7773d8bd0229/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2fe44a2ae0aac23b4c46c8ca7c0ffa74ab82fdae%3A8e81554da21411a91a2ea8a427524a53eab44e9ac6af2931f9788342029edc5c/metadata body: null headers: Accept: @@ -230,10 +231,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -258,9 +257,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -271,9 +267,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2406' + - '2528' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:45 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -335,6 +334,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -351,6 +351,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -365,6 +366,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -372,7 +374,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 894be7423e580e6d3202fcebff6a7773d8bd0229 + executionResult: 2fe44a2ae0aac23b4c46c8ca7c0ffa74ab82fdae:8e81554da21411a91a2ea8a427524a53eab44e9ac6af2931f9788342029edc5c resultSpec: dimensions: - localIdentifier: dim_0 @@ -407,7 +409,7 @@ interactions: resultSize: 4770 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/894be7423e580e6d3202fcebff6a7773d8bd0229?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2fe44a2ae0aac23b4c46c8ca7c0ffa74ab82fdae%3A8e81554da21411a91a2ea8a427524a53eab44e9ac6af2931f9788342029edc5c?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -434,10 +436,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -462,9 +462,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -475,9 +472,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '22911' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:45 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1867,7 +1867,7 @@ interactions: - 96 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/894be7423e580e6d3202fcebff6a7773d8bd0229/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2fe44a2ae0aac23b4c46c8ca7c0ffa74ab82fdae%3A8e81554da21411a91a2ea8a427524a53eab44e9ac6af2931f9788342029edc5c/metadata body: null headers: Accept: @@ -1894,10 +1894,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1922,9 +1920,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1935,9 +1930,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2406' + - '2528' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:45 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -1999,6 +1997,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -2015,6 +2014,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -2029,6 +2029,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -2036,7 +2037,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 894be7423e580e6d3202fcebff6a7773d8bd0229 + executionResult: 2fe44a2ae0aac23b4c46c8ca7c0ffa74ab82fdae:8e81554da21411a91a2ea8a427524a53eab44e9ac6af2931f9788342029edc5c resultSpec: dimensions: - localIdentifier: dim_0 @@ -2071,7 +2072,7 @@ interactions: resultSize: 4770 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/894be7423e580e6d3202fcebff6a7773d8bd0229?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2fe44a2ae0aac23b4c46c8ca7c0ffa74ab82fdae%3A8e81554da21411a91a2ea8a427524a53eab44e9ac6af2931f9788342029edc5c?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -2098,10 +2099,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2126,9 +2125,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2139,9 +2135,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '22911' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:45 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals2.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals2.yaml index 0f8c6fa2a..533cb6b10 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals2.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals2.yaml @@ -97,10 +97,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -126,9 +124,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -139,9 +134,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1097' + - '1219' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -161,6 +159,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: product_category label: @@ -175,6 +174,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -191,6 +191,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -198,10 +199,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 43b036be70acba10557ef02ba16c457fd5cac215 + executionResult: fad444675a7060b4809fabaa600f783c27462afe:9ad66095edbf4dba29cc12b45fb896053a1ec5970ea58991e6d5313ac7d0d5e1 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/43b036be70acba10557ef02ba16c457fd5cac215/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fad444675a7060b4809fabaa600f783c27462afe%3A9ad66095edbf4dba29cc12b45fb896053a1ec5970ea58991e6d5313ac7d0d5e1/metadata body: null headers: Accept: @@ -228,10 +229,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -256,9 +255,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -269,9 +265,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2389' + - '2511' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -333,6 +332,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: product_category label: @@ -347,6 +347,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -363,6 +364,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -370,7 +372,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 43b036be70acba10557ef02ba16c457fd5cac215 + executionResult: fad444675a7060b4809fabaa600f783c27462afe:9ad66095edbf4dba29cc12b45fb896053a1ec5970ea58991e6d5313ac7d0d5e1 resultSpec: dimensions: - localIdentifier: dim_0 @@ -403,7 +405,7 @@ interactions: resultSize: 15292 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/43b036be70acba10557ef02ba16c457fd5cac215?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fad444675a7060b4809fabaa600f783c27462afe%3A9ad66095edbf4dba29cc12b45fb896053a1ec5970ea58991e6d5313ac7d0d5e1?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -430,10 +432,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -458,9 +458,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -471,9 +468,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '24535' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2918,7 +2918,7 @@ interactions: - 96 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/43b036be70acba10557ef02ba16c457fd5cac215/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fad444675a7060b4809fabaa600f783c27462afe%3A9ad66095edbf4dba29cc12b45fb896053a1ec5970ea58991e6d5313ac7d0d5e1/metadata body: null headers: Accept: @@ -2945,10 +2945,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2973,9 +2971,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2986,9 +2981,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2389' + - '2511' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -3050,6 +3048,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: product_category label: @@ -3064,6 +3063,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -3080,6 +3080,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -3087,7 +3088,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 43b036be70acba10557ef02ba16c457fd5cac215 + executionResult: fad444675a7060b4809fabaa600f783c27462afe:9ad66095edbf4dba29cc12b45fb896053a1ec5970ea58991e6d5313ac7d0d5e1 resultSpec: dimensions: - localIdentifier: dim_0 @@ -3120,7 +3121,7 @@ interactions: resultSize: 15292 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/43b036be70acba10557ef02ba16c457fd5cac215?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fad444675a7060b4809fabaa600f783c27462afe%3A9ad66095edbf4dba29cc12b45fb896053a1ec5970ea58991e6d5313ac7d0d5e1?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -3147,10 +3148,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3175,9 +3174,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -3188,9 +3184,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '24535' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals3.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals3.yaml index 47c8ff8c9..1cffd8483 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals3.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals3.yaml @@ -99,10 +99,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -128,9 +126,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -141,9 +136,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1097' + - '1219' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -163,6 +161,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -177,6 +176,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -198,12 +198,13 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 1ce6f503b6030fb20183976feb0af3f163add80a + executionResult: efbd93414745ed202250dded0b761b192119f46d:70e27249808a6807f92ca9468eb126f82af144a73366626487a99f12848a898f - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/1ce6f503b6030fb20183976feb0af3f163add80a/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/efbd93414745ed202250dded0b761b192119f46d%3A70e27249808a6807f92ca9468eb126f82af144a73366626487a99f12848a898f/metadata body: null headers: Accept: @@ -230,10 +231,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -258,9 +257,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -271,9 +267,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2406' + - '2528' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -335,6 +334,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -349,6 +349,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -370,9 +371,10 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 1ce6f503b6030fb20183976feb0af3f163add80a + executionResult: efbd93414745ed202250dded0b761b192119f46d:70e27249808a6807f92ca9468eb126f82af144a73366626487a99f12848a898f resultSpec: dimensions: - localIdentifier: dim_0 @@ -407,7 +409,7 @@ interactions: resultSize: 4770 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/1ce6f503b6030fb20183976feb0af3f163add80a?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/efbd93414745ed202250dded0b761b192119f46d%3A70e27249808a6807f92ca9468eb126f82af144a73366626487a99f12848a898f?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -434,10 +436,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -462,9 +462,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -475,9 +472,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '23283' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1867,7 +1867,7 @@ interactions: - 4 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/1ce6f503b6030fb20183976feb0af3f163add80a/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/efbd93414745ed202250dded0b761b192119f46d%3A70e27249808a6807f92ca9468eb126f82af144a73366626487a99f12848a898f/metadata body: null headers: Accept: @@ -1894,10 +1894,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1922,9 +1920,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1935,9 +1930,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2406' + - '2528' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -1999,6 +1997,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -2013,6 +2012,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -2034,9 +2034,10 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 1ce6f503b6030fb20183976feb0af3f163add80a + executionResult: efbd93414745ed202250dded0b761b192119f46d:70e27249808a6807f92ca9468eb126f82af144a73366626487a99f12848a898f resultSpec: dimensions: - localIdentifier: dim_0 @@ -2071,7 +2072,7 @@ interactions: resultSize: 4770 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/1ce6f503b6030fb20183976feb0af3f163add80a?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/efbd93414745ed202250dded0b761b192119f46d%3A70e27249808a6807f92ca9468eb126f82af144a73366626487a99f12848a898f?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -2098,10 +2099,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2126,9 +2125,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2139,9 +2135,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '23283' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals4.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals4.yaml index 8130659db..cf55c9185 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals4.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals4.yaml @@ -97,10 +97,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -126,9 +124,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -139,9 +134,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1097' + - '1219' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -161,6 +159,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -182,6 +181,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: product_category label: @@ -196,12 +196,13 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: cbbc0cc56464a532bda00e8c6d8dc259d3468a29 + executionResult: 0c3f58fc9b47a66ea0d230c0e25ffebc5bd6c3f9:a881d61efa89160a55946c8f7420db99ac719de930bff8c1df2eb5eef62a5dd5 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/cbbc0cc56464a532bda00e8c6d8dc259d3468a29/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/0c3f58fc9b47a66ea0d230c0e25ffebc5bd6c3f9%3Aa881d61efa89160a55946c8f7420db99ac719de930bff8c1df2eb5eef62a5dd5/metadata body: null headers: Accept: @@ -228,10 +229,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -256,9 +255,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -269,9 +265,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2389' + - '2511' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -333,6 +332,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -354,6 +354,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: product_category label: @@ -368,9 +369,10 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: cbbc0cc56464a532bda00e8c6d8dc259d3468a29 + executionResult: 0c3f58fc9b47a66ea0d230c0e25ffebc5bd6c3f9:a881d61efa89160a55946c8f7420db99ac719de930bff8c1df2eb5eef62a5dd5 resultSpec: dimensions: - localIdentifier: dim_0 @@ -403,7 +405,7 @@ interactions: resultSize: 15292 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/cbbc0cc56464a532bda00e8c6d8dc259d3468a29?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/0c3f58fc9b47a66ea0d230c0e25ffebc5bd6c3f9%3Aa881d61efa89160a55946c8f7420db99ac719de930bff8c1df2eb5eef62a5dd5?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -430,10 +432,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -458,9 +458,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -471,9 +468,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '24881' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2918,7 +2918,7 @@ interactions: - 17 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/cbbc0cc56464a532bda00e8c6d8dc259d3468a29/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/0c3f58fc9b47a66ea0d230c0e25ffebc5bd6c3f9%3Aa881d61efa89160a55946c8f7420db99ac719de930bff8c1df2eb5eef62a5dd5/metadata body: null headers: Accept: @@ -2945,10 +2945,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2973,9 +2971,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2986,9 +2981,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2389' + - '2511' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -3050,6 +3048,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -3071,6 +3070,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: product_category label: @@ -3085,9 +3085,10 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: cbbc0cc56464a532bda00e8c6d8dc259d3468a29 + executionResult: 0c3f58fc9b47a66ea0d230c0e25ffebc5bd6c3f9:a881d61efa89160a55946c8f7420db99ac719de930bff8c1df2eb5eef62a5dd5 resultSpec: dimensions: - localIdentifier: dim_0 @@ -3120,7 +3121,7 @@ interactions: resultSize: 15292 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/cbbc0cc56464a532bda00e8c6d8dc259d3468a29?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/0c3f58fc9b47a66ea0d230c0e25ffebc5bd6c3f9%3Aa881d61efa89160a55946c8f7420db99ac719de930bff8c1df2eb5eef62a5dd5?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -3147,10 +3148,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3175,9 +3174,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -3188,9 +3184,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '24881' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim1.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim1.yaml index 460e46906..1009e849a 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim1.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim1.yaml @@ -80,10 +80,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -109,9 +107,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -122,9 +117,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1097' + - '1219' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -144,6 +142,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: region label: @@ -158,6 +157,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -174,6 +174,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -181,10 +182,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 698b289b514347f11d919b5708eeb36beb54521b + executionResult: 4e372376a5bef9f8d64b3eec9022efea2e41c7d5:05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/698b289b514347f11d919b5708eeb36beb54521b/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4e372376a5bef9f8d64b3eec9022efea2e41c7d5%3A05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2/metadata body: null headers: Accept: @@ -211,10 +212,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -239,9 +238,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -252,9 +248,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2046' + - '2168' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -316,6 +315,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: region label: @@ -330,6 +330,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -346,6 +347,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -353,7 +355,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 698b289b514347f11d919b5708eeb36beb54521b + executionResult: 4e372376a5bef9f8d64b3eec9022efea2e41c7d5:05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2 resultSpec: dimensions: - localIdentifier: dim_0 @@ -370,7 +372,7 @@ interactions: resultSize: 4237 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/698b289b514347f11d919b5708eeb36beb54521b?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4e372376a5bef9f8d64b3eec9022efea2e41c7d5%3A05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -397,10 +399,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -425,9 +425,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -438,9 +435,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '11295' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1176,7 +1176,7 @@ interactions: - 8 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/698b289b514347f11d919b5708eeb36beb54521b/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4e372376a5bef9f8d64b3eec9022efea2e41c7d5%3A05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2/metadata body: null headers: Accept: @@ -1203,10 +1203,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1231,9 +1229,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1244,9 +1239,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2046' + - '2168' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -1308,6 +1306,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: region label: @@ -1322,6 +1321,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -1338,6 +1338,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -1345,7 +1346,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 698b289b514347f11d919b5708eeb36beb54521b + executionResult: 4e372376a5bef9f8d64b3eec9022efea2e41c7d5:05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2 resultSpec: dimensions: - localIdentifier: dim_0 @@ -1362,7 +1363,7 @@ interactions: resultSize: 4237 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/698b289b514347f11d919b5708eeb36beb54521b?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4e372376a5bef9f8d64b3eec9022efea2e41c7d5%3A05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -1389,10 +1390,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1417,9 +1416,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1430,9 +1426,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '11295' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2168,7 +2167,7 @@ interactions: - 8 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/698b289b514347f11d919b5708eeb36beb54521b/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4e372376a5bef9f8d64b3eec9022efea2e41c7d5%3A05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2/metadata body: null headers: Accept: @@ -2195,10 +2194,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2223,9 +2220,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2236,9 +2230,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2046' + - '2168' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -2300,6 +2297,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: region label: @@ -2314,6 +2312,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -2330,6 +2329,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -2337,7 +2337,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 698b289b514347f11d919b5708eeb36beb54521b + executionResult: 4e372376a5bef9f8d64b3eec9022efea2e41c7d5:05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2 resultSpec: dimensions: - localIdentifier: dim_0 @@ -2354,7 +2354,7 @@ interactions: resultSize: 4237 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/698b289b514347f11d919b5708eeb36beb54521b?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4e372376a5bef9f8d64b3eec9022efea2e41c7d5%3A05407e0d701640fb410ed25e354a7e702b55be7bcf8bf949eb4b5fa4776019e2?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -2381,10 +2381,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2409,9 +2407,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2422,9 +2417,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '11295' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim2.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim2.yaml index eff8815ec..286e50bb7 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim2.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim2.yaml @@ -80,10 +80,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -109,9 +107,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -122,9 +117,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1097' + - '1219' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -144,6 +142,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -158,6 +157,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: product_category label: @@ -172,6 +172,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_0 - headers: - measureGroupHeaders: @@ -181,10 +182,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 79cc75e008835d67c0892da033ba0d18d6b882a8 + executionResult: 171c7bcf3143f2dce92c8b87d291359ec6026044:509a2df3ef4453e189b7c6e3593d774c5e4f56a687053765fe08fd17a78d870e - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/79cc75e008835d67c0892da033ba0d18d6b882a8/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/171c7bcf3143f2dce92c8b87d291359ec6026044%3A509a2df3ef4453e189b7c6e3593d774c5e4f56a687053765fe08fd17a78d870e/metadata body: null headers: Accept: @@ -211,10 +212,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -239,9 +238,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -252,9 +248,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2046' + - '2168' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -316,6 +315,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -330,6 +330,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: product_category label: @@ -344,6 +345,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_0 - headers: - measureGroupHeaders: @@ -353,7 +355,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 79cc75e008835d67c0892da033ba0d18d6b882a8 + executionResult: 171c7bcf3143f2dce92c8b87d291359ec6026044:509a2df3ef4453e189b7c6e3593d774c5e4f56a687053765fe08fd17a78d870e resultSpec: dimensions: - localIdentifier: dim_0 @@ -370,7 +372,7 @@ interactions: resultSize: 9257 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/79cc75e008835d67c0892da033ba0d18d6b882a8?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/171c7bcf3143f2dce92c8b87d291359ec6026044%3A509a2df3ef4453e189b7c6e3593d774c5e4f56a687053765fe08fd17a78d870e?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -397,10 +399,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -425,9 +425,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -438,9 +435,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '24936' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1568,7 +1568,7 @@ interactions: - 2 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/79cc75e008835d67c0892da033ba0d18d6b882a8?offset=100%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/171c7bcf3143f2dce92c8b87d291359ec6026044%3A509a2df3ef4453e189b7c6e3593d774c5e4f56a687053765fe08fd17a78d870e?offset=100%2C0&limit=100%2C100 body: null headers: Accept: @@ -1595,10 +1595,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1623,9 +1621,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1636,9 +1631,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '19988' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2568,7 +2566,7 @@ interactions: - 2 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/79cc75e008835d67c0892da033ba0d18d6b882a8/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/171c7bcf3143f2dce92c8b87d291359ec6026044%3A509a2df3ef4453e189b7c6e3593d774c5e4f56a687053765fe08fd17a78d870e/metadata body: null headers: Accept: @@ -2595,10 +2593,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2623,9 +2619,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2636,9 +2629,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2046' + - '2168' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -2700,6 +2696,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -2714,6 +2711,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: product_category label: @@ -2728,6 +2726,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_0 - headers: - measureGroupHeaders: @@ -2737,7 +2736,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 79cc75e008835d67c0892da033ba0d18d6b882a8 + executionResult: 171c7bcf3143f2dce92c8b87d291359ec6026044:509a2df3ef4453e189b7c6e3593d774c5e4f56a687053765fe08fd17a78d870e resultSpec: dimensions: - localIdentifier: dim_0 @@ -2754,7 +2753,7 @@ interactions: resultSize: 9257 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/79cc75e008835d67c0892da033ba0d18d6b882a8?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/171c7bcf3143f2dce92c8b87d291359ec6026044%3A509a2df3ef4453e189b7c6e3593d774c5e4f56a687053765fe08fd17a78d870e?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -2781,10 +2780,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2809,9 +2806,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2822,9 +2816,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '24936' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -3952,7 +3949,7 @@ interactions: - 2 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/79cc75e008835d67c0892da033ba0d18d6b882a8?offset=100%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/171c7bcf3143f2dce92c8b87d291359ec6026044%3A509a2df3ef4453e189b7c6e3593d774c5e4f56a687053765fe08fd17a78d870e?offset=100%2C0&limit=100%2C100 body: null headers: Accept: @@ -3979,10 +3976,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -4007,9 +4002,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -4020,9 +4012,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '19988' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim3.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim3.yaml index e868e4567..e81eb61ea 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim3.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim3.yaml @@ -80,10 +80,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -109,9 +107,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -122,9 +117,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1097' + - '1219' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:44 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -144,6 +142,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -160,6 +159,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -174,6 +174,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -181,10 +182,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: bc9f4b2fe4bacaaaa12b2c500de18a9fc83fd2a3 + executionResult: 8d73978484270670708ee7e4a4164474cbafda82:79bfd75d28572686ae4abccd5514a85fe8c8f845b8943633e1a87e221e024e4c - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/bc9f4b2fe4bacaaaa12b2c500de18a9fc83fd2a3/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/8d73978484270670708ee7e4a4164474cbafda82%3A79bfd75d28572686ae4abccd5514a85fe8c8f845b8943633e1a87e221e024e4c/metadata body: null headers: Accept: @@ -211,10 +212,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -239,9 +238,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -252,9 +248,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2046' + - '2168' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:44 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -316,6 +315,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -332,6 +332,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -346,6 +347,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -353,7 +355,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: bc9f4b2fe4bacaaaa12b2c500de18a9fc83fd2a3 + executionResult: 8d73978484270670708ee7e4a4164474cbafda82:79bfd75d28572686ae4abccd5514a85fe8c8f845b8943633e1a87e221e024e4c resultSpec: dimensions: - localIdentifier: dim_0 @@ -370,7 +372,7 @@ interactions: resultSize: 3136 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/bc9f4b2fe4bacaaaa12b2c500de18a9fc83fd2a3?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/8d73978484270670708ee7e4a4164474cbafda82%3A79bfd75d28572686ae4abccd5514a85fe8c8f845b8943633e1a87e221e024e4c?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -397,10 +399,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -425,9 +425,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -438,9 +435,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '21409' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:44 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1628,7 +1628,7 @@ interactions: - 96 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/bc9f4b2fe4bacaaaa12b2c500de18a9fc83fd2a3/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/8d73978484270670708ee7e4a4164474cbafda82%3A79bfd75d28572686ae4abccd5514a85fe8c8f845b8943633e1a87e221e024e4c/metadata body: null headers: Accept: @@ -1655,10 +1655,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1683,9 +1681,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1696,9 +1691,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '2046' + - '2168' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:45 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: afm: @@ -1760,6 +1758,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_0 - headers: - attributeHeader: @@ -1776,6 +1775,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: state label: @@ -1790,6 +1790,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - measureGroupHeaders: - localIdentifier: price - localIdentifier: order_amount @@ -1797,7 +1798,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: bc9f4b2fe4bacaaaa12b2c500de18a9fc83fd2a3 + executionResult: 8d73978484270670708ee7e4a4164474cbafda82:79bfd75d28572686ae4abccd5514a85fe8c8f845b8943633e1a87e221e024e4c resultSpec: dimensions: - localIdentifier: dim_0 @@ -1814,7 +1815,7 @@ interactions: resultSize: 3136 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/bc9f4b2fe4bacaaaa12b2c500de18a9fc83fd2a3?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/8d73978484270670708ee7e4a4164474cbafda82%3A79bfd75d28572686ae4abccd5514a85fe8c8f845b8943633e1a87e221e024e4c?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -1841,10 +1842,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1869,9 +1868,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1882,9 +1878,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '21409' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:45 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items.yaml index 406a1d3a1..267f21960 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items.yaml @@ -74,10 +74,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -103,9 +101,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -116,9 +111,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '846' + - '949' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:54 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -145,6 +143,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: category label: @@ -159,9 +158,10 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 376976cdde863a221d90654671b2de3b531a7c1f + executionResult: fd6d38efa3c86ef99f70adcce306b5564c0a3179:f55b65a437c691d4617287e69f8962cecc174080ba84b1f125123b6657b21fa5 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -193,10 +193,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -221,9 +219,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -232,7 +227,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:54 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -457,10 +455,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -776,15 +774,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -800,26 +798,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -828,10 +826,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1206,10 +1204,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1234,9 +1230,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1245,7 +1238,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:54 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1281,18 +1277,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1347,14 +1343,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1373,15 +1369,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1397,26 +1393,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1426,10 +1422,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1445,18 +1441,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1482,10 +1478,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1505,15 +1501,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1815,10 +1811,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1843,9 +1837,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1854,7 +1845,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:54 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1863,7 +1857,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1878,7 +1872,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1893,7 +1887,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1910,7 +1904,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1926,7 +1920,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1941,7 +1935,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1956,7 +1950,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1971,7 +1965,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1987,7 +1981,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2003,7 +1997,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2019,7 +2013,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2035,7 +2029,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2051,7 +2045,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2068,7 +2062,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2084,7 +2078,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2100,7 +2094,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2116,7 +2110,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2132,7 +2126,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2148,7 +2142,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2163,7 +2157,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2178,7 +2172,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2193,7 +2187,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2208,7 +2202,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2223,7 +2217,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2238,7 +2232,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/376976cdde863a221d90654671b2de3b531a7c1f?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fd6d38efa3c86ef99f70adcce306b5564c0a3179%3Af55b65a437c691d4617287e69f8962cecc174080ba84b1f125123b6657b21fa5?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: @@ -2265,10 +2259,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2293,9 +2285,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2306,9 +2295,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '3098' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:54 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items_no_index.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items_no_index.yaml index 406a1d3a1..1b1a13077 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items_no_index.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items_no_index.yaml @@ -74,10 +74,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -103,9 +101,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -116,9 +111,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '846' + - '949' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:55 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -145,6 +143,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: category label: @@ -159,9 +158,10 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 376976cdde863a221d90654671b2de3b531a7c1f + executionResult: fd6d38efa3c86ef99f70adcce306b5564c0a3179:f55b65a437c691d4617287e69f8962cecc174080ba84b1f125123b6657b21fa5 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -193,10 +193,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -221,9 +219,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -232,7 +227,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:55 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -457,10 +455,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -776,15 +774,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -800,26 +798,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -828,10 +826,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1206,10 +1204,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1234,9 +1230,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1245,7 +1238,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:55 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1281,18 +1277,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1347,14 +1343,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1373,15 +1369,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1397,26 +1393,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1426,10 +1422,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1445,18 +1441,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1482,10 +1478,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1505,15 +1501,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1815,10 +1811,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1843,9 +1837,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1854,7 +1845,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:55 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1863,7 +1857,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1878,7 +1872,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1893,7 +1887,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1910,7 +1904,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1926,7 +1920,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1941,7 +1935,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1956,7 +1950,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1971,7 +1965,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1987,7 +1981,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2003,7 +1997,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2019,7 +2013,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2035,7 +2029,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2051,7 +2045,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2068,7 +2062,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2084,7 +2078,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2100,7 +2094,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2116,7 +2110,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2132,7 +2126,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2148,7 +2142,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2163,7 +2157,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2178,7 +2172,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2193,7 +2187,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2208,7 +2202,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2223,7 +2217,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2238,7 +2232,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/376976cdde863a221d90654671b2de3b531a7c1f?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fd6d38efa3c86ef99f70adcce306b5564c0a3179%3Af55b65a437c691d4617287e69f8962cecc174080ba84b1f125123b6657b21fa5?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: @@ -2265,10 +2259,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2293,9 +2285,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2306,9 +2295,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '3098' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:55 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization.yaml index b87b5e971..d8265a977 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:52 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -174,7 +172,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -221,7 +219,7 @@ interactions: attributes: title: Revenue description: '' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -274,7 +272,7 @@ interactions: type: metric attributes: title: '% Revenue in Category' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -388,10 +386,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -416,9 +412,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -429,9 +422,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1132' + - '1235' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:52 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -462,6 +458,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - attributeHeader: localIdentifier: 192668bfb6a74e9ab7b5d1ce7cb68ea3 label: @@ -476,9 +473,10 @@ interactions: primaryLabel: id: product_name type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: e8eaf25de4300180f9d226a9396cc318eaec7db3 + executionResult: fc6841d2072ced4d1b63a351064ed4187dfdcf3a:d9d5ca3ec183ca6d8f2b663aee2a0022fa62608eadc38ad0763f27296333d1f2 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -510,10 +508,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -538,9 +534,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -549,7 +542,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:52 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -774,10 +770,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -1093,15 +1089,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1117,26 +1113,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1145,10 +1141,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1523,10 +1519,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1551,9 +1545,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1562,7 +1553,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:52 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1598,18 +1592,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1664,14 +1658,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1690,15 +1684,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1714,26 +1708,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1743,10 +1737,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1762,18 +1756,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1799,10 +1793,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1822,15 +1816,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -2132,10 +2126,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2160,9 +2152,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2171,7 +2160,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:53 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2180,7 +2172,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -2195,7 +2187,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -2210,7 +2202,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -2227,7 +2219,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -2243,7 +2235,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -2258,7 +2250,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -2273,7 +2265,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -2288,7 +2280,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2304,7 +2296,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2320,7 +2312,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2336,7 +2328,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2352,7 +2344,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2368,7 +2360,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2385,7 +2377,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2401,7 +2393,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2417,7 +2409,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2433,7 +2425,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2449,7 +2441,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2465,7 +2457,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2480,7 +2472,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2495,7 +2487,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2510,7 +2502,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2525,7 +2517,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2540,7 +2532,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2555,7 +2547,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/e8eaf25de4300180f9d226a9396cc318eaec7db3?offset=0%2C0&limit=4%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fc6841d2072ced4d1b63a351064ed4187dfdcf3a%3Ad9d5ca3ec183ca6d8f2b663aee2a0022fa62608eadc38ad0763f27296333d1f2?offset=0%2C0&limit=4%2C1000 body: null headers: Accept: @@ -2582,10 +2574,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2610,9 +2600,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2623,9 +2610,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '4024' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:53 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_date.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_date.yaml index 834abe525..f0514be6c 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_date.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_date.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:51 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -151,7 +149,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -194,7 +192,7 @@ interactions: type: metric attributes: title: '# of Active Customers' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -204,7 +202,7 @@ interactions: type: metric attributes: title: Revenue per Customer - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -297,10 +295,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -325,9 +321,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -338,9 +331,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '778' + - '843' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:51 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -374,7 +370,7 @@ interactions: pattern: MMM y localIdentifier: dim_1 links: - executionResult: 9ecdc38fa15341f7945753c15d14e78f80d61d33 + executionResult: 914d3869110b7d7874b28ae280d2b94ee8841409:bd6ce6d7a3a7ebfaf7d31f233e94ecbda6605005d94424663dc4b298634dafa0 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -406,10 +402,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -434,9 +428,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -445,7 +436,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:52 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -670,10 +664,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -989,15 +983,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1013,26 +1007,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1041,10 +1035,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1419,10 +1413,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1447,9 +1439,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1458,7 +1447,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:52 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1494,18 +1486,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1560,14 +1552,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1586,15 +1578,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1610,26 +1602,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1639,10 +1631,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1658,18 +1650,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1695,10 +1687,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1718,15 +1710,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -2028,10 +2020,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2056,9 +2046,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2067,7 +2054,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:52 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2076,7 +2066,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -2091,7 +2081,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -2106,7 +2096,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -2123,7 +2113,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -2139,7 +2129,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -2154,7 +2144,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -2169,7 +2159,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -2184,7 +2174,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2200,7 +2190,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2216,7 +2206,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2232,7 +2222,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2248,7 +2238,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2264,7 +2254,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2281,7 +2271,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2297,7 +2287,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2313,7 +2303,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2329,7 +2319,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2345,7 +2335,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2361,7 +2351,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2376,7 +2366,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2391,7 +2381,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2406,7 +2396,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2421,7 +2411,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2436,7 +2426,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2451,7 +2441,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/9ecdc38fa15341f7945753c15d14e78f80d61d33?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/914d3869110b7d7874b28ae280d2b94ee8841409%3Abd6ce6d7a3a7ebfaf7d31f233e94ecbda6605005d94424663dc4b298634dafa0?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: @@ -2478,10 +2468,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2506,9 +2494,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2519,36 +2504,39 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1402' + - '1376' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:52 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: - - - 65 - - 61 - - 70 - - 53 + - - 73 + - 56 + - 88 + - 65 + - 66 + - 65 + - 56 - 54 - - 58 - - 76 - - 95 - - 110 - - 91 - 59 - - 63 - - - 174.79036363636362 - - 150.10735849056604 - - 110.63396825396825 - - 164.63276595744682 - - 247.32333333333332 - - 113.54166666666667 - - 213.47925373134328 - - 167.58869047619046 - - 237.2503 - - 154.40761904761905 - - 307.9370909090909 - - 252.81866666666667 + - 76 + - 99 + - 107 + - - 177.2809375 + - 170.1824 + - 178.174875 + - 174.79036363636362 + - 146.0419298245614 + - 111.88542372881356 + - 184.2714 + - 228.0194117647059 + - 110.62510204081633 + - 208.63134328358208 + - 194.15443181818182 + - 215.70928571428573 dimensionHeaders: - headerGroups: - headers: @@ -2559,41 +2547,41 @@ interactions: - headerGroups: - headers: - attributeHeader: - labelValue: 2023-01 - primaryLabelValue: 2023-01 + labelValue: 2023-10 + primaryLabelValue: 2023-10 - attributeHeader: - labelValue: 2023-02 - primaryLabelValue: 2023-02 + labelValue: 2023-11 + primaryLabelValue: 2023-11 - attributeHeader: - labelValue: 2023-03 - primaryLabelValue: 2023-03 + labelValue: 2023-12 + primaryLabelValue: 2023-12 - attributeHeader: - labelValue: 2023-04 - primaryLabelValue: 2023-04 + labelValue: 2024-01 + primaryLabelValue: 2024-01 - attributeHeader: - labelValue: 2023-05 - primaryLabelValue: 2023-05 + labelValue: 2024-02 + primaryLabelValue: 2024-02 - attributeHeader: - labelValue: 2023-06 - primaryLabelValue: 2023-06 + labelValue: 2024-03 + primaryLabelValue: 2024-03 - attributeHeader: - labelValue: 2023-07 - primaryLabelValue: 2023-07 + labelValue: 2024-04 + primaryLabelValue: 2024-04 - attributeHeader: - labelValue: 2023-08 - primaryLabelValue: 2023-08 + labelValue: 2024-05 + primaryLabelValue: 2024-05 - attributeHeader: - labelValue: 2023-09 - primaryLabelValue: 2023-09 + labelValue: 2024-06 + primaryLabelValue: 2024-06 - attributeHeader: - labelValue: 2023-10 - primaryLabelValue: 2023-10 + labelValue: 2024-07 + primaryLabelValue: 2024-07 - attributeHeader: - labelValue: 2023-11 - primaryLabelValue: 2023-11 + labelValue: 2024-08 + primaryLabelValue: 2024-08 - attributeHeader: - labelValue: 2023-12 - primaryLabelValue: 2023-12 + labelValue: 2024-09 + primaryLabelValue: 2024-09 grandTotals: [] paging: count: diff --git a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_no_index.yaml b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_no_index.yaml index b87b5e971..a283be11f 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_no_index.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_no_index.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:53 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -174,7 +172,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 relationships: createdBy: data: @@ -221,7 +219,7 @@ interactions: attributes: title: Revenue description: '' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -274,7 +272,7 @@ interactions: type: metric attributes: title: '% Revenue in Category' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -388,10 +386,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -416,9 +412,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -429,9 +422,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1132' + - '1235' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:53 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -462,6 +458,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - attributeHeader: localIdentifier: 192668bfb6a74e9ab7b5d1ce7cb68ea3 label: @@ -476,9 +473,10 @@ interactions: primaryLabel: id: product_name type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: e8eaf25de4300180f9d226a9396cc318eaec7db3 + executionResult: fc6841d2072ced4d1b63a351064ed4187dfdcf3a:d9d5ca3ec183ca6d8f2b663aee2a0022fa62608eadc38ad0763f27296333d1f2 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -510,10 +508,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -538,9 +534,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -549,7 +542,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:53 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -774,10 +770,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -1093,15 +1089,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1117,26 +1113,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1145,10 +1141,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1523,10 +1519,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1551,9 +1545,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1562,7 +1553,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:53 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1598,18 +1592,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1664,14 +1658,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1690,15 +1684,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1714,26 +1708,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1743,10 +1737,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1762,18 +1756,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1799,10 +1793,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1822,15 +1816,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -2132,10 +2126,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2160,9 +2152,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2171,7 +2160,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:53 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2180,7 +2172,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -2195,7 +2187,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -2210,7 +2202,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -2227,7 +2219,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -2243,7 +2235,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -2258,7 +2250,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -2273,7 +2265,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -2288,7 +2280,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2304,7 +2296,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2320,7 +2312,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2336,7 +2328,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2352,7 +2344,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2368,7 +2360,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2385,7 +2377,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2401,7 +2393,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2417,7 +2409,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2433,7 +2425,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2449,7 +2441,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2465,7 +2457,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2480,7 +2472,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2495,7 +2487,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2510,7 +2502,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2525,7 +2517,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2540,7 +2532,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2555,7 +2547,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/e8eaf25de4300180f9d226a9396cc318eaec7db3?offset=0%2C0&limit=4%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fc6841d2072ced4d1b63a351064ed4187dfdcf3a%3Ad9d5ca3ec183ca6d8f2b663aee2a0022fa62608eadc38ad0763f27296333d1f2?offset=0%2C0&limit=4%2C1000 body: null headers: Accept: @@ -2582,10 +2574,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2610,9 +2600,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2623,9 +2610,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '4024' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:53 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/empty_indexed_dataframe.yaml b/gooddata-pandas/tests/dataframe/fixtures/empty_indexed_dataframe.yaml index 1250ecc7e..29b6ffb53 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/empty_indexed_dataframe.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/empty_indexed_dataframe.yaml @@ -67,10 +67,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -96,9 +94,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -109,9 +104,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '726' + - '810' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -140,9 +138,10 @@ interactions: primaryLabel: id: product_name type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 413569288aeead92c2806cb429e012131009467d + executionResult: aa1ce721a0cab0692da7b9b943c8af811cdbd3a1:df8cde15d7dd78d69c9e8b1f72edb067a5df0679727b66ca4f7cba3055acb88b - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -174,10 +173,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -202,9 +199,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -213,7 +207,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -438,10 +435,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -757,15 +754,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -781,26 +778,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -809,10 +806,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1187,10 +1184,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1215,9 +1210,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1226,7 +1218,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1262,18 +1257,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1328,14 +1323,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1354,15 +1349,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1378,26 +1373,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1407,10 +1402,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1426,18 +1421,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1463,10 +1458,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1486,15 +1481,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1796,10 +1791,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1824,9 +1817,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1835,7 +1825,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1844,7 +1837,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1859,7 +1852,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1874,7 +1867,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1891,7 +1884,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1907,7 +1900,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1922,7 +1915,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1937,7 +1930,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1952,7 +1945,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1968,7 +1961,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1984,7 +1977,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2000,7 +1993,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2016,7 +2009,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2032,7 +2025,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2049,7 +2042,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2065,7 +2058,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2081,7 +2074,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2097,7 +2090,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2113,7 +2106,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2129,7 +2122,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2144,7 +2137,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2159,7 +2152,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2174,7 +2167,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2189,7 +2182,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2204,7 +2197,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2219,7 +2212,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/413569288aeead92c2806cb429e012131009467d?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/aa1ce721a0cab0692da7b9b943c8af811cdbd3a1%3Adf8cde15d7dd78d69c9e8b1f72edb067a5df0679727b66ca4f7cba3055acb88b?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: @@ -2246,10 +2239,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2274,9 +2265,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2287,9 +2275,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '171' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-pandas/tests/dataframe/fixtures/empty_not_indexed_dataframe.yaml b/gooddata-pandas/tests/dataframe/fixtures/empty_not_indexed_dataframe.yaml index 1250ecc7e..b348557b7 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/empty_not_indexed_dataframe.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/empty_not_indexed_dataframe.yaml @@ -67,10 +67,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -96,9 +94,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -109,9 +104,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '726' + - '810' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:06 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -140,9 +138,10 @@ interactions: primaryLabel: id: product_name type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 413569288aeead92c2806cb429e012131009467d + executionResult: aa1ce721a0cab0692da7b9b943c8af811cdbd3a1:df8cde15d7dd78d69c9e8b1f72edb067a5df0679727b66ca4f7cba3055acb88b - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -174,10 +173,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -202,9 +199,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -213,7 +207,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:06 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -438,10 +435,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -757,15 +754,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -781,26 +778,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -809,10 +806,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1187,10 +1184,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1215,9 +1210,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1226,7 +1218,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:06 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1262,18 +1257,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1328,14 +1323,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1354,15 +1349,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1378,26 +1373,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1407,10 +1402,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1426,18 +1421,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1463,10 +1458,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1486,15 +1481,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1796,10 +1791,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1824,9 +1817,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1835,7 +1825,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:06 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1844,7 +1837,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1859,7 +1852,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1874,7 +1867,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1891,7 +1884,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1907,7 +1900,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1922,7 +1915,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1937,7 +1930,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1952,7 +1945,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1968,7 +1961,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1984,7 +1977,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2000,7 +1993,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2016,7 +2009,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2032,7 +2025,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2049,7 +2042,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2065,7 +2058,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2081,7 +2074,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2097,7 +2090,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2113,7 +2106,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2129,7 +2122,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2144,7 +2137,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2159,7 +2152,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2174,7 +2167,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2189,7 +2182,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2204,7 +2197,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2219,7 +2212,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/413569288aeead92c2806cb429e012131009467d?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/aa1ce721a0cab0692da7b9b943c8af811cdbd3a1%3Adf8cde15d7dd78d69c9e8b1f72edb067a5df0679727b66ca4f7cba3055acb88b?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: @@ -2246,10 +2239,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2274,9 +2265,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2287,9 +2275,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '171' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:06 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label.yaml b/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label.yaml index 6ec9ca4de..2ec23077e 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label.yaml @@ -92,10 +92,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -121,9 +119,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -134,9 +129,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1251' + - '1373' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:02 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -165,6 +163,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: 2660733dfc018f739b0d142f19af7126 label: @@ -179,6 +178,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: c1240b6ba5cdafa4dd2ef1c728f0cffa label: @@ -193,9 +193,10 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 36caf8c7a8db0eb822fc9f50a04b199db0477334 + executionResult: 55195c93f1fcc9483bbdd601154607592e7c75a5:ca8c2b1f7a776801a23222b7c9ea22e8a2fa9c34d15b13e6d6639ff417cefe99 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -227,10 +228,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -255,9 +254,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -266,7 +262,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:02 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -491,10 +490,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -810,15 +809,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -834,26 +833,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -862,10 +861,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1240,10 +1239,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1268,9 +1265,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1279,7 +1273,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1315,18 +1312,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1381,14 +1378,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1407,15 +1404,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1431,26 +1428,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1460,10 +1457,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1479,18 +1476,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1516,10 +1513,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1539,15 +1536,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1849,10 +1846,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1877,9 +1872,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1888,7 +1880,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1897,7 +1892,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1912,7 +1907,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1927,7 +1922,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1944,7 +1939,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1960,7 +1955,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1975,7 +1970,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1990,7 +1985,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -2005,7 +2000,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2021,7 +2016,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2037,7 +2032,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2053,7 +2048,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2069,7 +2064,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2085,7 +2080,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2102,7 +2097,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2118,7 +2113,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2134,7 +2129,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2150,7 +2145,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2166,7 +2161,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2182,7 +2177,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2197,7 +2192,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2212,7 +2207,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2227,7 +2222,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2242,7 +2237,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2257,7 +2252,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2272,7 +2267,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/36caf8c7a8db0eb822fc9f50a04b199db0477334?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/55195c93f1fcc9483bbdd601154607592e7c75a5%3Aca8c2b1f7a776801a23222b7c9ea22e8a2fa9c34d15b13e6d6639ff417cefe99?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: @@ -2299,10 +2294,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2327,9 +2320,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2340,9 +2330,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '1005' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label_reuse.yaml b/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label_reuse.yaml index 33f3fd484..a1b32dcc3 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label_reuse.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label_reuse.yaml @@ -81,10 +81,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -110,9 +108,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -123,9 +118,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '984' + - '1087' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -154,6 +152,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: c1240b6ba5cdafa4dd2ef1c728f0cffa label: @@ -168,9 +167,10 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 9a116c1726458ad14235ba372765bb913e063b6a + executionResult: 9b96afa616e30f9dbd2a5a0993c34b56664050eb:8b12b07fbcbd5d86d42e966fbc584aadb6cec5498561eeb7a421bdd5d055b6b6 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -202,10 +202,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -230,9 +228,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -241,7 +236,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -466,10 +464,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -785,15 +783,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -809,26 +807,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -837,10 +835,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1215,10 +1213,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1243,9 +1239,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1254,7 +1247,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1290,18 +1286,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1356,14 +1352,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1382,15 +1378,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1406,26 +1402,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1435,10 +1431,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1454,18 +1450,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1491,10 +1487,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1514,15 +1510,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1824,10 +1820,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1852,9 +1846,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1863,7 +1854,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1872,7 +1866,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1887,7 +1881,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1902,7 +1896,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1919,7 +1913,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1935,7 +1929,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1950,7 +1944,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1965,7 +1959,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1980,7 +1974,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1996,7 +1990,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2012,7 +2006,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2028,7 +2022,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2044,7 +2038,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2060,7 +2054,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2077,7 +2071,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2093,7 +2087,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2109,7 +2103,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2125,7 +2119,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2141,7 +2135,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2157,7 +2151,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2172,7 +2166,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2187,7 +2181,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2202,7 +2196,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2217,7 +2211,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2232,7 +2226,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2247,7 +2241,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/9a116c1726458ad14235ba372765bb913e063b6a?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/9b96afa616e30f9dbd2a5a0993c34b56664050eb%3A8b12b07fbcbd5d86d42e966fbc584aadb6cec5498561eeb7a421bdd5d055b6b6?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: @@ -2274,10 +2268,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2302,9 +2294,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2315,9 +2304,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '915' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics.yaml b/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics.yaml index 51f79e17f..5feea65fb 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics.yaml @@ -73,10 +73,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -102,9 +100,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -115,9 +110,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '984' + - '1087' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:00 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -146,6 +144,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: c1240b6ba5cdafa4dd2ef1c728f0cffa label: @@ -160,9 +159,10 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 31fb0b95cbd559ccdd7f2a5428a9bb1549dcc3b5 + executionResult: 19ae81638464b2daf6cba130d37743784f15a48c:810a2d55934e32441bd4a55456d8c933f79095528d50029b9da50e1caf804211 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -194,10 +194,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -222,9 +220,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -233,7 +228,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:00 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -458,10 +456,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -777,15 +775,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -801,26 +799,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -829,10 +827,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1207,10 +1205,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1235,9 +1231,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1246,7 +1239,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:00 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1282,18 +1278,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1348,14 +1344,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1374,15 +1370,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1398,26 +1394,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1427,10 +1423,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1446,18 +1442,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1483,10 +1479,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1506,15 +1502,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1816,10 +1812,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1844,9 +1838,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1855,7 +1846,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:00 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1864,7 +1858,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1879,7 +1873,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1894,7 +1888,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1911,7 +1905,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1927,7 +1921,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1942,7 +1936,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1957,7 +1951,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1972,7 +1966,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1988,7 +1982,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2004,7 +1998,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2020,7 +2014,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2036,7 +2030,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2052,7 +2046,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2069,7 +2063,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2085,7 +2079,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2101,7 +2095,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2117,7 +2111,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2133,7 +2127,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2149,7 +2143,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2164,7 +2158,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2179,7 +2173,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2194,7 +2188,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2209,7 +2203,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2224,7 +2218,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2239,7 +2233,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/31fb0b95cbd559ccdd7f2a5428a9bb1549dcc3b5?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/19ae81638464b2daf6cba130d37743784f15a48c%3A810a2d55934e32441bd4a55456d8c933f79095528d50029b9da50e1caf804211?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: @@ -2266,10 +2260,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2294,9 +2286,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2307,9 +2296,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '3016' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:00 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics_and_label.yaml b/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics_and_label.yaml index 48fee0e3f..98fdd8ee1 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics_and_label.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics_and_label.yaml @@ -79,10 +79,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -108,9 +106,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -121,9 +116,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1251' + - '1373' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:01 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -152,6 +150,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: 2660733dfc018f739b0d142f19af7126 label: @@ -166,6 +165,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: c1240b6ba5cdafa4dd2ef1c728f0cffa label: @@ -180,9 +180,10 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: aa3458556be7d37376a105af32e11068fa657706 + executionResult: e35d89a8a95798a50ed36d491b881c7d6bf5a24f:a10fc67cbba22a4cd87a84de0e4d0b25b183eba9ce754539a3241dc5490ff5bd - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -214,10 +215,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -242,9 +241,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -253,7 +249,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:01 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -478,10 +477,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -797,15 +796,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -821,26 +820,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -849,10 +848,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1227,10 +1226,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1255,9 +1252,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1266,7 +1260,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:01 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1302,18 +1299,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1368,14 +1365,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1394,15 +1391,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1418,26 +1415,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1447,10 +1444,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1466,18 +1463,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1503,10 +1500,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1526,15 +1523,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1836,10 +1833,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1864,9 +1859,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1875,7 +1867,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:01 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1884,7 +1879,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1899,7 +1894,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1914,7 +1909,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1931,7 +1926,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1947,7 +1942,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1962,7 +1957,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1977,7 +1972,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1992,7 +1987,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2008,7 +2003,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2024,7 +2019,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2040,7 +2035,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2056,7 +2051,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2072,7 +2067,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2089,7 +2084,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2105,7 +2100,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2121,7 +2116,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2137,7 +2132,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2153,7 +2148,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2169,7 +2164,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2184,7 +2179,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2199,7 +2194,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2214,7 +2209,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2229,7 +2224,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2244,7 +2239,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2259,7 +2254,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/aa3458556be7d37376a105af32e11068fa657706?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/e35d89a8a95798a50ed36d491b881c7d6bf5a24f%3Aa10fc67cbba22a4cd87a84de0e4d0b25b183eba9ce754539a3241dc5490ff5bd?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: @@ -2286,10 +2281,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2314,9 +2307,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2327,9 +2317,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '43407' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:01 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/not_indexed_filtered_metrics_and_labels.yaml b/gooddata-pandas/tests/dataframe/fixtures/not_indexed_filtered_metrics_and_labels.yaml index a4e543f48..8a727c0bc 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/not_indexed_filtered_metrics_and_labels.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/not_indexed_filtered_metrics_and_labels.yaml @@ -75,10 +75,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -104,9 +102,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -117,9 +112,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '675' + - '759' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:06 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -148,9 +146,10 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 2b9eca9d55879e978c1e65e184a1eab17d376f77 + executionResult: a59b1f439d281c8f4c92d1ca02ee4955e24d2bb5:6af97567e60c2b245f6749a8bf2de7db05109541e3e850aa8e1f0a0043ee1b97 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -182,10 +181,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -210,9 +207,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -221,7 +215,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:06 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -446,10 +443,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -765,15 +762,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -789,26 +786,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -817,10 +814,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1195,10 +1192,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1223,9 +1218,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1234,7 +1226,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:06 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1270,18 +1265,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1336,14 +1331,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1362,15 +1357,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1386,26 +1381,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1415,10 +1410,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1434,18 +1429,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1471,10 +1466,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1494,15 +1489,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1804,10 +1799,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1832,9 +1825,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1843,7 +1833,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:06 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1852,7 +1845,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1867,7 +1860,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1882,7 +1875,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1899,7 +1892,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1915,7 +1908,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1930,7 +1923,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1945,7 +1938,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1960,7 +1953,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1976,7 +1969,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1992,7 +1985,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2008,7 +2001,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2024,7 +2017,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2040,7 +2033,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2057,7 +2050,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2073,7 +2066,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2089,7 +2082,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2105,7 +2098,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2121,7 +2114,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2137,7 +2130,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2152,7 +2145,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2167,7 +2160,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2182,7 +2175,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2197,7 +2190,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2212,7 +2205,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2227,7 +2220,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2b9eca9d55879e978c1e65e184a1eab17d376f77?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/a59b1f439d281c8f4c92d1ca02ee4955e24d2bb5%3A6af97567e60c2b245f6749a8bf2de7db05109541e3e850aa8e1f0a0043ee1b97?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: @@ -2254,10 +2247,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2282,9 +2273,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2295,9 +2283,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '333' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:06 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics.yaml b/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics.yaml index c178dfd53..52bcef36d 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics.yaml @@ -59,10 +59,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -88,9 +86,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -101,9 +96,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '363' + - '428' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -118,7 +116,7 @@ interactions: name: '# of Orders' localIdentifier: dim_0 links: - executionResult: e1f425a368f63014c1ca336b598093a300488d31 + executionResult: 19355bdaea0fdbb3429670442dbaf217d2c33b5e:76042d91ae1e8be9c18260379b4de5ad8ba7a91d8dbb50b393b7390a6ef6a2ab - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -150,10 +148,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -178,9 +174,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -189,7 +182,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -414,10 +410,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -733,15 +729,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -757,26 +753,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -785,10 +781,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1163,10 +1159,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1191,9 +1185,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1202,7 +1193,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1238,18 +1232,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1304,14 +1298,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1330,15 +1324,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1354,26 +1348,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1383,10 +1377,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1402,18 +1396,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1439,10 +1433,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1462,15 +1456,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1772,10 +1766,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1800,9 +1792,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1811,7 +1800,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:05 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1820,7 +1812,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1835,7 +1827,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1850,7 +1842,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1867,7 +1859,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1883,7 +1875,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1898,7 +1890,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1913,7 +1905,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1928,7 +1920,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1944,7 +1936,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1960,7 +1952,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1976,7 +1968,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1992,7 +1984,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2008,7 +2000,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2025,7 +2017,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2041,7 +2033,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2057,7 +2049,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2073,7 +2065,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2089,7 +2081,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2105,7 +2097,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2120,7 +2112,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2135,7 +2127,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2150,7 +2142,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2165,7 +2157,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2180,7 +2172,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2195,7 +2187,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/e1f425a368f63014c1ca336b598093a300488d31?offset=0&limit=2 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/19355bdaea0fdbb3429670442dbaf217d2c33b5e%3A76042d91ae1e8be9c18260379b4de5ad8ba7a91d8dbb50b393b7390a6ef6a2ab?offset=0&limit=2 body: null headers: Accept: @@ -2222,10 +2214,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2250,9 +2240,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2263,9 +2250,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '220' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:05 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics_and_labels.yaml b/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics_and_labels.yaml index 404fe40c0..8d6118141 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics_and_labels.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics_and_labels.yaml @@ -67,10 +67,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -96,9 +94,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -109,9 +104,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '675' + - '759' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:05 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -140,9 +138,10 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 16c28326d0b711626fc10c395655b65a74df769d + executionResult: 3df817329419d7bf529b9b28459d998d6f72decc:55cc07d1a544de968c67ca461388d51fc407d07477c5b040db9450fbc3c08f96 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -174,10 +173,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -202,9 +199,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -213,7 +207,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:05 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -438,10 +435,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -757,15 +754,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -781,26 +778,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -809,10 +806,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1187,10 +1184,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1215,9 +1210,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1226,7 +1218,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:05 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1262,18 +1257,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1328,14 +1323,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1354,15 +1349,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1378,26 +1373,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1407,10 +1402,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1426,18 +1421,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1463,10 +1458,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1486,15 +1481,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1796,10 +1791,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1824,9 +1817,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1835,7 +1825,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:05 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1844,7 +1837,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1859,7 +1852,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1874,7 +1867,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1891,7 +1884,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1907,7 +1900,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1922,7 +1915,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1937,7 +1930,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1952,7 +1945,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1968,7 +1961,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1984,7 +1977,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2000,7 +1993,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2016,7 +2009,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2032,7 +2025,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2049,7 +2042,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2065,7 +2058,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2081,7 +2074,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2097,7 +2090,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2113,7 +2106,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2129,7 +2122,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2144,7 +2137,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2159,7 +2152,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2174,7 +2167,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2189,7 +2182,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2204,7 +2197,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2219,7 +2212,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/16c28326d0b711626fc10c395655b65a74df769d?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/3df817329419d7bf529b9b28459d998d6f72decc%3A55cc07d1a544de968c67ca461388d51fc407d07477c5b040db9450fbc3c08f96?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: @@ -2246,10 +2239,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2274,9 +2265,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2287,9 +2275,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '676' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:05 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/simple_index_filtered_metrics_and_label.yaml b/gooddata-pandas/tests/dataframe/fixtures/simple_index_filtered_metrics_and_label.yaml index 333f165fa..e001fc151 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/simple_index_filtered_metrics_and_label.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/simple_index_filtered_metrics_and_label.yaml @@ -112,10 +112,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -141,9 +139,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -154,9 +149,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '906' + - '1009' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:00 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -181,6 +179,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - attributeHeader: localIdentifier: 2660733dfc018f739b0d142f19af7126 label: @@ -195,9 +194,10 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 2dc4b87926e4a6dca07bd348d5b9e18ee5aded53 + executionResult: fe28843eb2b2e1379da995a84987e4ae47db4aa6:fdfc687ab8baa65c3068010ebcc51be78c48c0f373753b8034443fe961e6f4bf - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -229,10 +229,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -257,9 +255,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -268,7 +263,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:00 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -493,10 +491,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -812,15 +810,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -836,26 +834,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -864,10 +862,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1242,10 +1240,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1270,9 +1266,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1281,7 +1274,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:00 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1317,18 +1313,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1383,14 +1379,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1409,15 +1405,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1433,26 +1429,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1462,10 +1458,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1481,18 +1477,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1518,10 +1514,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1541,15 +1537,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1851,10 +1847,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1879,9 +1873,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1890,7 +1881,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:00 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1899,7 +1893,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1914,7 +1908,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1929,7 +1923,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1946,7 +1940,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1962,7 +1956,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1977,7 +1971,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1992,7 +1986,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -2007,7 +2001,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2023,7 +2017,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2039,7 +2033,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2055,7 +2049,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2071,7 +2065,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2087,7 +2081,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2104,7 +2098,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2120,7 +2114,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2136,7 +2130,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2152,7 +2146,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2168,7 +2162,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2184,7 +2178,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2199,7 +2193,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2214,7 +2208,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2229,7 +2223,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2244,7 +2238,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2259,7 +2253,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2274,7 +2268,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2dc4b87926e4a6dca07bd348d5b9e18ee5aded53?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fe28843eb2b2e1379da995a84987e4ae47db4aa6%3Afdfc687ab8baa65c3068010ebcc51be78c48c0f373753b8034443fe961e6f4bf?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: @@ -2301,10 +2295,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2329,9 +2321,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2342,9 +2331,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '426' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:00 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics.yaml b/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics.yaml index 34705d664..a779961a0 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics.yaml @@ -65,10 +65,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -94,9 +92,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -107,9 +102,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '851' + - '954' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:55 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -133,6 +131,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: c1240b6ba5cdafa4dd2ef1c728f0cffa label: @@ -147,9 +146,10 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 2fea0f7a896ce17184b63b7ca0f478b6eae05913 + executionResult: b8c4e024cef580c2047656684fcb6165793d15eb:64b59c167b140f1eb0a626ffd101b132940a8490ddd62034f1ac52478d757463 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -181,10 +181,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -209,9 +207,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -220,7 +215,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:55 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -445,10 +443,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -764,15 +762,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -788,26 +786,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -816,10 +814,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1194,10 +1192,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1222,9 +1218,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1233,7 +1226,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:55 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1269,18 +1265,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1335,14 +1331,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1361,15 +1357,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1385,26 +1381,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1414,10 +1410,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1433,18 +1429,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1470,10 +1466,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1493,15 +1489,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1803,10 +1799,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1831,9 +1825,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1842,7 +1833,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:56 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1851,7 +1845,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1866,7 +1860,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1881,7 +1875,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1898,7 +1892,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1914,7 +1908,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1929,7 +1923,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1944,7 +1938,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1959,7 +1953,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1975,7 +1969,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1991,7 +1985,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2007,7 +2001,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2023,7 +2017,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2039,7 +2033,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2056,7 +2050,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2072,7 +2066,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2088,7 +2082,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2104,7 +2098,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2120,7 +2114,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2136,7 +2130,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2151,7 +2145,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2166,7 +2160,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2181,7 +2175,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2196,7 +2190,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2211,7 +2205,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2226,7 +2220,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2fea0f7a896ce17184b63b7ca0f478b6eae05913?offset=0%2C0&limit=1%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/b8c4e024cef580c2047656684fcb6165793d15eb%3A64b59c167b140f1eb0a626ffd101b132940a8490ddd62034f1ac52478d757463?offset=0%2C0&limit=1%2C1000 body: null headers: Accept: @@ -2253,10 +2247,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2281,9 +2273,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2294,9 +2283,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '2911' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:56 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_and_label.yaml b/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_and_label.yaml index d01f95ec6..f583a015d 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_and_label.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_and_label.yaml @@ -69,10 +69,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -98,9 +96,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -111,9 +106,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '597' + - '681' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:59 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -138,9 +136,10 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: cb1229362d8a5b37f04d9f2a882ab7cdbaf55d00 + executionResult: 1269198907b9a263301cc1af45acd14ebe0315ff:da5ff740155829813522e99907abcf9dfac4085c987a250fd833954ab958b268 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -172,10 +171,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -200,9 +197,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -211,7 +205,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:59 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -436,10 +433,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -755,15 +752,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -779,26 +776,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -807,10 +804,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1185,10 +1182,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1213,9 +1208,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1224,7 +1216,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:59 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1260,18 +1255,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1326,14 +1321,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1352,15 +1347,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1376,26 +1371,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1405,10 +1400,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1424,18 +1419,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1461,10 +1456,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1484,15 +1479,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1794,10 +1789,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1822,9 +1815,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1833,7 +1823,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:59 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1842,7 +1835,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1857,7 +1850,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1872,7 +1865,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1889,7 +1882,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1905,7 +1898,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1920,7 +1913,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1935,7 +1928,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1950,7 +1943,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1966,7 +1959,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1982,7 +1975,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1998,7 +1991,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2014,7 +2007,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2030,7 +2023,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2047,7 +2040,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2063,7 +2056,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2079,7 +2072,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2095,7 +2088,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2111,7 +2104,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2127,7 +2120,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2142,7 +2135,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2157,7 +2150,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2172,7 +2165,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2187,7 +2180,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2202,7 +2195,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2217,7 +2210,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/cb1229362d8a5b37f04d9f2a882ab7cdbaf55d00?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/1269198907b9a263301cc1af45acd14ebe0315ff%3Ada5ff740155829813522e99907abcf9dfac4085c987a250fd833954ab958b268?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: @@ -2244,10 +2237,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2272,9 +2263,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2285,9 +2273,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '689' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:59 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_no_duplicate.yaml b/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_no_duplicate.yaml index d01f95ec6..dc4b59816 100644 --- a/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_no_duplicate.yaml +++ b/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_no_duplicate.yaml @@ -69,10 +69,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -98,9 +96,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -111,9 +106,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '597' + - '681' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:58 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -138,9 +136,10 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: cb1229362d8a5b37f04d9f2a882ab7cdbaf55d00 + executionResult: 1269198907b9a263301cc1af45acd14ebe0315ff:da5ff740155829813522e99907abcf9dfac4085c987a250fd833954ab958b268 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -172,10 +171,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -200,9 +197,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -211,7 +205,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:59 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -436,10 +433,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -755,15 +752,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -779,26 +776,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -807,10 +804,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1185,10 +1182,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1213,9 +1208,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1224,7 +1216,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:59 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1260,18 +1255,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1326,14 +1321,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1352,15 +1347,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1376,26 +1371,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1405,10 +1400,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1424,18 +1419,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1461,10 +1456,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1484,15 +1479,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1794,10 +1789,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1822,9 +1815,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1833,7 +1823,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:59 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1842,7 +1835,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1857,7 +1850,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1872,7 +1865,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1889,7 +1882,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1905,7 +1898,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1920,7 +1913,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1935,7 +1928,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1950,7 +1943,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1966,7 +1959,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1982,7 +1975,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1998,7 +1991,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2014,7 +2007,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2030,7 +2023,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2047,7 +2040,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2063,7 +2056,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2079,7 +2072,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2095,7 +2088,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2111,7 +2104,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2127,7 +2120,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2142,7 +2135,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2157,7 +2150,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2172,7 +2165,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2187,7 +2180,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2202,7 +2195,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2217,7 +2210,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/cb1229362d8a5b37f04d9f2a882ab7cdbaf55d00?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/1269198907b9a263301cc1af45acd14ebe0315ff%3Ada5ff740155829813522e99907abcf9dfac4085c987a250fd833954ab958b268?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: @@ -2244,10 +2237,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2272,9 +2263,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2285,9 +2273,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '689' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:16:59 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/series/fixtures/multi_index_filtered_series.yaml b/gooddata-pandas/tests/series/fixtures/multi_index_filtered_series.yaml index 36a5f9418..8370c12ea 100644 --- a/gooddata-pandas/tests/series/fixtures/multi_index_filtered_series.yaml +++ b/gooddata-pandas/tests/series/fixtures/multi_index_filtered_series.yaml @@ -73,10 +73,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -102,9 +100,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -115,9 +110,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '851' + - '954' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -141,6 +139,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: c1240b6ba5cdafa4dd2ef1c728f0cffa label: @@ -155,9 +154,10 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 3847ab4d023f4d1283bd0ae66f389639b1f3621a + executionResult: 4a824a2a4acadf7869fe9a152f0b8f4303a228dd:5d69d34f308a2b7103a93a2f06e685e87a1284f947678480995ceed3c87f15d8 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -189,10 +189,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -217,9 +215,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -228,7 +223,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -453,10 +451,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -772,15 +770,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -796,26 +794,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -824,10 +822,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1202,10 +1200,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1230,9 +1226,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1241,7 +1234,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1277,18 +1273,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1343,14 +1339,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1369,15 +1365,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1393,26 +1389,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1422,10 +1418,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1441,18 +1437,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1478,10 +1474,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1501,15 +1497,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1811,10 +1807,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1839,9 +1833,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1850,7 +1841,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1859,7 +1853,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1874,7 +1868,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1889,7 +1883,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1906,7 +1900,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1922,7 +1916,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1937,7 +1931,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1952,7 +1946,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1967,7 +1961,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1983,7 +1977,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1999,7 +1993,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2015,7 +2009,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2031,7 +2025,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2047,7 +2041,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2064,7 +2058,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2080,7 +2074,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2096,7 +2090,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2112,7 +2106,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2128,7 +2122,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2144,7 +2138,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2159,7 +2153,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2174,7 +2168,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2189,7 +2183,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2204,7 +2198,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2219,7 +2213,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2234,7 +2228,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/3847ab4d023f4d1283bd0ae66f389639b1f3621a?offset=0%2C0&limit=1%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4a824a2a4acadf7869fe9a152f0b8f4303a228dd%3A5d69d34f308a2b7103a93a2f06e685e87a1284f947678480995ceed3c87f15d8?offset=0%2C0&limit=1%2C1000 body: null headers: Accept: @@ -2261,10 +2255,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2289,9 +2281,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2302,9 +2291,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '1014' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/series/fixtures/multi_index_metric_series.yaml b/gooddata-pandas/tests/series/fixtures/multi_index_metric_series.yaml index 34705d664..e5e136030 100644 --- a/gooddata-pandas/tests/series/fixtures/multi_index_metric_series.yaml +++ b/gooddata-pandas/tests/series/fixtures/multi_index_metric_series.yaml @@ -65,10 +65,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -94,9 +92,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -107,9 +102,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '851' + - '954' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:08 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -133,6 +131,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT - attributeHeader: localIdentifier: c1240b6ba5cdafa4dd2ef1c728f0cffa label: @@ -147,9 +146,10 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: 2fea0f7a896ce17184b63b7ca0f478b6eae05913 + executionResult: b8c4e024cef580c2047656684fcb6165793d15eb:64b59c167b140f1eb0a626ffd101b132940a8490ddd62034f1ac52478d757463 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -181,10 +181,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -209,9 +207,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -220,7 +215,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:08 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -445,10 +443,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -764,15 +762,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -788,26 +786,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -816,10 +814,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1194,10 +1192,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1222,9 +1218,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1233,7 +1226,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:08 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1269,18 +1265,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1335,14 +1331,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1361,15 +1357,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1385,26 +1381,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1414,10 +1410,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1433,18 +1429,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1470,10 +1466,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1493,15 +1489,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1803,10 +1799,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1831,9 +1825,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1842,7 +1833,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:08 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1851,7 +1845,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1866,7 +1860,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1881,7 +1875,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1898,7 +1892,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1914,7 +1908,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1929,7 +1923,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1944,7 +1938,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1959,7 +1953,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1975,7 +1969,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1991,7 +1985,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2007,7 +2001,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2023,7 +2017,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2039,7 +2033,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2056,7 +2050,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2072,7 +2066,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2088,7 +2082,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2104,7 +2098,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2120,7 +2114,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2136,7 +2130,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2151,7 +2145,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2166,7 +2160,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2181,7 +2175,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2196,7 +2190,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2211,7 +2205,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2226,7 +2220,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2fea0f7a896ce17184b63b7ca0f478b6eae05913?offset=0%2C0&limit=1%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/b8c4e024cef580c2047656684fcb6165793d15eb%3A64b59c167b140f1eb0a626ffd101b132940a8490ddd62034f1ac52478d757463?offset=0%2C0&limit=1%2C1000 body: null headers: Accept: @@ -2253,10 +2247,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2281,9 +2273,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2294,9 +2283,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '2911' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:08 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/series/fixtures/not_indexed_filtered_metric_series.yaml b/gooddata-pandas/tests/series/fixtures/not_indexed_filtered_metric_series.yaml index 2b08516d1..1e90afd79 100644 --- a/gooddata-pandas/tests/series/fixtures/not_indexed_filtered_metric_series.yaml +++ b/gooddata-pandas/tests/series/fixtures/not_indexed_filtered_metric_series.yaml @@ -51,10 +51,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -80,9 +78,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -93,9 +88,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '230' + - '295' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -105,7 +103,7 @@ interactions: - localIdentifier: 27c4b665b9d047b1a66a149714f1c596 localIdentifier: dim_0 links: - executionResult: ce1838342b2d2b11850932df643030be656f9923 + executionResult: 194a3dc02e32003ac0014bd476d852ca58e18301:889ccca113f8f1486e64ebb0ba41af2cc6260ee27f9b4ec7c0c4a35ddcd76033 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -137,10 +135,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -165,9 +161,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -176,7 +169,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -401,10 +397,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -720,15 +716,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -744,26 +740,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -772,10 +768,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1150,10 +1146,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1178,9 +1172,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1189,7 +1180,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1225,18 +1219,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1291,14 +1285,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1317,15 +1311,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1341,26 +1335,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1370,10 +1364,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1389,18 +1383,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1426,10 +1420,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1449,15 +1443,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1759,10 +1753,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1787,9 +1779,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1798,7 +1787,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1807,7 +1799,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1822,7 +1814,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1837,7 +1829,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1854,7 +1846,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1870,7 +1862,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1885,7 +1877,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1900,7 +1892,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1915,7 +1907,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1931,7 +1923,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1947,7 +1939,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1963,7 +1955,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1979,7 +1971,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -1995,7 +1987,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2012,7 +2004,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2028,7 +2020,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2044,7 +2036,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2060,7 +2052,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2076,7 +2068,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2092,7 +2084,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2107,7 +2099,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2122,7 +2114,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2137,7 +2129,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2152,7 +2144,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2167,7 +2159,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2182,7 +2174,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/ce1838342b2d2b11850932df643030be656f9923?offset=0&limit=1 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/194a3dc02e32003ac0014bd476d852ca58e18301%3A889ccca113f8f1486e64ebb0ba41af2cc6260ee27f9b4ec7c0c4a35ddcd76033?offset=0&limit=1 body: null headers: Accept: @@ -2209,10 +2201,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2237,9 +2227,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2250,9 +2237,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '176' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2328,10 +2318,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2356,9 +2344,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2369,9 +2354,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '230' + - '295' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -2381,7 +2369,7 @@ interactions: - localIdentifier: 27c4b665b9d047b1a66a149714f1c596 localIdentifier: dim_0 links: - executionResult: 5a6753bba63e87e6994a2edde9c8ecbad6144016 + executionResult: 4563365220becb65dcf1ff59ffa0b41e8226ddb0:d7e381fd3ef7005ce4a3e9fb2ba4279d2c9bf617ed0cffa238a3b20a26df3199 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -2413,10 +2401,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2441,9 +2427,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2452,7 +2435,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2677,10 +2663,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -2996,15 +2982,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -3020,26 +3006,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -3048,10 +3034,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -3426,10 +3412,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3454,9 +3438,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -3465,7 +3446,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -3501,18 +3485,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -3567,14 +3551,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -3593,15 +3577,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -3617,26 +3601,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -3646,10 +3630,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -3665,18 +3649,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -3702,10 +3686,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -3725,15 +3709,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -4035,10 +4019,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -4063,9 +4045,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -4074,7 +4053,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:12 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -4083,7 +4065,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -4098,7 +4080,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -4113,7 +4095,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -4130,7 +4112,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -4146,7 +4128,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -4161,7 +4143,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -4176,7 +4158,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -4191,7 +4173,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -4207,7 +4189,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -4223,7 +4205,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -4239,7 +4221,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -4255,7 +4237,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -4271,7 +4253,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -4288,7 +4270,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -4304,7 +4286,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -4320,7 +4302,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -4336,7 +4318,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -4352,7 +4334,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -4368,7 +4350,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -4383,7 +4365,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -4398,7 +4380,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -4413,7 +4395,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -4428,7 +4410,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -4443,7 +4425,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -4458,7 +4440,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/5a6753bba63e87e6994a2edde9c8ecbad6144016?offset=0&limit=1 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4563365220becb65dcf1ff59ffa0b41e8226ddb0%3Ad7e381fd3ef7005ce4a3e9fb2ba4279d2c9bf617ed0cffa238a3b20a26df3199?offset=0&limit=1 body: null headers: Accept: @@ -4485,10 +4467,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -4513,9 +4493,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -4526,9 +4503,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '171' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:12 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/series/fixtures/not_indexed_label_series.yaml b/gooddata-pandas/tests/series/fixtures/not_indexed_label_series.yaml index 09725fdcd..402e2d039 100644 --- a/gooddata-pandas/tests/series/fixtures/not_indexed_label_series.yaml +++ b/gooddata-pandas/tests/series/fixtures/not_indexed_label_series.yaml @@ -46,10 +46,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -75,9 +73,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -88,9 +83,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '421' + - '505' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:10 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -110,9 +108,10 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 links: - executionResult: 846bf5e2792b2f4661048c0c9dcf9ba4bc970302 + executionResult: b01dd1dcd1902e33855cab87910ad0c45d1aed5b:8e31f63830b9ee0e71ff0ca7a94f10348da0254d7b5ca40d5d3e73bf496ebc18 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -144,10 +143,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -172,9 +169,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -183,7 +177,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:10 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -408,10 +405,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -727,15 +724,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -751,26 +748,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -779,10 +776,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1157,10 +1154,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1185,9 +1180,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1196,7 +1188,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:10 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1232,18 +1227,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1298,14 +1293,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1324,15 +1319,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1348,26 +1343,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1377,10 +1372,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1396,18 +1391,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1433,10 +1428,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1456,15 +1451,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1766,10 +1761,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1794,9 +1787,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1805,7 +1795,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:10 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1814,7 +1807,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1829,7 +1822,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1844,7 +1837,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1861,7 +1854,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1877,7 +1870,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1892,7 +1885,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1907,7 +1900,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1922,7 +1915,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1938,7 +1931,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1954,7 +1947,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1970,7 +1963,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1986,7 +1979,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2002,7 +1995,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2019,7 +2012,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2035,7 +2028,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2051,7 +2044,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2067,7 +2060,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2083,7 +2076,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2099,7 +2092,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2114,7 +2107,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2129,7 +2122,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2144,7 +2137,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2159,7 +2152,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2174,7 +2167,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2189,7 +2182,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/846bf5e2792b2f4661048c0c9dcf9ba4bc970302?offset=0&limit=1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/b01dd1dcd1902e33855cab87910ad0c45d1aed5b%3A8e31f63830b9ee0e71ff0ca7a94f10348da0254d7b5ca40d5d3e73bf496ebc18?offset=0&limit=1000 body: null headers: Accept: @@ -2216,10 +2209,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2244,9 +2235,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2257,9 +2245,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '499' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:10 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-pandas/tests/series/fixtures/not_indexed_label_series_with_granularity.yaml b/gooddata-pandas/tests/series/fixtures/not_indexed_label_series_with_granularity.yaml index d330d60e0..2661d96ad 100644 --- a/gooddata-pandas/tests/series/fixtures/not_indexed_label_series_with_granularity.yaml +++ b/gooddata-pandas/tests/series/fixtures/not_indexed_label_series_with_granularity.yaml @@ -52,10 +52,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -81,9 +79,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -94,9 +89,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '730' + - '833' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -116,6 +114,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - attributeHeader: localIdentifier: 2660733dfc018f739b0d142f19af7126 label: @@ -130,9 +129,10 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 links: - executionResult: 119b4eeb1db97baa108703bf62df90e56e4917be + executionResult: f797a962e0e6f3bcb45b1fefa3dc69d882e74b4d:c75fe25205874b8c4145affafa334ad96dfee71e12c4555de656bcc44529296d - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -164,10 +164,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -192,9 +190,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -203,7 +198,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -428,10 +426,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -747,15 +745,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -771,26 +769,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -799,10 +797,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1177,10 +1175,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1205,9 +1201,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1216,7 +1209,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1252,18 +1248,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1318,14 +1314,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1344,15 +1340,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1368,26 +1364,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1397,10 +1393,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1416,18 +1412,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1453,10 +1449,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1476,15 +1472,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1786,10 +1782,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1814,9 +1808,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1825,7 +1816,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1834,7 +1828,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1849,7 +1843,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1864,7 +1858,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1881,7 +1875,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1897,7 +1891,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1912,7 +1906,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1927,7 +1921,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1942,7 +1936,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1958,7 +1952,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1974,7 +1968,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1990,7 +1984,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2006,7 +2000,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2022,7 +2016,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2039,7 +2033,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2055,7 +2049,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2071,7 +2065,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2087,7 +2081,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2103,7 +2097,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2119,7 +2113,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2134,7 +2128,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2149,7 +2143,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2164,7 +2158,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2179,7 +2173,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2194,7 +2188,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2209,7 +2203,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/119b4eeb1db97baa108703bf62df90e56e4917be?offset=0&limit=1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/f797a962e0e6f3bcb45b1fefa3dc69d882e74b4d%3Ac75fe25205874b8c4145affafa334ad96dfee71e12c4555de656bcc44529296d?offset=0&limit=1000 body: null headers: Accept: @@ -2236,10 +2230,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2264,9 +2256,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2277,9 +2266,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '2690' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series.yaml b/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series.yaml index ce0f3f869..ba1f8d292 100644 --- a/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series.yaml +++ b/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series.yaml @@ -51,10 +51,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -80,9 +78,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -93,9 +88,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '230' + - '295' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -105,7 +103,7 @@ interactions: - localIdentifier: 27c4b665b9d047b1a66a149714f1c596 localIdentifier: dim_0 links: - executionResult: ce1838342b2d2b11850932df643030be656f9923 + executionResult: 194a3dc02e32003ac0014bd476d852ca58e18301:889ccca113f8f1486e64ebb0ba41af2cc6260ee27f9b4ec7c0c4a35ddcd76033 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -137,10 +135,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -165,9 +161,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -176,7 +169,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -401,10 +397,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -720,15 +716,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -744,26 +740,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -772,10 +768,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1150,10 +1146,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1178,9 +1172,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1189,7 +1180,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1225,18 +1219,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1291,14 +1285,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1317,15 +1311,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1341,26 +1335,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1370,10 +1364,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1389,18 +1383,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1426,10 +1420,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1449,15 +1443,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1759,10 +1753,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1787,9 +1779,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1798,7 +1787,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1807,7 +1799,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1822,7 +1814,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1837,7 +1829,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1854,7 +1846,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1870,7 +1862,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1885,7 +1877,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1900,7 +1892,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1915,7 +1907,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1931,7 +1923,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1947,7 +1939,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1963,7 +1955,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1979,7 +1971,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -1995,7 +1987,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2012,7 +2004,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2028,7 +2020,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2044,7 +2036,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2060,7 +2052,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2076,7 +2068,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2092,7 +2084,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2107,7 +2099,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2122,7 +2114,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2137,7 +2129,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2152,7 +2144,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2167,7 +2159,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2182,7 +2174,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/ce1838342b2d2b11850932df643030be656f9923?offset=0&limit=1 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/194a3dc02e32003ac0014bd476d852ca58e18301%3A889ccca113f8f1486e64ebb0ba41af2cc6260ee27f9b4ec7c0c4a35ddcd76033?offset=0&limit=1 body: null headers: Accept: @@ -2209,10 +2201,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2237,9 +2227,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2250,9 +2237,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '176' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series_with_granularity.yaml b/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series_with_granularity.yaml index 1043a7a7b..153bb8bd0 100644 --- a/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series_with_granularity.yaml +++ b/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series_with_granularity.yaml @@ -59,10 +59,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -88,9 +86,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -101,9 +96,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '542' + - '626' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:10 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -127,9 +125,10 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: e54d8d8404f784a75613b2e77f4520daf786f77e + executionResult: 7c65767e80f082bb36a613613e4a3e391e233097:7d5c3a6219c18bd4222c10cfdf184febccc7ae3c583943208904af3856cc4f08 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -161,10 +160,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -189,9 +186,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -200,7 +194,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:10 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -425,10 +422,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -744,15 +741,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -768,26 +765,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -796,10 +793,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1174,10 +1171,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1202,9 +1197,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1213,7 +1205,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:10 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1249,18 +1244,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1315,14 +1310,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1341,15 +1336,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1365,26 +1360,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1394,10 +1389,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1413,18 +1408,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1450,10 +1445,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1473,15 +1468,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1783,10 +1778,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1811,9 +1804,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1822,7 +1812,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:10 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1831,7 +1824,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1846,7 +1839,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1861,7 +1854,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1878,7 +1871,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1894,7 +1887,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1909,7 +1902,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1924,7 +1917,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1939,7 +1932,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1955,7 +1948,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1971,7 +1964,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1987,7 +1980,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2003,7 +1996,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2019,7 +2012,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2036,7 +2029,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2052,7 +2045,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2068,7 +2061,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2084,7 +2077,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2100,7 +2093,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2116,7 +2109,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2131,7 +2124,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2146,7 +2139,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2161,7 +2154,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2176,7 +2169,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2191,7 +2184,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2206,7 +2199,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/e54d8d8404f784a75613b2e77f4520daf786f77e?offset=0%2C0&limit=1%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/7c65767e80f082bb36a613613e4a3e391e233097%3A7d5c3a6219c18bd4222c10cfdf184febccc7ae3c583943208904af3856cc4f08?offset=0%2C0&limit=1%2C1000 body: null headers: Accept: @@ -2233,10 +2226,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2261,9 +2252,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2274,9 +2262,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '619' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:10 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-pandas/tests/series/fixtures/simple_index_filtered_series.yaml b/gooddata-pandas/tests/series/fixtures/simple_index_filtered_series.yaml index 47a5a0304..db91b6cad 100644 --- a/gooddata-pandas/tests/series/fixtures/simple_index_filtered_series.yaml +++ b/gooddata-pandas/tests/series/fixtures/simple_index_filtered_series.yaml @@ -68,10 +68,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -97,9 +95,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -110,9 +105,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '730' + - '833' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:08 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -132,6 +130,7 @@ interactions: primaryLabel: id: products.category type: label + valueType: TEXT - attributeHeader: localIdentifier: 2660733dfc018f739b0d142f19af7126 label: @@ -146,9 +145,10 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 links: - executionResult: 7f1a5c5dcd98ae20eb46b740f4cafc0a33a5b2fe + executionResult: 90b21ba73d5e81ae7b7b870d4e62953c44f8c40a:4e1bdf21a08582bc86563c8387f3b3d0a1fdb012da877f99a72b8fe6f3c45d8a - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -180,10 +180,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -208,9 +206,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -219,7 +214,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:08 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -444,10 +442,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -763,15 +761,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -787,26 +785,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -815,10 +813,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1193,10 +1191,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1221,9 +1217,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1232,7 +1225,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:08 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1268,18 +1264,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1334,14 +1330,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1360,15 +1356,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1384,26 +1380,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1413,10 +1409,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1432,18 +1428,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1469,10 +1465,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1492,15 +1488,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1802,10 +1798,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1830,9 +1824,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1841,7 +1832,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:08 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1850,7 +1844,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1865,7 +1859,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1880,7 +1874,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1897,7 +1891,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1913,7 +1907,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1928,7 +1922,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1943,7 +1937,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1958,7 +1952,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1974,7 +1968,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1990,7 +1984,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2006,7 +2000,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2022,7 +2016,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2038,7 +2032,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2055,7 +2049,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2071,7 +2065,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2087,7 +2081,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2103,7 +2097,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2119,7 +2113,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2135,7 +2129,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2150,7 +2144,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2165,7 +2159,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2180,7 +2174,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2195,7 +2189,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2210,7 +2204,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2225,7 +2219,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/7f1a5c5dcd98ae20eb46b740f4cafc0a33a5b2fe?offset=0&limit=1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/90b21ba73d5e81ae7b7b870d4e62953c44f8c40a%3A4e1bdf21a08582bc86563c8387f3b3d0a1fdb012da877f99a72b8fe6f3c45d8a?offset=0&limit=1000 body: null headers: Accept: @@ -2252,10 +2246,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2280,9 +2272,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2293,9 +2282,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '296' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:08 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-pandas/tests/series/fixtures/simple_index_label_series.yaml b/gooddata-pandas/tests/series/fixtures/simple_index_label_series.yaml index 09725fdcd..d402e3de9 100644 --- a/gooddata-pandas/tests/series/fixtures/simple_index_label_series.yaml +++ b/gooddata-pandas/tests/series/fixtures/simple_index_label_series.yaml @@ -46,10 +46,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -75,9 +73,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -88,9 +83,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '421' + - '505' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:07 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -110,9 +108,10 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 links: - executionResult: 846bf5e2792b2f4661048c0c9dcf9ba4bc970302 + executionResult: b01dd1dcd1902e33855cab87910ad0c45d1aed5b:8e31f63830b9ee0e71ff0ca7a94f10348da0254d7b5ca40d5d3e73bf496ebc18 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -144,10 +143,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -172,9 +169,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -183,7 +177,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:07 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -408,10 +405,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -727,15 +724,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -751,26 +748,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -779,10 +776,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1157,10 +1154,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1185,9 +1180,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1196,7 +1188,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:07 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1232,18 +1227,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1298,14 +1293,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1324,15 +1319,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1348,26 +1343,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1377,10 +1372,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1396,18 +1391,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1433,10 +1428,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1456,15 +1451,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1766,10 +1761,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1794,9 +1787,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1805,7 +1795,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:08 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1814,7 +1807,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1829,7 +1822,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1844,7 +1837,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1861,7 +1854,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1877,7 +1870,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1892,7 +1885,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1907,7 +1900,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1922,7 +1915,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1938,7 +1931,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1954,7 +1947,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1970,7 +1963,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1986,7 +1979,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2002,7 +1995,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2019,7 +2012,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2035,7 +2028,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2051,7 +2044,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2067,7 +2060,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2083,7 +2076,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2099,7 +2092,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2114,7 +2107,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2129,7 +2122,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2144,7 +2137,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2159,7 +2152,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2174,7 +2167,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2189,7 +2182,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/846bf5e2792b2f4661048c0c9dcf9ba4bc970302?offset=0&limit=1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/b01dd1dcd1902e33855cab87910ad0c45d1aed5b%3A8e31f63830b9ee0e71ff0ca7a94f10348da0254d7b5ca40d5d3e73bf496ebc18?offset=0&limit=1000 body: null headers: Accept: @@ -2216,10 +2209,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2244,9 +2235,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2257,9 +2245,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '499' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:08 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-pandas/tests/series/fixtures/simple_index_metric_series.yaml b/gooddata-pandas/tests/series/fixtures/simple_index_metric_series.yaml index 1043a7a7b..de81f5067 100644 --- a/gooddata-pandas/tests/series/fixtures/simple_index_metric_series.yaml +++ b/gooddata-pandas/tests/series/fixtures/simple_index_metric_series.yaml @@ -59,10 +59,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -88,9 +86,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -101,9 +96,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '542' + - '626' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:07 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -127,9 +125,10 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_1 links: - executionResult: e54d8d8404f784a75613b2e77f4520daf786f77e + executionResult: 7c65767e80f082bb36a613613e4a3e391e233097:7d5c3a6219c18bd4222c10cfdf184febccc7ae3c583943208904af3856cc4f08 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&page=0&size=500 @@ -161,10 +160,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -189,9 +186,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -200,7 +194,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:07 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -425,10 +422,10 @@ interactions: type: dataset labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: @@ -744,15 +741,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -768,26 +765,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -796,10 +793,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1174,10 +1171,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1202,9 +1197,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1213,7 +1205,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:07 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1249,18 +1244,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1315,14 +1310,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1341,15 +1336,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1365,26 +1360,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1394,10 +1389,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1413,18 +1408,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1450,10 +1445,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1473,15 +1468,15 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.quarter type: attribute - id: date.month type: attribute - - id: date.week + - id: date.year type: attribute - - id: date.quarter + - id: date.week type: attribute - - id: date.year + - id: date.day type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date @@ -1783,10 +1778,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1811,9 +1804,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1822,7 +1812,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:07 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1831,7 +1824,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -1846,7 +1839,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -1861,7 +1854,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -1878,7 +1871,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -1894,7 +1887,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -1909,7 +1902,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -1924,7 +1917,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -1939,7 +1932,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -1955,7 +1948,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1971,7 +1964,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -1987,7 +1980,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2003,7 +1996,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2019,7 +2012,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2036,7 +2029,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2052,7 +2045,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2068,7 +2061,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2084,7 +2077,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2100,7 +2093,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2116,7 +2109,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2131,7 +2124,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2146,7 +2139,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2161,7 +2154,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2176,7 +2169,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2191,7 +2184,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2206,7 +2199,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/metrics?page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/e54d8d8404f784a75613b2e77f4520daf786f77e?offset=0%2C0&limit=1%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/7c65767e80f082bb36a613613e4a3e391e233097%3A7d5c3a6219c18bd4222c10cfdf184febccc7ae3c583943208904af3856cc4f08?offset=0%2C0&limit=1%2C1000 body: null headers: Accept: @@ -2233,10 +2226,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2261,9 +2252,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2274,9 +2262,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '619' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:07 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-sdk/tests/catalog/expected/declarative_analytics_model.json b/gooddata-sdk/tests/catalog/expected/declarative_analytics_model.json index 29e2406cd..86157f3d6 100644 --- a/gooddata-sdk/tests/catalog/expected/declarative_analytics_model.json +++ b/gooddata-sdk/tests/catalog/expected/declarative_analytics_model.json @@ -2249,6 +2249,7 @@ "id": "top_10_products", "title": "Top 10 Products" } - ] + ], + "exportDefinitions": [] } } diff --git a/gooddata-sdk/tests/catalog/expected/declarative_analytics_model_child.json b/gooddata-sdk/tests/catalog/expected/declarative_analytics_model_child.json index fccbee783..b2a1162a8 100644 --- a/gooddata-sdk/tests/catalog/expected/declarative_analytics_model_child.json +++ b/gooddata-sdk/tests/catalog/expected/declarative_analytics_model_child.json @@ -18,6 +18,7 @@ "dashboardPlugins": [], "filterContexts": [], "metrics": [], - "visualizationObjects": [] + "visualizationObjects": [], + "exportDefinitions": [] } } diff --git a/gooddata-sdk/tests/catalog/expected/declarative_workspaces.json b/gooddata-sdk/tests/catalog/expected/declarative_workspaces.json index f7fb260d4..eb041cad0 100644 --- a/gooddata-sdk/tests/catalog/expected/declarative_workspaces.json +++ b/gooddata-sdk/tests/catalog/expected/declarative_workspaces.json @@ -2270,7 +2270,8 @@ "id": "top_10_products", "title": "Top 10 Products" } - ] + ], + "exportDefinitions": [] }, "ldm": { "datasets": [ @@ -2786,7 +2787,8 @@ } ], "settings": [], - "userDataFilters": [] + "userDataFilters": [], + "automations": [] }, { "customApplicationSettings": [], @@ -2812,7 +2814,8 @@ "dashboardPlugins": [], "filterContexts": [], "metrics": [], - "visualizationObjects": [] + "visualizationObjects": [], + "exportDefinitions": [] }, "ldm": { "datasetExtensions": [ @@ -2841,7 +2844,8 @@ }, "permissions": [], "settings": [], - "userDataFilters": [] + "userDataFilters": [], + "automations": [] }, { "customApplicationSettings": [], @@ -2855,7 +2859,8 @@ "dashboardPlugins": [], "filterContexts": [], "metrics": [], - "visualizationObjects": [] + "visualizationObjects": [], + "exportDefinitions": [] }, "ldm": { "datasets": [], @@ -2869,7 +2874,8 @@ }, "permissions": [], "settings": [], - "userDataFilters": [] + "userDataFilters": [], + "automations": [] } ], "workspaceDataFilters": [ diff --git a/gooddata-sdk/tests/catalog/expected/declarative_workspaces_snake_case.json b/gooddata-sdk/tests/catalog/expected/declarative_workspaces_snake_case.json index 8fa391426..f9b85a2ea 100644 --- a/gooddata-sdk/tests/catalog/expected/declarative_workspaces_snake_case.json +++ b/gooddata-sdk/tests/catalog/expected/declarative_workspaces_snake_case.json @@ -2738,7 +2738,8 @@ "visualizationUrl": "local:bar" } } - ] + ], + "export_definitions": [] } }, "permissions": [ @@ -2775,7 +2776,8 @@ ], "settings": [], "user_data_filters": [], - "custom_application_settings": [] + "custom_application_settings": [], + "automations": [] }, { "id": "demo_west", @@ -2818,7 +2820,8 @@ "dashboard_plugins": [], "filter_contexts": [], "metrics": [], - "visualization_objects": [] + "visualization_objects": [], + "export_definitions": [] } }, "parent": { @@ -2828,7 +2831,8 @@ "hierarchy_permissions": [], "settings": [], "user_data_filters": [], - "custom_application_settings": [] + "custom_application_settings": [], + "automations": [] }, { "id": "demo_west_california", @@ -2845,7 +2849,8 @@ "dashboard_plugins": [], "filter_contexts": [], "metrics": [], - "visualization_objects": [] + "visualization_objects": [], + "export_definitions": [] } }, "parent": { @@ -2855,7 +2860,8 @@ "hierarchy_permissions": [], "settings": [], "user_data_filters": [], - "custom_application_settings": [] + "custom_application_settings": [], + "automations": [] } ], "workspace_data_filters": [ diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/bigquery.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/bigquery.yaml index c31425777..16eb36c03 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/bigquery.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/bigquery.yaml @@ -28,7 +28,7 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -59,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 135d787d3686f446 + traceId: 6703a72447747241e48fed27b6d28205 - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -148,9 +148,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -159,7 +156,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -239,9 +239,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -250,7 +247,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -324,9 +324,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -335,6 +332,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_cache_strategy.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_cache_strategy.yaml index 70243de07..c7c2f4dfe 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_cache_strategy.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_cache_strategy.yaml @@ -59,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -151,9 +151,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -162,7 +159,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -235,9 +235,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -246,7 +243,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -332,9 +332,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -343,6 +340,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_data_sources_list.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_data_sources_list.yaml index 739eb5fea..8575452e0 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_data_sources_list.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_data_sources_list.yaml @@ -28,7 +28,7 @@ interactions: Connection: - keep-alive Content-Length: - - '435' + - '476' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -59,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -79,6 +79,7 @@ interactions: attributes: url: jdbc:postgresql://localhost:5432/demo username: demouser + authenticationType: USERNAME_PASSWORD name: demo-test-ds type: POSTGRESQL schema: demo diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_delete_declarative_data_sources.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_delete_declarative_data_sources.yaml index 913a9262b..9f4e94fe6 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_delete_declarative_data_sources.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_delete_declarative_data_sources.yaml @@ -56,9 +56,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -67,7 +64,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -127,9 +127,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -138,7 +135,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: [] @@ -212,9 +212,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -223,6 +220,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_generate_logical_model.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_generate_logical_model.yaml index 52e2e2206..b0ce20957 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_generate_logical_model.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_generate_logical_model.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6088' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:22 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: @@ -555,10 +553,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -583,9 +579,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -596,9 +589,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6210' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:22 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_generate_logical_model_sql_datasets.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_generate_logical_model_sql_datasets.yaml index cdea0f2a4..bea0b76ef 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_generate_logical_model_sql_datasets.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_generate_logical_model_sql_datasets.yaml @@ -190,10 +190,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -219,9 +217,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -232,9 +227,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '9633' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_load_and_put_declarative_data_sources.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_load_and_put_declarative_data_sources.yaml index 265188f42..aae0ac490 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_load_and_put_declarative_data_sources.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_load_and_put_declarative_data_sources.yaml @@ -56,9 +56,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -67,7 +64,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -125,9 +125,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -136,7 +133,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -164,7 +164,7 @@ interactions: Connection: - keep-alive Content-Length: - - '255' + - '275' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -194,9 +194,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -205,7 +202,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -214,7 +214,8 @@ interactions: attributes: name: Default Organization hostname: localhost - oauthClientId: 35eba35d-9efd-4cae-9db3-cb04189be8d5 + allowedOrigins: [] + oauthClientId: b538d572-c26e-4758-a98b-7ac92840dfa5 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -305,9 +306,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -316,7 +314,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -374,9 +375,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -387,9 +385,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '773' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -499,9 +500,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -510,6 +508,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_put_declarative_data_sources.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_put_declarative_data_sources.yaml index af8ceb925..0cab990f0 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_put_declarative_data_sources.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_put_declarative_data_sources.yaml @@ -57,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -70,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '303' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -161,9 +161,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -172,7 +169,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -230,9 +230,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -243,9 +240,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '303' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -334,9 +334,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -345,6 +342,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_put_declarative_data_sources_connection.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_put_declarative_data_sources_connection.yaml index 1082b96d9..3960ffac0 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_put_declarative_data_sources_connection.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_put_declarative_data_sources_connection.yaml @@ -57,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -70,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '303' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -153,9 +153,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -166,14 +163,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '81' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: queryDurationMillis: createCacheTable: 0 - simpleSelect: 1 + simpleSelect: 0 successful: true - request: method: PUT @@ -245,9 +245,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -256,7 +253,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -314,9 +314,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -327,9 +324,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '303' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -418,9 +418,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -429,6 +426,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_register_upload_notification.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_register_upload_notification.yaml index 3fc6614a2..84018d3f3 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_register_upload_notification.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_register_upload_notification.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:22 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -81,7 +79,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -96,7 +94,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -111,7 +109,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -128,7 +126,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -144,7 +142,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -159,7 +157,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -174,7 +172,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -189,7 +187,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -205,7 +203,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -221,7 +219,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -237,7 +235,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -253,7 +251,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -269,7 +267,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -286,7 +284,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -302,7 +300,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -318,7 +316,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -334,7 +332,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -350,7 +348,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -366,7 +364,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -381,7 +379,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -396,7 +394,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -411,7 +409,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -426,7 +424,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -441,7 +439,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -503,10 +501,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -531,9 +527,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -544,9 +537,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '272' + - '337' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:22 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -558,7 +554,7 @@ interactions: name: '# of Active Customers' localIdentifier: dim_0 links: - executionResult: 1732b80ba6910c9f60444909efc35a49a7a2815e + executionResult: 9b6fe64f1ac30887f307ed44232ccbdea6ac16d8:45316e025daad8642aeb98438b386ee52e23b59eead057fe47fe1239fa3094fe - request: method: POST uri: http://localhost:3000/api/v1/actions/dataSources/demo-test-ds/uploadNotification @@ -588,10 +584,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -614,9 +608,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -625,7 +616,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:22 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -677,10 +671,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -705,9 +697,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -718,9 +707,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '272' + - '337' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:22 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -732,4 +724,4 @@ interactions: name: '# of Active Customers' localIdentifier: dim_0 links: - executionResult: bf04570878aab933ca3fa12804a1b35e5c906890 + executionResult: d56f116482be32c666ac8d35e098f114887385b8:00eea8e6ff211b4fb1a476c5e9a9c65c73835fafff6da7a061f08145f30792fb diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_scan_pdm_and_generate_logical_model.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_scan_pdm_and_generate_logical_model.yaml index e7e50cc00..84defa328 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_scan_pdm_and_generate_logical_model.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_scan_pdm_and_generate_logical_model.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6088' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:22 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: @@ -434,10 +432,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -462,9 +458,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -475,9 +468,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '2372' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: pdm: @@ -757,10 +753,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -785,9 +779,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -798,9 +789,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6210' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_scan_pdm_and_generate_logical_model_sql_datasets.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_scan_pdm_and_generate_logical_model_sql_datasets.yaml index 7aefec8c5..5dd82f934 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_scan_pdm_and_generate_logical_model_sql_datasets.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_scan_pdm_and_generate_logical_model_sql_datasets.yaml @@ -35,10 +35,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -64,9 +62,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -77,9 +72,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '2372' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: pdm: @@ -393,10 +391,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -421,9 +417,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -434,9 +427,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '9633' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_scan_schemata.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_scan_schemata.yaml index 52d44ea43..e7e568bb1 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_scan_schemata.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_scan_schemata.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '24' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: schemaNames: diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_store_declarative_data_sources.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_store_declarative_data_sources.yaml index 80519c779..98a9075bf 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_store_declarative_data_sources.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_store_declarative_data_sources.yaml @@ -57,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -70,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '303' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -146,9 +146,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -159,9 +156,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '303' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -235,9 +235,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -246,7 +243,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -274,7 +274,7 @@ interactions: Connection: - keep-alive Content-Length: - - '255' + - '275' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -304,9 +304,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -315,7 +312,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -324,7 +324,8 @@ interactions: attributes: name: Default Organization hostname: localhost - oauthClientId: 35eba35d-9efd-4cae-9db3-cb04189be8d5 + allowedOrigins: [] + oauthClientId: b538d572-c26e-4758-a98b-7ac92840dfa5 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -382,9 +383,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -393,7 +391,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -421,7 +422,7 @@ interactions: Connection: - keep-alive Content-Length: - - '255' + - '275' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -451,9 +452,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -462,7 +460,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:25 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -471,6 +472,7 @@ interactions: attributes: name: Default Organization hostname: localhost - oauthClientId: 35eba35d-9efd-4cae-9db3-cb04189be8d5 + allowedOrigins: [] + oauthClientId: b538d572-c26e-4758-a98b-7ac92840dfa5 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_declarative_data_sources.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_declarative_data_sources.yaml index 6c1bc81cc..e3262a431 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_declarative_data_sources.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_declarative_data_sources.yaml @@ -57,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -70,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '303' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:26 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -152,9 +152,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -165,9 +162,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '274' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: error: 'DB request exception (state=GENERAL_ERROR dataSourceId=null vendorErrorState=GENERAL_ERROR @@ -237,9 +237,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -250,9 +247,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '81' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: queryDurationMillis: diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_scan_model.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_scan_model.yaml index 3e82cb5c8..c93083cdf 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_scan_model.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_scan_model.yaml @@ -35,10 +35,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -64,9 +62,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -77,9 +72,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '2372' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: pdm: @@ -238,10 +236,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -266,9 +262,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -279,9 +272,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '35' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: pdm: diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_scan_model_with_schemata.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_scan_model_with_schemata.yaml index ddc21b2fd..fa0c9cd88 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_scan_model_with_schemata.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_scan_model_with_schemata.yaml @@ -37,10 +37,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -66,9 +64,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -79,9 +74,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '2372' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: pdm: diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_scan_model_with_table_prefix.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_scan_model_with_table_prefix.yaml index 493a5e8a4..e5059e862 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_scan_model_with_table_prefix.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_scan_model_with_table_prefix.yaml @@ -36,10 +36,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -65,9 +63,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -78,9 +73,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '922' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: pdm: diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/dremio.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/dremio.yaml index f3c95741d..535316af3 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/dremio.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/dremio.yaml @@ -28,7 +28,7 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -59,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 52a7b56fc393cc1b + traceId: 6703a72413e106e3b3c70d9dbcf90036 - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -147,9 +147,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -158,7 +155,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -230,9 +230,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -241,7 +238,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -307,9 +307,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -318,6 +315,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/patch.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/patch.yaml index 4bfe91caf..bde446b03 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/patch.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/patch.yaml @@ -28,7 +28,7 @@ interactions: Connection: - keep-alive Content-Length: - - '435' + - '476' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -59,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -79,6 +79,7 @@ interactions: attributes: url: jdbc:postgresql://localhost:5432/demo username: demouser + authenticationType: USERNAME_PASSWORD name: demo-test-ds type: POSTGRESQL schema: demo @@ -114,7 +115,7 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -144,9 +145,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -155,14 +153,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 19db94f5ea6eaadd + traceId: 6703a7240cc7154eb2e7a5938b0c4d9b - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -232,9 +233,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -243,7 +241,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -315,9 +316,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -326,7 +324,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -398,9 +399,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -409,7 +407,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -490,9 +491,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -501,7 +499,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -573,9 +574,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -584,7 +582,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -650,9 +651,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -661,6 +659,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/redshift.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/redshift.yaml index a574e1bd2..afa4151d8 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/redshift.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/redshift.yaml @@ -28,7 +28,7 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -59,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: ec6522f0e31d46a1 + traceId: 6703a7237bc6e17c56eb0ec783effddc - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -147,9 +147,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -158,7 +155,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -230,9 +230,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -241,7 +238,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -307,9 +307,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -318,6 +315,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/scan_scan_sql_without_preview.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/scan_scan_sql_without_preview.yaml index 1040675ef..c8989e53c 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/scan_scan_sql_without_preview.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/scan_scan_sql_without_preview.yaml @@ -33,10 +33,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -62,9 +60,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -75,9 +70,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '53' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: columns: diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/scan_sql.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/scan_sql.yaml index 5e70daa82..7ce383c1c 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/scan_sql.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/scan_sql.yaml @@ -33,10 +33,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -62,9 +60,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -75,9 +70,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '442' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: columns: diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/scan_sql_with_nulls_in_preview.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/scan_sql_with_nulls_in_preview.yaml index d98cb4c24..bcfaa73f4 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/scan_sql_with_nulls_in_preview.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/scan_sql_with_nulls_in_preview.yaml @@ -34,10 +34,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -63,9 +61,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -76,9 +71,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '104' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: columns: diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/snowflake.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/snowflake.yaml index 27ed9f366..88800cc4f 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/snowflake.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/snowflake.yaml @@ -28,7 +28,7 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -59,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: c179fe660841b420 + traceId: 6703a72432afb1389afa755ee70b425a - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -147,9 +147,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -158,7 +155,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -230,9 +230,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -241,7 +238,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -307,9 +307,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -318,7 +315,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -348,7 +348,7 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -378,9 +378,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -389,14 +386,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 05de521b663b0947 + traceId: 6703a72405b7540efb7f7536f081f56e - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -467,9 +467,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -478,7 +475,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -550,9 +550,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -561,7 +558,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -627,9 +627,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -638,6 +635,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/test_create_update.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/test_create_update.yaml index dad9b4677..5f4c5cace 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/test_create_update.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/test_create_update.yaml @@ -28,7 +28,7 @@ interactions: Connection: - keep-alive Content-Length: - - '435' + - '476' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -59,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -79,6 +79,7 @@ interactions: attributes: url: jdbc:postgresql://localhost:5432/demo username: demouser + authenticationType: USERNAME_PASSWORD name: demo-test-ds type: POSTGRESQL schema: demo @@ -114,7 +115,7 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -144,9 +145,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -155,14 +153,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 570e8768d3ac6c3f + traceId: 6703a72357ccaa707087cfca761dc3ae - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -232,9 +233,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -243,7 +241,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -315,9 +316,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -326,7 +324,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -398,9 +399,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -409,7 +407,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -493,9 +494,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -504,7 +502,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -546,7 +547,7 @@ interactions: Connection: - keep-alive Content-Length: - - '692' + - '774' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -576,9 +577,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -587,7 +585,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -596,6 +597,7 @@ interactions: attributes: url: jdbc:postgresql://localhost:5432/demo username: demouser + authenticationType: USERNAME_PASSWORD name: demo-test-ds type: POSTGRESQL schema: demo @@ -606,6 +608,7 @@ interactions: attributes: url: jdbc:postgresql://localhost:5432/demo?autosave=false username: demouser + authenticationType: USERNAME_PASSWORD name: Test2 type: POSTGRESQL schema: demo @@ -665,9 +668,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -676,7 +676,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -706,7 +709,7 @@ interactions: Connection: - keep-alive Content-Length: - - '435' + - '476' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -736,9 +739,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -747,7 +747,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:23 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -756,6 +759,7 @@ interactions: attributes: url: jdbc:postgresql://localhost:5432/demo username: demouser + authenticationType: USERNAME_PASSWORD name: demo-test-ds type: POSTGRESQL schema: demo diff --git a/gooddata-sdk/tests/catalog/fixtures/data_sources/vertica.yaml b/gooddata-sdk/tests/catalog/fixtures/data_sources/vertica.yaml index c546398ce..9d567ec8b 100644 --- a/gooddata-sdk/tests/catalog/fixtures/data_sources/vertica.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/data_sources/vertica.yaml @@ -28,7 +28,7 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -59,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 67b54359227c1e61 + traceId: 6703a724c8fc02a92870457a5e819017 - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -147,9 +147,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -158,7 +155,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -230,9 +230,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -241,7 +238,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -307,9 +307,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -318,6 +315,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:24 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/create_csp_directive.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/create_csp_directive.yaml index e4cd9dba9..aa1589ab8 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/create_csp_directive.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/create_csp_directive.yaml @@ -40,10 +40,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -69,9 +67,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -80,7 +75,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -122,10 +120,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -150,9 +146,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -161,7 +154,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -199,10 +195,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -225,9 +219,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -236,7 +227,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -270,10 +264,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -298,9 +290,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -309,7 +298,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/create_jwk.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/create_jwk.yaml index d9aed0a18..ead522569 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/create_jwk.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/create_jwk.yaml @@ -28,14 +28,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 40f378fcf8469a8c + traceId: 6703a728b7324e19f7b818f5c94a7acf - request: method: POST uri: http://localhost:3000/api/v1/entities/jwks @@ -127,10 +125,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -155,9 +151,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -166,7 +159,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -216,10 +212,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -244,9 +238,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -255,7 +246,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -301,10 +295,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -327,9 +319,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -338,7 +327,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -372,10 +364,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -400,9 +390,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -411,7 +398,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/create_organization_setting.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/create_organization_setting.yaml index df64311f9..0494899b1 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/create_organization_setting.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/create_organization_setting.yaml @@ -41,10 +41,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -70,9 +68,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -81,7 +76,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -124,10 +122,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -152,9 +148,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -163,7 +156,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -202,10 +198,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -228,9 +222,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -239,7 +230,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -273,10 +267,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -301,9 +293,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -312,7 +301,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/delete_csp_directive.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/delete_csp_directive.yaml index 740531f7b..f90c85feb 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/delete_csp_directive.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/delete_csp_directive.yaml @@ -40,10 +40,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -69,9 +67,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -80,7 +75,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -118,10 +116,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -144,9 +140,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -155,7 +148,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -185,14 +181,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -217,9 +211,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -228,14 +219,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 8691b5a951493c25 + traceId: 6703a729ee4b6d3db9994ab6ad4cb220 - request: method: GET uri: http://localhost:3000/api/v1/entities/cspDirectives?page=0&size=500 @@ -267,10 +261,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -295,9 +287,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -306,7 +295,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] @@ -344,10 +336,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -372,9 +362,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -383,7 +370,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/delete_jwk.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/delete_jwk.yaml index 98a44340f..117a49f2c 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/delete_jwk.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/delete_jwk.yaml @@ -28,14 +28,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: a0acecc246145d32 + traceId: 6703a72845810b24a6335313b7a96193 - request: method: POST uri: http://localhost:3000/api/v1/entities/jwks @@ -127,10 +125,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -155,9 +151,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -166,7 +159,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -212,10 +208,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -238,9 +232,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -249,7 +240,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -279,14 +273,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -311,9 +303,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -322,14 +311,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 75e50579937507b6 + traceId: 6703a728b8ad56a1dae1374d41d50d22 - request: method: GET uri: http://localhost:3000/api/v1/entities/jwks?page=0&size=500 @@ -361,10 +353,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -389,9 +379,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -400,7 +387,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] @@ -438,10 +428,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -466,9 +454,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -477,7 +462,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/delete_organization_setting.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/delete_organization_setting.yaml index 8f3d329ee..8b2935967 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/delete_organization_setting.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/delete_organization_setting.yaml @@ -41,10 +41,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -70,9 +68,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -81,7 +76,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -120,10 +118,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -146,9 +142,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -157,7 +150,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -187,14 +183,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -219,9 +213,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -230,14 +221,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 027c53f7ed782862 + traceId: 6703a729963aa31297926ff264f9d546 - request: method: GET uri: http://localhost:3000/api/v1/entities/organizationSettings?page=0&size=500 @@ -269,10 +263,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -297,9 +289,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -308,7 +297,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] @@ -346,10 +338,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -374,9 +364,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -385,7 +372,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/list_csp_directives.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/list_csp_directives.yaml index 86ca42039..05123c386 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/list_csp_directives.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/list_csp_directives.yaml @@ -40,10 +40,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -69,9 +67,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -80,7 +75,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -130,10 +128,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -158,9 +154,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -169,7 +162,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -211,10 +207,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -239,9 +233,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -250,7 +241,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -298,10 +292,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -324,9 +316,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -335,7 +324,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -365,10 +357,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -391,9 +381,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -402,7 +389,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -436,10 +426,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -464,9 +452,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -475,7 +460,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/list_jwk.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/list_jwk.yaml index 3b8dc0478..4953a9090 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/list_jwk.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/list_jwk.yaml @@ -28,14 +28,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 24b6219940be58b3 + traceId: 6703a728f389d5bc5ce4ed350c62967c - request: method: POST uri: http://localhost:3000/api/v1/entities/jwks @@ -127,10 +125,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -155,9 +151,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -166,7 +159,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -212,14 +208,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -244,9 +238,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -255,14 +246,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: a99b0ca531f4206d + traceId: 6703a7286db3af040d47f3826b454a28 - request: method: POST uri: http://localhost:3000/api/v1/entities/jwks @@ -310,10 +304,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -338,9 +330,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -349,7 +338,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -399,10 +391,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -427,9 +417,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -438,7 +425,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -502,10 +492,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -528,9 +516,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -539,7 +524,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -569,10 +557,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -595,9 +581,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -606,7 +589,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -640,10 +626,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -668,9 +652,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -679,7 +660,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/list_organization_settings.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/list_organization_settings.yaml index 4bc44f120..a4991d8bf 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/list_organization_settings.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/list_organization_settings.yaml @@ -41,10 +41,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -70,9 +68,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -81,7 +76,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -133,10 +131,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -161,9 +157,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -172,7 +165,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -215,10 +211,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -243,9 +237,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -254,7 +245,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -304,10 +298,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -330,9 +322,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -341,7 +330,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -371,10 +363,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -397,9 +387,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -408,7 +395,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -442,10 +432,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -470,9 +458,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -481,7 +466,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/organization.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/organization.yaml index 2861d83d5..26b733ceb 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/organization.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/organization.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,7 +65,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -102,10 +100,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -130,9 +126,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -141,7 +134,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -151,6 +147,6 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: f9f965bc-c0cd-4712-9c76-239cef3f0aea + oauthClientId: b538d572-c26e-4758-a98b-7ac92840dfa5 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/update_allowed_origins.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/update_allowed_origins.yaml index 614c932e5..c262974fc 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/update_allowed_origins.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/update_allowed_origins.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,7 +65,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -102,10 +100,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -130,9 +126,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -141,7 +134,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -151,7 +147,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -166,7 +162,7 @@ interactions: hostname: localhost allowedOrigins: - https://test.com - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 headers: Accept: - application/vnd.gooddata.api+json @@ -196,10 +192,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -224,9 +218,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -235,7 +226,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -246,7 +240,7 @@ interactions: hostname: localhost allowedOrigins: - https://test.com - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -278,10 +272,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -306,9 +298,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -317,7 +306,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -349,10 +341,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -377,9 +367,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -388,7 +375,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -399,7 +389,7 @@ interactions: hostname: localhost allowedOrigins: - https://test.com - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -431,10 +421,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -459,9 +447,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -470,7 +455,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -502,10 +490,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -530,9 +516,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -541,7 +524,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -552,7 +538,7 @@ interactions: hostname: localhost allowedOrigins: - https://test.com - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -566,7 +552,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 headers: Accept: - application/vnd.gooddata.api+json @@ -596,10 +582,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -624,9 +608,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -635,7 +616,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -645,7 +629,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -677,10 +661,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -705,9 +687,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -716,7 +695,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -748,10 +730,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -776,9 +756,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -787,7 +764,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -797,6 +777,6 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/update_csp_directive.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/update_csp_directive.yaml index 6512c1a01..3398956b1 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/update_csp_directive.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/update_csp_directive.yaml @@ -40,10 +40,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -69,9 +67,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -80,7 +75,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -130,10 +128,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -158,9 +154,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -169,7 +162,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -211,10 +207,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -239,9 +233,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -250,7 +241,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -288,10 +282,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -314,9 +306,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -325,7 +314,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -359,10 +351,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -387,9 +377,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -398,7 +385,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/update_jwk.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/update_jwk.yaml index 53996584e..0e6eafb2b 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/update_jwk.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/update_jwk.yaml @@ -28,14 +28,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 1926888f3fbdc50f + traceId: 6703a7280c096af7bb55a25592f84c9b - request: method: POST uri: http://localhost:3000/api/v1/entities/jwks @@ -127,10 +125,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -155,9 +151,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -166,7 +159,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -216,10 +212,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -244,9 +238,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -255,7 +246,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -321,10 +315,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -349,9 +341,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -360,7 +349,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -410,10 +402,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -438,9 +428,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -449,7 +436,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -495,10 +485,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -521,9 +509,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -532,7 +517,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -566,10 +554,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -594,9 +580,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -605,7 +588,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/update_name.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/update_name.yaml index 467927481..5b4b9d61e 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/update_name.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/update_name.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,7 +65,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -102,10 +100,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -130,9 +126,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -141,7 +134,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -151,7 +147,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -183,10 +179,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -211,9 +205,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -222,7 +213,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -254,10 +248,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -282,9 +274,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -293,7 +282,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -303,7 +295,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -317,7 +309,7 @@ interactions: name: test_organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 headers: Accept: - application/vnd.gooddata.api+json @@ -347,10 +339,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -375,9 +365,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -386,7 +373,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -396,7 +386,7 @@ interactions: name: test_organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -428,10 +418,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -456,9 +444,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -467,7 +452,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -499,10 +487,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -527,9 +513,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -538,7 +521,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -548,7 +534,7 @@ interactions: name: test_organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -580,10 +566,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -608,9 +592,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -619,7 +600,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -651,10 +635,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -679,9 +661,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -690,7 +669,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -700,7 +682,7 @@ interactions: name: test_organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -714,7 +696,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 headers: Accept: - application/vnd.gooddata.api+json @@ -744,10 +726,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -772,9 +752,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -783,7 +760,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -793,7 +773,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -825,10 +805,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -853,9 +831,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -864,7 +839,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -896,10 +874,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -924,9 +900,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -935,7 +908,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -945,6 +921,6 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/update_oidc_settings.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/update_oidc_settings.yaml index 1483b730d..3b2ea3747 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/update_oidc_settings.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/update_oidc_settings.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,7 +65,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -102,10 +100,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -130,9 +126,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -141,7 +134,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -151,7 +147,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: f9f965bc-c0cd-4712-9c76-239cef3f0aea + oauthClientId: b538d572-c26e-4758-a98b-7ac92840dfa5 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -183,10 +179,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -211,9 +205,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -222,7 +213,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -254,10 +248,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -282,9 +274,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -293,7 +282,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:27 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -303,7 +295,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: f9f965bc-c0cd-4712-9c76-239cef3f0aea + oauthClientId: b538d572-c26e-4758-a98b-7ac92840dfa5 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -349,10 +341,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -377,9 +367,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -388,7 +375,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -431,10 +421,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -459,9 +447,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -470,7 +455,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -502,10 +490,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -530,9 +516,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -541,7 +524,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -584,10 +570,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -612,9 +596,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -623,7 +604,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -655,10 +639,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -683,9 +665,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -694,7 +673,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -748,10 +730,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -776,9 +756,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -787,7 +764,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -797,7 +777,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -829,10 +809,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -857,9 +835,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -868,7 +843,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -900,10 +878,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -928,9 +904,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -939,7 +912,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:28 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -949,6 +925,6 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default diff --git a/gooddata-sdk/tests/catalog/fixtures/organization/update_organization_setting.yaml b/gooddata-sdk/tests/catalog/fixtures/organization/update_organization_setting.yaml index 805180e6b..00b36824c 100644 --- a/gooddata-sdk/tests/catalog/fixtures/organization/update_organization_setting.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/organization/update_organization_setting.yaml @@ -41,10 +41,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -70,9 +68,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -81,7 +76,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -133,10 +131,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -161,9 +157,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -172,7 +165,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -215,10 +211,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -243,9 +237,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -254,7 +245,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -293,10 +287,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -319,9 +311,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -330,7 +319,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -364,10 +356,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -392,9 +382,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -403,7 +390,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:29 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/permissions/get_declarative_permissions.yaml b/gooddata-sdk/tests/catalog/fixtures/permissions/get_declarative_permissions.yaml index 31fd7877e..86f84403a 100644 --- a/gooddata-sdk/tests/catalog/fixtures/permissions/get_declarative_permissions.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/permissions/get_declarative_permissions.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '292' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: hierarchyPermissions: @@ -124,10 +122,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -152,9 +148,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -165,9 +158,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '292' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: hierarchyPermissions: diff --git a/gooddata-sdk/tests/catalog/fixtures/permissions/list_available_assignees.yaml b/gooddata-sdk/tests/catalog/fixtures/permissions/list_available_assignees.yaml index 50f2e5ee2..079927558 100644 --- a/gooddata-sdk/tests/catalog/fixtures/permissions/list_available_assignees.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/permissions/list_available_assignees.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '107' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: diff --git a/gooddata-sdk/tests/catalog/fixtures/permissions/list_dashboard_permissions.yaml b/gooddata-sdk/tests/catalog/fixtures/permissions/list_dashboard_permissions.yaml index 94d06cd64..6133148bf 100644 --- a/gooddata-sdk/tests/catalog/fixtures/permissions/list_dashboard_permissions.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/permissions/list_dashboard_permissions.yaml @@ -39,10 +39,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -66,9 +64,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -77,7 +72,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -109,10 +107,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -137,9 +133,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -150,9 +143,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '209' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: rules: @@ -203,10 +199,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -229,9 +223,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -240,7 +231,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -272,10 +266,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -300,9 +292,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -313,9 +302,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '39' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: rules: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/permissions/manage_dashboard_permissions_declarative_workspace.yaml b/gooddata-sdk/tests/catalog/fixtures/permissions/manage_dashboard_permissions_declarative_workspace.yaml index 2f57015b1..5e862ccb0 100644 --- a/gooddata-sdk/tests/catalog/fixtures/permissions/manage_dashboard_permissions_declarative_workspace.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/permissions/manage_dashboard_permissions_declarative_workspace.yaml @@ -39,10 +39,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -66,9 +64,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -77,7 +72,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -109,10 +107,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -137,9 +133,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -150,9 +143,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '209' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: rules: @@ -196,10 +192,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -224,9 +218,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -237,9 +228,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '37056' + - '37079' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -292,7 +286,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -339,7 +333,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -489,7 +483,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -501,7 +495,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -511,13 +505,14 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -560,7 +555,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -569,7 +564,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -579,7 +574,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -589,7 +584,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -599,7 +594,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -608,7 +603,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -617,7 +612,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -627,7 +622,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -637,7 +632,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -647,7 +642,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -657,7 +652,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -667,7 +662,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -677,7 +672,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -687,7 +682,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -698,7 +693,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -708,7 +703,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -718,7 +713,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -728,7 +723,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -737,7 +732,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -746,7 +741,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -755,7 +750,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -764,7 +759,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -773,7 +768,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -782,7 +777,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -847,7 +842,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -923,7 +918,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -1002,7 +997,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -1061,7 +1056,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -1118,7 +1113,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -1171,7 +1166,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -1246,7 +1241,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -1303,7 +1298,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -1402,7 +1397,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -1458,7 +1453,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -1497,7 +1492,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -1553,7 +1548,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -1621,7 +1616,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -1678,7 +1673,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -1735,7 +1730,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:25 + createdAt: 2024-10-07 09:14 createdBy: id: admin type: user @@ -2100,10 +2095,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2126,9 +2119,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2137,7 +2127,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -2169,10 +2162,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2197,9 +2188,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2210,9 +2198,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '39' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: rules: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/permissions/manage_organization_permissions.yaml b/gooddata-sdk/tests/catalog/fixtures/permissions/manage_organization_permissions.yaml index 99904e810..44f453631 100644 --- a/gooddata-sdk/tests/catalog/fixtures/permissions/manage_organization_permissions.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/permissions/manage_organization_permissions.yaml @@ -36,10 +36,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -63,9 +61,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -74,7 +69,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -106,10 +104,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -134,9 +130,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -147,9 +140,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '148' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: - assignee: @@ -193,10 +189,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -219,9 +213,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -230,7 +221,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -262,10 +256,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -290,9 +282,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -303,9 +292,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '69' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: - assignee: diff --git a/gooddata-sdk/tests/catalog/fixtures/permissions/put_declarative_organization_permissions.yaml b/gooddata-sdk/tests/catalog/fixtures/permissions/put_declarative_organization_permissions.yaml index 8c7575895..8c1dc5e3e 100644 --- a/gooddata-sdk/tests/catalog/fixtures/permissions/put_declarative_organization_permissions.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/permissions/put_declarative_organization_permissions.yaml @@ -38,10 +38,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -65,9 +63,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -76,7 +71,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -108,10 +106,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -136,9 +132,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -149,9 +142,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '148' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: - assignee: @@ -195,10 +191,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -221,9 +215,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -232,7 +223,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -264,10 +258,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -292,9 +284,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -305,9 +294,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '69' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: - assignee: diff --git a/gooddata-sdk/tests/catalog/fixtures/permissions/put_declarative_permissions.yaml b/gooddata-sdk/tests/catalog/fixtures/permissions/put_declarative_permissions.yaml index da8db8f94..aaf5659ba 100644 --- a/gooddata-sdk/tests/catalog/fixtures/permissions/put_declarative_permissions.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/permissions/put_declarative_permissions.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '44' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: hierarchyPermissions: [] @@ -126,10 +124,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -152,9 +148,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -163,7 +156,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -195,10 +191,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -223,9 +217,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -236,9 +227,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '292' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: hierarchyPermissions: @@ -290,10 +284,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -316,9 +308,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -327,7 +316,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -359,10 +351,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -387,9 +377,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -400,9 +387,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '44' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:17:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: hierarchyPermissions: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user.yaml b/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user.yaml index 5d1b6eb3d..ff2b05f8d 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user.yaml @@ -28,14 +28,12 @@ interactions: Connection: - keep-alive Content-Length: - - '1238' + - '1302' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -89,7 +87,10 @@ interactions: - id: demo type: user attributes: - authenticationId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + authenticationId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + firstname: Demo + lastname: User + email: demo@example.com relationships: userGroups: data: @@ -100,7 +101,7 @@ interactions: - id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: @@ -150,14 +151,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -182,9 +181,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -193,14 +189,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 8058b9a5941a4d95 + traceId: 6703a7a236416f24cff378fde5be26cd - request: method: POST uri: http://localhost:3000/api/v1/entities/users @@ -247,10 +246,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -275,9 +272,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -286,7 +280,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -330,10 +327,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -358,9 +353,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -369,7 +361,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -421,14 +416,12 @@ interactions: Connection: - keep-alive Content-Length: - - '1537' + - '1601' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -453,9 +446,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -464,7 +454,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -481,7 +474,10 @@ interactions: - id: demo type: user attributes: - authenticationId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + authenticationId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + firstname: Demo + lastname: User + email: demo@example.com relationships: userGroups: data: @@ -492,7 +488,7 @@ interactions: - id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: @@ -556,10 +552,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -582,9 +576,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -593,7 +584,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -623,14 +617,12 @@ interactions: Connection: - keep-alive Content-Length: - - '1238' + - '1302' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -655,9 +647,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -666,7 +655,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -683,7 +675,10 @@ interactions: - id: demo type: user attributes: - authenticationId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + authenticationId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + firstname: Demo + lastname: User + email: demo@example.com relationships: userGroups: data: @@ -694,7 +689,7 @@ interactions: - id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user_group.yaml b/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user_group.yaml index 1e5c58240..32c8a0b71 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user_group.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user_group.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -150,14 +148,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -182,9 +178,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -193,14 +186,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 84f373a46c78b155 + traceId: 6703a7a3b13c02806ac9c16d6641c031 - request: method: POST uri: http://localhost:3000/api/v1/entities/userGroups @@ -244,10 +240,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -272,9 +266,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -283,7 +274,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -324,10 +318,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -352,9 +344,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -363,7 +352,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -416,10 +408,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -444,9 +434,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -455,7 +442,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -544,10 +534,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -570,9 +558,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -581,7 +566,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -615,10 +603,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -643,9 +629,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -654,7 +637,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_user_groups.yaml b/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_user_groups.yaml index c5a9e29ed..4cbae3b5a 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_user_groups.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_user_groups.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '308' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: @@ -123,10 +121,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -151,9 +147,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -164,9 +157,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '308' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: diff --git a/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users.yaml b/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users.yaml index afb10e1de..0a58d3aca 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '453' + - '517' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: users: @@ -84,14 +82,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -127,10 +128,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -155,9 +154,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -168,9 +164,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '453' + - '517' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: users: @@ -180,14 +179,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users_user_groups.yaml b/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users_user_groups.yaml index 571e0c012..adf71a32b 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users_user_groups.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users_user_groups.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '760' + - '824' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: @@ -101,14 +99,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -144,10 +145,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -172,9 +171,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -185,9 +181,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '760' + - '824' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: @@ -214,14 +213,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/users/get_user.yaml b/gooddata-sdk/tests/catalog/fixtures/users/get_user.yaml index 4e0cb816a..3312de40e 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/get_user.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/get_user.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/users/get_user_group.yaml b/gooddata-sdk/tests/catalog/fixtures/users/get_user_group.yaml index cfcfa088a..6cb800d30 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/get_user_group.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/get_user_group.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/users/list_user_groups.yaml b/gooddata-sdk/tests/catalog/fixtures/users/list_user_groups.yaml index cb86f4690..1113b5227 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/list_user_groups.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/list_user_groups.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/users/list_users.yaml b/gooddata-sdk/tests/catalog/fixtures/users/list_users.yaml index ee8d1ccfc..d55e5c2bb 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/list_users.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/list_users.yaml @@ -28,14 +28,12 @@ interactions: Connection: - keep-alive Content-Length: - - '1238' + - '1302' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:30 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -89,7 +87,10 @@ interactions: - id: demo type: user attributes: - authenticationId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + authenticationId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + firstname: Demo + lastname: User + email: demo@example.com relationships: userGroups: data: @@ -100,7 +101,7 @@ interactions: - id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_user_groups.yaml b/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_user_groups.yaml index 16209ce7b..1fcb06b8c 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_user_groups.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_user_groups.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '453' + - '517' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: users: @@ -84,14 +82,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -127,10 +128,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -155,9 +154,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -168,9 +164,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '308' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: @@ -217,14 +216,12 @@ interactions: Connection: - keep-alive Content-Length: - - '1238' + - '1302' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -249,9 +246,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -260,21 +254,13 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: - - id: demo2 - type: user - attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs - relationships: - userGroups: - data: - - id: demoGroup - type: userGroup - links: - self: http://localhost:3000/api/v1/entities/users/demo2 - id: admin type: user attributes: {} @@ -288,7 +274,10 @@ interactions: - id: demo type: user attributes: - authenticationId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + authenticationId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + firstname: Demo + lastname: User + email: demo@example.com relationships: userGroups: data: @@ -296,6 +285,17 @@ interactions: type: userGroup links: self: http://localhost:3000/api/v1/entities/users/demo + - id: demo2 + type: user + attributes: + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs + relationships: + userGroups: + data: + - id: demoGroup + type: userGroup + links: + self: http://localhost:3000/api/v1/entities/users/demo2 included: - id: adminGroup type: userGroup @@ -338,10 +338,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -364,9 +362,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -375,7 +370,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -410,10 +408,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -436,9 +432,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -447,7 +440,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -479,10 +475,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -507,9 +501,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -518,7 +509,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -550,10 +544,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -578,9 +570,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -589,7 +578,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -599,7 +591,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -648,10 +640,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -674,9 +664,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -685,7 +672,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -717,10 +707,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -745,9 +733,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -758,9 +743,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '308' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: @@ -826,10 +814,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -852,9 +838,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -863,7 +846,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -878,14 +864,17 @@ interactions: settings: [] permissions: [] - id: demo - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + email: demo@example.com + firstname: Demo + lastname: User + authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs userGroups: - id: demoGroup type: userGroup @@ -916,10 +905,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -942,9 +929,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -953,6 +937,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users.yaml b/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users.yaml index d02c1a332..7a1c021dc 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '453' + - '517' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: users: @@ -84,14 +82,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -125,14 +126,12 @@ interactions: Connection: - keep-alive Content-Length: - - '1238' + - '1302' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -157,9 +156,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -168,7 +164,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -185,7 +184,10 @@ interactions: - id: demo type: user attributes: - authenticationId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + authenticationId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + firstname: Demo + lastname: User + email: demo@example.com relationships: userGroups: data: @@ -196,7 +198,7 @@ interactions: - id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: @@ -246,10 +248,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -272,9 +272,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -283,7 +280,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -315,10 +315,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -343,9 +341,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -354,7 +349,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -386,10 +384,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -414,9 +410,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -425,7 +418,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -435,7 +431,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -488,10 +484,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -514,9 +508,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -525,7 +516,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -557,10 +551,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -585,9 +577,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -598,9 +587,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '453' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: users: @@ -636,14 +628,17 @@ interactions: settings: [] permissions: [] - id: demo - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + email: demo@example.com + firstname: Demo + lastname: User + authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs userGroups: - id: demoGroup type: userGroup @@ -674,10 +669,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -700,9 +693,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -711,6 +701,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users_user_groups.yaml b/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users_user_groups.yaml index a85fa7d23..7a10472c7 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users_user_groups.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users_user_groups.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '760' + - '824' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: @@ -101,14 +99,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -142,14 +143,12 @@ interactions: Connection: - keep-alive Content-Length: - - '1238' + - '1302' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -174,9 +173,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -185,7 +181,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -202,7 +201,10 @@ interactions: - id: demo type: user attributes: - authenticationId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + authenticationId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + firstname: Demo + lastname: User + email: demo@example.com relationships: userGroups: data: @@ -213,7 +215,7 @@ interactions: - id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: @@ -263,10 +265,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -289,9 +289,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -300,7 +297,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -335,10 +335,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -361,9 +359,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -372,7 +367,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -404,10 +402,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -432,9 +428,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -443,7 +436,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -475,10 +471,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -503,9 +497,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -514,7 +505,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -524,7 +518,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -594,10 +588,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -620,9 +612,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -631,7 +620,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -663,10 +655,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -691,9 +681,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -704,9 +691,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '760' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: @@ -776,14 +766,17 @@ interactions: settings: [] permissions: [] - id: demo - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + email: demo@example.com + firstname: Demo + lastname: User + authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs userGroups: - id: demoGroup type: userGroup @@ -814,10 +807,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -840,9 +831,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -851,6 +839,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_user_groups.yaml b/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_user_groups.yaml index 9b1d39fbb..1117d8f0a 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_user_groups.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_user_groups.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '308' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: @@ -123,10 +121,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -151,9 +147,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -164,9 +157,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '453' + - '517' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: users: @@ -176,14 +172,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -217,14 +216,12 @@ interactions: Connection: - keep-alive Content-Length: - - '1238' + - '1302' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -249,9 +246,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -260,7 +254,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -277,7 +274,10 @@ interactions: - id: demo type: user attributes: - authenticationId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + authenticationId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + firstname: Demo + lastname: User + email: demo@example.com relationships: userGroups: data: @@ -288,7 +288,7 @@ interactions: - id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: @@ -338,10 +338,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -364,9 +362,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -375,7 +370,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -410,10 +408,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -436,9 +432,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -447,7 +440,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -496,10 +492,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -522,9 +516,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -533,7 +524,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -565,10 +559,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -593,9 +585,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -606,9 +595,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '308' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: @@ -674,10 +666,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -700,9 +690,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -711,7 +698,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -726,14 +716,17 @@ interactions: settings: [] permissions: [] - id: demo - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + email: demo@example.com + firstname: Demo + lastname: User + authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs userGroups: - id: demoGroup type: userGroup @@ -764,10 +757,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -790,9 +781,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -801,6 +789,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users.yaml b/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users.yaml index 69e0393d5..84e8953fe 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '453' + - '517' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: users: @@ -84,14 +82,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -125,14 +126,12 @@ interactions: Connection: - keep-alive Content-Length: - - '1238' + - '1302' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -157,9 +156,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -168,7 +164,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -185,7 +184,10 @@ interactions: - id: demo type: user attributes: - authenticationId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + authenticationId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + firstname: Demo + lastname: User + email: demo@example.com relationships: userGroups: data: @@ -196,7 +198,7 @@ interactions: - id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: @@ -246,10 +248,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -272,9 +272,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -283,7 +280,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -298,14 +298,17 @@ interactions: settings: [] permissions: [] - id: demo - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + email: demo@example.com + firstname: Demo + lastname: User + authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs userGroups: - id: demoGroup type: userGroup @@ -336,10 +339,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -362,9 +363,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -373,7 +371,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -405,10 +406,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -433,9 +432,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -446,9 +442,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '453' + - '517' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: users: @@ -458,14 +457,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -484,14 +486,17 @@ interactions: settings: [] permissions: [] - id: demo - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + email: demo@example.com + firstname: Demo + lastname: User + authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs userGroups: - id: demoGroup type: userGroup @@ -522,10 +527,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -548,9 +551,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -559,6 +559,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users_user_groups.yaml b/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users_user_groups.yaml index 2544ed839..82ec17340 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users_user_groups.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users_user_groups.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '760' + - '824' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: @@ -101,14 +99,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -142,14 +143,12 @@ interactions: Connection: - keep-alive Content-Length: - - '1238' + - '1302' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -174,9 +173,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -185,21 +181,13 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: - - id: demo2 - type: user - attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs - relationships: - userGroups: - data: - - id: demoGroup - type: userGroup - links: - self: http://localhost:3000/api/v1/entities/users/demo2 - id: admin type: user attributes: {} @@ -213,7 +201,10 @@ interactions: - id: demo type: user attributes: - authenticationId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + authenticationId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + firstname: Demo + lastname: User + email: demo@example.com relationships: userGroups: data: @@ -221,6 +212,17 @@ interactions: type: userGroup links: self: http://localhost:3000/api/v1/entities/users/demo + - id: demo2 + type: user + attributes: + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs + relationships: + userGroups: + data: + - id: demoGroup + type: userGroup + links: + self: http://localhost:3000/api/v1/entities/users/demo2 included: - id: adminGroup type: userGroup @@ -263,10 +265,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -289,9 +289,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -300,7 +297,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -335,10 +335,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -361,9 +359,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -372,7 +367,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -404,14 +402,17 @@ interactions: settings: [] permissions: [] - id: demo - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + email: demo@example.com + firstname: Demo + lastname: User + authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs userGroups: - id: demoGroup type: userGroup @@ -442,10 +443,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -468,9 +467,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -479,7 +475,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -511,10 +510,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -539,9 +536,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -552,9 +546,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '760' + - '824' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: @@ -581,14 +578,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -624,14 +624,17 @@ interactions: settings: [] permissions: [] - id: demo - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + email: demo@example.com + firstname: Demo + lastname: User + authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs userGroups: - id: demoGroup type: userGroup @@ -662,10 +665,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -688,9 +689,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -699,6 +697,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_user_groups.yaml b/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_user_groups.yaml index 24f57c321..fcc16e2b1 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_user_groups.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_user_groups.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '308' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: @@ -123,10 +121,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -151,9 +147,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -164,9 +157,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '308' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: @@ -215,10 +211,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -243,9 +237,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -254,7 +245,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -286,10 +280,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -314,9 +306,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -325,7 +314,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -335,7 +327,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -367,10 +359,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -395,9 +385,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -406,7 +393,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -438,10 +428,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -466,9 +454,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -477,7 +462,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:32 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -487,6 +475,6 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default diff --git a/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users.yaml b/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users.yaml index b974fb0c8..82c81230e 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '453' + - '517' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: users: @@ -84,14 +82,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -127,10 +128,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -155,9 +154,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -168,9 +164,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '453' + - '517' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: users: @@ -180,14 +179,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -223,10 +225,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -251,9 +251,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -262,7 +259,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -294,10 +294,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -322,9 +320,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -333,7 +328,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -343,7 +341,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -375,10 +373,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -403,9 +399,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -414,7 +407,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -446,10 +442,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -474,9 +468,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -485,7 +476,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -495,6 +489,6 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default diff --git a/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users_user_groups.yaml b/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users_user_groups.yaml index d786d765e..7a7bd8f1a 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users_user_groups.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users_user_groups.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '760' + - '824' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: @@ -101,14 +99,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -144,10 +145,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -172,9 +171,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -185,9 +181,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '760' + - '824' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userGroups: @@ -214,14 +213,17 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + - authId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + email: demo@example.com + firstname: Demo id: demo + lastname: User permissions: [] settings: [] userGroups: - id: adminGroup type: userGroup - - authId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + - authId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -257,10 +259,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -285,9 +285,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -296,7 +293,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -328,10 +328,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -356,9 +354,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -367,7 +362,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -377,7 +375,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -409,10 +407,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -437,9 +433,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -448,7 +441,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -480,10 +476,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -508,9 +502,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -519,7 +510,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -529,6 +523,6 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default diff --git a/gooddata-sdk/tests/catalog/fixtures/users/test_assign_permissions_bulk.yaml b/gooddata-sdk/tests/catalog/fixtures/users/test_assign_permissions_bulk.yaml index dbeed24da..014c31060 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/test_assign_permissions_bulk.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/test_assign_permissions_bulk.yaml @@ -34,11 +34,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: &id001 @@ -57,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -70,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '189' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -120,11 +120,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: *id001 @@ -142,9 +142,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -155,9 +152,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '184' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -224,11 +224,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' DATE: *id001 Expires: - '0' @@ -244,9 +244,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -255,7 +252,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -291,11 +291,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: *id001 @@ -313,9 +313,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -326,9 +323,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '187' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -376,11 +376,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: *id001 @@ -398,9 +398,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -411,9 +408,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '187' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -473,11 +473,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' DATE: *id001 Expires: - '0' @@ -493,9 +493,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -504,7 +501,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -552,11 +552,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' DATE: *id001 Expires: - '0' @@ -572,9 +572,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -583,6 +580,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/users/test_get_user_group_permissions.yaml b/gooddata-sdk/tests/catalog/fixtures/users/test_get_user_group_permissions.yaml index d199cf8ec..0b6733381 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/test_get_user_group_permissions.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/test_get_user_group_permissions.yaml @@ -34,11 +34,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: &id001 @@ -57,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -70,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '184' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: diff --git a/gooddata-sdk/tests/catalog/fixtures/users/test_get_user_permissions.yaml b/gooddata-sdk/tests/catalog/fixtures/users/test_get_user_permissions.yaml index c9cd795bb..76e5eb9b4 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/test_get_user_permissions.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/test_get_user_permissions.yaml @@ -34,11 +34,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: &id001 @@ -57,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -70,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '189' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: diff --git a/gooddata-sdk/tests/catalog/fixtures/users/test_manage_user_group_permissions.yaml b/gooddata-sdk/tests/catalog/fixtures/users/test_manage_user_group_permissions.yaml index 87b8598c3..0915a5d11 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/test_manage_user_group_permissions.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/test_manage_user_group_permissions.yaml @@ -34,11 +34,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: &id001 @@ -57,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -70,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '184' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -132,11 +132,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' DATE: *id001 Expires: - '0' @@ -152,9 +152,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -163,7 +160,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -199,11 +199,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: *id001 @@ -221,9 +221,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -234,9 +231,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '187' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -296,11 +296,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' DATE: *id001 Expires: - '0' @@ -316,9 +316,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -327,6 +324,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/users/test_manage_user_permissions.yaml b/gooddata-sdk/tests/catalog/fixtures/users/test_manage_user_permissions.yaml index de5b2706f..ed8235693 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/test_manage_user_permissions.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/test_manage_user_permissions.yaml @@ -34,11 +34,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: &id001 @@ -57,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -70,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '189' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -132,11 +132,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' DATE: *id001 Expires: - '0' @@ -152,9 +152,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -163,7 +160,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -199,11 +199,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: *id001 @@ -221,9 +221,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -234,9 +231,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '185' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -296,11 +296,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' DATE: *id001 Expires: - '0' @@ -316,9 +316,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -327,6 +324,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/users/test_revoke_permissions_bulk.yaml b/gooddata-sdk/tests/catalog/fixtures/users/test_revoke_permissions_bulk.yaml index 9c30a11a6..232e3fe4c 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/test_revoke_permissions_bulk.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/test_revoke_permissions_bulk.yaml @@ -34,11 +34,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: &id001 @@ -57,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -70,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '189' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: @@ -137,11 +137,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' DATE: *id001 Expires: - '0' @@ -157,9 +157,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -168,7 +165,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -204,11 +204,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' Content-Type: - application/json DATE: *id001 @@ -226,9 +226,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -239,9 +236,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '34' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: dataSources: [] @@ -291,11 +291,11 @@ interactions: img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; frame-ancestors ''self''; object-src - ''none''; worker-src ''self'' blob:; child-src blob:; connect-src ''self'' - *.tiles.mapbox.com *.mapbox.com *.litix.io *.wistia.com *.hsforms.net - *.hsforms.com embedwistia-a.akamaihd.net matomo.anywhere.gooddata.com; - media-src ''self'' blob: data: *.wistia.com *.wistia.net embedwistia-a.akamaihd.net' + ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src + ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com + *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net + matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com + *.wistia.net embedwistia-a.akamaihd.net' DATE: *id001 Expires: - '0' @@ -311,9 +311,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -322,6 +319,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:11 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_group.yaml b/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_group.yaml index 4e0cb816a..80716cab5 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_group.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_group.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_groups.yaml b/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_groups.yaml index 4e0cb816a..80716cab5 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_groups.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_groups.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/users/test_user_remove_user_groups.yaml b/gooddata-sdk/tests/catalog/fixtures/users/test_user_remove_user_groups.yaml index 4e0cb816a..80716cab5 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/test_user_remove_user_groups.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/test_user_remove_user_groups.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/users/test_user_replace_user_groups.yaml b/gooddata-sdk/tests/catalog/fixtures/users/test_user_replace_user_groups.yaml index 4e0cb816a..80716cab5 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/test_user_replace_user_groups.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/test_user_replace_user_groups.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/users/update_user.yaml b/gooddata-sdk/tests/catalog/fixtures/users/update_user.yaml index 220706e8f..97a1db43a 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/update_user.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/update_user.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: @@ -125,10 +123,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -153,9 +149,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -164,14 +157,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: @@ -234,10 +230,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -262,9 +256,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -273,7 +264,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -317,10 +311,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -345,9 +337,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -356,7 +345,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -416,10 +408,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -442,9 +432,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -453,7 +440,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -483,14 +473,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -515,9 +503,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -526,14 +511,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 381a6255f502a169 + traceId: 6703a7a327fbfc02fdef7b5de6546943 - request: method: POST uri: http://localhost:3000/api/v1/entities/users @@ -542,7 +530,7 @@ interactions: id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: @@ -577,10 +565,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -605,9 +591,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -616,14 +599,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs links: self: http://localhost:3000/api/v1/entities/users/demo2 - request: @@ -653,14 +639,12 @@ interactions: Connection: - keep-alive Content-Length: - - '1238' + - '1302' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -685,9 +669,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -696,7 +677,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -713,7 +697,10 @@ interactions: - id: demo type: user attributes: - authenticationId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + authenticationId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + firstname: Demo + lastname: User + email: demo@example.com relationships: userGroups: data: @@ -724,7 +711,7 @@ interactions: - id: demo2 type: user attributes: - authenticationId: CiQ1OTA1YjEyNy1mN2M5LTQ0ZjEtYmM5NS1kNmEyZjA3YTAzODgSBWxvY2Fs + authenticationId: CiQ2MmQ1Nzc4MS05NmIzLTRkNjQtYWUyYy04YzZmZDUwMWY5MmQSBWxvY2Fs relationships: userGroups: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/users/update_user_group.yaml b/gooddata-sdk/tests/catalog/fixtures/users/update_user_group.yaml index a65b337a3..916de4de9 100644 --- a/gooddata-sdk/tests/catalog/fixtures/users/update_user_group.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/users/update_user_group.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -113,10 +111,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -141,9 +137,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -152,7 +145,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -234,10 +230,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -262,9 +256,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -273,7 +264,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -324,10 +318,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -352,9 +344,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -363,7 +352,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -404,10 +396,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -432,9 +422,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -443,7 +430,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -484,10 +474,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -512,9 +500,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -523,7 +508,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -571,10 +559,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -599,9 +585,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -610,7 +593,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -651,10 +637,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -679,9 +663,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -690,7 +671,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:19:31 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/analytics_store_load.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/analytics_store_load.yaml index 396a6fd08..2747f3e68 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/analytics_store_load.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/analytics_store_load.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '30899' + - '30922' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -127,7 +125,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -170,7 +168,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -320,7 +318,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -332,7 +330,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -342,13 +340,14 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -391,7 +390,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -400,7 +399,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -410,7 +409,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -420,7 +419,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -430,7 +429,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -439,7 +438,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -448,7 +447,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -458,7 +457,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -468,7 +467,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -478,7 +477,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -488,7 +487,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -498,7 +497,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -508,7 +507,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -518,7 +517,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -529,7 +528,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -539,7 +538,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -549,7 +548,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -559,7 +558,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -568,7 +567,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -577,7 +576,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -586,7 +585,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -595,7 +594,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -604,7 +603,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -613,7 +612,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -678,7 +677,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -754,7 +753,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -833,7 +832,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -892,7 +891,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -949,7 +948,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1002,7 +1001,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1077,7 +1076,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1134,7 +1133,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1233,7 +1232,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1289,7 +1288,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1328,7 +1327,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1384,7 +1383,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1452,7 +1451,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1509,7 +1508,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1566,7 +1565,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1601,10 +1600,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1629,9 +1626,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1642,9 +1636,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '30899' + - '30922' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -1697,7 +1694,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1740,7 +1737,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1890,7 +1887,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1902,7 +1899,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1912,13 +1909,14 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -1961,7 +1959,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1970,7 +1968,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1980,7 +1978,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1990,7 +1988,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2000,7 +1998,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2009,7 +2007,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2018,7 +2016,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2028,7 +2026,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2038,7 +2036,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2048,7 +2046,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2058,7 +2056,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2068,7 +2066,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2078,7 +2076,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2088,7 +2086,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2099,7 +2097,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2109,7 +2107,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2119,7 +2117,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2129,7 +2127,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2138,7 +2136,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2147,7 +2145,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2156,7 +2154,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2165,7 +2163,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2174,7 +2172,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2183,7 +2181,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2248,7 +2246,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2324,7 +2322,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2403,7 +2401,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2462,7 +2460,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2519,7 +2517,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2572,7 +2570,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2647,7 +2645,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2704,7 +2702,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2803,7 +2801,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2859,7 +2857,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2898,7 +2896,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2954,7 +2952,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -3022,7 +3020,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -3079,7 +3077,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -3136,7 +3134,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog.yaml index 2fc5750e1..1522ae7e9 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,379 +67,402 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: - - id: products.category + - id: campaign_channel_id type: attribute attributes: - title: Category - description: Category + title: Campaign channel id + description: Campaign channel id tags: - - Products + - Campaign channels areRelationsValid: true - sourceColumn: category + sourceColumn: campaign_channel_id sourceColumnDataType: STRING relationships: dataset: data: - id: products + id: campaign_channels type: dataset labels: data: - - id: products.category + - id: campaign_channel_id type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channel_id meta: origin: originType: NATIVE originId: demo - - id: date.minute + - id: campaign_channels.category type: attribute attributes: - title: Date - Minute - description: Minute + title: Category + description: Category tags: - - Date - granularity: MINUTE + - Campaign channels areRelationsValid: true + sourceColumn: category + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: campaign_channels type: dataset labels: data: - - id: date.minute + - id: campaign_channels.category type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.minute + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channels.category meta: origin: originType: NATIVE originId: demo - - id: date.hour + - id: type type: attribute attributes: - title: Date - Hour - description: Hour + title: Type + description: Type tags: - - Date - granularity: HOUR + - Campaign channels areRelationsValid: true + sourceColumn: type + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: campaign_channels type: dataset labels: data: - - id: date.hour + - id: type type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.hour + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/type meta: origin: originType: NATIVE originId: demo - - id: date.day + - id: campaign_id type: attribute attributes: - title: Date - Date - description: Date + title: Campaign id + description: Campaign id tags: - - Date - granularity: DAY + - Campaigns areRelationsValid: true + sourceColumn: campaign_id + sourceColumnDataType: INT relationships: dataset: data: - id: date + id: campaigns type: dataset labels: data: - - id: date.day + - id: campaign_id type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.day + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_id meta: origin: originType: NATIVE originId: demo - - id: date.week + - id: campaign_name type: attribute attributes: - title: Date - Week/Year - description: Week and Year (W52/2020) + title: Campaign name + description: Campaign name tags: - - Date - granularity: WEEK + - Campaigns areRelationsValid: true + sourceColumn: campaign_name + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: campaigns type: dataset labels: data: - - id: date.week + - id: campaign_name type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.week + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_name meta: origin: originType: NATIVE originId: demo - - id: date.month + - id: customer_id type: attribute attributes: - title: Date - Month/Year - description: Month and Year (12/2020) + title: Customer id + description: Customer id tags: - - Date - granularity: MONTH + - Customers areRelationsValid: true + sourceColumn: customer_id + sourceColumnDataType: INT relationships: dataset: data: - id: date + id: customers type: dataset labels: data: - - id: date.month + - id: customer_id type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.month + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_id meta: origin: originType: NATIVE originId: demo - - id: date.quarter + - id: customer_name type: attribute attributes: - title: Date - Quarter/Year - description: Quarter and Year (Q1/2020) + title: Customer name + description: Customer name tags: - - Date - granularity: QUARTER + - Customers areRelationsValid: true + sourceColumn: customer_name + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: customers type: dataset labels: data: - - id: date.quarter + - id: customer_name type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.quarter + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_name meta: origin: originType: NATIVE originId: demo - - id: date.year + - id: region type: attribute attributes: - title: Date - Year - description: Year + title: Region + description: Region tags: - - Date - granularity: YEAR + - Customers areRelationsValid: true + sourceColumn: region + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: customers type: dataset labels: data: - - id: date.year + - id: region type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.year + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region meta: origin: originType: NATIVE originId: demo - - id: date.minuteOfHour + - id: state type: attribute attributes: - title: Date - Minute of Hour - description: Generic Minute of the Hour(MI1-MI60) + title: State + description: State tags: - - Date - granularity: MINUTE_OF_HOUR + - Customers areRelationsValid: true + sourceColumn: state + sourceColumnDataType: STRING relationships: + defaultView: + data: + id: state + type: label dataset: data: - id: date + id: customers type: dataset labels: data: - - id: date.minuteOfHour + - id: state + type: label + - id: geo__state__location type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.minuteOfHour + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: origin: originType: NATIVE originId: demo - - id: date.hourOfDay + - id: order_id type: attribute attributes: - title: Date - Hour of Day - description: Generic Hour of the Day(H1-H24) + title: Order id + description: Order id tags: - - Date - granularity: HOUR_OF_DAY + - Order lines areRelationsValid: true + sourceColumn: order_id + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: order_lines type: dataset labels: data: - - id: date.hourOfDay + - id: order_id type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.hourOfDay + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_id meta: origin: originType: NATIVE originId: demo - - id: date.dayOfWeek + - id: order_line_id type: attribute attributes: - title: Date - Day of Week - description: Generic Day of the Week (D1-D7) + title: Order line id + description: Order line id tags: - - Date - granularity: DAY_OF_WEEK + - Order lines areRelationsValid: true + sourceColumn: order_line_id + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: order_lines type: dataset labels: data: - - id: date.dayOfWeek + - id: order_line_id type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.dayOfWeek + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_line_id meta: origin: originType: NATIVE originId: demo - - id: date.dayOfMonth + - id: order_status type: attribute attributes: - title: Date - Day of Month - description: Generic Day of the Month (D1-D31) + title: Order status + description: Order status tags: - - Date - granularity: DAY_OF_MONTH + - Order lines areRelationsValid: true + sourceColumn: order_status + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: order_lines type: dataset labels: data: - - id: date.dayOfMonth + - id: order_status type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.dayOfMonth + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_status meta: origin: originType: NATIVE originId: demo - - id: date.dayOfYear + - id: product_id type: attribute attributes: - title: Date - Day of Year - description: Generic Day of the Year (D1-D366) + title: Product id + description: Product id tags: - - Date - granularity: DAY_OF_YEAR + - Products areRelationsValid: true + sourceColumn: product_id + sourceColumnDataType: INT relationships: dataset: data: - id: date + id: products type: dataset labels: data: - - id: date.dayOfYear + - id: product_id type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.dayOfYear + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_id meta: origin: originType: NATIVE originId: demo - - id: date.weekOfYear + - id: product_name type: attribute attributes: - title: Date - Week of Year - description: Generic Week (W1-W53) + title: Product name + description: Product name tags: - - Date - granularity: WEEK_OF_YEAR + - Products areRelationsValid: true + sourceColumn: product_name + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: products type: dataset labels: data: - - id: date.weekOfYear + - id: product_name type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.weekOfYear + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_name meta: origin: originType: NATIVE originId: demo - - id: date.monthOfYear + - id: products.category type: attribute attributes: - title: Date - Month of Year - description: Generic Month (M1-M12) + title: Category + description: Category tags: - - Date - granularity: MONTH_OF_YEAR + - Products areRelationsValid: true + sourceColumn: category + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: products type: dataset labels: data: - - id: date.monthOfYear + - id: products.category type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.monthOfYear + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category meta: origin: originType: NATIVE originId: demo - - id: date.quarterOfYear + - id: date.minute type: attribute attributes: - title: Date - Quarter of Year - description: Generic Quarter (Q1-Q4) + title: Date - Minute + description: Minute tags: - Date - granularity: QUARTER_OF_YEAR + granularity: MINUTE areRelationsValid: true relationships: dataset: @@ -453,366 +471,346 @@ interactions: type: dataset labels: data: - - id: date.quarterOfYear + - id: date.minute type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.quarterOfYear + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.minute meta: origin: originType: NATIVE originId: demo - - id: campaign_channel_id + - id: date.hour type: attribute attributes: - title: Campaign channel id - description: Campaign channel id + title: Date - Hour + description: Hour tags: - - Campaign channels + - Date + granularity: HOUR areRelationsValid: true - sourceColumn: campaign_channel_id - sourceColumnDataType: STRING relationships: dataset: data: - id: campaign_channels + id: date type: dataset labels: data: - - id: campaign_channel_id + - id: date.hour type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channel_id + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.hour meta: origin: originType: NATIVE originId: demo - - id: campaign_channels.category + - id: date.day type: attribute attributes: - title: Category - description: Category + title: Date - Date + description: Date tags: - - Campaign channels + - Date + granularity: DAY areRelationsValid: true - sourceColumn: category - sourceColumnDataType: STRING relationships: dataset: data: - id: campaign_channels + id: date type: dataset labels: data: - - id: campaign_channels.category + - id: date.day type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channels.category + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.day meta: origin: originType: NATIVE originId: demo - - id: type + - id: date.week type: attribute attributes: - title: Type - description: Type + title: Date - Week/Year + description: Week and Year (W52/2020) tags: - - Campaign channels + - Date + granularity: WEEK areRelationsValid: true - sourceColumn: type - sourceColumnDataType: STRING relationships: dataset: data: - id: campaign_channels + id: date type: dataset labels: data: - - id: type + - id: date.week type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/type + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.week meta: origin: originType: NATIVE originId: demo - - id: campaign_id + - id: date.month type: attribute attributes: - title: Campaign id - description: Campaign id + title: Date - Month/Year + description: Month and Year (12/2020) tags: - - Campaigns + - Date + granularity: MONTH areRelationsValid: true - sourceColumn: campaign_id - sourceColumnDataType: INT relationships: dataset: data: - id: campaigns + id: date type: dataset labels: data: - - id: campaign_id + - id: date.month type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_id + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.month meta: origin: originType: NATIVE originId: demo - - id: campaign_name + - id: date.quarter type: attribute attributes: - title: Campaign name - description: Campaign name + title: Date - Quarter/Year + description: Quarter and Year (Q1/2020) tags: - - Campaigns + - Date + granularity: QUARTER areRelationsValid: true - sourceColumn: campaign_name - sourceColumnDataType: STRING relationships: dataset: data: - id: campaigns + id: date type: dataset labels: data: - - id: campaign_name + - id: date.quarter type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_name + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.quarter meta: origin: originType: NATIVE originId: demo - - id: customer_id + - id: date.year type: attribute attributes: - title: Customer id - description: Customer id + title: Date - Year + description: Year tags: - - Customers + - Date + granularity: YEAR areRelationsValid: true - sourceColumn: customer_id - sourceColumnDataType: INT relationships: dataset: data: - id: customers + id: date type: dataset labels: data: - - id: customer_id + - id: date.year type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_id + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.year meta: origin: originType: NATIVE originId: demo - - id: customer_name + - id: date.minuteOfHour type: attribute attributes: - title: Customer name - description: Customer name + title: Date - Minute of Hour + description: Generic Minute of the Hour(MI1-MI60) tags: - - Customers + - Date + granularity: MINUTE_OF_HOUR areRelationsValid: true - sourceColumn: customer_name - sourceColumnDataType: STRING relationships: dataset: data: - id: customers + id: date type: dataset labels: data: - - id: customer_name + - id: date.minuteOfHour type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_name + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.minuteOfHour meta: origin: originType: NATIVE originId: demo - - id: region + - id: date.hourOfDay type: attribute attributes: - title: Region - description: Region + title: Date - Hour of Day + description: Generic Hour of the Day(H1-H24) tags: - - Customers + - Date + granularity: HOUR_OF_DAY areRelationsValid: true - sourceColumn: region - sourceColumnDataType: STRING relationships: dataset: data: - id: customers + id: date type: dataset labels: data: - - id: region + - id: date.hourOfDay type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.hourOfDay meta: origin: originType: NATIVE originId: demo - - id: state + - id: date.dayOfWeek type: attribute attributes: - title: State - description: State + title: Date - Day of Week + description: Generic Day of the Week (D1-D7) tags: - - Customers + - Date + granularity: DAY_OF_WEEK areRelationsValid: true - sourceColumn: state - sourceColumnDataType: STRING relationships: - defaultView: - data: - id: state - type: label dataset: data: - id: customers + id: date type: dataset labels: data: - - id: geo__state__location - type: label - - id: state + - id: date.dayOfWeek type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.dayOfWeek meta: origin: originType: NATIVE originId: demo - - id: order_id + - id: date.dayOfMonth type: attribute attributes: - title: Order id - description: Order id + title: Date - Day of Month + description: Generic Day of the Month (D1-D31) tags: - - Order lines + - Date + granularity: DAY_OF_MONTH areRelationsValid: true - sourceColumn: order_id - sourceColumnDataType: STRING relationships: dataset: data: - id: order_lines + id: date type: dataset labels: data: - - id: order_id + - id: date.dayOfMonth type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_id + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.dayOfMonth meta: origin: originType: NATIVE originId: demo - - id: order_line_id + - id: date.dayOfYear type: attribute attributes: - title: Order line id - description: Order line id + title: Date - Day of Year + description: Generic Day of the Year (D1-D366) tags: - - Order lines + - Date + granularity: DAY_OF_YEAR areRelationsValid: true - sourceColumn: order_line_id - sourceColumnDataType: STRING relationships: dataset: data: - id: order_lines + id: date type: dataset labels: data: - - id: order_line_id + - id: date.dayOfYear type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_line_id + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.dayOfYear meta: origin: originType: NATIVE originId: demo - - id: order_status + - id: date.weekOfYear type: attribute attributes: - title: Order status - description: Order status + title: Date - Week of Year + description: Generic Week (W1-W53) tags: - - Order lines + - Date + granularity: WEEK_OF_YEAR areRelationsValid: true - sourceColumn: order_status - sourceColumnDataType: STRING relationships: dataset: data: - id: order_lines + id: date type: dataset labels: data: - - id: order_status + - id: date.weekOfYear type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_status + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.weekOfYear meta: origin: originType: NATIVE originId: demo - - id: product_id + - id: date.monthOfYear type: attribute attributes: - title: Product id - description: Product id + title: Date - Month of Year + description: Generic Month (M1-M12) tags: - - Products + - Date + granularity: MONTH_OF_YEAR areRelationsValid: true - sourceColumn: product_id - sourceColumnDataType: INT relationships: dataset: data: - id: products + id: date type: dataset labels: data: - - id: product_id + - id: date.monthOfYear type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_id + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.monthOfYear meta: origin: originType: NATIVE originId: demo - - id: product_name + - id: date.quarterOfYear type: attribute attributes: - title: Product name - description: Product name + title: Date - Quarter of Year + description: Generic Quarter (Q1-Q4) tags: - - Products + - Date + granularity: QUARTER_OF_YEAR areRelationsValid: true - sourceColumn: product_name - sourceColumnDataType: STRING relationships: dataset: data: - id: products + id: date type: dataset labels: data: - - id: product_name + - id: date.quarterOfYear type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_name + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.quarterOfYear meta: origin: originType: NATIVE @@ -878,15 +876,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -902,26 +900,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -930,20 +928,20 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: - id: wdf__state + id: wdf__region type: workspaceDataFilter - filterColumn: wdf__state + filterColumn: wdf__region filterColumnDataType: STRING - filterId: - id: wdf__region + id: wdf__state type: workspaceDataFilter - filterColumn: wdf__region + filterColumn: wdf__state filterColumnDataType: STRING type: NORMAL links: @@ -1397,10 +1395,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1425,9 +1421,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1436,7 +1429,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1472,18 +1468,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1538,14 +1534,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1564,15 +1560,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1588,26 +1584,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1617,10 +1613,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1636,18 +1632,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1673,10 +1669,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1697,36 +1693,36 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.month type: attribute - id: date.week type: attribute - - id: date.quarter + - id: date.minuteOfHour type: attribute - - id: date.year + - id: date.quarter type: attribute - - id: date.monthOfYear + - id: date.hourOfDay type: attribute - - id: date.month + - id: date.hour type: attribute - - id: date.weekOfYear + - id: date.monthOfYear type: attribute - - id: date.minute + - id: date.dayOfYear type: attribute - - id: date.hourOfDay + - id: date.day type: attribute - - id: date.dayOfYear + - id: date.year type: attribute - - id: date.quarterOfYear + - id: date.weekOfYear type: attribute - - id: date.minuteOfHour + - id: date.minute type: attribute - id: date.dayOfMonth type: attribute - - id: date.hour - type: attribute - id: date.dayOfWeek type: attribute + - id: date.quarterOfYear + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date meta: @@ -2127,10 +2123,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2155,9 +2149,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2166,7 +2157,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2175,7 +2169,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -2190,7 +2184,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -2205,7 +2199,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -2222,7 +2216,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -2238,7 +2232,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -2253,7 +2247,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -2268,7 +2262,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -2283,7 +2277,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2299,7 +2293,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2315,7 +2309,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2331,7 +2325,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2347,7 +2341,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2363,7 +2357,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2380,7 +2374,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2396,7 +2390,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2412,7 +2406,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2428,7 +2422,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2444,7 +2438,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2460,7 +2454,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2475,7 +2469,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2490,7 +2484,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2505,7 +2499,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2520,7 +2514,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2535,7 +2529,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_availability.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_availability.yaml index 1beab03b6..abee6d31c 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_availability.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_availability.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,379 +67,402 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: - - id: products.category + - id: campaign_channel_id type: attribute attributes: - title: Category - description: Category + title: Campaign channel id + description: Campaign channel id tags: - - Products + - Campaign channels areRelationsValid: true - sourceColumn: category + sourceColumn: campaign_channel_id sourceColumnDataType: STRING relationships: dataset: data: - id: products + id: campaign_channels type: dataset labels: data: - - id: products.category + - id: campaign_channel_id type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channel_id meta: origin: originType: NATIVE originId: demo - - id: date.minute + - id: campaign_channels.category type: attribute attributes: - title: Date - Minute - description: Minute + title: Category + description: Category tags: - - Date - granularity: MINUTE + - Campaign channels areRelationsValid: true + sourceColumn: category + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: campaign_channels type: dataset labels: data: - - id: date.minute + - id: campaign_channels.category type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.minute + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channels.category meta: origin: originType: NATIVE originId: demo - - id: date.hour + - id: type type: attribute attributes: - title: Date - Hour - description: Hour + title: Type + description: Type tags: - - Date - granularity: HOUR + - Campaign channels areRelationsValid: true + sourceColumn: type + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: campaign_channels type: dataset labels: data: - - id: date.hour + - id: type type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.hour + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/type meta: origin: originType: NATIVE originId: demo - - id: date.day + - id: campaign_id type: attribute attributes: - title: Date - Date - description: Date + title: Campaign id + description: Campaign id tags: - - Date - granularity: DAY + - Campaigns areRelationsValid: true + sourceColumn: campaign_id + sourceColumnDataType: INT relationships: dataset: data: - id: date + id: campaigns type: dataset labels: data: - - id: date.day + - id: campaign_id type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.day + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_id meta: origin: originType: NATIVE originId: demo - - id: date.week + - id: campaign_name type: attribute attributes: - title: Date - Week/Year - description: Week and Year (W52/2020) + title: Campaign name + description: Campaign name tags: - - Date - granularity: WEEK + - Campaigns areRelationsValid: true + sourceColumn: campaign_name + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: campaigns type: dataset labels: data: - - id: date.week + - id: campaign_name type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.week + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_name meta: origin: originType: NATIVE originId: demo - - id: date.month + - id: customer_id type: attribute attributes: - title: Date - Month/Year - description: Month and Year (12/2020) + title: Customer id + description: Customer id tags: - - Date - granularity: MONTH + - Customers areRelationsValid: true + sourceColumn: customer_id + sourceColumnDataType: INT relationships: dataset: data: - id: date + id: customers type: dataset labels: data: - - id: date.month + - id: customer_id type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.month + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_id meta: origin: originType: NATIVE originId: demo - - id: date.quarter + - id: customer_name type: attribute attributes: - title: Date - Quarter/Year - description: Quarter and Year (Q1/2020) + title: Customer name + description: Customer name tags: - - Date - granularity: QUARTER + - Customers areRelationsValid: true + sourceColumn: customer_name + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: customers type: dataset labels: data: - - id: date.quarter + - id: customer_name type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.quarter + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_name meta: origin: originType: NATIVE originId: demo - - id: date.year + - id: region type: attribute attributes: - title: Date - Year - description: Year + title: Region + description: Region tags: - - Date - granularity: YEAR + - Customers areRelationsValid: true + sourceColumn: region + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: customers type: dataset labels: data: - - id: date.year + - id: region type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.year + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region meta: origin: originType: NATIVE originId: demo - - id: date.minuteOfHour + - id: state type: attribute attributes: - title: Date - Minute of Hour - description: Generic Minute of the Hour(MI1-MI60) + title: State + description: State tags: - - Date - granularity: MINUTE_OF_HOUR + - Customers areRelationsValid: true + sourceColumn: state + sourceColumnDataType: STRING relationships: + defaultView: + data: + id: state + type: label dataset: data: - id: date + id: customers type: dataset labels: data: - - id: date.minuteOfHour + - id: state + type: label + - id: geo__state__location type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.minuteOfHour + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: origin: originType: NATIVE originId: demo - - id: date.hourOfDay + - id: order_id type: attribute attributes: - title: Date - Hour of Day - description: Generic Hour of the Day(H1-H24) + title: Order id + description: Order id tags: - - Date - granularity: HOUR_OF_DAY + - Order lines areRelationsValid: true + sourceColumn: order_id + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: order_lines type: dataset labels: data: - - id: date.hourOfDay + - id: order_id type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.hourOfDay + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_id meta: origin: originType: NATIVE originId: demo - - id: date.dayOfWeek + - id: order_line_id type: attribute attributes: - title: Date - Day of Week - description: Generic Day of the Week (D1-D7) + title: Order line id + description: Order line id tags: - - Date - granularity: DAY_OF_WEEK + - Order lines areRelationsValid: true + sourceColumn: order_line_id + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: order_lines type: dataset labels: data: - - id: date.dayOfWeek + - id: order_line_id type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.dayOfWeek + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_line_id meta: origin: originType: NATIVE originId: demo - - id: date.dayOfMonth + - id: order_status type: attribute attributes: - title: Date - Day of Month - description: Generic Day of the Month (D1-D31) + title: Order status + description: Order status tags: - - Date - granularity: DAY_OF_MONTH + - Order lines areRelationsValid: true + sourceColumn: order_status + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: order_lines type: dataset labels: data: - - id: date.dayOfMonth + - id: order_status type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.dayOfMonth + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_status meta: origin: originType: NATIVE originId: demo - - id: date.dayOfYear + - id: product_id type: attribute attributes: - title: Date - Day of Year - description: Generic Day of the Year (D1-D366) + title: Product id + description: Product id tags: - - Date - granularity: DAY_OF_YEAR + - Products areRelationsValid: true + sourceColumn: product_id + sourceColumnDataType: INT relationships: dataset: data: - id: date + id: products type: dataset labels: data: - - id: date.dayOfYear + - id: product_id type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.dayOfYear + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_id meta: origin: originType: NATIVE originId: demo - - id: date.weekOfYear + - id: product_name type: attribute attributes: - title: Date - Week of Year - description: Generic Week (W1-W53) + title: Product name + description: Product name tags: - - Date - granularity: WEEK_OF_YEAR + - Products areRelationsValid: true + sourceColumn: product_name + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: products type: dataset labels: data: - - id: date.weekOfYear + - id: product_name type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.weekOfYear + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_name meta: origin: originType: NATIVE originId: demo - - id: date.monthOfYear + - id: products.category type: attribute attributes: - title: Date - Month of Year - description: Generic Month (M1-M12) + title: Category + description: Category tags: - - Date - granularity: MONTH_OF_YEAR + - Products areRelationsValid: true + sourceColumn: category + sourceColumnDataType: STRING relationships: dataset: data: - id: date + id: products type: dataset labels: data: - - id: date.monthOfYear + - id: products.category type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.monthOfYear + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category meta: origin: originType: NATIVE originId: demo - - id: date.quarterOfYear + - id: date.minute type: attribute attributes: - title: Date - Quarter of Year - description: Generic Quarter (Q1-Q4) + title: Date - Minute + description: Minute tags: - Date - granularity: QUARTER_OF_YEAR + granularity: MINUTE areRelationsValid: true relationships: dataset: @@ -453,366 +471,346 @@ interactions: type: dataset labels: data: - - id: date.quarterOfYear + - id: date.minute type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.quarterOfYear + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.minute meta: origin: originType: NATIVE originId: demo - - id: campaign_channel_id + - id: date.hour type: attribute attributes: - title: Campaign channel id - description: Campaign channel id + title: Date - Hour + description: Hour tags: - - Campaign channels + - Date + granularity: HOUR areRelationsValid: true - sourceColumn: campaign_channel_id - sourceColumnDataType: STRING relationships: dataset: data: - id: campaign_channels + id: date type: dataset labels: data: - - id: campaign_channel_id + - id: date.hour type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channel_id + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.hour meta: origin: originType: NATIVE originId: demo - - id: campaign_channels.category + - id: date.day type: attribute attributes: - title: Category - description: Category + title: Date - Date + description: Date tags: - - Campaign channels + - Date + granularity: DAY areRelationsValid: true - sourceColumn: category - sourceColumnDataType: STRING relationships: dataset: data: - id: campaign_channels + id: date type: dataset labels: data: - - id: campaign_channels.category + - id: date.day type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channels.category + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.day meta: origin: originType: NATIVE originId: demo - - id: type + - id: date.week type: attribute attributes: - title: Type - description: Type + title: Date - Week/Year + description: Week and Year (W52/2020) tags: - - Campaign channels + - Date + granularity: WEEK areRelationsValid: true - sourceColumn: type - sourceColumnDataType: STRING relationships: dataset: data: - id: campaign_channels + id: date type: dataset labels: data: - - id: type + - id: date.week type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/type + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.week meta: origin: originType: NATIVE originId: demo - - id: campaign_id + - id: date.month type: attribute attributes: - title: Campaign id - description: Campaign id + title: Date - Month/Year + description: Month and Year (12/2020) tags: - - Campaigns + - Date + granularity: MONTH areRelationsValid: true - sourceColumn: campaign_id - sourceColumnDataType: INT relationships: dataset: data: - id: campaigns + id: date type: dataset labels: data: - - id: campaign_id + - id: date.month type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_id + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.month meta: origin: originType: NATIVE originId: demo - - id: campaign_name + - id: date.quarter type: attribute attributes: - title: Campaign name - description: Campaign name + title: Date - Quarter/Year + description: Quarter and Year (Q1/2020) tags: - - Campaigns + - Date + granularity: QUARTER areRelationsValid: true - sourceColumn: campaign_name - sourceColumnDataType: STRING relationships: dataset: data: - id: campaigns + id: date type: dataset labels: data: - - id: campaign_name + - id: date.quarter type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_name + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.quarter meta: origin: originType: NATIVE originId: demo - - id: customer_id + - id: date.year type: attribute attributes: - title: Customer id - description: Customer id + title: Date - Year + description: Year tags: - - Customers + - Date + granularity: YEAR areRelationsValid: true - sourceColumn: customer_id - sourceColumnDataType: INT relationships: dataset: data: - id: customers + id: date type: dataset labels: data: - - id: customer_id + - id: date.year type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_id + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.year meta: origin: originType: NATIVE originId: demo - - id: customer_name + - id: date.minuteOfHour type: attribute attributes: - title: Customer name - description: Customer name + title: Date - Minute of Hour + description: Generic Minute of the Hour(MI1-MI60) tags: - - Customers + - Date + granularity: MINUTE_OF_HOUR areRelationsValid: true - sourceColumn: customer_name - sourceColumnDataType: STRING relationships: dataset: data: - id: customers + id: date type: dataset labels: data: - - id: customer_name + - id: date.minuteOfHour type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_name + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.minuteOfHour meta: origin: originType: NATIVE originId: demo - - id: region + - id: date.hourOfDay type: attribute attributes: - title: Region - description: Region + title: Date - Hour of Day + description: Generic Hour of the Day(H1-H24) tags: - - Customers + - Date + granularity: HOUR_OF_DAY areRelationsValid: true - sourceColumn: region - sourceColumnDataType: STRING relationships: dataset: data: - id: customers + id: date type: dataset labels: data: - - id: region + - id: date.hourOfDay type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.hourOfDay meta: origin: originType: NATIVE originId: demo - - id: state + - id: date.dayOfWeek type: attribute attributes: - title: State - description: State + title: Date - Day of Week + description: Generic Day of the Week (D1-D7) tags: - - Customers + - Date + granularity: DAY_OF_WEEK areRelationsValid: true - sourceColumn: state - sourceColumnDataType: STRING relationships: - defaultView: - data: - id: state - type: label dataset: data: - id: customers + id: date type: dataset labels: data: - - id: geo__state__location - type: label - - id: state + - id: date.dayOfWeek type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.dayOfWeek meta: origin: originType: NATIVE originId: demo - - id: order_id + - id: date.dayOfMonth type: attribute attributes: - title: Order id - description: Order id + title: Date - Day of Month + description: Generic Day of the Month (D1-D31) tags: - - Order lines + - Date + granularity: DAY_OF_MONTH areRelationsValid: true - sourceColumn: order_id - sourceColumnDataType: STRING relationships: dataset: data: - id: order_lines + id: date type: dataset labels: data: - - id: order_id + - id: date.dayOfMonth type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_id + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.dayOfMonth meta: origin: originType: NATIVE originId: demo - - id: order_line_id + - id: date.dayOfYear type: attribute attributes: - title: Order line id - description: Order line id + title: Date - Day of Year + description: Generic Day of the Year (D1-D366) tags: - - Order lines + - Date + granularity: DAY_OF_YEAR areRelationsValid: true - sourceColumn: order_line_id - sourceColumnDataType: STRING relationships: dataset: data: - id: order_lines + id: date type: dataset labels: data: - - id: order_line_id + - id: date.dayOfYear type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_line_id + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.dayOfYear meta: origin: originType: NATIVE originId: demo - - id: order_status + - id: date.weekOfYear type: attribute attributes: - title: Order status - description: Order status + title: Date - Week of Year + description: Generic Week (W1-W53) tags: - - Order lines + - Date + granularity: WEEK_OF_YEAR areRelationsValid: true - sourceColumn: order_status - sourceColumnDataType: STRING relationships: dataset: data: - id: order_lines + id: date type: dataset labels: data: - - id: order_status + - id: date.weekOfYear type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_status + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.weekOfYear meta: origin: originType: NATIVE originId: demo - - id: product_id + - id: date.monthOfYear type: attribute attributes: - title: Product id - description: Product id + title: Date - Month of Year + description: Generic Month (M1-M12) tags: - - Products + - Date + granularity: MONTH_OF_YEAR areRelationsValid: true - sourceColumn: product_id - sourceColumnDataType: INT relationships: dataset: data: - id: products + id: date type: dataset labels: data: - - id: product_id + - id: date.monthOfYear type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_id + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.monthOfYear meta: origin: originType: NATIVE originId: demo - - id: product_name + - id: date.quarterOfYear type: attribute attributes: - title: Product name - description: Product name + title: Date - Quarter of Year + description: Generic Quarter (Q1-Q4) tags: - - Products + - Date + granularity: QUARTER_OF_YEAR areRelationsValid: true - sourceColumn: product_name - sourceColumnDataType: STRING relationships: dataset: data: - id: products + id: date type: dataset labels: data: - - id: product_name + - id: date.quarterOfYear type: label links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_name + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/date.quarterOfYear meta: origin: originType: NATIVE @@ -878,15 +876,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -902,26 +900,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -930,20 +928,20 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: - id: wdf__state + id: wdf__region type: workspaceDataFilter - filterColumn: wdf__state + filterColumn: wdf__region filterColumnDataType: STRING - filterId: - id: wdf__region + id: wdf__state type: workspaceDataFilter - filterColumn: wdf__region + filterColumn: wdf__state filterColumnDataType: STRING type: NORMAL links: @@ -1397,10 +1395,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1425,9 +1421,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1436,7 +1429,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1472,18 +1468,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -1538,14 +1534,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -1564,15 +1560,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -1588,26 +1584,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -1617,10 +1613,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__region @@ -1636,18 +1632,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -1673,10 +1669,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -1697,36 +1693,36 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.month type: attribute - id: date.week type: attribute - - id: date.quarter + - id: date.minuteOfHour type: attribute - - id: date.year + - id: date.quarter type: attribute - - id: date.monthOfYear + - id: date.hourOfDay type: attribute - - id: date.month + - id: date.hour type: attribute - - id: date.weekOfYear + - id: date.monthOfYear type: attribute - - id: date.minute + - id: date.dayOfYear type: attribute - - id: date.hourOfDay + - id: date.day type: attribute - - id: date.dayOfYear + - id: date.year type: attribute - - id: date.quarterOfYear + - id: date.weekOfYear type: attribute - - id: date.minuteOfHour + - id: date.minute type: attribute - id: date.dayOfMonth type: attribute - - id: date.hour - type: attribute - id: date.dayOfWeek type: attribute + - id: date.quarterOfYear + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date meta: @@ -2127,10 +2123,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2155,9 +2149,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2166,7 +2157,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2175,7 +2169,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -2190,7 +2184,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -2205,7 +2199,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -2222,7 +2216,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -2238,7 +2232,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -2253,7 +2247,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -2268,7 +2262,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -2283,7 +2277,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2299,7 +2293,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2315,7 +2309,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -2331,7 +2325,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -2347,7 +2341,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -2363,7 +2357,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -2380,7 +2374,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -2396,7 +2390,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2412,7 +2406,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2428,7 +2422,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2444,7 +2438,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -2460,7 +2454,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -2475,7 +2469,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -2490,7 +2484,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -2505,7 +2499,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -2520,7 +2514,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -2535,7 +2529,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -2596,10 +2590,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2624,9 +2616,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2637,9 +2626,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '1502' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: items: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_attributes.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_attributes.yaml index ad7cd04b9..237192421 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_attributes.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_attributes.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -257,10 +255,10 @@ interactions: relationships: labels: data: - - id: geo__state__location - type: label - id: state type: label + - id: geo__state__location + type: label links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state meta: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_facts.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_facts.yaml index 00e2359c5..01495dcc6 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_facts.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_facts.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_labels.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_labels.yaml index faa1c7b3c..b2821bf7d 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_labels.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_labels.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_metrics.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_metrics.yaml index 6f15e7141..6a67e3d0e 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_metrics.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_metrics.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -81,7 +79,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -96,7 +94,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -111,7 +109,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -128,7 +126,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -144,7 +142,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -159,7 +157,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -174,7 +172,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -189,7 +187,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -205,7 +203,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -216,12 +214,28 @@ interactions: origin: originType: NATIVE originId: demo + - id: revenue-outdoor + type: metric + attributes: + title: Revenue (Outdoor) + areRelationsValid: true + createdAt: 2024-10-07 11:15 + content: + format: $#,##0 + maql: SELECT {metric/revenue} WHERE {label/products.category} IN + ("Outdoor") + links: + self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-outdoor + meta: + origin: + originType: NATIVE + originId: demo - id: percent_revenue_from_top_10_percent_products type: metric attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -237,7 +251,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -253,7 +267,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -269,7 +283,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -286,7 +300,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -302,7 +316,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -318,7 +332,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -334,7 +348,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -345,28 +359,12 @@ interactions: origin: originType: NATIVE originId: demo - - id: revenue-outdoor - type: metric - attributes: - title: Revenue (Outdoor) - areRelationsValid: true - createdAt: 2024-01-25 12:34 - content: - format: $#,##0 - maql: SELECT {metric/revenue} WHERE {label/products.category} IN - ("Outdoor") - links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-outdoor - meta: - origin: - originType: NATIVE - originId: demo - id: revenue_per_customer type: metric attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -381,7 +379,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -396,7 +394,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -411,7 +409,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -426,7 +424,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -441,7 +439,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_declarative_analytics_model.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_declarative_analytics_model.yaml index aaaec3cdb..5ad453fd9 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_declarative_analytics_model.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_declarative_analytics_model.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '27731' + - '27754' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -329,6 +327,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_declarative_analytics_model_child.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_declarative_analytics_model_child.yaml index 5afc6d87d..6875892e1 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_declarative_analytics_model_child.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_declarative_analytics_model_child.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '276' + - '299' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -87,6 +85,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_declarative_ldm.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_declarative_ldm.yaml index d94f151e0..acdee6e4e 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_declarative_ldm.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_declarative_ldm.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6227' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_dependent_entities_graph.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_dependent_entities_graph.yaml index 189b5b8ff..db5468248 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_dependent_entities_graph.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_dependent_entities_graph.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '26158' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: graph: @@ -97,27 +95,27 @@ interactions: type: dataset - - id: customer_id type: attribute - - id: amount_of_top_customers + - id: percent_revenue_from_top_10_customers type: metric - - id: customer_id type: attribute - - id: percent_revenue_from_top_10_customers + - id: percent_revenue_from_top_10_percent_customers type: metric - - id: customer_id type: attribute - - id: customers - type: dataset + - id: amount_of_active_customers + type: metric - - id: customer_id type: attribute - id: revenue_per_customer type: metric - - id: customer_id type: attribute - - id: amount_of_active_customers - type: metric + - id: customers + type: dataset - - id: customer_id type: attribute - - id: percent_revenue_from_top_10_percent_customers + - id: amount_of_top_customers type: metric - - id: customer_name type: attribute @@ -179,22 +177,22 @@ interactions: type: attribute - id: date type: dataset - - - id: date.year - type: attribute - - id: date - type: dataset - - id: date.year type: attribute - id: product_revenue_comparison-over_previous_period type: visualizationObject - - - id: order_id + - - id: date.year type: attribute - - id: amount_of_orders - type: metric + - id: date + type: dataset - - id: order_id type: attribute - id: order_lines type: dataset + - - id: order_id + type: attribute + - id: amount_of_orders + type: metric - - id: order_line_id type: attribute - id: order_lines @@ -213,17 +211,21 @@ interactions: type: metric - - id: product_id type: attribute - - id: percent_revenue_from_top_10_percent_products - type: metric + - id: products + type: dataset - - id: product_id type: attribute - id: percent_revenue_per_product type: metric - - id: product_id type: attribute + - id: percent_revenue_from_top_10_percent_products + type: metric + - - id: product_name + type: attribute - id: products type: dataset - - - id: product_name + - - id: products.category type: attribute - id: products type: dataset @@ -231,10 +233,6 @@ interactions: type: attribute - id: percent_revenue_in_category type: metric - - - id: products.category - type: attribute - - id: products - type: dataset - - id: region type: attribute - id: customers @@ -253,11 +251,11 @@ interactions: type: analyticalDashboard - - id: campaigns type: dataset - - id: campaign_channels + - id: order_lines type: dataset - - id: campaigns type: dataset - - id: order_lines + - id: campaign_channels type: dataset - - id: customers type: dataset @@ -265,15 +263,15 @@ interactions: type: dataset - - id: date type: dataset - - id: customers_trend + - id: revenue_by_category_trend type: visualizationObject - - id: date type: dataset - - id: revenue_by_category_trend - type: visualizationObject + - id: order_lines + type: dataset - - id: date type: dataset - - id: product_revenue_comparison-over_previous_period + - id: percentage_of_customers_by_region type: visualizationObject - - id: date type: dataset @@ -281,15 +279,15 @@ interactions: type: analyticalDashboard - - id: date type: dataset - - id: order_lines - type: dataset + - id: customers_trend + type: visualizationObject - - id: date type: dataset - id: revenue_trend type: visualizationObject - - id: date type: dataset - - id: percentage_of_customers_by_region + - id: product_revenue_comparison-over_previous_period type: visualizationObject - - id: products type: dataset @@ -299,6 +297,10 @@ interactions: type: fact - id: campaign_channels type: dataset + - - id: price + type: fact + - id: order_lines + type: dataset - - id: price type: fact - id: order_amount @@ -307,7 +309,7 @@ interactions: type: fact - id: revenue_and_quantity_by_product_and_category type: visualizationObject - - - id: price + - - id: quantity type: fact - id: order_lines type: dataset @@ -319,18 +321,14 @@ interactions: type: fact - id: revenue_and_quantity_by_product_and_category type: visualizationObject - - - id: quantity + - - id: spend type: fact - - id: order_lines - type: dataset + - id: campaign_spend + type: metric - - id: spend type: fact - id: campaign_channels type: dataset - - - id: spend - type: fact - - id: campaign_spend - type: metric - - id: campaign_channel_id type: label - id: campaign_channel_id @@ -351,6 +349,10 @@ interactions: type: label - id: campaign_spend type: visualizationObject + - - id: campaign_name + type: label + - id: campaign_name_filter + type: filterContext - - id: campaign_name type: label - id: campaign_name @@ -359,10 +361,6 @@ interactions: type: label - id: revenue_per_usd_vs_spend_by_campaign type: visualizationObject - - - id: campaign_name - type: label - - id: campaign_name_filter - type: filterContext - - id: customer_id type: label - id: customer_id @@ -373,11 +371,11 @@ interactions: type: attribute - - id: customer_name type: label - - id: revenue_and_quantity_by_product_and_category + - id: percent_revenue_per_product_by_customer_and_category type: visualizationObject - - id: customer_name type: label - - id: percent_revenue_per_product_by_customer_and_category + - id: revenue_and_quantity_by_product_and_category type: visualizationObject - - id: customer_name type: label @@ -417,24 +415,24 @@ interactions: type: attribute - - id: date.month type: label - - id: customers_trend + - id: revenue_by_category_trend type: visualizationObject - - id: date.month type: label - - id: revenue_by_category_trend + - id: revenue_trend type: visualizationObject - - id: date.month type: label - - id: percentage_of_customers_by_region - type: visualizationObject + - id: date.month + type: attribute - - id: date.month type: label - - id: revenue_trend + - id: percentage_of_customers_by_region type: visualizationObject - - id: date.month type: label - - id: date.month - type: attribute + - id: customers_trend + type: visualizationObject - - id: date.monthOfYear type: label - id: date.monthOfYear @@ -477,35 +475,27 @@ interactions: type: attribute - - id: order_status type: label - - id: revenue + - id: amount_of_valid_orders type: metric - - id: order_status type: label - - id: amount_of_valid_orders + - id: revenue type: metric - - id: product_id type: label - id: product_id type: attribute - - - id: product_name - type: label - - id: revenue_and_quantity_by_product_and_category - type: visualizationObject - - id: product_name type: label - id: product_saleability type: visualizationObject - - id: product_name type: label - - id: product_categories_pie_chart - type: visualizationObject - - - id: product_name - type: label - - id: revenue_by_product + - id: percent_revenue_per_product_by_customer_and_category type: visualizationObject - - id: product_name type: label - - id: percent_revenue_per_product_by_customer_and_category + - id: revenue_and_quantity_by_product_and_category type: visualizationObject - - id: product_name type: label @@ -519,62 +509,66 @@ interactions: type: label - id: product_name type: attribute + - - id: product_name + type: label + - id: product_categories_pie_chart + type: visualizationObject + - - id: product_name + type: label + - id: revenue_by_product + type: visualizationObject - - id: product_name type: label - id: product_revenue_comparison-over_previous_period type: visualizationObject - - id: products.category type: label - - id: revenue_and_quantity_by_product_and_category - type: visualizationObject + - id: revenue-clothing + type: metric - - id: products.category type: label - id: revenue-electronic type: metric - - id: products.category type: label - - id: revenue-clothing + - id: revenue-outdoor type: metric - - id: products.category type: label - - id: product_categories_pie_chart + - id: percent_revenue_per_product_by_customer_and_category type: visualizationObject - - id: products.category type: label - - id: revenue-outdoor - type: metric + - id: revenue_and_quantity_by_product_and_category + type: visualizationObject - - id: products.category type: label - - id: products.category - type: attribute + - id: revenue-home + type: metric - - id: products.category type: label - - id: percent_revenue_per_product_by_customer_and_category + - id: product_breakdown type: visualizationObject - - id: products.category type: label - - id: product_breakdown + - id: top_10_products type: visualizationObject - - id: products.category type: label - - id: revenue_by_category_trend + - id: product_categories_pie_chart type: visualizationObject - - id: products.category type: label - - id: top_10_products + - id: revenue_by_category_trend type: visualizationObject - - id: products.category type: label - - id: revenue-home - type: metric + - id: products.category + type: attribute - - id: products.category type: label - id: product_revenue_comparison-over_previous_period type: visualizationObject - - - id: region - type: label - - id: region - type: attribute - - id: region type: label - id: region_filter @@ -583,6 +577,10 @@ interactions: type: label - id: percentage_of_customers_by_region type: visualizationObject + - - id: region + type: label + - id: region + type: attribute - - id: state type: label - id: state @@ -599,6 +597,10 @@ interactions: type: label - id: type type: attribute + - - id: amount_of_active_customers + type: metric + - id: percentage_of_customers_by_region + type: visualizationObject - - id: amount_of_active_customers type: metric - id: amount_of_top_customers @@ -607,10 +609,6 @@ interactions: type: metric - id: customers_trend type: visualizationObject - - - id: amount_of_active_customers - type: metric - - id: percentage_of_customers_by_region - type: visualizationObject - - id: amount_of_orders type: metric - id: product_saleability @@ -649,11 +647,7 @@ interactions: type: visualizationObject - - id: revenue type: metric - - id: percent_revenue_from_top_10_products - type: metric - - - id: revenue - type: metric - - id: revenue-electronic + - id: percent_revenue_from_top_10_customers type: metric - - id: revenue type: metric @@ -661,27 +655,23 @@ interactions: type: visualizationObject - - id: revenue type: metric - - id: total_revenue + - id: revenue-clothing type: metric - - id: revenue type: metric - - id: product_categories_pie_chart - type: visualizationObject - - - id: revenue - type: metric - - id: percent_revenue_from_top_10_percent_products + - id: revenue_per_customer type: metric - - id: revenue type: metric - - id: revenue-outdoor + - id: percent_revenue_per_product type: metric - - id: revenue type: metric - - id: revenue_top_10_percent + - id: percent_revenue_in_category type: metric - - id: revenue type: metric - - id: percent_revenue + - id: revenue_top_10 type: metric - - id: revenue type: metric @@ -689,43 +679,47 @@ interactions: type: visualizationObject - - id: revenue type: metric - - id: revenue_by_category_trend + - id: product_categories_pie_chart type: visualizationObject - - id: revenue type: metric - - id: revenue-home + - id: percent_revenue_from_top_10_percent_customers type: metric - - id: revenue type: metric - - id: product_revenue_comparison-over_previous_period + - id: revenue_by_category_trend type: visualizationObject - - id: revenue type: metric - - id: revenue_per_dollar_spent + - id: amount_of_top_customers type: metric - - id: revenue type: metric - - id: revenue_top_10 + - id: percent_revenue_from_top_10_products type: metric - - id: revenue type: metric - - id: percent_revenue_in_category + - id: revenue_per_dollar_spent type: metric - - id: revenue type: metric - - id: revenue_and_quantity_by_product_and_category - type: visualizationObject + - id: revenue-electronic + type: metric - - id: revenue type: metric - - id: percent_revenue_from_top_10_customers + - id: revenue-outdoor type: metric - - id: revenue type: metric - - id: revenue-clothing + - id: percent_revenue_per_product_by_customer_and_category + type: visualizationObject + - - id: revenue type: metric + - id: revenue_and_quantity_by_product_and_category + type: visualizationObject - - id: revenue type: metric - - id: revenue_per_customer + - id: revenue-home type: metric - - id: revenue type: metric @@ -737,19 +731,23 @@ interactions: type: visualizationObject - - id: revenue type: metric - - id: percent_revenue_per_product_by_customer_and_category + - id: total_revenue + type: metric + - - id: revenue + type: metric + - id: product_revenue_comparison-over_previous_period type: visualizationObject - - id: revenue type: metric - - id: amount_of_top_customers + - id: percent_revenue_from_top_10_percent_products type: metric - - id: revenue type: metric - - id: percent_revenue_per_product + - id: revenue_top_10_percent type: metric - - id: revenue type: metric - - id: percent_revenue_from_top_10_percent_customers + - id: percent_revenue type: metric - - id: revenue_per_customer type: metric @@ -761,11 +759,11 @@ interactions: type: visualizationObject - - id: revenue_top_10 type: metric - - id: percent_revenue_from_top_10_products + - id: percent_revenue_from_top_10_customers type: metric - - id: revenue_top_10 type: metric - - id: percent_revenue_from_top_10_customers + - id: percent_revenue_from_top_10_products type: metric - - id: revenue_top_10 type: metric @@ -777,19 +775,19 @@ interactions: type: visualizationObject - - id: revenue_top_10_percent type: metric - - id: percent_revenue_from_top_10_percent_products + - id: percent_revenue_from_top_10_percent_customers type: metric - - id: revenue_top_10_percent type: metric - - id: percent_revenue_from_top_10_percent_customers + - id: percent_revenue_from_top_10_percent_products type: metric - - id: total_revenue type: metric - - id: percent_revenue + - id: total_revenue-no_filters type: metric - - id: total_revenue type: metric - - id: total_revenue-no_filters + - id: percent_revenue type: metric - - id: campaign_spend type: visualizationObject @@ -825,11 +823,11 @@ interactions: type: analyticalDashboard - - id: top_10_products type: visualizationObject - - id: product_and_category + - id: dashboard_plugin type: analyticalDashboard - - id: top_10_products type: visualizationObject - - id: dashboard_plugin + - id: product_and_category type: analyticalDashboard - - id: campaign_name_filter type: filterContext diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_dependent_entities_graph_from_entry_points.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_dependent_entities_graph_from_entry_points.yaml index 59ce507bb..590291cd1 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_dependent_entities_graph_from_entry_points.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_dependent_entities_graph_from_entry_points.yaml @@ -35,10 +35,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -64,9 +62,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -77,9 +72,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '275' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: graph: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_modify_ds_and_put_declarative_ldm.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_modify_ds_and_put_declarative_ldm.yaml index 7a02d081c..5bd698be8 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_modify_ds_and_put_declarative_ldm.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_modify_ds_and_put_declarative_ldm.yaml @@ -28,7 +28,7 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -55,9 +55,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -66,14 +63,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: d8d000758b18aa62 + traceId: 6703c34f8861cea1b9b4332f3c75835d - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -138,9 +138,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -149,7 +146,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -214,9 +214,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -227,9 +224,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - - '6088' + - '6227' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: @@ -543,11 +543,21 @@ interactions: dateInstances: - description: '' granularities: + - MINUTE + - HOUR - DAY - WEEK - MONTH - QUARTER - YEAR + - MINUTE_OF_HOUR + - HOUR_OF_DAY + - DAY_OF_WEEK + - DAY_OF_MONTH + - DAY_OF_YEAR + - WEEK_OF_YEAR + - MONTH_OF_YEAR + - QUARTER_OF_YEAR granularitiesFormatting: titleBase: '' titlePattern: '%titleBase - %granularityTitle' @@ -582,7 +592,7 @@ interactions: Connection: - keep-alive Content-Length: - - '435' + - '476' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -612,9 +622,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -623,7 +630,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -632,6 +642,7 @@ interactions: attributes: url: jdbc:postgresql://localhost:5432/demo username: demouser + authenticationType: USERNAME_PASSWORD name: demo-test-ds type: POSTGRESQL schema: demo @@ -948,11 +959,21 @@ interactions: - Products dateInstances: - granularities: + - MINUTE + - HOUR - DAY - WEEK - MONTH - QUARTER - YEAR + - MINUTE_OF_HOUR + - HOUR_OF_DAY + - DAY_OF_WEEK + - DAY_OF_MONTH + - DAY_OF_YEAR + - WEEK_OF_YEAR + - MONTH_OF_YEAR + - QUARTER_OF_YEAR granularitiesFormatting: titleBase: '' titlePattern: '%titleBase - %granularityTitle' @@ -1010,9 +1031,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1021,7 +1039,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -1051,7 +1072,7 @@ interactions: Connection: - keep-alive Content-Length: - - '435' + - '476' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -1081,9 +1102,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1092,7 +1110,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1101,6 +1122,7 @@ interactions: attributes: url: jdbc:postgresql://localhost:5432/demo username: demouser + authenticationType: USERNAME_PASSWORD name: demo-test-ds type: POSTGRESQL schema: demo @@ -1417,11 +1439,21 @@ interactions: - Products dateInstances: - granularities: + - MINUTE + - HOUR - DAY - WEEK - MONTH - QUARTER - YEAR + - MINUTE_OF_HOUR + - HOUR_OF_DAY + - DAY_OF_WEEK + - DAY_OF_MONTH + - DAY_OF_YEAR + - WEEK_OF_YEAR + - MONTH_OF_YEAR + - QUARTER_OF_YEAR granularitiesFormatting: titleBase: '' titlePattern: '%titleBase - %granularityTitle' @@ -1479,9 +1511,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1490,7 +1519,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -1548,9 +1580,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1561,9 +1590,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - - '5930' + - '6069' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: @@ -1871,11 +1903,21 @@ interactions: dateInstances: - description: '' granularities: + - MINUTE + - HOUR - DAY - WEEK - MONTH - QUARTER - YEAR + - MINUTE_OF_HOUR + - HOUR_OF_DAY + - DAY_OF_WEEK + - DAY_OF_MONTH + - DAY_OF_YEAR + - WEEK_OF_YEAR + - MONTH_OF_YEAR + - QUARTER_OF_YEAR granularitiesFormatting: titleBase: '' titlePattern: '%titleBase - %granularityTitle' @@ -3249,6 +3291,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -3593,6 +3636,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -3611,6 +3655,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -3628,6 +3673,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -3641,6 +3687,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -3650,6 +3697,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -3699,9 +3747,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -3710,6 +3755,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_analytics_model.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_analytics_model.yaml index afa5bdfe8..f460dc77e 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_analytics_model.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_analytics_model.yaml @@ -24,18 +24,16 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -47,23 +45,16 @@ interactions: - application/problem+json DATE: &id001 - PLACEHOLDER - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +63,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:37 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: e095ae5a275482cc + traceId: 6703c3514425366241a8c377ea0ec46d - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -118,10 +112,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -146,9 +138,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -157,7 +146,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:37 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -196,10 +188,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -224,9 +214,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -237,9 +224,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6227' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:37 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: @@ -931,10 +921,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -957,9 +945,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -968,7 +953,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:37 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -1000,10 +988,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1028,9 +1014,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1041,9 +1024,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '27731' + - '27754' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:37 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -1298,6 +1284,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -2394,10 +2381,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2422,9 +2407,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2433,7 +2415,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:37 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -2465,10 +2450,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2493,9 +2476,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2504,7 +2484,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:37 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2514,7 +2497,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -3836,6 +3819,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] headers: Accept-Encoding: - br, gzip, deflate @@ -3861,10 +3845,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3887,9 +3869,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -3898,7 +3877,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:37 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -3930,10 +3912,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3958,9 +3938,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -3971,9 +3948,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '27731' + - '27754' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -4228,6 +4208,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -6661,6 +6642,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -7005,6 +6987,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -7023,6 +7006,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -7040,6 +7024,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -7053,6 +7038,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -7062,6 +7048,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -7087,10 +7074,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -7113,9 +7098,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -7124,6 +7106,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_ldm.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_ldm.yaml index 44b5ad340..b2ebd1588 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_ldm.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_ldm.yaml @@ -24,18 +24,16 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -47,23 +45,16 @@ interactions: - application/problem+json DATE: &id001 - PLACEHOLDER - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +63,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 385a912ebd2133fe + traceId: 6703c34f046b883f601946caa1230fc2 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -118,10 +112,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -146,9 +138,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -157,7 +146,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -196,10 +188,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -224,9 +214,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -237,9 +224,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6227' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: @@ -604,10 +594,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -632,9 +620,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -643,7 +628,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -675,10 +663,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -703,9 +689,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -714,7 +697,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -724,7 +710,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -1073,10 +1059,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1099,9 +1083,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1110,7 +1091,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -1142,10 +1126,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1170,9 +1152,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1183,9 +1162,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6069' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: @@ -2881,6 +2863,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -3225,6 +3208,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -3243,6 +3227,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -3260,6 +3245,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -3273,6 +3259,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -3282,6 +3269,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -3307,10 +3295,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3333,9 +3319,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -3344,6 +3327,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_ldm_and_modify_tables_columns_case.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_ldm_and_modify_tables_columns_case.yaml index d94f151e0..e4ab9ed67 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_ldm_and_modify_tables_columns_case.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_ldm_and_modify_tables_columns_case.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6227' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_analytics_model.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_analytics_model.yaml index 190eebbc0..5ee103c5f 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_analytics_model.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_analytics_model.yaml @@ -24,18 +24,16 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -47,23 +45,16 @@ interactions: - application/problem+json DATE: &id001 - PLACEHOLDER - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +63,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 7828985dd5e82407 + traceId: 6703c352b4b141464b8973237456a137 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -118,10 +112,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -146,9 +138,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -157,7 +146,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -196,10 +188,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -224,9 +214,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -237,9 +224,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6227' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: @@ -931,10 +921,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -957,9 +945,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -968,7 +953,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -1000,10 +988,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1028,9 +1014,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1041,9 +1024,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '183' + - '206' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -1051,6 +1037,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -1066,6 +1053,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] headers: Accept-Encoding: - br, gzip, deflate @@ -1091,10 +1079,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1117,9 +1103,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1128,7 +1111,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -1160,10 +1146,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1188,9 +1172,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1201,9 +1182,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '183' + - '206' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -1211,6 +1195,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -2580,6 +2565,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -2924,6 +2910,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -2942,6 +2929,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -2959,6 +2947,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -2972,6 +2961,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -2981,6 +2971,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -3006,10 +2997,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3032,9 +3021,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -3043,6 +3029,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_ldm.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_ldm.yaml index 4ee79d8b1..c5fdec67f 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_ldm.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_ldm.yaml @@ -24,18 +24,16 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -47,23 +45,16 @@ interactions: - application/problem+json DATE: &id001 - PLACEHOLDER - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +63,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: eb36bb17c584b68b + traceId: 6703c353bd492cfbe73ae735f4cd5fd4 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -118,10 +112,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -146,9 +138,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -157,7 +146,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -196,10 +188,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -224,9 +214,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -237,9 +224,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6227' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: @@ -931,10 +921,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -957,9 +945,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -968,7 +953,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -1000,10 +988,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1028,9 +1014,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1041,9 +1024,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6069' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: @@ -2739,6 +2725,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -3083,6 +3070,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -3101,6 +3089,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -3118,6 +3107,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -3131,6 +3121,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -3140,6 +3131,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -3165,10 +3157,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3191,9 +3181,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -3202,6 +3189,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_store_declarative_analytics_model.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_store_declarative_analytics_model.yaml index 5e73bbac7..4602b34f0 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_store_declarative_analytics_model.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_store_declarative_analytics_model.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '30899' + - '30922' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -127,7 +125,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -170,7 +168,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -320,7 +318,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -332,7 +330,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -342,13 +340,14 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -391,7 +390,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -400,7 +399,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -410,7 +409,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -420,7 +419,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -430,7 +429,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -439,7 +438,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -448,7 +447,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -458,7 +457,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -468,7 +467,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -478,7 +477,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -488,7 +487,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -498,7 +497,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -508,7 +507,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -518,7 +517,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -529,7 +528,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -539,7 +538,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -549,7 +548,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -559,7 +558,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -568,7 +567,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -577,7 +576,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -586,7 +585,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -595,7 +594,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -604,7 +603,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -613,7 +612,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -678,7 +677,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -754,7 +753,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -833,7 +832,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -892,7 +891,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -949,7 +948,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1002,7 +1001,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1077,7 +1076,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1134,7 +1133,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1233,7 +1232,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1289,7 +1288,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1328,7 +1327,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1384,7 +1383,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1452,7 +1451,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1509,7 +1508,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1566,7 +1565,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1601,10 +1600,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1629,9 +1626,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1640,7 +1634,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -1672,10 +1669,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1700,9 +1695,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1711,7 +1703,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1721,7 +1716,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -1753,10 +1748,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1781,9 +1774,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1794,9 +1784,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '30899' + - '30922' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -1849,7 +1842,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -1892,7 +1885,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2042,7 +2035,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2054,7 +2047,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2064,13 +2057,14 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -2113,7 +2107,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2122,7 +2116,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2132,7 +2126,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2142,7 +2136,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2152,7 +2146,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2161,7 +2155,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2170,7 +2164,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2180,7 +2174,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2190,7 +2184,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2200,7 +2194,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2210,7 +2204,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2220,7 +2214,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2230,7 +2224,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2240,7 +2234,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2251,7 +2245,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2261,7 +2255,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2271,7 +2265,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2281,7 +2275,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2290,7 +2284,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2299,7 +2293,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2308,7 +2302,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2317,7 +2311,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2326,7 +2320,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2335,7 +2329,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2400,7 +2394,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2476,7 +2470,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2555,7 +2549,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2614,7 +2608,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2671,7 +2665,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2724,7 +2718,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2799,7 +2793,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2856,7 +2850,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -2955,7 +2949,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -3011,7 +3005,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -3050,7 +3044,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -3106,7 +3100,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -3174,7 +3168,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -3231,7 +3225,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -3288,7 +3282,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 createdBy: id: admin type: user @@ -3323,10 +3317,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3351,9 +3343,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -3362,7 +3351,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -3394,10 +3386,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3422,9 +3412,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -3433,7 +3420,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -3443,6 +3433,6 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_store_declarative_ldm.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_store_declarative_ldm.yaml index 9773435a4..315ef61f4 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_store_declarative_ldm.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_store_declarative_ldm.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6227' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: @@ -439,10 +437,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -467,9 +463,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -478,7 +471,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -510,10 +506,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -538,9 +532,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -549,7 +540,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -559,7 +553,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -591,10 +585,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -619,9 +611,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -632,9 +621,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6227' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: @@ -999,10 +991,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1027,9 +1017,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1038,7 +1025,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -1070,10 +1060,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1098,9 +1086,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1109,7 +1094,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1119,6 +1107,6 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/explicit_workspace_data_filter.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/explicit_workspace_data_filter.yaml index 378a6de7b..f161f302b 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/explicit_workspace_data_filter.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/explicit_workspace_data_filter.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6227' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: @@ -778,10 +776,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -804,9 +800,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -815,7 +808,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -847,10 +843,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -875,9 +869,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -888,9 +879,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6385' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: @@ -1263,10 +1257,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1291,9 +1283,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1302,7 +1291,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1506,37 +1498,6 @@ interactions: origin: originType: NATIVE originId: demo - - id: state - type: attribute - attributes: - title: State - description: State - tags: - - Customers - areRelationsValid: true - sourceColumn: state - sourceColumnDataType: STRING - relationships: - defaultView: - data: - id: state - type: label - dataset: - data: - id: customers - type: dataset - labels: - data: - - id: geo__state__location - type: label - - id: state - type: label - links: - self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state - meta: - origin: - originType: NATIVE - originId: demo - id: order_id type: attribute attributes: @@ -1735,6 +1696,37 @@ interactions: origin: originType: NATIVE originId: demo + - id: state + type: attribute + attributes: + title: State + description: State + tags: + - Customers + areRelationsValid: true + sourceColumn: state + sourceColumnDataType: STRING + relationships: + defaultView: + data: + id: state + type: label + dataset: + data: + id: customers + type: dataset + labels: + data: + - id: geo__state__location + type: label + - id: state + type: label + links: + self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state + meta: + origin: + originType: NATIVE + originId: demo - id: date.day type: attribute attributes: @@ -2108,15 +2100,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -2132,26 +2124,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -2160,10 +2152,10 @@ interactions: - demo - order_lines workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__state @@ -2633,10 +2625,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2661,9 +2651,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2672,7 +2659,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2708,18 +2698,18 @@ interactions: relationships: attributes: data: - - id: campaign_channel_id + - id: campaign_channels.category type: attribute - id: type type: attribute - - id: campaign_channels.category + - id: campaign_channel_id type: attribute facts: data: - - id: spend - type: fact - id: budget type: fact + - id: spend + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/campaign_channels meta: @@ -2780,14 +2770,14 @@ interactions: relationships: attributes: data: - - id: customer_name - type: attribute - id: customer_id type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_name + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/customers meta: @@ -2806,15 +2796,15 @@ interactions: type: attribute referenceProperties: - identifier: - id: date + id: campaigns type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: campaign_id + dataType: INT target: - id: date - type: date + id: campaign_id + type: attribute sourceColumns: null sourceColumnDataTypes: null - identifier: @@ -2830,26 +2820,26 @@ interactions: sourceColumns: null sourceColumnDataTypes: null - identifier: - id: customers + id: date type: dataset multivalue: false sources: - - column: customer_id - dataType: INT + - column: date + dataType: DATE target: - id: customer_id - type: attribute + id: date + type: date sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: customers type: dataset multivalue: false sources: - - column: campaign_id + - column: customer_id dataType: INT target: - id: campaign_id + id: customer_id type: attribute sourceColumns: null sourceColumnDataTypes: null @@ -2859,10 +2849,10 @@ interactions: - order_lines areRelationsValid: true workspaceDataFilterColumns: - - name: wdf__state - dataType: STRING - name: wdf__region dataType: STRING + - name: wdf__state + dataType: STRING workspaceDataFilterReferences: - filterId: id: wdf__state @@ -2878,18 +2868,18 @@ interactions: relationships: attributes: data: - - id: order_id - type: attribute - id: order_line_id type: attribute - id: order_status type: attribute + - id: order_id + type: attribute facts: data: - - id: price - type: fact - id: quantity type: fact + - id: price + type: fact links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/order_lines meta: @@ -2915,10 +2905,10 @@ interactions: relationships: attributes: data: - - id: products.category - type: attribute - id: product_name type: attribute + - id: products.category + type: attribute - id: product_id type: attribute links: @@ -2939,36 +2929,36 @@ interactions: relationships: attributes: data: - - id: date.day + - id: date.month type: attribute - id: date.week type: attribute - - id: date.quarter + - id: date.minuteOfHour type: attribute - - id: date.year + - id: date.quarter type: attribute - - id: date.monthOfYear + - id: date.hourOfDay type: attribute - - id: date.month + - id: date.hour type: attribute - - id: date.weekOfYear + - id: date.monthOfYear type: attribute - - id: date.minute + - id: date.dayOfYear type: attribute - - id: date.hourOfDay + - id: date.day type: attribute - - id: date.dayOfYear + - id: date.year type: attribute - - id: date.quarterOfYear + - id: date.weekOfYear type: attribute - - id: date.minuteOfHour + - id: date.minute type: attribute - id: date.dayOfMonth type: attribute - - id: date.hour - type: attribute - id: date.dayOfWeek type: attribute + - id: date.quarterOfYear + type: attribute links: self: http://localhost:3000/api/v1/entities/workspaces/demo/datasets/date meta: @@ -3369,10 +3359,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3397,9 +3385,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -3408,7 +3393,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -3417,7 +3405,7 @@ interactions: attributes: title: '# of Active Customers' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -3432,7 +3420,7 @@ interactions: attributes: title: '# of Orders' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) @@ -3447,7 +3435,7 @@ interactions: attributes: title: '# of Top Customers' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT @@ -3464,7 +3452,7 @@ interactions: title: '# of Valid Orders' description: '' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} @@ -3480,7 +3468,7 @@ interactions: attributes: title: Campaign Spend areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT SUM({fact/spend}) @@ -3495,7 +3483,7 @@ interactions: attributes: title: Order Amount areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) @@ -3510,7 +3498,7 @@ interactions: attributes: title: '% Revenue' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} @@ -3525,7 +3513,7 @@ interactions: attributes: title: '% Revenue from Top 10 Customers' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -3541,7 +3529,7 @@ interactions: attributes: title: '% Revenue from Top 10% Customers' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -3557,7 +3545,7 @@ interactions: attributes: title: '% Revenue from Top 10% Products' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ @@ -3573,7 +3561,7 @@ interactions: attributes: title: '% Revenue from Top 10 Products' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ @@ -3589,7 +3577,7 @@ interactions: attributes: title: '% Revenue in Category' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, @@ -3605,7 +3593,7 @@ interactions: attributes: title: '% Revenue per Product' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL @@ -3622,7 +3610,7 @@ interactions: title: Revenue description: '' areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} @@ -3638,7 +3626,7 @@ interactions: attributes: title: Revenue (Clothing) areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -3654,7 +3642,7 @@ interactions: attributes: title: Revenue (Electronic) areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -3670,7 +3658,7 @@ interactions: attributes: title: Revenue (Home) areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -3686,7 +3674,7 @@ interactions: attributes: title: Revenue (Outdoor) areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN @@ -3702,7 +3690,7 @@ interactions: attributes: title: Revenue per Customer areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -3717,7 +3705,7 @@ interactions: attributes: title: Revenue per Dollar Spent areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} @@ -3732,7 +3720,7 @@ interactions: attributes: title: Revenue / Top 10 areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) @@ -3747,7 +3735,7 @@ interactions: attributes: title: Revenue / Top 10% areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) @@ -3762,7 +3750,7 @@ interactions: attributes: title: Total Revenue areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER @@ -3777,7 +3765,7 @@ interactions: attributes: title: Total Revenue (No Filters) areRelationsValid: true - createdAt: 2024-01-25 12:35 + createdAt: 2024-10-07 11:17 content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER @@ -5156,6 +5144,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -5500,6 +5489,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -5518,6 +5508,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -5535,6 +5526,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -5548,6 +5540,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -5557,6 +5550,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -5582,10 +5576,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -5608,9 +5600,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -5619,6 +5608,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/label_elements.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/label_elements.yaml index dd4af2549..fbb98b6ff 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/label_elements.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/label_elements.yaml @@ -67,9 +67,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -80,9 +77,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '261' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: primaryLabel: @@ -98,7 +98,7 @@ interactions: count: 2 offset: 0 next: null - cacheId: b44eab802c23260ca4fe62a6a1538003 + cacheId: fb2512bbc0c3f50f04fb16ec5a453195 - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -161,9 +161,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -174,9 +171,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '214' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: primaryLabel: @@ -190,7 +190,7 @@ interactions: count: 1 offset: 0 next: null - cacheId: 39e11fd2aad6ca07850300169cd24484 + cacheId: c0fc2deba55a29e9f7b9a87182a96ec8 - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -251,9 +251,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -264,9 +261,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '308' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: primaryLabel: @@ -284,7 +284,7 @@ interactions: count: 3 offset: 0 next: null - cacheId: 0e84830ceefa38ee86ceed18516b2e98 + cacheId: 8713ec39381648de76b8bb07b2dd7e6e - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -353,9 +353,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -366,9 +363,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '166' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: primaryLabel: @@ -380,7 +380,7 @@ interactions: count: 0 offset: 0 next: null - cacheId: 1d98d0c70b4389e7621aafe9608689be + cacheId: 70cc2bee4313e4d9af4331d270c8744f - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -450,9 +450,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -463,9 +460,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '166' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: primaryLabel: @@ -477,7 +477,7 @@ interactions: count: 0 offset: 0 next: null - cacheId: 2f78327b91d98aa85a6e8012150dab81 + cacheId: d93f6d7cb3e2857629109e8b7e79e846 - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -543,9 +543,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -556,9 +553,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '261' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: primaryLabel: @@ -574,7 +574,7 @@ interactions: count: 2 offset: 0 next: null - cacheId: b44eab802c23260ca4fe62a6a1538003 + cacheId: fb2512bbc0c3f50f04fb16ec5a453195 - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -636,9 +636,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -649,9 +646,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '214' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: primaryLabel: @@ -665,7 +665,7 @@ interactions: count: 1 offset: 0 next: null - cacheId: 639dff293ba49b75a24653eea93ac389 + cacheId: dc53e67a50f22828e5102bb95159202e - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -728,9 +728,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -741,9 +738,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '259' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: primaryLabel: @@ -759,7 +759,7 @@ interactions: count: 2 offset: 0 next: null - cacheId: ddfb3b062a48151fdeac436128dc048f + cacheId: dfb8fa340c0b88f877bd38889b7c05d3 - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -821,9 +821,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -834,9 +831,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '308' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: primaryLabel: @@ -854,7 +854,7 @@ interactions: count: 3 offset: 0 next: null - cacheId: 59683b1ff43904b99ce31dac2b26089a + cacheId: 75f4bf7c56fc29d44cbe1dab40d7194b - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements?offset=1&limit=1 @@ -915,9 +915,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -928,9 +925,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '312' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: primaryLabel: @@ -944,4 +944,4 @@ interactions: count: 1 offset: 1 next: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements?limit=1&offset=2 - cacheId: 0e84830ceefa38ee86ceed18516b2e98 + cacheId: 8713ec39381648de76b8bb07b2dd7e6e diff --git a/gooddata-sdk/tests/catalog/fixtures/workspace_content/ldm_store_load.yaml b/gooddata-sdk/tests/catalog/fixtures/workspace_content/ldm_store_load.yaml index 1b8c1cf33..349b433e9 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspace_content/ldm_store_load.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspace_content/ldm_store_load.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6227' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: @@ -439,10 +437,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -467,9 +463,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -480,9 +473,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '6227' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:17:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: ldm: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/add_metadata_locale.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/add_metadata_locale.yaml index b826faa4f..9e1bfad67 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/add_metadata_locale.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/add_metadata_locale.yaml @@ -56,9 +56,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -67,7 +64,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -130,9 +130,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -141,7 +138,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: Date - Day of WeekGeneric Day of the Week (D1-D7)DateStateStateCustomersDate - Day of MonthGeneric Day of the Month (D1-D31)DateDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateDateStateStateCustomersCampaign channelsCampaign channelsCampaign @@ -323,7 +323,38 @@ interactions: id="fact.quantity">QuantityQuantityOrder linesOrder + id="label">Campaign + channel idCampaign + channel idCampaign + channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign + idCampaign + idCampaignsCampaign + nameCampaign + nameCampaignsCustomer + idCustomer + idCustomersCustomer + nameCustomer + nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersOrder idOrder idOrder linesDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateCampaign - channel idCampaign - channel idCampaign - channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign - idCampaign - idCampaignsCampaign - nameCampaign - nameCampaignsCustomer - idCustomer - idCustomersCustomer - nameCustomer - nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersRevenue - per Dollar SpentRevenue / Top 10Revenue - / Top 10%Total RevenueTotal - Revenue (No Filters)Date# + of Active Customers# of Orders# of Top Customers% Revenue from Top 10 Customers% - Revenue from Top 10% Customers% - Revenue from Top 10% Products# of Active - CustomersRevenue (Outdoor)% + Revenue from Top 10% Products% Revenue from Top 10 Products% Revenue @@ -457,21 +450,16 @@ interactions: (Clothing)Revenue (Electronic)Revenue - (Home)Revenue (Outdoor)Revenue - per Customer% - Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, - which is a hash combining the JSON path and the source text's value. Since - this hash is hard to read, the source text includes extra details about - its general location.% - Revenue per ProductRevenueRevenue per CustomerRevenue + per Dollar SpentRevenue / Top 10Revenue + / Top 10%Total RevenueTotal + Revenue (No Filters)Campaign SpendFree-form translations are marked by the 'id' attribute, @@ -491,8 +479,18 @@ interactions: id="1" type="free-form:path" value="$.buckets[*].items[*].measure.title"/>Revenue per CustomerActive - CustomersPercentage + Customers% + Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, + which is a hash combining the JSON path and the source text's value. Since + this hash is hard to read, the source text includes extra details about + its general location.% + Revenue per ProductRevenuePercentage of Customers by RegionFree-form translations are marked by the 'id' attribute, which is a hash combining the JSON path and the source text's value. Since @@ -674,9 +672,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -685,7 +680,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: Date - Day of WeekGeneric Day of the Week (D1-D7)DateStateStateCustomersDate - Day of MonthGeneric Day of the Month (D1-D31)DateDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateDateStateStateCustomersCampaign channelsCampaign channelsCampaign @@ -867,7 +865,38 @@ interactions: id="fact.quantity">QuantityQuantityOrder linesOrder + id="label">Campaign + channel idCampaign + channel idCampaign + channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign + idCampaign + idCampaignsCampaign + nameCampaign + nameCampaignsCustomer + idCustomer + idCustomersCustomer + nameCustomer + nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersOrder idOrder idOrder linesDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateCampaign - channel idCampaign - channel idCampaign - channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign - idCampaign - idCampaignsCampaign - nameCampaign - nameCampaignsCustomer - idCustomer - idCustomersCustomer - nameCustomer - nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersRevenue - per Dollar SpentRevenue / Top 10Revenue - / Top 10%Total RevenueTotal - Revenue (No Filters)Date# + of Active Customers# of Orders# of Top Customers% Revenue from Top 10 Customers% - Revenue from Top 10% Customers% - Revenue from Top 10% Products# of Active - CustomersRevenue (Outdoor)% + Revenue from Top 10% Products% Revenue from Top 10 Products% Revenue @@ -1001,21 +992,16 @@ interactions: (Clothing)Revenue (Electronic)Revenue - (Home)Revenue (Outdoor)Revenue - per Customer% - Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, - which is a hash combining the JSON path and the source text's value. Since - this hash is hard to read, the source text includes extra details about - its general location.% - Revenue per ProductRevenueRevenue per CustomerRevenue + per Dollar SpentRevenue / Top 10Revenue + / Top 10%Total RevenueTotal + Revenue (No Filters)Campaign SpendFree-form translations are marked by the 'id' attribute, @@ -1035,8 +1021,18 @@ interactions: id="1" type="free-form:path" value="$.buckets[*].items[*].measure.title"/>Revenue per CustomerActive - CustomersPercentage + Customers% + Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, + which is a hash combining the JSON path and the source text's value. Since + this hash is hard to read, the source text includes extra details about + its general location.% + Revenue per ProductRevenuePercentage of Customers by RegionFree-form translations are marked by the 'id' attribute, which is a hash combining the JSON path and the source text's value. Since @@ -1319,9 +1315,6 @@ interactions: id="attribute.date.dayOfWeek.description">Generic Day of the Week (D1-D7)Generic Day of the Week (D1-D7).DateDate.StateState.StateState.CustomersCustomers.Date - Day of MonthDate - Day of Month.Generic Day of @@ -1345,7 +1338,10 @@ interactions: - Quarter of YearDate - Quarter of Year.Generic Quarter (Q1-Q4)Generic Quarter (Q1-Q4).DateDate.DateDate.StateState.StateState.CustomersCustomers.Campaign channelsCampaign channels.Campaign channelsCampaign @@ -1378,9 +1374,42 @@ interactions: id="fact.quantity">QuantityQuantity.QuantityQuantity.Order linesOrder - lines.Order idOrder - id.Order + lines.Campaign channel idCampaign + channel id.Campaign + channel idCampaign channel id.Campaign channelsCampaign + channels.CategoryCategory.CategoryCategory.Campaign channelsCampaign + channels.TypeType.TypeType.Campaign channelsCampaign + channels.Campaign idCampaign + id.Campaign + idCampaign id.CampaignsCampaigns.Campaign + nameCampaign name.Campaign + nameCampaign name.CampaignsCampaigns.Customer + idCustomer id.Customer + idCustomer id.CustomersCustomers.Customer + nameCustomer name.Customer + nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.LocationLocation.LocationLocation.CustomersCustomers.Order + idOrder id.Order idOrder id.Order linesOrder lines.Order @@ -1461,50 +1490,9 @@ interactions: - Quarter of YearDate - Quarter of Year.Generic Quarter (Q1-Q4)Generic Quarter (Q1-Q4).DateDate.Campaign - channel idCampaign channel id.Campaign channel - idCampaign channel id.Campaign - channelsCampaign channels.CategoryCategory.CategoryCategory.Campaign channelsCampaign - channels.TypeType.TypeType.Campaign channelsCampaign - channels.Campaign idCampaign - id.Campaign - idCampaign id.CampaignsCampaigns.Campaign - nameCampaign name.Campaign - nameCampaign name.CampaignsCampaigns.Customer - idCustomer id.Customer - idCustomer id.CustomersCustomers.Customer - nameCustomer name.Customer - nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.LocationLocation.LocationLocation.CustomersCustomers.Revenue - per Dollar SpentRevenue per Dollar Spent.Revenue - / Top 10Revenue / Top 10.Revenue - / Top 10%Revenue / Top 10%.Total - RevenueTotal Revenue.Total - Revenue (No Filters)Total Revenue (No Filters).DateDate.# + of Active Customers# of Active Customers.# of Orders# of Orders.# @@ -1522,10 +1510,10 @@ interactions: Revenue from Top 10 Customers% Revenue from Top 10 Customers.% Revenue from Top 10% Customers% Revenue from Top 10% Customers.Revenue + (Outdoor)Revenue (Outdoor).% Revenue from Top 10% Products% Revenue from Top 10% Products.# - of Active Customers# of Active Customers.% Revenue from Top 10 Products% Revenue from Top 10 Products.% @@ -1540,24 +1528,21 @@ interactions: (Electronic)Revenue (Electronic).Revenue (Home)Revenue (Home).Revenue - (Outdoor)Revenue (Outdoor).Revenue - per CustomerRevenue per Customer.% - Revenue per Product by Customer and Category% Revenue per - Product by Customer and Category.Free-form translations are marked by the ''id'' attribute, - which is a hash combining the JSON path and the source text''s value. Since - this hash is hard to read, the source text includes extra details about its - general location.% - Revenue per Product% Revenue per Product.RevenueRevenue.Campaign - SpendCampaign Spend.Revenue per Customer.Revenue + per Dollar SpentRevenue per Dollar Spent.Revenue + / Top 10Revenue / Top 10.Revenue + / Top 10%Revenue / Top 10%.Total + RevenueTotal Revenue.Total + Revenue (No Filters)Total Revenue (No Filters).Campaign SpendCampaign + Spend.Free-form translations are marked by the ''id'' attribute, which is a hash combining the JSON path and the source text''s value. Since this hash is hard to read, the source text includes extra details about its @@ -1578,6 +1563,18 @@ interactions: id="8b5759c74e64aa69c917ff14cc37996fe5423759e2d8e129ce54ce1d37275f0d">Active CustomersActive Customers.% + Revenue per Product by Customer and Category% Revenue per + Product by Customer and Category.Free-form translations are marked by the ''id'' attribute, + which is a hash combining the JSON path and the source text''s value. Since + this hash is hard to read, the source text includes extra details about its + general location.% + Revenue per Product% Revenue per Product.RevenueRevenue.Percentage of Customers by RegionPercentage of Customers by Region.Generic Day of the Week (D1-D7)Generic Day of the Week (D1-D7).DateDate.StateState.StateState.CustomersCustomers.Date - Day of MonthDate - Day of Month.Generic Day @@ -2033,7 +2027,10 @@ interactions: - Quarter of YearDate - Quarter of Year.Generic Quarter (Q1-Q4)Generic Quarter (Q1-Q4).DateDate.DateDate.StateState.StateState.CustomersCustomers.Campaign channelsCampaign channels.Campaign channelsCampaign @@ -2071,6 +2068,40 @@ interactions: id="fact.quantity.description">QuantityQuantity.Order linesOrder lines.Campaign + channel idCampaign channel id.Campaign channel + idCampaign channel id.Campaign + channelsCampaign channels.CategoryCategory.CategoryCategory.Campaign channelsCampaign + channels.TypeType.TypeType.Campaign channelsCampaign + channels.Campaign idCampaign + id.Campaign + idCampaign id.CampaignsCampaigns.Campaign + nameCampaign name.Campaign + nameCampaign name.CampaignsCampaigns.Customer + idCustomer id.Customer + idCustomer id.CustomersCustomers.Customer + nameCustomer name.Customer + nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.LocationLocation.LocationLocation.CustomersCustomers.Order idOrder id.Order idOrder id.Order @@ -2153,51 +2184,9 @@ interactions: - Quarter of YearDate - Quarter of Year.Generic Quarter (Q1-Q4)Generic Quarter (Q1-Q4).DateDate.Campaign - channel idCampaign channel id.Campaign channel - idCampaign channel id.Campaign - channelsCampaign channels.CategoryCategory.CategoryCategory.Campaign channelsCampaign - channels.TypeType.TypeType.Campaign channelsCampaign - channels.Campaign idCampaign - id.Campaign - idCampaign id.CampaignsCampaigns.Campaign - nameCampaign name.Campaign - nameCampaign name.CampaignsCampaigns.Customer - idCustomer id.Customer - idCustomer id.CustomersCustomers.Customer - nameCustomer name.Customer - nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.LocationLocation.LocationLocation.CustomersCustomers.Revenue - per Dollar SpentRevenue per Dollar Spent.Revenue - / Top 10Revenue / Top 10.Revenue - / Top 10%Revenue / Top 10%.Total - RevenueTotal Revenue.Total - Revenue (No Filters)Total Revenue (No Filters).DateDate.# + of Active Customers# of Active Customers.# of Orders# of Orders.# @@ -2215,10 +2204,10 @@ interactions: Revenue from Top 10 Customers% Revenue from Top 10 Customers.% Revenue from Top 10% Customers% Revenue from Top 10% Customers.Revenue + (Outdoor)Revenue (Outdoor).% Revenue from Top 10% Products% Revenue from Top 10% Products.# - of Active Customers# of Active Customers.% Revenue from Top 10 Products% Revenue from Top 10 Products.% @@ -2233,23 +2222,20 @@ interactions: (Electronic)Revenue (Electronic).Revenue (Home)Revenue (Home).Revenue - (Outdoor)Revenue (Outdoor).Revenue - per CustomerRevenue per Customer.% - Revenue per Product by Customer and Category% Revenue per - Product by Customer and Category.Free-form translations are marked by the 'id' attribute, - which is a hash combining the JSON path and the source text's value. Since - this hash is hard to read, the source text includes extra details about - its general location.% - Revenue per Product% Revenue per Product.RevenueRevenue.Campaign + per CustomerRevenue per Customer.Revenue + per Dollar SpentRevenue per Dollar Spent.Revenue + / Top 10Revenue / Top 10.Revenue + / Top 10%Revenue / Top 10%.Total + RevenueTotal Revenue.Total + Revenue (No Filters)Total Revenue (No Filters).Campaign SpendCampaign Spend.Free-form translations are marked by the 'id' attribute, which is a hash combining the JSON path and the source text's value. Since @@ -2271,6 +2257,18 @@ interactions: id="8b5759c74e64aa69c917ff14cc37996fe5423759e2d8e129ce54ce1d37275f0d">Active CustomersActive Customers.% + Revenue per Product by Customer and Category% Revenue per + Product by Customer and Category.Free-form translations are marked by the 'id' attribute, + which is a hash combining the JSON path and the source text's value. Since + this hash is hard to read, the source text includes extra details about + its general location.% + Revenue per Product% Revenue per Product.RevenueRevenue.Percentage of Customers by RegionPercentage of Customers by Region.Date - Day of WeekGeneric Day of the Week (D1-D7)DateStateStateCustomersDate - Day of MonthGeneric Day of the Month (D1-D31)DateDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateDateStateStateCustomersCampaign channelsCampaign channelsCampaign @@ -323,7 +323,38 @@ interactions: id="fact.quantity">QuantityQuantityOrder linesOrder + id="label">Campaign + channel idCampaign + channel idCampaign + channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign + idCampaign + idCampaignsCampaign + nameCampaign + nameCampaignsCustomer + idCustomer + idCustomersCustomer + nameCustomer + nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersOrder idOrder idOrder linesDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateCampaign - channel idCampaign - channel idCampaign - channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign - idCampaign - idCampaignsCampaign - nameCampaign - nameCampaignsCustomer - idCustomer - idCustomersCustomer - nameCustomer - nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersRevenue - per Dollar SpentRevenue / Top 10Revenue - / Top 10%Total RevenueTotal - Revenue (No Filters)Date# + of Active Customers# of Orders# of Top Customers% Revenue from Top 10 Customers% - Revenue from Top 10% Customers% - Revenue from Top 10% Products# of Active - CustomersRevenue (Outdoor)% + Revenue from Top 10% Products% Revenue from Top 10 Products% Revenue @@ -457,21 +450,16 @@ interactions: (Clothing)Revenue (Electronic)Revenue - (Home)Revenue (Outdoor)Revenue - per Customer% - Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, - which is a hash combining the JSON path and the source text's value. Since - this hash is hard to read, the source text includes extra details about - its general location.% - Revenue per ProductRevenueRevenue per CustomerRevenue + per Dollar SpentRevenue / Top 10Revenue + / Top 10%Total RevenueTotal + Revenue (No Filters)Campaign SpendFree-form translations are marked by the 'id' attribute, @@ -491,8 +479,18 @@ interactions: id="1" type="free-form:path" value="$.buckets[*].items[*].measure.title"/>Revenue per CustomerActive - CustomersPercentage + Customers% + Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, + which is a hash combining the JSON path and the source text's value. Since + this hash is hard to read, the source text includes extra details about + its general location.% + Revenue per ProductRevenuePercentage of Customers by RegionFree-form translations are marked by the 'id' attribute, which is a hash combining the JSON path and the source text's value. Since @@ -674,9 +672,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -685,7 +680,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:51 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: Date - Day of WeekGeneric Day of the Week (D1-D7)DateStateStateCustomersDate - Day of MonthGeneric Day of the Month (D1-D31)DateDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateDateStateStateCustomersCampaign channelsCampaign channelsCampaign @@ -867,7 +865,38 @@ interactions: id="fact.quantity">QuantityQuantityOrder linesOrder + id="label">Campaign + channel idCampaign + channel idCampaign + channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign + idCampaign + idCampaignsCampaign + nameCampaign + nameCampaignsCustomer + idCustomer + idCustomersCustomer + nameCustomer + nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersOrder idOrder idOrder linesDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateCampaign - channel idCampaign - channel idCampaign - channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign - idCampaign - idCampaignsCampaign - nameCampaign - nameCampaignsCustomer - idCustomer - idCustomersCustomer - nameCustomer - nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersRevenue - per Dollar SpentRevenue / Top 10Revenue - / Top 10%Total RevenueTotal - Revenue (No Filters)Date# + of Active Customers# of Orders# of Top Customers% Revenue from Top 10 Customers% - Revenue from Top 10% Customers% - Revenue from Top 10% Products# of Active - CustomersRevenue (Outdoor)% + Revenue from Top 10% Products% Revenue from Top 10 Products% Revenue @@ -1001,21 +992,16 @@ interactions: (Clothing)Revenue (Electronic)Revenue - (Home)Revenue (Outdoor)Revenue - per Customer% - Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, - which is a hash combining the JSON path and the source text's value. Since - this hash is hard to read, the source text includes extra details about - its general location.% - Revenue per ProductRevenueRevenue per CustomerRevenue + per Dollar SpentRevenue / Top 10Revenue + / Top 10%Total RevenueTotal + Revenue (No Filters)Campaign SpendFree-form translations are marked by the 'id' attribute, @@ -1035,8 +1021,18 @@ interactions: id="1" type="free-form:path" value="$.buckets[*].items[*].measure.title"/>Revenue per CustomerActive - CustomersPercentage + Customers% + Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, + which is a hash combining the JSON path and the source text's value. Since + this hash is hard to read, the source text includes extra details about + its general location.% + Revenue per ProductRevenuePercentage of Customers by RegionFree-form translations are marked by the 'id' attribute, which is a hash combining the JSON path and the source text's value. Since @@ -1319,9 +1315,6 @@ interactions: id="attribute.date.dayOfWeek.description">Generic Day of the Week (D1-D7)Generic Day of the Week (D1-D7).DateDate.StateState.StateState.CustomersCustomers.Date - Day of MonthDate - Day of Month.Generic Day of @@ -1345,7 +1338,10 @@ interactions: - Quarter of YearDate - Quarter of Year.Generic Quarter (Q1-Q4)Generic Quarter (Q1-Q4).DateDate.DateDate.StateState.StateState.CustomersCustomers.Campaign channelsCampaign channels.Campaign channelsCampaign @@ -1378,9 +1374,42 @@ interactions: id="fact.quantity">QuantityQuantity.QuantityQuantity.Order linesOrder - lines.Order idOrder - id.Order + lines.Campaign channel idCampaign + channel id.Campaign + channel idCampaign channel id.Campaign channelsCampaign + channels.CategoryCategory.CategoryCategory.Campaign channelsCampaign + channels.TypeType.TypeType.Campaign channelsCampaign + channels.Campaign idCampaign + id.Campaign + idCampaign id.CampaignsCampaigns.Campaign + nameCampaign name.Campaign + nameCampaign name.CampaignsCampaigns.Customer + idCustomer id.Customer + idCustomer id.CustomersCustomers.Customer + nameCustomer name.Customer + nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.LocationLocation.LocationLocation.CustomersCustomers.Order + idOrder id.Order idOrder id.Order linesOrder lines.Order @@ -1461,50 +1490,9 @@ interactions: - Quarter of YearDate - Quarter of Year.Generic Quarter (Q1-Q4)Generic Quarter (Q1-Q4).DateDate.Campaign - channel idCampaign channel id.Campaign channel - idCampaign channel id.Campaign - channelsCampaign channels.CategoryCategory.CategoryCategory.Campaign channelsCampaign - channels.TypeType.TypeType.Campaign channelsCampaign - channels.Campaign idCampaign - id.Campaign - idCampaign id.CampaignsCampaigns.Campaign - nameCampaign name.Campaign - nameCampaign name.CampaignsCampaigns.Customer - idCustomer id.Customer - idCustomer id.CustomersCustomers.Customer - nameCustomer name.Customer - nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.LocationLocation.LocationLocation.CustomersCustomers.Revenue - per Dollar SpentRevenue per Dollar Spent.Revenue - / Top 10Revenue / Top 10.Revenue - / Top 10%Revenue / Top 10%.Total - RevenueTotal Revenue.Total - Revenue (No Filters)Total Revenue (No Filters).DateDate.# + of Active Customers# of Active Customers.# of Orders# of Orders.# @@ -1522,10 +1510,10 @@ interactions: Revenue from Top 10 Customers% Revenue from Top 10 Customers.% Revenue from Top 10% Customers% Revenue from Top 10% Customers.Revenue + (Outdoor)Revenue (Outdoor).% Revenue from Top 10% Products% Revenue from Top 10% Products.# - of Active Customers# of Active Customers.% Revenue from Top 10 Products% Revenue from Top 10 Products.% @@ -1540,24 +1528,21 @@ interactions: (Electronic)Revenue (Electronic).Revenue (Home)Revenue (Home).Revenue - (Outdoor)Revenue (Outdoor).Revenue - per CustomerRevenue per Customer.% - Revenue per Product by Customer and Category% Revenue per - Product by Customer and Category.Free-form translations are marked by the ''id'' attribute, - which is a hash combining the JSON path and the source text''s value. Since - this hash is hard to read, the source text includes extra details about its - general location.% - Revenue per Product% Revenue per Product.RevenueRevenue.Campaign - SpendCampaign Spend.Revenue per Customer.Revenue + per Dollar SpentRevenue per Dollar Spent.Revenue + / Top 10Revenue / Top 10.Revenue + / Top 10%Revenue / Top 10%.Total + RevenueTotal Revenue.Total + Revenue (No Filters)Total Revenue (No Filters).Campaign SpendCampaign + Spend.Free-form translations are marked by the ''id'' attribute, which is a hash combining the JSON path and the source text''s value. Since this hash is hard to read, the source text includes extra details about its @@ -1578,6 +1563,18 @@ interactions: id="8b5759c74e64aa69c917ff14cc37996fe5423759e2d8e129ce54ce1d37275f0d">Active CustomersActive Customers.% + Revenue per Product by Customer and Category% Revenue per + Product by Customer and Category.Free-form translations are marked by the ''id'' attribute, + which is a hash combining the JSON path and the source text''s value. Since + this hash is hard to read, the source text includes extra details about its + general location.% + Revenue per Product% Revenue per Product.RevenueRevenue.Percentage of Customers by RegionPercentage of Customers by Region.Generic Day of the Week (D1-D7)Generic Day of the Week (D1-D7).DateDate.StateState.StateState.CustomersCustomers.Date - Day of MonthDate - Day of Month.Generic Day @@ -2033,7 +2027,10 @@ interactions: - Quarter of YearDate - Quarter of Year.Generic Quarter (Q1-Q4)Generic Quarter (Q1-Q4).DateDate.DateDate.StateState.StateState.CustomersCustomers.Campaign channelsCampaign channels.Campaign channelsCampaign @@ -2071,6 +2068,40 @@ interactions: id="fact.quantity.description">QuantityQuantity.Order linesOrder lines.Campaign + channel idCampaign channel id.Campaign channel + idCampaign channel id.Campaign + channelsCampaign channels.CategoryCategory.CategoryCategory.Campaign channelsCampaign + channels.TypeType.TypeType.Campaign channelsCampaign + channels.Campaign idCampaign + id.Campaign + idCampaign id.CampaignsCampaigns.Campaign + nameCampaign name.Campaign + nameCampaign name.CampaignsCampaigns.Customer + idCustomer id.Customer + idCustomer id.CustomersCustomers.Customer + nameCustomer name.Customer + nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.LocationLocation.LocationLocation.CustomersCustomers.Order idOrder id.Order idOrder id.Order @@ -2153,51 +2184,9 @@ interactions: - Quarter of YearDate - Quarter of Year.Generic Quarter (Q1-Q4)Generic Quarter (Q1-Q4).DateDate.Campaign - channel idCampaign channel id.Campaign channel - idCampaign channel id.Campaign - channelsCampaign channels.CategoryCategory.CategoryCategory.Campaign channelsCampaign - channels.TypeType.TypeType.Campaign channelsCampaign - channels.Campaign idCampaign - id.Campaign - idCampaign id.CampaignsCampaigns.Campaign - nameCampaign name.Campaign - nameCampaign name.CampaignsCampaigns.Customer - idCustomer id.Customer - idCustomer id.CustomersCustomers.Customer - nameCustomer name.Customer - nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.LocationLocation.LocationLocation.CustomersCustomers.Revenue - per Dollar SpentRevenue per Dollar Spent.Revenue - / Top 10Revenue / Top 10.Revenue - / Top 10%Revenue / Top 10%.Total - RevenueTotal Revenue.Total - Revenue (No Filters)Total Revenue (No Filters).DateDate.# + of Active Customers# of Active Customers.# of Orders# of Orders.# @@ -2215,10 +2204,10 @@ interactions: Revenue from Top 10 Customers% Revenue from Top 10 Customers.% Revenue from Top 10% Customers% Revenue from Top 10% Customers.Revenue + (Outdoor)Revenue (Outdoor).% Revenue from Top 10% Products% Revenue from Top 10% Products.# - of Active Customers# of Active Customers.% Revenue from Top 10 Products% Revenue from Top 10 Products.% @@ -2233,23 +2222,20 @@ interactions: (Electronic)Revenue (Electronic).Revenue (Home)Revenue (Home).Revenue - (Outdoor)Revenue (Outdoor).Revenue - per CustomerRevenue per Customer.% - Revenue per Product by Customer and Category% Revenue per - Product by Customer and Category.Free-form translations are marked by the 'id' attribute, - which is a hash combining the JSON path and the source text's value. Since - this hash is hard to read, the source text includes extra details about - its general location.% - Revenue per Product% Revenue per Product.RevenueRevenue.Campaign + per CustomerRevenue per Customer.Revenue + per Dollar SpentRevenue per Dollar Spent.Revenue + / Top 10Revenue / Top 10.Revenue + / Top 10%Revenue / Top 10%.Total + RevenueTotal Revenue.Total + Revenue (No Filters)Total Revenue (No Filters).Campaign SpendCampaign Spend.Free-form translations are marked by the 'id' attribute, which is a hash combining the JSON path and the source text's value. Since @@ -2271,6 +2257,18 @@ interactions: id="8b5759c74e64aa69c917ff14cc37996fe5423759e2d8e129ce54ce1d37275f0d">Active CustomersActive Customers.% + Revenue per Product by Customer and Category% Revenue per + Product by Customer and Category.Free-form translations are marked by the 'id' attribute, + which is a hash combining the JSON path and the source text's value. Since + this hash is hard to read, the source text includes extra details about + its general location.% + Revenue per Product% Revenue per Product.RevenueRevenue.Percentage of Customers by RegionPercentage of Customers by Region.Date - Day of WeekGeneric Day of the Week (D1-D7)DateStateStateCustomersDate - Day of MonthGeneric Day of the Month (D1-D31)DateDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateDateStateStateCustomersCampaign channelsCampaign channelsCampaign @@ -2729,7 +2727,38 @@ interactions: id="fact.quantity">QuantityQuantityOrder linesOrder + id="label">Campaign + channel idCampaign + channel idCampaign + channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign + idCampaign + idCampaignsCampaign + nameCampaign + nameCampaignsCustomer + idCustomer + idCustomersCustomer + nameCustomer + nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersOrder idOrder idOrder linesDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateCampaign - channel idCampaign - channel idCampaign - channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign - idCampaign - idCampaignsCampaign - nameCampaign - nameCampaignsCustomer - idCustomer - idCustomersCustomer - nameCustomer - nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersRevenue - per Dollar SpentRevenue / Top 10Revenue - / Top 10%Total RevenueTotal - Revenue (No Filters)Date# + of Active Customers# of Orders# of Top Customers% Revenue from Top 10 Customers% - Revenue from Top 10% Customers% - Revenue from Top 10% Products# of Active - CustomersRevenue (Outdoor)% + Revenue from Top 10% Products% Revenue from Top 10 Products% Revenue @@ -2863,21 +2854,16 @@ interactions: (Clothing)Revenue (Electronic)Revenue - (Home)Revenue (Outdoor)Revenue - per Customer% - Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, - which is a hash combining the JSON path and the source text's value. Since - this hash is hard to read, the source text includes extra details about - its general location.% - Revenue per ProductRevenueRevenue per CustomerRevenue + per Dollar SpentRevenue / Top 10Revenue + / Top 10%Total RevenueTotal + Revenue (No Filters)Campaign SpendFree-form translations are marked by the 'id' attribute, @@ -2897,8 +2883,18 @@ interactions: id="1" type="free-form:path" value="$.buckets[*].items[*].measure.title"/>Revenue per CustomerActive - CustomersPercentage + Customers% + Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, + which is a hash combining the JSON path and the source text's value. Since + this hash is hard to read, the source text includes extra details about + its general location.% + Revenue per ProductRevenuePercentage of Customers by RegionFree-form translations are marked by the 'id' attribute, which is a hash combining the JSON path and the source text's value. Since diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/create_workspace_setting.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/create_workspace_setting.yaml index 2e12f0a1c..9396bea8b 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/create_workspace_setting.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/create_workspace_setting.yaml @@ -28,14 +28,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 351cdc569fbefba0 + traceId: 6703c2e5a70023f1863266f17c377067 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces/demo/workspaceSettings @@ -120,10 +118,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -148,9 +144,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -159,7 +152,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -206,10 +202,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -234,9 +228,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -245,7 +236,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -288,10 +282,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -314,9 +306,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -325,7 +314,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -359,10 +351,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -387,9 +377,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -398,7 +385,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/delete_workspace_setting.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/delete_workspace_setting.yaml index c138b7c15..c3dcd2678 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/delete_workspace_setting.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/delete_workspace_setting.yaml @@ -28,14 +28,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 092a8f5975fe0fa4 + traceId: 6703c2e6ba2eda95ff47568850f71538 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces/demo/workspaceSettings @@ -120,10 +118,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -148,9 +144,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -159,7 +152,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -206,10 +202,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -234,9 +228,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -245,7 +236,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -288,10 +282,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -314,9 +306,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -325,7 +314,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -359,10 +351,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -387,9 +377,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -398,7 +385,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] @@ -432,10 +422,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -458,9 +446,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -469,7 +454,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -503,10 +491,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -531,9 +517,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -542,7 +525,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_clone_workspace.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_clone_workspace.yaml index d13e787f6..0120c8cba 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_clone_workspace.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_clone_workspace.yaml @@ -28,7 +28,7 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -59,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 8d03c43a031737e6 + traceId: 6703c2e280c9dc303f6f43f03fb3fd23 - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -147,9 +147,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -158,7 +155,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -228,9 +228,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -241,9 +238,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - - '37125' + - '37148' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -296,7 +296,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -339,7 +339,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -489,7 +489,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -501,7 +501,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -511,13 +511,14 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -560,7 +561,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -569,7 +570,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -579,7 +580,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -589,7 +590,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -599,7 +600,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -608,7 +609,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -617,7 +618,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -627,7 +628,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -637,7 +638,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -647,7 +648,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -657,7 +658,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -667,7 +668,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -677,7 +678,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -687,7 +688,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -698,7 +699,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -708,7 +709,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -718,7 +719,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -728,7 +729,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -737,7 +738,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -746,7 +747,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -755,7 +756,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -764,7 +765,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -773,7 +774,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -782,7 +783,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -847,7 +848,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -923,7 +924,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1002,7 +1003,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1061,7 +1062,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1118,7 +1119,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1171,7 +1172,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1246,7 +1247,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1303,7 +1304,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1402,7 +1403,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1458,7 +1459,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1497,7 +1498,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1553,7 +1554,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1621,7 +1622,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1678,7 +1679,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1735,7 +1736,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2127,9 +2128,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2138,7 +2136,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2175,7 +2176,7 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -2201,9 +2202,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2212,14 +2210,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: ce631de87cff569c + traceId: 6703c2e294036905010c96037c9044cf - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo_clone?include=workspaces @@ -2247,7 +2248,7 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -2273,9 +2274,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2284,14 +2282,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: d55d336cf317793e + traceId: 6703c2e21283df24bf2fcc5149c00c97 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -2356,9 +2357,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2367,7 +2365,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2432,9 +2433,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2445,9 +2443,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '603' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -2568,9 +2569,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2579,7 +2577,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -2971,7 +2972,7 @@ interactions: id: campaign title: Campaign description: '' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3013,7 +3014,7 @@ interactions: version: '2' id: dashboard_plugin title: Dashboard plugin - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3164,7 +3165,7 @@ interactions: id: product_and_category title: Product & Category description: '' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3177,7 +3178,7 @@ interactions: id: dashboard_plugin_1 title: dashboard_plugin_1 description: Testing record dashboard_plugin_1 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3187,7 +3188,7 @@ interactions: id: dashboard_plugin_2 title: dashboard_plugin_2 description: Testing record dashboard_plugin_2 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3235,7 +3236,7 @@ interactions: maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) id: amount_of_active_customers title: '# of Active Customers' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3244,7 +3245,7 @@ interactions: maql: SELECT COUNT({attribute/order_id}) id: amount_of_orders title: '# of Orders' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3254,7 +3255,7 @@ interactions: BY {attribute/customer_id}) > 10000 ' id: amount_of_top_customers title: '# of Top Customers' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3265,7 +3266,7 @@ interactions: id: amount_of_valid_orders title: '# of Valid Orders' description: '' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3274,7 +3275,7 @@ interactions: maql: SELECT SUM({fact/spend}) id: campaign_spend title: Campaign Spend - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3283,7 +3284,7 @@ interactions: maql: SELECT SUM({fact/price}*{fact/quantity}) id: order_amount title: Order Amount - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3292,7 +3293,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/total_revenue} id: percent_revenue title: '% Revenue' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3302,7 +3303,7 @@ interactions: \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_customers title: '% Revenue from Top 10 Customers' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3312,7 +3313,7 @@ interactions: \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_percent_customers title: '% Revenue from Top 10% Customers' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3322,7 +3323,7 @@ interactions: \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_percent_products title: '% Revenue from Top 10% Products' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3332,7 +3333,7 @@ interactions: \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_products title: '% Revenue from Top 10 Products' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3342,7 +3343,7 @@ interactions: ALL OTHER) id: percent_revenue_in_category title: '% Revenue in Category' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3351,7 +3352,7 @@ interactions: maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) id: percent_revenue_per_product title: '% Revenue per Product' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3362,7 +3363,7 @@ interactions: id: revenue title: Revenue description: '' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3371,7 +3372,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") id: revenue-clothing title: Revenue (Clothing) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3381,7 +3382,7 @@ interactions: "Electronics") id: revenue-electronic title: Revenue (Electronic) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3390,7 +3391,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") id: revenue-home title: Revenue (Home) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3399,7 +3400,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") id: revenue-outdoor title: Revenue (Outdoor) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3408,7 +3409,7 @@ interactions: maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) id: revenue_per_customer title: Revenue per Customer - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3417,7 +3418,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/campaign_spend} id: revenue_per_dollar_spent title: Revenue per Dollar Spent - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3426,7 +3427,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) id: revenue_top_10 title: Revenue / Top 10 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3435,7 +3436,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) id: revenue_top_10_percent title: Revenue / Top 10% - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3444,7 +3445,7 @@ interactions: maql: SELECT {metric/revenue} BY ALL OTHER id: total_revenue title: Total Revenue - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3453,7 +3454,7 @@ interactions: maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER id: total_revenue-no_filters title: Total Revenue (No Filters) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3518,7 +3519,7 @@ interactions: visualizationUrl: local:treemap id: campaign_spend title: Campaign Spend - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3594,7 +3595,7 @@ interactions: visualizationUrl: local:combo2 id: customers_trend title: Customers Trend - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3673,7 +3674,7 @@ interactions: visualizationUrl: local:table id: percent_revenue_per_product_by_customer_and_category title: '% Revenue per Product by Customer and Category' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3732,7 +3733,7 @@ interactions: visualizationUrl: local:area id: percentage_of_customers_by_region title: Percentage of Customers by Region - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3789,7 +3790,7 @@ interactions: visualizationUrl: local:treemap id: product_breakdown title: Product Breakdown - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3842,7 +3843,7 @@ interactions: visualizationUrl: local:donut id: product_categories_pie_chart title: Product Categories Pie Chart - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3917,7 +3918,7 @@ interactions: visualizationUrl: local:column id: product_revenue_comparison-over_previous_period title: Product Revenue Comparison (over previous period) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3974,7 +3975,7 @@ interactions: visualizationUrl: local:scatter id: product_saleability title: Product Saleability - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -4073,7 +4074,7 @@ interactions: visualizationUrl: local:table id: revenue_and_quantity_by_product_and_category title: Revenue and Quantity by Product and Category - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -4129,7 +4130,7 @@ interactions: visualizationUrl: local:line id: revenue_by_category_trend title: Revenue by Category Trend - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -4168,7 +4169,7 @@ interactions: visualizationUrl: local:bar id: revenue_by_product title: Revenue by Product - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -4224,7 +4225,7 @@ interactions: visualizationUrl: local:scatter id: revenue_per_usd_vs_spend_by_campaign title: Revenue per $ vs Spend by Campaign - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -4292,7 +4293,7 @@ interactions: visualizationUrl: local:combo2 id: revenue_trend title: Revenue Trend - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -4349,7 +4350,7 @@ interactions: visualizationUrl: local:bar id: top_10_customers title: Top 10 Customers - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -4406,10 +4407,11 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user + exportDefinitions: [] headers: Accept-Encoding: - br, gzip, deflate @@ -4459,9 +4461,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -4470,7 +4469,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -4528,9 +4530,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -4541,9 +4540,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '292' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: hierarchyPermissions: @@ -4635,9 +4637,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -4646,7 +4645,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -4702,9 +4704,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -4713,7 +4712,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -4778,9 +4780,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -4791,9 +4790,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - - '37156' + - '37179' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -4846,7 +4848,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -4889,7 +4891,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5039,7 +5041,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5051,7 +5053,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5061,13 +5063,14 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -5110,7 +5113,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5119,7 +5122,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5129,7 +5132,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5139,7 +5142,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5149,7 +5152,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5158,7 +5161,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5167,7 +5170,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5177,7 +5180,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5187,7 +5190,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5197,7 +5200,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5207,7 +5210,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5217,7 +5220,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5227,7 +5230,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5237,7 +5240,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5248,7 +5251,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5258,7 +5261,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5268,7 +5271,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5278,7 +5281,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5287,7 +5290,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5296,7 +5299,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5305,7 +5308,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5314,7 +5317,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5323,7 +5326,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5332,7 +5335,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5397,7 +5400,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5473,7 +5476,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5552,7 +5555,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5611,7 +5614,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5668,7 +5671,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5721,7 +5724,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5796,7 +5799,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5853,7 +5856,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5952,7 +5955,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6008,7 +6011,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6047,7 +6050,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6103,7 +6106,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6171,7 +6174,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6228,7 +6231,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6285,7 +6288,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6679,9 +6682,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -6692,9 +6692,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - - '37125' + - '37148' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -6747,7 +6750,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6790,7 +6793,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6940,7 +6943,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6952,7 +6955,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6962,13 +6965,14 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -7011,7 +7015,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7020,7 +7024,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7030,7 +7034,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7040,7 +7044,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7050,7 +7054,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7059,7 +7063,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7068,7 +7072,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7078,7 +7082,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7088,7 +7092,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7098,7 +7102,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7108,7 +7112,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7118,7 +7122,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7128,7 +7132,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7138,7 +7142,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7149,7 +7153,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7159,7 +7163,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7169,7 +7173,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7179,7 +7183,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7188,7 +7192,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7197,7 +7201,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7206,7 +7210,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7215,7 +7219,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7224,7 +7228,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7233,7 +7237,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7298,7 +7302,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7374,7 +7378,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7453,7 +7457,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7512,7 +7516,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7569,7 +7573,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7622,7 +7626,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7697,7 +7701,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7754,7 +7758,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7853,7 +7857,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7909,7 +7913,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -7948,7 +7952,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -8004,7 +8008,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -8072,7 +8076,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -8129,7 +8133,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -8186,7 +8190,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -8578,9 +8582,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -8589,7 +8590,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -8626,7 +8630,7 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -8652,9 +8656,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -8663,14 +8664,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 33f73491b97e0a7e + traceId: 6703c2e2abaff841020bc4adc774e986 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo_jacek?include=workspaces @@ -8698,7 +8702,7 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -8724,9 +8728,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -8735,14 +8736,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: d6a3687fadcfdb22 + traceId: 6703c2e2008aa735fdb4ec0d681757f2 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -8807,9 +8811,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -8818,7 +8819,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -8883,9 +8887,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -8896,9 +8897,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '772' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -9033,9 +9037,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -9044,7 +9045,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -9436,7 +9440,7 @@ interactions: id: campaign title: Campaign description: '' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9478,7 +9482,7 @@ interactions: version: '2' id: dashboard_plugin title: Dashboard plugin - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9629,7 +9633,7 @@ interactions: id: product_and_category title: Product & Category description: '' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9642,7 +9646,7 @@ interactions: id: dashboard_plugin_1 title: dashboard_plugin_1 description: Testing record dashboard_plugin_1 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9652,7 +9656,7 @@ interactions: id: dashboard_plugin_2 title: dashboard_plugin_2 description: Testing record dashboard_plugin_2 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9700,7 +9704,7 @@ interactions: maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) id: amount_of_active_customers title: '# of Active Customers' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9709,7 +9713,7 @@ interactions: maql: SELECT COUNT({attribute/order_id}) id: amount_of_orders title: '# of Orders' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9719,7 +9723,7 @@ interactions: BY {attribute/customer_id}) > 10000 ' id: amount_of_top_customers title: '# of Top Customers' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9730,7 +9734,7 @@ interactions: id: amount_of_valid_orders title: '# of Valid Orders' description: '' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9739,7 +9743,7 @@ interactions: maql: SELECT SUM({fact/spend}) id: campaign_spend title: Campaign Spend - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9748,7 +9752,7 @@ interactions: maql: SELECT SUM({fact/price}*{fact/quantity}) id: order_amount title: Order Amount - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9757,7 +9761,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/total_revenue} id: percent_revenue title: '% Revenue' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9767,7 +9771,7 @@ interactions: \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_customers title: '% Revenue from Top 10 Customers' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9777,7 +9781,7 @@ interactions: \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_percent_customers title: '% Revenue from Top 10% Customers' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9787,7 +9791,7 @@ interactions: \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_percent_products title: '% Revenue from Top 10% Products' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9797,7 +9801,7 @@ interactions: \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_products title: '% Revenue from Top 10 Products' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9807,7 +9811,7 @@ interactions: ALL OTHER) id: percent_revenue_in_category title: '% Revenue in Category' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9816,7 +9820,7 @@ interactions: maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) id: percent_revenue_per_product title: '% Revenue per Product' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9827,7 +9831,7 @@ interactions: id: revenue title: Revenue description: '' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9836,7 +9840,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") id: revenue-clothing title: Revenue (Clothing) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9846,7 +9850,7 @@ interactions: "Electronics") id: revenue-electronic title: Revenue (Electronic) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9855,7 +9859,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") id: revenue-home title: Revenue (Home) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9864,7 +9868,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") id: revenue-outdoor title: Revenue (Outdoor) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9873,7 +9877,7 @@ interactions: maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) id: revenue_per_customer title: Revenue per Customer - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9882,7 +9886,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/campaign_spend} id: revenue_per_dollar_spent title: Revenue per Dollar Spent - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9891,7 +9895,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) id: revenue_top_10 title: Revenue / Top 10 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9900,7 +9904,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) id: revenue_top_10_percent title: Revenue / Top 10% - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9909,7 +9913,7 @@ interactions: maql: SELECT {metric/revenue} BY ALL OTHER id: total_revenue title: Total Revenue - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9918,7 +9922,7 @@ interactions: maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER id: total_revenue-no_filters title: Total Revenue (No Filters) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -9983,7 +9987,7 @@ interactions: visualizationUrl: local:treemap id: campaign_spend title: Campaign Spend - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -10059,7 +10063,7 @@ interactions: visualizationUrl: local:combo2 id: customers_trend title: Customers Trend - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -10138,7 +10142,7 @@ interactions: visualizationUrl: local:table id: percent_revenue_per_product_by_customer_and_category title: '% Revenue per Product by Customer and Category' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -10197,7 +10201,7 @@ interactions: visualizationUrl: local:area id: percentage_of_customers_by_region title: Percentage of Customers by Region - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -10254,7 +10258,7 @@ interactions: visualizationUrl: local:treemap id: product_breakdown title: Product Breakdown - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -10307,7 +10311,7 @@ interactions: visualizationUrl: local:donut id: product_categories_pie_chart title: Product Categories Pie Chart - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -10382,7 +10386,7 @@ interactions: visualizationUrl: local:column id: product_revenue_comparison-over_previous_period title: Product Revenue Comparison (over previous period) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -10439,7 +10443,7 @@ interactions: visualizationUrl: local:scatter id: product_saleability title: Product Saleability - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -10538,7 +10542,7 @@ interactions: visualizationUrl: local:table id: revenue_and_quantity_by_product_and_category title: Revenue and Quantity by Product and Category - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -10594,7 +10598,7 @@ interactions: visualizationUrl: local:line id: revenue_by_category_trend title: Revenue by Category Trend - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -10633,7 +10637,7 @@ interactions: visualizationUrl: local:bar id: revenue_by_product title: Revenue by Product - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -10689,7 +10693,7 @@ interactions: visualizationUrl: local:scatter id: revenue_per_usd_vs_spend_by_campaign title: Revenue per $ vs Spend by Campaign - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -10757,7 +10761,7 @@ interactions: visualizationUrl: local:combo2 id: revenue_trend title: Revenue Trend - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -10814,7 +10818,7 @@ interactions: visualizationUrl: local:bar id: top_10_customers title: Top 10 Customers - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -10871,10 +10875,11 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user + exportDefinitions: [] headers: Accept-Encoding: - br, gzip, deflate @@ -10924,9 +10929,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -10935,7 +10937,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:46 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -10993,9 +10998,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -11006,9 +11008,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '292' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: hierarchyPermissions: @@ -11100,9 +11105,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -11111,7 +11113,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -11167,9 +11172,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -11178,7 +11180,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -11243,9 +11248,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -11256,9 +11258,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '292' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: hierarchyPermissions: @@ -11334,9 +11339,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -11347,9 +11349,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '292' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: hierarchyPermissions: @@ -11425,9 +11430,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -11438,9 +11440,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - - '37125' + - '37148' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -11493,7 +11498,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11536,7 +11541,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11686,7 +11691,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11698,7 +11703,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11708,13 +11713,14 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -11757,7 +11763,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11766,7 +11772,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11776,7 +11782,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11786,7 +11792,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11796,7 +11802,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11805,7 +11811,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11814,7 +11820,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11824,7 +11830,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11834,7 +11840,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11844,7 +11850,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11854,7 +11860,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11864,7 +11870,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11874,7 +11880,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11884,7 +11890,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11895,7 +11901,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11905,7 +11911,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11915,7 +11921,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11925,7 +11931,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11934,7 +11940,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11943,7 +11949,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11952,7 +11958,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11961,7 +11967,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11970,7 +11976,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -11979,7 +11985,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -12044,7 +12050,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -12120,7 +12126,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -12199,7 +12205,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -12258,7 +12264,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -12315,7 +12321,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -12368,7 +12374,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -12443,7 +12449,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -12500,7 +12506,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -12599,7 +12605,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -12655,7 +12661,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -12694,7 +12700,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -12750,7 +12756,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -12818,7 +12824,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -12875,7 +12881,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -12932,7 +12938,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -13324,9 +13330,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -13335,7 +13338,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -13398,9 +13404,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -13409,7 +13412,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -13476,9 +13482,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -13487,28 +13490,30 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: - - id: demo - type: workspace - attributes: - name: Demo - links: - self: http://localhost:3000/api/v1/entities/workspaces/demo - - id: demo_clone + - id: demo_west_california type: workspace attributes: - name: Demo (Clone) + name: Demo West California + relationships: + parent: + data: + id: demo_west + type: workspace links: - self: http://localhost:3000/api/v1/entities/workspaces/demo_clone - - id: demo_jacek + self: http://localhost:3000/api/v1/entities/workspaces/demo_west_california + - id: demo type: workspace attributes: - name: Deno Jacek + name: Demo links: - self: http://localhost:3000/api/v1/entities/workspaces/demo_jacek + self: http://localhost:3000/api/v1/entities/workspaces/demo - id: demo_west type: workspace attributes: @@ -13520,17 +13525,18 @@ interactions: type: workspace links: self: http://localhost:3000/api/v1/entities/workspaces/demo_west - - id: demo_west_california + - id: demo_clone type: workspace attributes: - name: Demo West California - relationships: - parent: - data: - id: demo_west - type: workspace + name: Demo (Clone) links: - self: http://localhost:3000/api/v1/entities/workspaces/demo_west_california + self: http://localhost:3000/api/v1/entities/workspaces/demo_clone + - id: demo_jacek + type: workspace + attributes: + name: Deno Jacek + links: + self: http://localhost:3000/api/v1/entities/workspaces/demo_jacek included: - id: demo type: workspace @@ -13598,9 +13604,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -13609,7 +13612,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -13639,7 +13645,7 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com @@ -13665,9 +13671,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -13676,14 +13679,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 80330f401e60fc48 + traceId: 6703c2e3473f80ad84cb5fce2c078062 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -13748,9 +13754,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -13759,7 +13762,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -13824,9 +13830,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -13837,9 +13840,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '772' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -13974,9 +13980,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -13985,7 +13988,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -14377,7 +14383,7 @@ interactions: id: campaign title: Campaign description: '' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14419,7 +14425,7 @@ interactions: version: '2' id: dashboard_plugin title: Dashboard plugin - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14570,7 +14576,7 @@ interactions: id: product_and_category title: Product & Category description: '' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14583,7 +14589,7 @@ interactions: id: dashboard_plugin_1 title: dashboard_plugin_1 description: Testing record dashboard_plugin_1 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14593,7 +14599,7 @@ interactions: id: dashboard_plugin_2 title: dashboard_plugin_2 description: Testing record dashboard_plugin_2 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14641,7 +14647,7 @@ interactions: maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) id: amount_of_active_customers title: '# of Active Customers' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14650,7 +14656,7 @@ interactions: maql: SELECT COUNT({attribute/order_id}) id: amount_of_orders title: '# of Orders' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14660,7 +14666,7 @@ interactions: BY {attribute/customer_id}) > 10000 ' id: amount_of_top_customers title: '# of Top Customers' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14671,7 +14677,7 @@ interactions: id: amount_of_valid_orders title: '# of Valid Orders' description: '' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14680,7 +14686,7 @@ interactions: maql: SELECT SUM({fact/spend}) id: campaign_spend title: Campaign Spend - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14689,7 +14695,7 @@ interactions: maql: SELECT SUM({fact/price}*{fact/quantity}) id: order_amount title: Order Amount - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14698,7 +14704,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/total_revenue} id: percent_revenue title: '% Revenue' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14708,7 +14714,7 @@ interactions: \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_customers title: '% Revenue from Top 10 Customers' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14718,7 +14724,7 @@ interactions: \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_percent_customers title: '% Revenue from Top 10% Customers' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14728,7 +14734,7 @@ interactions: \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_percent_products title: '% Revenue from Top 10% Products' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14738,7 +14744,7 @@ interactions: \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_products title: '% Revenue from Top 10 Products' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14748,7 +14754,7 @@ interactions: ALL OTHER) id: percent_revenue_in_category title: '% Revenue in Category' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14757,7 +14763,7 @@ interactions: maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) id: percent_revenue_per_product title: '% Revenue per Product' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14768,7 +14774,7 @@ interactions: id: revenue title: Revenue description: '' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14777,7 +14783,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") id: revenue-clothing title: Revenue (Clothing) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14787,7 +14793,7 @@ interactions: "Electronics") id: revenue-electronic title: Revenue (Electronic) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14796,7 +14802,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") id: revenue-home title: Revenue (Home) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14805,7 +14811,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") id: revenue-outdoor title: Revenue (Outdoor) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14814,7 +14820,7 @@ interactions: maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) id: revenue_per_customer title: Revenue per Customer - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14823,7 +14829,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/campaign_spend} id: revenue_per_dollar_spent title: Revenue per Dollar Spent - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14832,7 +14838,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) id: revenue_top_10 title: Revenue / Top 10 - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14841,7 +14847,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) id: revenue_top_10_percent title: Revenue / Top 10% - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14850,7 +14856,7 @@ interactions: maql: SELECT {metric/revenue} BY ALL OTHER id: total_revenue title: Total Revenue - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14859,7 +14865,7 @@ interactions: maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER id: total_revenue-no_filters title: Total Revenue (No Filters) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -14924,7 +14930,7 @@ interactions: visualizationUrl: local:treemap id: campaign_spend title: Campaign Spend - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -15000,7 +15006,7 @@ interactions: visualizationUrl: local:combo2 id: customers_trend title: Customers Trend - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -15079,7 +15085,7 @@ interactions: visualizationUrl: local:table id: percent_revenue_per_product_by_customer_and_category title: '% Revenue per Product by Customer and Category' - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -15138,7 +15144,7 @@ interactions: visualizationUrl: local:area id: percentage_of_customers_by_region title: Percentage of Customers by Region - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -15195,7 +15201,7 @@ interactions: visualizationUrl: local:treemap id: product_breakdown title: Product Breakdown - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -15248,7 +15254,7 @@ interactions: visualizationUrl: local:donut id: product_categories_pie_chart title: Product Categories Pie Chart - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -15323,7 +15329,7 @@ interactions: visualizationUrl: local:column id: product_revenue_comparison-over_previous_period title: Product Revenue Comparison (over previous period) - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -15380,7 +15386,7 @@ interactions: visualizationUrl: local:scatter id: product_saleability title: Product Saleability - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -15479,7 +15485,7 @@ interactions: visualizationUrl: local:table id: revenue_and_quantity_by_product_and_category title: Revenue and Quantity by Product and Category - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -15535,7 +15541,7 @@ interactions: visualizationUrl: local:line id: revenue_by_category_trend title: Revenue by Category Trend - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -15574,7 +15580,7 @@ interactions: visualizationUrl: local:bar id: revenue_by_product title: Revenue by Product - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -15630,7 +15636,7 @@ interactions: visualizationUrl: local:scatter id: revenue_per_usd_vs_spend_by_campaign title: Revenue per $ vs Spend by Campaign - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -15698,7 +15704,7 @@ interactions: visualizationUrl: local:combo2 id: revenue_trend title: Revenue Trend - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -15755,7 +15761,7 @@ interactions: visualizationUrl: local:bar id: top_10_customers title: Top 10 Customers - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -15812,10 +15818,11 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products - createdAt: 2024-07-22 19:06 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user + exportDefinitions: [] headers: Accept-Encoding: - br, gzip, deflate @@ -15865,9 +15872,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -15876,7 +15880,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -15934,9 +15941,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -15947,9 +15951,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' content-length: - '292' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: hierarchyPermissions: @@ -16041,9 +16048,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -16052,7 +16056,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -17421,6 +17428,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -17765,6 +17773,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -17783,6 +17792,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -17800,6 +17810,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -17813,6 +17824,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -17822,6 +17834,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -17871,9 +17884,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -17882,7 +17892,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -17936,9 +17949,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -17947,6 +17957,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:47 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_create_workspace.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_create_workspace.yaml index c4b730ffa..7ad5ceb86 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_create_workspace.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_create_workspace.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -143,18 +141,16 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -165,23 +161,16 @@ interactions: Content-Type: - application/problem+json DATE: *id001 - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -190,14 +179,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 3f472d1410cc56f1 + traceId: 6703c2db20b5a1721f0974fed1d39888 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -241,10 +233,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -269,9 +259,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -280,7 +267,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -321,10 +311,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -349,9 +337,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -360,7 +345,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -442,7 +430,7 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: @@ -450,10 +438,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -464,23 +450,16 @@ interactions: Content-Type: - application/vnd.gooddata.api+json DATE: *id001 - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -489,7 +468,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1877,6 +1859,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -2221,6 +2204,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -2239,6 +2223,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -2256,6 +2241,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -2269,6 +2255,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -2278,6 +2265,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -2303,10 +2291,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2329,9 +2315,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2340,6 +2323,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_declarative_workspaces.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_declarative_workspaces.yaml index 32ddf736d..d4a412d88 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_declarative_workspaces.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_declarative_workspaces.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '36132' + - '36252' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:37 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -107,7 +105,8 @@ interactions: id: demo_west_california type: workspace workspaces: - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: - assignee: id: demo2 @@ -372,6 +371,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -1784,7 +1784,8 @@ interactions: name: VIEW settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west model: @@ -1798,6 +1799,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -1819,7 +1821,8 @@ interactions: permissions: [] settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west_california model: @@ -1828,6 +1831,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -1870,10 +1874,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1898,9 +1900,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1911,9 +1910,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '36132' + - '36252' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -1946,7 +1948,8 @@ interactions: id: demo_west_california type: workspace workspaces: - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: - assignee: id: demo2 @@ -2211,6 +2214,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -3623,7 +3627,8 @@ interactions: name: VIEW settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west model: @@ -3637,6 +3642,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -3658,7 +3664,8 @@ interactions: permissions: [] settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west_california model: @@ -3667,6 +3674,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_delete_non_existing_workspace.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_delete_non_existing_workspace.yaml index 8ccfff4f3..eee46fac7 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_delete_non_existing_workspace.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_delete_non_existing_workspace.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -151,10 +149,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -179,9 +175,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -190,7 +183,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -269,10 +265,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -297,9 +291,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -308,7 +299,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_delete_parent_workspace.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_delete_parent_workspace.yaml index 8ccfff4f3..eee46fac7 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_delete_parent_workspace.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_delete_parent_workspace.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -151,10 +149,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -179,9 +175,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -190,7 +183,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -269,10 +265,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -297,9 +291,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -308,7 +299,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_delete_workspace.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_delete_workspace.yaml index f311c517e..acf9ba7ca 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_delete_workspace.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_delete_workspace.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -151,10 +149,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -179,9 +175,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -190,7 +183,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -265,10 +261,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -291,9 +285,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -302,7 +293,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -336,10 +330,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -364,9 +356,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -375,7 +364,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1772,6 +1764,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -2116,6 +2109,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -2134,6 +2128,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -2151,6 +2146,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -2164,6 +2160,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -2173,6 +2170,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -2198,10 +2196,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2224,9 +2220,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2235,6 +2228,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_user_data_filters.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_user_data_filters.yaml index b342d7dfc..e4383e020 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_user_data_filters.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_user_data_filters.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '22' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userDataFilters: [] @@ -107,10 +105,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -135,9 +131,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -148,9 +141,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '22' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userDataFilters: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspace.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspace.yaml index 45d8b7ad3..bab38209b 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspace.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspace.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '33957' + - '33980' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -329,6 +327,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -1758,10 +1757,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1786,9 +1783,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1799,9 +1793,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '33957' + - '33980' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -2056,6 +2053,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspace_data_filters.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspace_data_filters.yaml index c01c9f360..847fc2d53 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspace_data_filters.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspace_data_filters.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '603' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -135,10 +133,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -163,9 +159,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -176,9 +169,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '603' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspaces.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspaces.yaml index 0427cd325..a7a911551 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspaces.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspaces.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '36132' + - '36252' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:37 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -107,7 +105,8 @@ interactions: id: demo_west_california type: workspace workspaces: - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: - assignee: id: demo2 @@ -372,6 +371,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -1784,7 +1784,8 @@ interactions: name: VIEW settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west model: @@ -1798,6 +1799,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -1819,7 +1821,8 @@ interactions: permissions: [] settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west_california model: @@ -1828,6 +1831,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspaces_snake_case.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspaces_snake_case.yaml index 0427cd325..a7a911551 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspaces_snake_case.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_declarative_workspaces_snake_case.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '36132' + - '36252' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:37 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -107,7 +105,8 @@ interactions: id: demo_west_california type: workspace workspaces: - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: - assignee: id: demo2 @@ -372,6 +371,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -1784,7 +1784,8 @@ interactions: name: VIEW settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west model: @@ -1798,6 +1799,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -1819,7 +1821,8 @@ interactions: permissions: [] settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west_california model: @@ -1828,6 +1831,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_workspace.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_workspace.yaml index a0b458f00..459dc7eaf 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_workspace.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_get_workspace.yaml @@ -24,7 +24,7 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -47,23 +45,16 @@ interactions: - application/vnd.gooddata.api+json DATE: &id001 - PLACEHOLDER - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +63,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -105,7 +99,7 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: @@ -113,10 +107,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -127,23 +119,16 @@ interactions: Content-Type: - application/vnd.gooddata.api+json DATE: *id001 - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -152,7 +137,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_user_data_filters.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_user_data_filters.yaml index b603ffa01..46a86da2a 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_user_data_filters.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_user_data_filters.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '22' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userDataFilters: [] @@ -108,10 +106,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -134,9 +130,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -145,7 +138,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -177,10 +173,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -205,9 +199,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -218,9 +209,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '22' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userDataFilters: [] @@ -253,10 +247,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -281,9 +273,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -292,7 +281,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -324,10 +316,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -352,9 +342,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -363,7 +350,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -373,7 +363,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -406,10 +396,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -432,9 +420,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -443,7 +428,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -475,10 +463,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -503,9 +489,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -516,9 +499,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '22' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userDataFilters: [] @@ -1888,6 +1874,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -2232,6 +2219,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -2250,6 +2238,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -2267,6 +2256,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -2280,6 +2270,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -2289,6 +2280,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -2314,10 +2306,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2340,9 +2330,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2351,6 +2338,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_workspace.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_workspace.yaml index 389311872..2fa4a0db6 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_workspace.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_workspace.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '33957' + - '33980' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:44 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -329,6 +327,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -1758,10 +1757,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1784,9 +1781,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1795,7 +1789,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:44 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -1827,10 +1824,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1855,9 +1850,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1868,9 +1860,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '224' + - '247' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:45 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -1878,6 +1873,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -1913,10 +1909,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1941,9 +1935,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1952,7 +1943,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:45 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -1984,10 +1978,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2012,9 +2004,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2023,7 +2012,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:45 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2033,7 +2025,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -3678,6 +3670,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] headers: Accept-Encoding: - br, gzip, deflate @@ -3703,10 +3696,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3729,9 +3720,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -3740,7 +3728,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:45 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -3772,10 +3763,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3800,9 +3789,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -3813,9 +3799,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '33957' + - '33980' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:45 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -4070,6 +4059,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -6836,6 +6826,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -7180,6 +7171,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -7198,6 +7190,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -7215,6 +7208,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -7228,6 +7222,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -7237,6 +7232,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -7262,10 +7258,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -7288,9 +7282,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -7299,6 +7290,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:45 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_workspace_data_filters.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_workspace_data_filters.yaml index 6ac1d7be9..72285f1bb 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_workspace_data_filters.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_workspace_data_filters.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '603' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -136,10 +134,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -162,9 +158,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -173,7 +166,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -205,10 +201,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -233,9 +227,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -246,9 +237,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '27' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: [] @@ -281,10 +275,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -309,9 +301,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -320,7 +309,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -352,10 +344,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -380,9 +370,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -391,7 +378,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -401,7 +391,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -462,10 +452,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -488,9 +476,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -499,7 +484,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -531,10 +519,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -559,9 +545,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -572,9 +555,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '603' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -1972,6 +1958,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -2316,6 +2303,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -2334,6 +2322,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -2351,6 +2340,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -2364,6 +2354,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -2373,6 +2364,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -2398,10 +2390,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2424,9 +2414,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2435,6 +2422,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_workspaces.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_workspaces.yaml index 90b21777b..ad9c490f7 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_workspaces.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_load_and_put_declarative_workspaces.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -70,7 +65,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:33 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -102,10 +100,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -130,9 +126,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -143,9 +136,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '43' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: [] @@ -179,10 +175,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -207,9 +201,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -218,7 +209,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -250,10 +244,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -278,9 +270,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -289,7 +278,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -299,7 +291,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -1981,6 +1973,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] permissions: - assignee: id: demo2 @@ -2002,6 +1995,7 @@ interactions: settings: [] userDataFilters: [] customApplicationSettings: [] + automations: [] - id: demo_west name: Demo West model: @@ -2029,6 +2023,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] parent: id: demo type: workspace @@ -2037,6 +2032,7 @@ interactions: settings: [] userDataFilters: [] customApplicationSettings: [] + automations: [] - id: demo_west_california name: Demo West California model: @@ -2051,6 +2047,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] parent: id: demo_west type: workspace @@ -2059,6 +2056,7 @@ interactions: settings: [] userDataFilters: [] customApplicationSettings: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -2084,10 +2082,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2110,9 +2106,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2121,7 +2114,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -2153,10 +2149,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2181,9 +2175,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2194,9 +2185,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '36132' + - '36252' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -2229,7 +2223,8 @@ interactions: id: demo_west_california type: workspace workspaces: - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: - assignee: id: demo2 @@ -2494,6 +2489,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -3906,7 +3902,8 @@ interactions: name: VIEW settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west model: @@ -3920,6 +3917,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -3941,7 +3939,8 @@ interactions: permissions: [] settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west_california model: @@ -3950,6 +3949,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -5329,6 +5329,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -5673,6 +5674,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -5691,6 +5693,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -5708,6 +5711,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -5721,6 +5725,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -5730,6 +5735,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -5755,10 +5761,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -5781,9 +5785,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -5792,6 +5793,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:34 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_user_data_filters.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_user_data_filters.yaml index b67c2097d..85767f12b 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_user_data_filters.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_user_data_filters.yaml @@ -37,10 +37,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -64,9 +62,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -75,7 +70,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -107,10 +105,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -135,9 +131,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -148,9 +141,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '121' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userDataFilters: @@ -1526,6 +1522,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -1870,6 +1867,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -1888,6 +1886,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -1905,6 +1904,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -1918,6 +1918,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -1927,6 +1928,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -1952,10 +1954,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1978,9 +1978,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1989,6 +1986,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:42 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspace.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspace.yaml index 3de3f04af..28015801e 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspace.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspace.yaml @@ -24,18 +24,16 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -47,23 +45,16 @@ interactions: - application/problem+json DATE: &id001 - PLACEHOLDER - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +63,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 04a189820fe64814 + traceId: 6703c2de2a4a727470c394d9e5d24372 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -118,10 +112,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -146,9 +138,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -157,7 +146,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -196,10 +188,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -224,9 +214,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -237,9 +224,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '33957' + - '33980' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -494,6 +484,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -3540,6 +3531,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] headers: Accept-Encoding: - br, gzip, deflate @@ -3565,10 +3557,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3591,9 +3581,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -3602,7 +3589,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -3634,10 +3624,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3662,9 +3650,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -3675,9 +3660,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '33799' + - '33822' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -3932,6 +3920,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -6692,6 +6681,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -7036,6 +7026,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -7054,6 +7045,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -7071,6 +7063,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -7084,6 +7077,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -7093,6 +7087,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -7118,10 +7113,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -7144,9 +7137,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -7155,6 +7145,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:43 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspace_data_filters.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspace_data_filters.yaml index 9d10ed268..5a1eb4975 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspace_data_filters.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspace_data_filters.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '603' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -136,10 +134,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -162,9 +158,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -173,7 +166,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -205,10 +201,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -233,9 +227,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -246,9 +237,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '27' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: [] @@ -310,10 +304,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -336,9 +328,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -347,7 +336,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -379,10 +371,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -407,9 +397,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -420,9 +407,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '603' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -1820,6 +1810,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -2164,6 +2155,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -2182,6 +2174,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -2199,6 +2192,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -2212,6 +2206,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -2221,6 +2216,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -2246,10 +2242,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2272,9 +2266,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2283,6 +2274,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspaces.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspaces.yaml index 107aea5bb..8cc09a3cd 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspaces.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspaces.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '36132' + - '36252' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -107,7 +105,8 @@ interactions: id: demo_west_california type: workspace workspaces: - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: - assignee: id: demo2 @@ -372,6 +371,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -1784,7 +1784,8 @@ interactions: name: VIEW settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west model: @@ -1798,6 +1799,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -1819,7 +1821,8 @@ interactions: permissions: [] settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west_california model: @@ -1828,6 +1831,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -1872,10 +1876,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1898,9 +1900,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1909,7 +1908,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -1941,10 +1943,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1969,9 +1969,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1982,9 +1979,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '43' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: [] @@ -3678,6 +3678,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] permissions: - assignee: id: demo2 @@ -3699,6 +3700,7 @@ interactions: settings: [] userDataFilters: [] customApplicationSettings: [] + automations: [] - id: demo_west name: Demo West model: @@ -3726,6 +3728,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] parent: id: demo type: workspace @@ -3734,6 +3737,7 @@ interactions: settings: [] userDataFilters: [] customApplicationSettings: [] + automations: [] - id: demo_west_california name: Demo West California model: @@ -3748,6 +3752,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] parent: id: demo_west type: workspace @@ -3756,6 +3761,7 @@ interactions: settings: [] userDataFilters: [] customApplicationSettings: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -3781,10 +3787,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3807,9 +3811,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -3818,7 +3819,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -3850,10 +3854,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3878,9 +3880,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -3891,9 +3890,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '36132' + - '36252' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:36 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -3926,7 +3928,8 @@ interactions: id: demo_west_california type: workspace workspaces: - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: - assignee: id: demo2 @@ -4191,6 +4194,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -5603,7 +5607,8 @@ interactions: name: VIEW settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west model: @@ -5617,6 +5622,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -5638,7 +5644,8 @@ interactions: permissions: [] settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west_california model: @@ -5647,6 +5654,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -7026,6 +7034,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -7370,6 +7379,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -7388,6 +7398,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -7405,6 +7416,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -7418,6 +7430,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -7427,6 +7440,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -7452,10 +7466,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -7478,9 +7490,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -7489,6 +7498,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:37 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_user_data_filters.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_user_data_filters.yaml index ed7336f81..60968629b 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_user_data_filters.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_user_data_filters.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '22' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userDataFilters: [] @@ -107,10 +105,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -135,9 +131,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -148,9 +141,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '22' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: userDataFilters: [] @@ -183,10 +179,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -211,9 +205,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -222,7 +213,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -254,10 +248,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -282,9 +274,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -293,7 +282,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -303,7 +295,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -335,10 +327,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -363,9 +353,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -374,7 +361,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -406,10 +396,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -434,9 +422,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -445,7 +430,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -455,6 +443,6 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspace.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspace.yaml index ecf7e76be..ab0d4b38f 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspace.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspace.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '33957' + - '33980' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:44 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -329,6 +327,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -1758,10 +1757,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1786,9 +1783,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1797,7 +1791,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:44 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -1829,10 +1826,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1857,9 +1852,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1868,7 +1860,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:44 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1878,7 +1873,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -1910,10 +1905,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1938,9 +1931,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1951,9 +1941,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '33957' + - '33980' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:44 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -2208,6 +2201,7 @@ interactions: description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -3637,10 +3631,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3665,9 +3657,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -3676,7 +3665,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:44 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -3708,10 +3700,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -3736,9 +3726,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -3747,7 +3734,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:44 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -3757,6 +3747,6 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspace_data_filters.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspace_data_filters.yaml index 2711a68fb..9f464b135 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspace_data_filters.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspace_data_filters.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '603' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -135,10 +133,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -163,9 +159,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -176,9 +169,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '603' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -239,10 +235,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -267,9 +261,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -278,7 +269,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -310,10 +304,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -338,9 +330,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -349,7 +338,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -359,7 +351,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -391,10 +383,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -419,9 +409,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -430,7 +417,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -462,10 +452,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -490,9 +478,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -501,7 +486,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -511,6 +499,6 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspaces.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspaces.yaml index f55097463..c7b5fbf03 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspaces.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspaces.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '39300' + - '39420' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -107,7 +105,8 @@ interactions: id: demo_west_california type: workspace workspaces: - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: - assignee: id: demo2 @@ -169,7 +168,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -212,7 +211,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -363,7 +362,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -375,7 +374,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -385,13 +384,14 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -434,7 +434,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -443,7 +443,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -453,7 +453,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -463,7 +463,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -473,7 +473,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -482,7 +482,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -491,7 +491,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -501,7 +501,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -511,7 +511,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -521,7 +521,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -531,7 +531,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -541,7 +541,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -551,7 +551,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -561,7 +561,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -572,7 +572,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -582,7 +582,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -592,7 +592,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -602,7 +602,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -611,7 +611,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -620,7 +620,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -629,7 +629,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -638,7 +638,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -647,7 +647,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -656,7 +656,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -721,7 +721,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -797,7 +797,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -876,7 +876,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -935,7 +935,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -992,7 +992,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1045,7 +1045,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1120,7 +1120,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1177,7 +1177,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1276,7 +1276,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1332,7 +1332,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1371,7 +1371,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1427,7 +1427,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1495,7 +1495,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1552,7 +1552,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1609,7 +1609,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1960,7 +1960,8 @@ interactions: name: VIEW settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west model: @@ -1974,6 +1975,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -1995,7 +1997,8 @@ interactions: permissions: [] settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west_california model: @@ -2004,6 +2007,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -2046,10 +2050,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2074,9 +2076,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2087,9 +2086,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '39300' + - '39420' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -2122,7 +2124,8 @@ interactions: id: demo_west_california type: workspace workspaces: - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: - assignee: id: demo2 @@ -2184,7 +2187,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2227,7 +2230,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2378,7 +2381,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2390,7 +2393,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2400,13 +2403,14 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -2449,7 +2453,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2458,7 +2462,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2468,7 +2472,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2478,7 +2482,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2488,7 +2492,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2497,7 +2501,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2506,7 +2510,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2516,7 +2520,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2526,7 +2530,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2536,7 +2540,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2546,7 +2550,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2556,7 +2560,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2566,7 +2570,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2576,7 +2580,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2587,7 +2591,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2597,7 +2601,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2607,7 +2611,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2617,7 +2621,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2626,7 +2630,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2635,7 +2639,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2644,7 +2648,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2653,7 +2657,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2662,7 +2666,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2671,7 +2675,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2736,7 +2740,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2812,7 +2816,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2891,7 +2895,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2950,7 +2954,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3007,7 +3011,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3060,7 +3064,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3135,7 +3139,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3192,7 +3196,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3291,7 +3295,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3347,7 +3351,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3386,7 +3390,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3442,7 +3446,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3510,7 +3514,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3567,7 +3571,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3624,7 +3628,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:32 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3975,7 +3979,8 @@ interactions: name: VIEW settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west model: @@ -3989,6 +3994,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -4010,7 +4016,8 @@ interactions: permissions: [] settings: [] userDataFilters: [] - - customApplicationSettings: [] + - automations: [] + customApplicationSettings: [] hierarchyPermissions: [] id: demo_west_california model: @@ -4019,6 +4026,7 @@ interactions: analyticalDashboards: [] attributeHierarchies: [] dashboardPlugins: [] + exportDefinitions: [] filterContexts: [] metrics: [] visualizationObjects: [] @@ -4061,10 +4069,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -4089,9 +4095,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -4100,7 +4103,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -4132,10 +4138,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -4160,9 +4164,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -4171,7 +4172,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -4181,7 +4185,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -4213,10 +4217,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -4241,9 +4243,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -4252,7 +4251,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -4284,10 +4286,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -4312,9 +4312,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -4323,7 +4320,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:35 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -4333,6 +4333,6 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_translate_workspace.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_translate_workspace.yaml index b6ce36385..6c5052acc 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_translate_workspace.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_translate_workspace.yaml @@ -24,7 +24,7 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -47,23 +45,16 @@ interactions: - application/vnd.gooddata.api+json DATE: &id001 - PLACEHOLDER - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +63,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -111,10 +105,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -139,9 +131,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -152,9 +141,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '37125' + - '37148' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -207,7 +199,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -250,7 +242,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -400,7 +392,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -412,7 +404,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -422,13 +414,14 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -471,7 +464,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -480,7 +473,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -490,7 +483,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -500,7 +493,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -510,7 +503,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -519,7 +512,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -528,7 +521,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -538,7 +531,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -548,7 +541,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -558,7 +551,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -568,7 +561,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -578,7 +571,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -588,7 +581,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -598,7 +591,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -609,7 +602,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -619,7 +612,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -629,7 +622,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -639,7 +632,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -648,7 +641,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -657,7 +650,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -666,7 +659,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -675,7 +668,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -684,7 +677,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -693,7 +686,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -758,7 +751,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -834,7 +827,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -913,7 +906,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -972,7 +965,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1029,7 +1022,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1082,7 +1075,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1157,7 +1150,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1214,7 +1207,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1313,7 +1306,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1369,7 +1362,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1408,7 +1401,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1464,7 +1457,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1532,7 +1525,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1589,7 +1582,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -1646,7 +1639,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2014,10 +2007,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2042,9 +2033,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2053,7 +2041,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -2085,10 +2076,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2113,9 +2102,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2124,7 +2110,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2134,7 +2123,7 @@ interactions: name: Default Organization hostname: localhost allowedOrigins: [] - oauthClientId: 5c3f05ef-64c8-48f0-a5bc-0301af5616f6 + oauthClientId: 5bb276be-d7d9-4b4c-85ab-57710f158448 links: self: http://localhost:3000/api/v1/entities/admin/organizations/default - request: @@ -2160,7 +2149,7 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: @@ -2168,10 +2157,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2182,23 +2169,16 @@ interactions: Content-Type: - application/vnd.gooddata.api+json DATE: *id001 - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2207,7 +2187,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -2246,10 +2229,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2274,9 +2255,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -2287,9 +2265,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '37125' + - '37148' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: analytics: @@ -2342,7 +2323,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2385,7 +2366,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2535,7 +2516,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2547,7 +2528,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2557,13 +2538,14 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user description: Testing record dashboard_plugin_2 id: dashboard_plugin_2 title: dashboard_plugin_2 + exportDefinitions: [] filterContexts: - content: filters: @@ -2606,7 +2588,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2615,7 +2597,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2625,7 +2607,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2635,7 +2617,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2645,7 +2627,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2654,7 +2636,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2663,7 +2645,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2673,7 +2655,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2683,7 +2665,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2693,7 +2675,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10_percent}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2703,7 +2685,7 @@ interactions: format: '#,##0.0%' maql: "SELECT\n (SELECT {metric/revenue} WHERE (SELECT {metric/revenue_top_10}\ \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2713,7 +2695,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2723,7 +2705,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2733,7 +2715,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2744,7 +2726,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2754,7 +2736,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2764,7 +2746,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2774,7 +2756,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2783,7 +2765,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2792,7 +2774,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2801,7 +2783,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2810,7 +2792,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2819,7 +2801,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2828,7 +2810,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2893,7 +2875,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -2969,7 +2951,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3048,7 +3030,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3107,7 +3089,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3164,7 +3146,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3217,7 +3199,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3292,7 +3274,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3349,7 +3331,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3448,7 +3430,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3504,7 +3486,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3543,7 +3525,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3599,7 +3581,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3667,7 +3649,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3724,7 +3706,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -3781,7 +3763,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -4143,18 +4125,16 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -4165,23 +4145,16 @@ interactions: Content-Type: - application/problem+json DATE: *id001 - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -4190,14 +4163,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: b1f5277023d6b927 + traceId: 6703c2e4d5b3bb9185490fad4dc5efcc - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -4236,10 +4212,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -4264,9 +4238,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -4275,7 +4246,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -4314,10 +4288,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -4342,9 +4314,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -4355,9 +4324,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '603' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: workspaceDataFilters: @@ -4454,10 +4426,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -4480,9 +4450,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -4491,7 +4458,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:48 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -4883,7 +4853,7 @@ interactions: id: campaign title: Campaign description: '' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -4925,7 +4895,7 @@ interactions: version: '2' id: dashboard_plugin title: Dashboard plugin - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5076,7 +5046,7 @@ interactions: id: product_and_category title: Product & Category description: '' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5089,7 +5059,7 @@ interactions: id: dashboard_plugin_1 title: dashboard_plugin_1 description: Testing record dashboard_plugin_1 - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5099,7 +5069,7 @@ interactions: id: dashboard_plugin_2 title: dashboard_plugin_2 description: Testing record dashboard_plugin_2 - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5147,7 +5117,7 @@ interactions: maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) id: amount_of_active_customers title: '# of Active Customers' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5156,7 +5126,7 @@ interactions: maql: SELECT COUNT({attribute/order_id}) id: amount_of_orders title: '# of Orders' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5166,7 +5136,7 @@ interactions: BY {attribute/customer_id}) > 10000 ' id: amount_of_top_customers title: '# of Top Customers' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5177,7 +5147,7 @@ interactions: id: amount_of_valid_orders title: '# of Valid Orders' description: '' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5186,7 +5156,7 @@ interactions: maql: SELECT SUM({fact/spend}) id: campaign_spend title: Campaign Spend - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5195,7 +5165,7 @@ interactions: maql: SELECT SUM({fact/price}*{fact/quantity}) id: order_amount title: Order Amount - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5204,7 +5174,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/total_revenue} id: percent_revenue title: '% Revenue' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5214,7 +5184,7 @@ interactions: \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_customers title: '% Revenue from Top 10 Customers' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5224,7 +5194,7 @@ interactions: \ BY {attribute/customer_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_percent_customers title: '% Revenue from Top 10% Customers' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5234,7 +5204,7 @@ interactions: \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_percent_products title: '% Revenue from Top 10% Products' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5244,7 +5214,7 @@ interactions: \ BY {attribute/product_id}) > 0)\n /\n {metric/revenue}" id: percent_revenue_from_top_10_products title: '% Revenue from Top 10 Products' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5254,7 +5224,7 @@ interactions: ALL OTHER) id: percent_revenue_in_category title: '% Revenue in Category' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5263,7 +5233,7 @@ interactions: maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) id: percent_revenue_per_product title: '% Revenue per Product' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5274,7 +5244,7 @@ interactions: id: revenue title: Revenue description: '' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5283,7 +5253,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") id: revenue-clothing title: Revenue (Clothing) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5293,7 +5263,7 @@ interactions: "Electronics") id: revenue-electronic title: Revenue (Electronic) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5302,7 +5272,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") id: revenue-home title: Revenue (Home) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5311,7 +5281,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") id: revenue-outdoor title: Revenue (Outdoor) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5320,7 +5290,7 @@ interactions: maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) id: revenue_per_customer title: Revenue per Customer - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5329,7 +5299,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/campaign_spend} id: revenue_per_dollar_spent title: Revenue per Dollar Spent - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5338,7 +5308,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) id: revenue_top_10 title: Revenue / Top 10 - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5347,7 +5317,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) id: revenue_top_10_percent title: Revenue / Top 10% - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5356,7 +5326,7 @@ interactions: maql: SELECT {metric/revenue} BY ALL OTHER id: total_revenue title: Total Revenue - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5365,7 +5335,7 @@ interactions: maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER id: total_revenue-no_filters title: Total Revenue (No Filters) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5430,7 +5400,7 @@ interactions: visualizationUrl: local:treemap id: campaign_spend title: Campaign Spend - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5506,7 +5476,7 @@ interactions: visualizationUrl: local:combo2 id: customers_trend title: Customers Trend - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5585,7 +5555,7 @@ interactions: visualizationUrl: local:table id: percent_revenue_per_product_by_customer_and_category title: '% Revenue per Product by Customer and Category' - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5644,7 +5614,7 @@ interactions: visualizationUrl: local:area id: percentage_of_customers_by_region title: Percentage of Customers by Region - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5701,7 +5671,7 @@ interactions: visualizationUrl: local:treemap id: product_breakdown title: Product Breakdown - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5754,7 +5724,7 @@ interactions: visualizationUrl: local:donut id: product_categories_pie_chart title: Product Categories Pie Chart - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5829,7 +5799,7 @@ interactions: visualizationUrl: local:column id: product_revenue_comparison-over_previous_period title: Product Revenue Comparison (over previous period) - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5886,7 +5856,7 @@ interactions: visualizationUrl: local:scatter id: product_saleability title: Product Saleability - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -5985,7 +5955,7 @@ interactions: visualizationUrl: local:table id: revenue_and_quantity_by_product_and_category title: Revenue and Quantity by Product and Category - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6041,7 +6011,7 @@ interactions: visualizationUrl: local:line id: revenue_by_category_trend title: Revenue by Category Trend - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6080,7 +6050,7 @@ interactions: visualizationUrl: local:bar id: revenue_by_product title: Revenue by Product - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6136,7 +6106,7 @@ interactions: visualizationUrl: local:scatter id: revenue_per_usd_vs_spend_by_campaign title: Revenue per $ vs Spend by Campaign - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6204,7 +6174,7 @@ interactions: visualizationUrl: local:combo2 id: revenue_trend title: Revenue Trend - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6261,7 +6231,7 @@ interactions: visualizationUrl: local:bar id: top_10_customers title: Top 10 Customers - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user @@ -6318,10 +6288,11 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products - createdAt: 2024-01-25 12:34 + createdAt: 2024-10-07 11:15 createdBy: id: admin type: user + exportDefinitions: [] headers: Accept-Encoding: - br, gzip, deflate @@ -6347,10 +6318,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -6373,9 +6342,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -6384,7 +6350,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -6414,10 +6383,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -6440,9 +6407,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -6451,7 +6415,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -6481,10 +6448,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -6507,9 +6472,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -6518,7 +6480,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -6548,14 +6513,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -6580,9 +6543,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -6591,14 +6551,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: ff77352f0bde9144 + traceId: 6703c2e5ec8ffda67ecf10957b5f2247 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces/demo_cs/workspaceSettings @@ -6639,10 +6602,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -6667,9 +6628,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -6678,7 +6636,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -6721,14 +6682,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -6753,9 +6712,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -6764,14 +6720,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 0afb3d0977cce4f6 + traceId: 6703c2e57dd7039f836385649f133fc5 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces/demo_cs/workspaceSettings @@ -6812,10 +6771,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -6840,9 +6797,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -6851,7 +6805,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -8233,6 +8190,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -8577,6 +8535,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -8595,6 +8554,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -8612,6 +8572,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -8625,6 +8586,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -8634,6 +8596,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -8659,10 +8622,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -8685,9 +8646,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -8696,6 +8654,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_update_workspace_invalid.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_update_workspace_invalid.yaml index 6dd439865..7e8b7021c 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_update_workspace_invalid.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_update_workspace_invalid.yaml @@ -24,7 +24,7 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -47,23 +45,16 @@ interactions: - application/vnd.gooddata.api+json DATE: &id001 - PLACEHOLDER - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +63,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -125,10 +119,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -153,9 +145,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -164,7 +153,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -235,7 +227,7 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: @@ -243,10 +235,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -257,23 +247,16 @@ interactions: Content-Type: - application/vnd.gooddata.api+json DATE: *id001 - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -282,7 +265,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -335,10 +321,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -363,9 +347,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -374,7 +355,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -445,7 +429,7 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: @@ -453,10 +437,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -467,23 +449,16 @@ interactions: Content-Type: - application/vnd.gooddata.api+json DATE: *id001 - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -492,7 +467,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_update_workspace_valid.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_update_workspace_valid.yaml index 48cb7ac48..013a3109b 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_update_workspace_valid.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_update_workspace_valid.yaml @@ -24,7 +24,7 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -47,23 +45,16 @@ interactions: - application/vnd.gooddata.api+json DATE: &id001 - PLACEHOLDER - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +63,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -125,10 +119,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -153,9 +145,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -164,7 +153,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -235,7 +227,7 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: @@ -243,10 +235,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -257,23 +247,16 @@ interactions: Content-Type: - application/vnd.gooddata.api+json DATE: *id001 - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -282,7 +265,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -347,10 +333,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -375,9 +359,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -386,7 +367,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -427,10 +411,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -455,9 +437,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -466,7 +445,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -537,7 +519,7 @@ interactions: Access-Control-Expose-Headers: - Content-Disposition, Content-Length, Content-Range, Set-Cookie Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate + - max-age=5, private Connection: - keep-alive Content-Length: @@ -545,10 +527,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -559,23 +539,16 @@ interactions: Content-Type: - application/vnd.gooddata.api+json DATE: *id001 - Expires: - - '0' GoodData-Deployment: - aio Permission-Policy: - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment 'none'; - Pragma: - - no-cache Referrer-Policy: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -584,7 +557,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1972,6 +1948,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -2316,6 +2293,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -2334,6 +2312,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -2351,6 +2330,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -2364,6 +2344,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -2373,6 +2354,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -2398,10 +2380,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2424,9 +2404,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2435,6 +2412,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:38 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_workspace_list.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_workspace_list.yaml index d40458a45..23d513c6d 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_workspace_list.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_workspace_list.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:39 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/get_metadata_localization.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/get_metadata_localization.yaml index d7299c769..cd58c1e5c 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/get_metadata_localization.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/get_metadata_localization.yaml @@ -62,9 +62,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -73,7 +70,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: Date - Day of WeekGeneric Day of the Week (D1-D7)DateStateStateCustomersDate - Day of MonthGeneric Day of the Month (D1-D31)DateDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateDateStateStateCustomersCampaign channelsCampaign channelsCampaign @@ -255,7 +255,38 @@ interactions: id="fact.quantity">QuantityQuantityOrder linesOrder + id="label">Campaign + channel idCampaign + channel idCampaign + channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign + idCampaign + idCampaignsCampaign + nameCampaign + nameCampaignsCustomer + idCustomer + idCustomersCustomer + nameCustomer + nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersOrder idOrder idOrder linesDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateCampaign - channel idCampaign - channel idCampaign - channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign - idCampaign - idCampaignsCampaign - nameCampaign - nameCampaignsCustomer - idCustomer - idCustomersCustomer - nameCustomer - nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersRevenue - per Dollar SpentRevenue / Top 10Revenue - / Top 10%Total RevenueTotal - Revenue (No Filters)Date# + of Active Customers# of Orders# of Top Customers% Revenue from Top 10 Customers% - Revenue from Top 10% Customers% - Revenue from Top 10% Products# of Active - CustomersRevenue (Outdoor)% + Revenue from Top 10% Products% Revenue from Top 10 Products% Revenue @@ -389,21 +382,16 @@ interactions: (Clothing)Revenue (Electronic)Revenue - (Home)Revenue (Outdoor)Revenue - per Customer% - Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, - which is a hash combining the JSON path and the source text's value. Since - this hash is hard to read, the source text includes extra details about - its general location.% - Revenue per ProductRevenueRevenue per CustomerRevenue + per Dollar SpentRevenue / Top 10Revenue + / Top 10%Total RevenueTotal + Revenue (No Filters)Campaign SpendFree-form translations are marked by the 'id' attribute, @@ -423,8 +411,18 @@ interactions: id="1" type="free-form:path" value="$.buckets[*].items[*].measure.title"/>Revenue per CustomerActive - CustomersPercentage + Customers% + Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, + which is a hash combining the JSON path and the source text's value. Since + this hash is hard to read, the source text includes extra details about + its general location.% + Revenue per ProductRevenuePercentage of Customers by RegionFree-form translations are marked by the 'id' attribute, which is a hash combining the JSON path and the source text's value. Since diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/list_workspace_settings.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/list_workspace_settings.yaml index 38fdca739..45fb7c3cf 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/list_workspace_settings.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/list_workspace_settings.yaml @@ -28,14 +28,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: b2f8d7a65c23d0cd + traceId: 6703c2e5fc0e1596458a47b5752e598a - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces/demo/workspaceSettings @@ -120,10 +118,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -148,9 +144,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -159,7 +152,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:49 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -202,14 +198,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -234,9 +228,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -245,14 +236,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 069b206c64ed7570 + traceId: 6703c2e6c869e4d4977217a3d1a4a955 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces/demo/workspaceSettings @@ -293,10 +287,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -321,9 +313,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -332,7 +321,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -379,10 +371,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -407,9 +397,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -418,7 +405,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -476,10 +466,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -502,9 +490,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -513,7 +498,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -543,10 +531,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -569,9 +555,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -580,7 +563,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -614,10 +600,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -642,9 +626,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -653,7 +634,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/set_metadata_localization.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/set_metadata_localization.yaml index 36ff5c26a..fdb24a958 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/set_metadata_localization.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/set_metadata_localization.yaml @@ -62,9 +62,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -73,7 +70,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: Date - Day of WeekGeneric Day of the Week (D1-D7)DateStateStateCustomersDate - Day of MonthGeneric Day of the Month (D1-D31)DateDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateDateStateStateCustomersCampaign channelsCampaign channelsCampaign @@ -255,7 +255,38 @@ interactions: id="fact.quantity">QuantityQuantityOrder linesOrder + id="label">Campaign + channel idCampaign + channel idCampaign + channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign + idCampaign + idCampaignsCampaign + nameCampaign + nameCampaignsCustomer + idCustomer + idCustomersCustomer + nameCustomer + nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersOrder idOrder idOrder linesDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateCampaign - channel idCampaign - channel idCampaign - channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign - idCampaign - idCampaignsCampaign - nameCampaign - nameCampaignsCustomer - idCustomer - idCustomersCustomer - nameCustomer - nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersRevenue - per Dollar SpentRevenue / Top 10Revenue - / Top 10%Total RevenueTotal - Revenue (No Filters)Date# + of Active Customers# of Orders# of Top Customers% Revenue from Top 10 Customers% - Revenue from Top 10% Customers% - Revenue from Top 10% Products# of Active - CustomersRevenue (Outdoor)% + Revenue from Top 10% Products% Revenue from Top 10 Products% Revenue @@ -389,21 +382,16 @@ interactions: (Clothing)Revenue (Electronic)Revenue - (Home)Revenue (Outdoor)Revenue - per Customer% - Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, - which is a hash combining the JSON path and the source text's value. Since - this hash is hard to read, the source text includes extra details about - its general location.% - Revenue per ProductRevenueRevenue per CustomerRevenue + per Dollar SpentRevenue / Top 10Revenue + / Top 10%Total RevenueTotal + Revenue (No Filters)Campaign SpendFree-form translations are marked by the 'id' attribute, @@ -423,8 +411,18 @@ interactions: id="1" type="free-form:path" value="$.buckets[*].items[*].measure.title"/>Revenue per CustomerActive - CustomersPercentage + Customers% + Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, + which is a hash combining the JSON path and the source text's value. Since + this hash is hard to read, the source text includes extra details about + its general location.% + Revenue per ProductRevenuePercentage of Customers by RegionFree-form translations are marked by the 'id' attribute, which is a hash combining the JSON path and the source text's value. Since @@ -678,9 +676,6 @@ interactions: id="attribute.date.dayOfWeek">Date - Day of WeekGeneric Day of the Week (D1-D7)DateStateStateCustomersDate - Day of MonthGeneric Day of the Month (D1-D31)DateDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateDateStateStateCustomersCampaign channelsCampaign channelsCampaign @@ -728,7 +726,38 @@ interactions: id="fact.quantity">QuantityQuantityOrder linesOrder + id="label">Campaign + channel idCampaign + channel idCampaign + channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign + idCampaign + idCampaignsCampaign + nameCampaign + nameCampaignsCustomer + idCustomer + idCustomersCustomer + nameCustomer + nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersOrder idOrder idOrder linesDateDate - Quarter of YearGeneric - Quarter (Q1-Q4)DateCampaign - channel idCampaign - channel idCampaign - channelsCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign - idCampaign - idCampaignsCampaign - nameCampaign - nameCampaignsCustomer - idCustomer - idCustomersCustomer - nameCustomer - nameCustomersRegionRegionCustomersStateStateCustomersLocationLocationCustomersRevenue - per Dollar SpentRevenue / Top 10Revenue - / Top 10%Total RevenueTotal - Revenue (No Filters)Date# + of Active Customers# of Orders# of Top Customers% Revenue from Top 10 Customers% - Revenue from Top 10% Customers% - Revenue from Top 10% Products# of Active - CustomersRevenue (Outdoor)% + Revenue from Top 10% Products% Revenue from Top 10 Products% Revenue in @@ -862,21 +853,16 @@ interactions: (Clothing)Revenue (Electronic)Revenue - (Home)Revenue (Outdoor)Revenue - per Customer% - Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, - which is a hash combining the JSON path and the source text's value. Since - this hash is hard to read, the source text includes extra details about its - general location.% - Revenue per ProductRevenueRevenue per CustomerRevenue + per Dollar SpentRevenue / Top 10Revenue + / Top 10%Total RevenueTotal + Revenue (No Filters)Campaign SpendFree-form translations are marked by the 'id' attribute, @@ -896,8 +882,18 @@ interactions: id="1" type="free-form:path" value="$.buckets[*].items[*].measure.title"/>Revenue per CustomerActive - CustomersPercentage + Customers% + Revenue per Product by Customer and CategoryFree-form translations are marked by the 'id' attribute, + which is a hash combining the JSON path and the source text's value. Since + this hash is hard to read, the source text includes extra details about its + general location.% + Revenue per ProductRevenuePercentage of Customers by RegionFree-form translations are marked by the 'id' attribute, which is a hash combining the JSON path and the source text's value. Since @@ -1069,9 +1065,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -1080,6 +1073,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/update_workspace_setting.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/update_workspace_setting.yaml index 454cab578..a467b0349 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/update_workspace_setting.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/update_workspace_setting.yaml @@ -28,14 +28,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,14 +67,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 0a6f39b78bcc3054 + traceId: 6703c2e600c19dab9a704b4aeba3e487 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces/demo/workspaceSettings @@ -120,10 +118,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -148,9 +144,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -159,7 +152,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -206,10 +202,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -234,9 +228,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -245,7 +236,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -292,10 +286,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -320,9 +312,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -331,7 +320,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -387,10 +379,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -415,9 +405,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -426,7 +413,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -473,10 +463,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -501,9 +489,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -512,7 +497,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -555,10 +543,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -581,9 +567,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -592,7 +575,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -626,10 +612,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -654,9 +638,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -665,7 +646,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:50 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/user_data_filters_for_user_group.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/user_data_filters_for_user_group.yaml index 43f12fefb..9c5faa109 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/user_data_filters_for_user_group.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/user_data_filters_for_user_group.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] @@ -106,14 +104,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -138,9 +134,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -149,14 +142,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: c54184200fa8c05d + traceId: 6703c2dde4159849ccc9dcc24770c988 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces/demo/userDataFilters @@ -201,10 +197,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -229,9 +223,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -240,7 +231,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -286,10 +280,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -314,9 +306,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -325,7 +314,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -404,10 +396,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -432,9 +422,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -443,7 +430,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -515,10 +505,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -541,9 +529,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -552,7 +537,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -586,10 +574,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -614,9 +600,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -625,7 +608,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] @@ -1998,6 +1984,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -2342,6 +2329,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -2360,6 +2348,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -2377,6 +2366,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -2390,6 +2380,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -2399,6 +2390,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -2424,10 +2416,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2450,9 +2440,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2461,6 +2448,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/catalog/fixtures/workspaces/user_data_filters_life_cycle.yaml b/gooddata-sdk/tests/catalog/fixtures/workspaces/user_data_filters_life_cycle.yaml index 47b999236..3c73cb653 100644 --- a/gooddata-sdk/tests/catalog/fixtures/workspaces/user_data_filters_life_cycle.yaml +++ b/gooddata-sdk/tests/catalog/fixtures/workspaces/user_data_filters_life_cycle.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] @@ -106,14 +104,12 @@ interactions: Connection: - keep-alive Content-Length: - - '156' + - '172' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -138,9 +134,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -149,14 +142,17 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 918bdbbab5852985 + traceId: 6703c2dc85db62858efc19a43a0d131c - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces/demo/userDataFilters @@ -201,10 +197,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -229,9 +223,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -240,7 +231,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -282,14 +276,12 @@ interactions: Connection: - keep-alive Content-Length: - - '1233' + - '1297' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -314,9 +306,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -325,7 +314,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -367,7 +359,10 @@ interactions: - id: demo type: user attributes: - authenticationId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + authenticationId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + firstname: Demo + lastname: User + email: demo@example.com links: self: http://localhost:3000/api/v1/entities/workspaces/demo/users/demo links: @@ -400,14 +395,12 @@ interactions: Connection: - keep-alive Content-Length: - - '1019' + - '1083' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -432,9 +425,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -443,7 +433,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -470,7 +463,10 @@ interactions: - id: demo type: user attributes: - authenticationId: CiRlZjExYjZiNC04ZDMyLTQ4OTItODNhNC1jMDNlNmJmZTE2NTESBWxvY2Fs + authenticationId: CiQ4YmIzMWYyYS05NTRiLTQ3NGMtOTA0NC1kZDAwNjRkMDVjOTASBWxvY2Fs + firstname: Demo + lastname: User + email: demo@example.com links: self: http://localhost:3000/api/v1/entities/workspaces/demo/users/demo - id: order_status @@ -515,10 +511,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -541,9 +535,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -552,7 +543,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: @@ -586,10 +580,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -614,9 +606,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -625,7 +614,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:40 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] @@ -1998,6 +1990,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products + exportDefinitions: [] ldm: datasets: - grain: @@ -2342,6 +2335,7 @@ interactions: name: VIEW settings: [] userDataFilters: [] + automations: [] - id: demo_west name: Demo West customApplicationSettings: [] @@ -2360,6 +2354,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasetExtensions: - id: order_lines @@ -2377,6 +2372,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] - id: demo_west_california name: Demo West California customApplicationSettings: [] @@ -2390,6 +2386,7 @@ interactions: filterContexts: [] metrics: [] visualizationObjects: [] + exportDefinitions: [] ldm: datasets: [] dateInstances: [] @@ -2399,6 +2396,7 @@ interactions: permissions: [] settings: [] userDataFilters: [] + automations: [] headers: Accept-Encoding: - br, gzip, deflate @@ -2424,10 +2422,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -2450,9 +2446,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -2461,6 +2454,9 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 11:15:41 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' diff --git a/gooddata-sdk/tests/export/fixtures/test_export_csv.yaml b/gooddata-sdk/tests/export/fixtures/test_export_csv.yaml index 1f3499eef..d33f8606a 100644 --- a/gooddata-sdk/tests/export/fixtures/test_export_csv.yaml +++ b/gooddata-sdk/tests/export/fixtures/test_export_csv.yaml @@ -74,10 +74,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -103,9 +101,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -116,9 +111,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '804' + - '907' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:02 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -138,6 +136,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: region label: @@ -152,6 +151,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 - headers: - measureGroupHeaders: @@ -161,14 +161,14 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 11ab99484a73afa70d2251bbfe99767bb66e82f4 + executionResult: b002a8bfc281d11071ec985f51af42013aa9319b:d715acc6517c9af7e0d060193b42162fdca55031f4f32feac4d77277b84f34e2 - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular body: - executionResult: 11ab99484a73afa70d2251bbfe99767bb66e82f4 fileName: test_csv format: CSV + executionResult: b002a8bfc281d11071ec985f51af42013aa9319b:d715acc6517c9af7e0d060193b42162fdca55031f4f32feac4d77277b84f34e2 customOverride: labels: region: @@ -209,10 +209,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -237,9 +235,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -248,88 +243,21 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block - body: - string: - exportResult: 57dbdc8e6de49bf118af8944a5191b41d32ea47b - - request: - method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/57dbdc8e6de49bf118af8944a5191b41d32ea47b - body: null - headers: - Accept: - - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/csv - Accept-Encoding: - - br, gzip, deflate - X-GDC-VALIDATE-RELATIONS: - - 'true' - X-Requested-With: - - XMLHttpRequest - response: - status: - code: 202 - message: Accepted - headers: - Access-Control-Allow-Credentials: - - 'true' - Access-Control-Expose-Headers: - - Content-Disposition, Content-Length, Content-Range, Set-Cookie - Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate - Connection: - - keep-alive - Content-Length: - - '0' - Content-Security-Policy: - - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' - ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com - cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com - *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src - ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com - *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net - matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com - *.wistia.net embedwistia-a.akamaihd.net' - DATE: *id001 - Expires: - '0' - GoodData-Deployment: - - aio - Permission-Policy: - - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera - 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment - 'none'; - Pragma: - - no-cache - Referrer-Policy: - - no-referrer - Server: - - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax - Vary: - - Origin - - Access-Control-Request-Method - - Access-Control-Request-Headers - X-Content-Type-Options: - - nosniff - X-GDC-TRACE-ID: *id001 - X-XSS-Protection: - - 1 ; mode=block + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: - string: '' + string: + exportResult: 55bef7238dd075753ffe682f06d1aa762eddadf5 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/57dbdc8e6de49bf118af8944a5191b41d32ea47b + uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/55bef7238dd075753ffe682f06d1aa762eddadf5 body: null headers: Accept: - - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/csv + - application/pdf, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, + text/csv, text/html Accept-Encoding: - br, gzip, deflate X-GDC-VALIDATE-RELATIONS: @@ -354,10 +282,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -380,9 +306,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -391,87 +314,20 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block - body: - string: '' - - request: - method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/57dbdc8e6de49bf118af8944a5191b41d32ea47b - body: null - headers: - Accept: - - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/csv - Accept-Encoding: - - br, gzip, deflate - X-GDC-VALIDATE-RELATIONS: - - 'true' - X-Requested-With: - - XMLHttpRequest - response: - status: - code: 202 - message: Accepted - headers: - Access-Control-Allow-Credentials: - - 'true' - Access-Control-Expose-Headers: - - Content-Disposition, Content-Length, Content-Range, Set-Cookie - Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate - Connection: - - keep-alive - Content-Length: - - '0' - Content-Security-Policy: - - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' - ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com - cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com - *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src - ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com - *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net - matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com - *.wistia.net embedwistia-a.akamaihd.net' - DATE: *id001 - Expires: - '0' - GoodData-Deployment: - - aio - Permission-Policy: - - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera - 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment - 'none'; - Pragma: - - no-cache - Referrer-Policy: - - no-referrer - Server: - - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax - Vary: - - Origin - - Access-Control-Request-Method - - Access-Control-Request-Headers - X-Content-Type-Options: - - nosniff - X-GDC-TRACE-ID: *id001 - X-XSS-Protection: - - 1 ; mode=block + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/57dbdc8e6de49bf118af8944a5191b41d32ea47b + uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/55bef7238dd075753ffe682f06d1aa762eddadf5 body: null headers: Accept: - - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/csv + - application/pdf, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, + text/csv, text/html Accept-Encoding: - br, gzip, deflate X-GDC-VALIDATE-RELATIONS: @@ -494,16 +350,14 @@ interactions: Connection: - keep-alive Content-Disposition: - - attachment; filename*=UTF-8''test_csv.csv + - attachment; filename="=?UTF-8?Q?test=5Fcsv.csv?="; filename*=UTF-8''test_csv.csv Content-Length: - '1830' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -528,9 +382,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -539,7 +390,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '"state","Custom Title Region","Sum Of Price","Order Amount Metric" diff --git a/gooddata-sdk/tests/export/fixtures/test_export_csv_by_visualization_id.yaml b/gooddata-sdk/tests/export/fixtures/test_export_csv_by_visualization_id.yaml index a18d4092c..b84d7528c 100644 --- a/gooddata-sdk/tests/export/fixtures/test_export_csv_by_visualization_id.yaml +++ b/gooddata-sdk/tests/export/fixtures/test_export_csv_by_visualization_id.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -151,7 +149,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:37 + createdAt: 2024-10-07 09:18 relationships: createdBy: data: @@ -195,7 +193,7 @@ interactions: type: metric attributes: title: '# of Active Customers' - createdAt: 2024-01-25 12:37 + createdAt: 2024-10-07 09:18 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -205,7 +203,7 @@ interactions: type: metric attributes: title: Revenue per Customer - createdAt: 2024-01-25 12:37 + createdAt: 2024-10-07 09:18 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -298,10 +296,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -326,9 +322,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -339,9 +332,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '778' + - '843' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -375,10 +371,10 @@ interactions: name: Revenue per Customer localIdentifier: dim_1 links: - executionResult: 127b128bd0d5b4cf45d7a6ec2758d9e2f421fb35 + executionResult: 6ae8c8de921598391ebbcdf454a4af97a246d285:3029b1cff8a8ecc84348a1529b72cd6aaee9991e4c3e26da5ab2ac45efa04ee2 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/127b128bd0d5b4cf45d7a6ec2758d9e2f421fb35?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/6ae8c8de921598391ebbcdf454a4af97a246d285%3A3029b1cff8a8ecc84348a1529b72cd6aaee9991e4c3e26da5ab2ac45efa04ee2?offset=0%2C0&limit=512%2C256 body: null headers: Accept: @@ -405,10 +401,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -433,9 +427,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -446,70 +437,78 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1323' + - '1402' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: - - - 61 - - 150.10735849056604 - - - 70 - - 110.63396825396825 - - - 53 - - 164.63276595744682 + - - 56 + - 170.1824 + - - 88 + - 178.174875 + - - 65 + - 174.79036363636362 + - - 66 + - 146.0419298245614 + - - 65 + - 111.88542372881356 + - - 56 + - 184.2714 - - 54 - - 247.32333333333332 - - - 58 - - 113.54166666666667 + - 228.0194117647059 + - - 59 + - 110.62510204081633 - - 76 - - 213.47925373134328 - - - 95 - - 167.58869047619046 - - - 110 - - 237.2503 + - 208.63134328358208 + - - 99 + - 194.15443181818182 + - - 107 + - 215.70928571428573 - - 91 - - 154.40761904761905 - - - 59 - - 307.9370909090909 - - - 63 - - 252.81866666666667 + - 152.4380487804878 dimensionHeaders: - headerGroups: - headers: - attributeHeader: - labelValue: 2023-02 - primaryLabelValue: 2023-02 + labelValue: 2023-11 + primaryLabelValue: 2023-11 - attributeHeader: - labelValue: 2023-03 - primaryLabelValue: 2023-03 + labelValue: 2023-12 + primaryLabelValue: 2023-12 - attributeHeader: - labelValue: 2023-04 - primaryLabelValue: 2023-04 + labelValue: 2024-01 + primaryLabelValue: 2024-01 - attributeHeader: - labelValue: 2023-05 - primaryLabelValue: 2023-05 + labelValue: 2024-02 + primaryLabelValue: 2024-02 - attributeHeader: - labelValue: 2023-06 - primaryLabelValue: 2023-06 + labelValue: 2024-03 + primaryLabelValue: 2024-03 - attributeHeader: - labelValue: 2023-07 - primaryLabelValue: 2023-07 + labelValue: 2024-04 + primaryLabelValue: 2024-04 - attributeHeader: - labelValue: 2023-08 - primaryLabelValue: 2023-08 + labelValue: 2024-05 + primaryLabelValue: 2024-05 - attributeHeader: - labelValue: 2023-09 - primaryLabelValue: 2023-09 + labelValue: 2024-06 + primaryLabelValue: 2024-06 - attributeHeader: - labelValue: 2023-10 - primaryLabelValue: 2023-10 + labelValue: 2024-07 + primaryLabelValue: 2024-07 - attributeHeader: - labelValue: 2023-11 - primaryLabelValue: 2023-11 + labelValue: 2024-08 + primaryLabelValue: 2024-08 - attributeHeader: - labelValue: 2023-12 - primaryLabelValue: 2023-12 + labelValue: 2024-09 + primaryLabelValue: 2024-09 + - attributeHeader: + labelValue: 2024-10 + primaryLabelValue: 2024-10 - headerGroups: - headers: - measureHeader: @@ -519,21 +518,21 @@ interactions: grandTotals: [] paging: count: - - 11 + - 12 - 2 offset: - 0 - 0 total: - - 11 + - 12 - 2 - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular body: - executionResult: 127b128bd0d5b4cf45d7a6ec2758d9e2f421fb35 fileName: Customers Trend format: CSV + executionResult: 6ae8c8de921598391ebbcdf454a4af97a246d285:3029b1cff8a8ecc84348a1529b72cd6aaee9991e4c3e26da5ab2ac45efa04ee2 customOverride: labels: 0de7d7f08af7480aa636857a26be72b6: @@ -574,10 +573,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -602,9 +599,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -613,17 +607,21 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: - exportResult: 2e7f75df4db382f73fb882a4e6a29b4a7e9dc22c + exportResult: f23623e9360065db97c83eb212766ab0f5b2f33f - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/2e7f75df4db382f73fb882a4e6a29b4a7e9dc22c + uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/f23623e9360065db97c83eb212766ab0f5b2f33f body: null headers: Accept: - - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/csv + - application/pdf, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, + text/csv, text/html Accept-Encoding: - br, gzip, deflate X-GDC-VALIDATE-RELATIONS: @@ -648,10 +646,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -674,9 +670,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -685,87 +678,20 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block - body: - string: '' - - request: - method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/2e7f75df4db382f73fb882a4e6a29b4a7e9dc22c - body: null - headers: - Accept: - - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/csv - Accept-Encoding: - - br, gzip, deflate - X-GDC-VALIDATE-RELATIONS: - - 'true' - X-Requested-With: - - XMLHttpRequest - response: - status: - code: 202 - message: Accepted - headers: - Access-Control-Allow-Credentials: - - 'true' - Access-Control-Expose-Headers: - - Content-Disposition, Content-Length, Content-Range, Set-Cookie - Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate - Connection: - - keep-alive - Content-Length: - '0' - Content-Security-Policy: - - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' - ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com - cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com - *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src - ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com - *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net - matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com - *.wistia.net embedwistia-a.akamaihd.net' - DATE: *id001 - Expires: - - '0' - GoodData-Deployment: - - aio - Permission-Policy: - - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera - 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment - 'none'; - Pragma: - - no-cache - Referrer-Policy: - - no-referrer - Server: - - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax - Vary: - - Origin - - Access-Control-Request-Method - - Access-Control-Request-Headers - X-Content-Type-Options: - - nosniff - X-GDC-TRACE-ID: *id001 - X-XSS-Protection: - - 1 ; mode=block + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/2e7f75df4db382f73fb882a4e6a29b4a7e9dc22c + uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/f23623e9360065db97c83eb212766ab0f5b2f33f body: null headers: Accept: - - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/csv + - application/pdf, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, + text/csv, text/html Accept-Encoding: - br, gzip, deflate X-GDC-VALIDATE-RELATIONS: @@ -788,16 +714,14 @@ interactions: Connection: - keep-alive Content-Disposition: - - attachment; filename*=UTF-8''Customers%20Trend.csv + - attachment; filename="=?UTF-8?Q?Customers_Trend.csv?="; filename*=UTF-8''Customers%20Trend.csv Content-Length: - - '407' + - '419' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -822,9 +746,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -833,30 +754,35 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '"date.month","amount_of_active_customers","revenue_per_customer" - "2023-02",61,150.10735849056604 + "2023-11",56,170.1824 + + "2023-12",88,178.174875 - "2023-03",70,110.63396825396825 + "2024-01",65,174.79036363636362 - "2023-04",53,164.63276595744682 + "2024-02",66,146.0419298245614 - "2023-05",54,247.32333333333332 + "2024-03",65,111.88542372881356 - "2023-06",58,113.54166666666667 + "2024-04",56,184.2714 - "2023-07",76,213.47925373134328 + "2024-05",54,228.0194117647059 - "2023-08",95,167.58869047619046 + "2024-06",59,110.62510204081633 - "2023-09",110,237.2503 + "2024-07",76,208.63134328358208 - "2023-10",91,154.40761904761905 + "2024-08",99,194.15443181818182 - "2023-11",59,307.9370909090909 + "2024-09",107,215.70928571428573 - "2023-12",63,252.81866666666667 + "2024-10",91,152.4380487804878 ' diff --git a/gooddata-sdk/tests/export/fixtures/test_export_excel.yaml b/gooddata-sdk/tests/export/fixtures/test_export_excel.yaml index 0e88fd8ee..755275b1e 100644 --- a/gooddata-sdk/tests/export/fixtures/test_export_excel.yaml +++ b/gooddata-sdk/tests/export/fixtures/test_export_excel.yaml @@ -74,10 +74,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -103,9 +101,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -116,9 +111,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '804' + - '907' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -138,6 +136,7 @@ interactions: primaryLabel: id: state type: label + valueType: TEXT - attributeHeader: localIdentifier: region label: @@ -152,6 +151,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 - headers: - measureGroupHeaders: @@ -161,14 +161,14 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 11ab99484a73afa70d2251bbfe99767bb66e82f4 + executionResult: b002a8bfc281d11071ec985f51af42013aa9319b:d715acc6517c9af7e0d060193b42162fdca55031f4f32feac4d77277b84f34e2 - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular body: - executionResult: 11ab99484a73afa70d2251bbfe99767bb66e82f4 fileName: test_xlsx format: XLSX + executionResult: b002a8bfc281d11071ec985f51af42013aa9319b:d715acc6517c9af7e0d060193b42162fdca55031f4f32feac4d77277b84f34e2 customOverride: labels: region: @@ -209,10 +209,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -237,9 +235,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -248,17 +243,21 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: - exportResult: db767e3e9d40f1ae1be8ae475d5e5fa3c5021e85 + exportResult: c6f3b78d8798916d4a71a7d9311c579ddcc5f094 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/db767e3e9d40f1ae1be8ae475d5e5fa3c5021e85 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/c6f3b78d8798916d4a71a7d9311c579ddcc5f094 body: null headers: Accept: - - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/csv + - application/pdf, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, + text/csv, text/html Accept-Encoding: - br, gzip, deflate X-GDC-VALIDATE-RELATIONS: @@ -283,10 +282,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -309,9 +306,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -320,87 +314,20 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block - body: - string: '' - - request: - method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/db767e3e9d40f1ae1be8ae475d5e5fa3c5021e85 - body: null - headers: - Accept: - - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/csv - Accept-Encoding: - - br, gzip, deflate - X-GDC-VALIDATE-RELATIONS: - - 'true' - X-Requested-With: - - XMLHttpRequest - response: - status: - code: 202 - message: Accepted - headers: - Access-Control-Allow-Credentials: - - 'true' - Access-Control-Expose-Headers: - - Content-Disposition, Content-Length, Content-Range, Set-Cookie - Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate - Connection: - - keep-alive - Content-Length: - '0' - Content-Security-Policy: - - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' - ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com - cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com - *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src - ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com - *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net - matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com - *.wistia.net embedwistia-a.akamaihd.net' - DATE: *id001 - Expires: - - '0' - GoodData-Deployment: - - aio - Permission-Policy: - - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera - 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment - 'none'; - Pragma: - - no-cache - Referrer-Policy: - - no-referrer - Server: - - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax - Vary: - - Origin - - Access-Control-Request-Method - - Access-Control-Request-Headers - X-Content-Type-Options: - - nosniff - X-GDC-TRACE-ID: *id001 - X-XSS-Protection: - - 1 ; mode=block + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/db767e3e9d40f1ae1be8ae475d5e5fa3c5021e85 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/c6f3b78d8798916d4a71a7d9311c579ddcc5f094 body: null headers: Accept: - - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/csv + - application/pdf, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, + text/csv, text/html Accept-Encoding: - br, gzip, deflate X-GDC-VALIDATE-RELATIONS: @@ -423,16 +350,14 @@ interactions: Connection: - keep-alive Content-Disposition: - - attachment; filename*=UTF-8''test_xlsx.xlsx + - attachment; filename="=?UTF-8?Q?test=5Fxlsx.xlsx?="; filename*=UTF-8''test_xlsx.xlsx Content-Length: - - '7609' + - '7610' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -457,9 +382,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -468,7 +390,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:03 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: !!binary | UEsDBBQAAAAIAAAAPwBhXUk6TwEAAI8EAAATAAAAW0NvbnRlbnRfVHlwZXNdLnhtbK2Uy27CMBBF @@ -579,29 +504,29 @@ interactions: BzREgkKnU5EgZF+Vdr6GmVPXn68zRmWfmasr0+J3SI4IG2TV28zst1A06yalI3Lc6aDZpuoahv3/ 8OTjrph8zh4PFoLc88wirtb0tUfBxtupcM5Hbd1scd1b+1GbwuEDZV/QuKnw2WK+HfADiD6aT5QI EvFSqyy/+eYQdG5pxmWs/tkxahGC1op4X+TwqTm7scLZZ4t7c2d7Bl97Z7vaXi5RWzvI5KulP574 - 8D7I3oGD0oQpWbxNegBHze7sLwPgYy9It/4GUEsDBBQAAAAIAAAAPwBSuHfaJAEAAFACAAARAAAA - ZG9jUHJvcHMvY29yZS54bWydkstqwzAQRff9CqO9LdvpC2E70JasGijUpaE7IU0SUeuBpNbJ31fx - Kwl41eXo3jlzZ1CxPMgm+gXrhFYlypIURaCY5kLtSvRRr+JHFDlPFaeNVlCiIzi0rG4KZgjTFt6s - NmC9ABcFkHKEmRLtvTcEY8f2IKlLgkMFcautpD6UdocNZd90BzhP03sswVNOPcUnYGwmIhqQnE1I - 82ObDsAZhgYkKO9wlmT47PVgpZtt6JQLpxT+aGDWOoqT++DEZGzbNmkXnTXkz/Bm/frerRoLdToV - A1QVnBFmgXptqwJfFuFwDXV+HU68FcCfjkGfeRsW6fuARyEA6eOOyufi+aVeoSpP89s4zeL8rs5y - snggefp1GnnVfwbKYci/iSOgz339Cao/UEsDBBQAAAAIAAAAPwAEcUVjewEAABMDAAAQAAAAZG9j - UHJvcHMvYXBwLnhtbJ1SwU7jMBC98xWR79RptVqhyjFalV31sIhKLXBcGWfSWHVsyzNEKV+Pk6oh - hT3h05s3T8/PMxa3XWOzFiIa7wo2n+UsA6d9ady+YI+7P9c3LENSrlTWOyjYEZDdyiuxiT5AJAOY - JQeHBauJwpJz1DU0Cmep7VKn8rFRlMq4576qjIY7r18bcMQXef6TQ0fgSiivw2jITo7Llr5rWnrd - 58On3TEkPyl+hWCNVpQeKe+Njh59RdnvToMVfNoUyWgL+jUaOspc8GkptlpZWCVjWSmLIPgHIdag - +pltlIkoRUvLFjT5mKF5S1NbsOxFIfRxCtaqaJQjdpKdigHbgBTls48HrAEIBR/JAU61U2x+yPkg - SOBSyMcgCV9G3BmygA/VRkX6T+L5NPGQgU0yEiD96yx2XyKeL/tkv/JNUC7NkI/or3EHfAw7f6cI - zhO9JMW2VhHKtIRx4iMh1ilatL1+VSu3h/Ks+dro9/90+uNyvpjl6QxrP3OCf3xn+Q5QSwECFAMU - AAAACAAAAD8AYV1JOk8BAACPBAAAEwAAAAAAAAAAAAAAgIEAAAAAW0NvbnRlbnRfVHlwZXNdLnht - bFBLAQIUAxQAAAAIAAAAPwDyn0na6QAAAEsCAAALAAAAAAAAAAAAAACAgYABAABfcmVscy8ucmVs - c1BLAQIUAxQAAAAIAAAAPwBEdVvw6AAAALkCAAAaAAAAAAAAAAAAAACAgZICAAB4bC9fcmVscy93 - b3JrYm9vay54bWwucmVsc1BLAQIUAxQAAAAIAAAAPwCnMD5CWwcAAFAjAAAYAAAAAAAAAAAAAACA - gbIDAAB4bC93b3Jrc2hlZXRzL3NoZWV0MS54bWxQSwECFAMUAAAACAAAAD8ACOLM+UwBAAApAgAA - DwAAAAAAAAAAAAAAgIFDCwAAeGwvd29ya2Jvb2sueG1sUEsBAhQDFAAAAAgAAAA/AFuHc1QPAgAA - LAYAABQAAAAAAAAAAAAAAICBvAwAAHhsL3NoYXJlZFN0cmluZ3MueG1sUEsBAhQDFAAAAAgAAAA/ - AIKDdGQeAwAAhRMAAA0AAAAAAAAAAAAAAICB/Q4AAHhsL3N0eWxlcy54bWxQSwECFAMUAAAACAAA - AD8AGPpGVLAFAABSGwAAEwAAAAAAAAAAAAAAgIFGEgAAeGwvdGhlbWUvdGhlbWUxLnhtbFBLAQIU - AxQAAAAIAAAAPwBSuHfaJAEAAFACAAARAAAAAAAAAAAAAACAgScYAABkb2NQcm9wcy9jb3JlLnht - bFBLAQIUAxQAAAAIAAAAPwAEcUVjewEAABMDAAAQAAAAAAAAAAAAAACAgXoZAABkb2NQcm9wcy9h - cHAueG1sUEsFBgAAAAAKAAoAgAIAACMbAAAAAA== + 8D7I3oGD0oQpWbxNegBHze7sLwPgYy9It/4GUEsDBBQAAAAIAAAAPwCoaERtJQEAAFACAAARAAAA + ZG9jUHJvcHMvY29yZS54bWydks1OwzAQhO88ReR7YrtFUKwklQD1RCUkikDcLHvbWsQ/sg1p3x43 + TdJW6onjema/nV25nO90k/2CD8qaCtGCoAyMsFKZTYXeV4t8hrIQuZG8sQYqtIeA5vVNKRwT1sOr + tw58VBCyBDKBCVehbYyOYRzEFjQPRXKYJK6t1zym0m+w4+KbbwBPCLnDGiKXPHJ8AOZuJKIeKcWI + dD++6QBSYGhAg4kB04LikzeC1+FqQ6ecObWKewdXrYM4undBjca2bYt22llTfoo/ly9v3aq5ModT + CUB1KQUTHni0vi7xeZEO1/AQl+nEawXycZ/0K2/9Isc+kFkKwI5xB+Vj+vS8WqB6Qia3OSU5uV+R + B0ZnjEy/DiMv+k9A3Q/5N3EAHHNffoL6D1BLAwQUAAAACAAAAD8ABHFFY3sBAAATAwAAEAAAAGRv + Y1Byb3BzL2FwcC54bWydUsFO4zAQvfMVke/UabVaocoxWpVd9bCISi1wXBln0lh1bMszRClfj5Oq + IYU94dObN0/PzzMWt11jsxYiGu8KNp/lLAOnfWncvmCPuz/XNyxDUq5U1jso2BGQ3corsYk+QCQD + mCUHhwWricKSc9Q1NApnqe1Sp/KxUZTKuOe+qoyGO69fG3DEF3n+k0NH4Eoor8NoyE6Oy5a+a1p6 + 3efDp90xJD8pfoVgjVaUHinvjY4efUXZ706DFXzaFMloC/o1GjrKXPBpKbZaWVglY1kpiyD4ByHW + oPqZbZSJKEVLyxY0+ZiheUtTW7DsRSH0cQrWqmiUI3aSnYoB24AU5bOPB6wBCAUfyQFOtVNsfsj5 + IEjgUsjHIAlfRtwZsoAP1UZF+k/i+TTxkIFNMhIg/essdl8ini/7ZL/yTVAuzZCP6K9xB3wMO3+n + CM4TvSTFtlYRyrSEceIjIdYpWrS9flUrt4fyrPna6Pf/dPrjcr6Y5ekMaz9zgn98Z/kOUEsBAhQD + FAAAAAgAAAA/AGFdSTpPAQAAjwQAABMAAAAAAAAAAAAAAICBAAAAAFtDb250ZW50X1R5cGVzXS54 + bWxQSwECFAMUAAAACAAAAD8A8p9J2ukAAABLAgAACwAAAAAAAAAAAAAAgIGAAQAAX3JlbHMvLnJl + bHNQSwECFAMUAAAACAAAAD8ARHVb8OgAAAC5AgAAGgAAAAAAAAAAAAAAgIGSAgAAeGwvX3JlbHMv + d29ya2Jvb2sueG1sLnJlbHNQSwECFAMUAAAACAAAAD8ApzA+QlsHAABQIwAAGAAAAAAAAAAAAAAA + gIGyAwAAeGwvd29ya3NoZWV0cy9zaGVldDEueG1sUEsBAhQDFAAAAAgAAAA/AAjizPlMAQAAKQIA + AA8AAAAAAAAAAAAAAICBQwsAAHhsL3dvcmtib29rLnhtbFBLAQIUAxQAAAAIAAAAPwBbh3NUDwIA + ACwGAAAUAAAAAAAAAAAAAACAgbwMAAB4bC9zaGFyZWRTdHJpbmdzLnhtbFBLAQIUAxQAAAAIAAAA + PwCCg3RkHgMAAIUTAAANAAAAAAAAAAAAAACAgf0OAAB4bC9zdHlsZXMueG1sUEsBAhQDFAAAAAgA + AAA/ABj6RlSwBQAAUhsAABMAAAAAAAAAAAAAAICBRhIAAHhsL3RoZW1lL3RoZW1lMS54bWxQSwEC + FAMUAAAACAAAAD8AqGhEbSUBAABQAgAAEQAAAAAAAAAAAAAAgIEnGAAAZG9jUHJvcHMvY29yZS54 + bWxQSwECFAMUAAAACAAAAD8ABHFFY3sBAAATAwAAEAAAAAAAAAAAAAAAgIF7GQAAZG9jUHJvcHMv + YXBwLnhtbFBLBQYAAAAACgAKAIACAAAkGwAAAAA= diff --git a/gooddata-sdk/tests/export/fixtures/test_export_excel_by_visualization_id.yaml b/gooddata-sdk/tests/export/fixtures/test_export_excel_by_visualization_id.yaml index 45d3c25fc..24bc0bdcc 100644 --- a/gooddata-sdk/tests/export/fixtures/test_export_excel_by_visualization_id.yaml +++ b/gooddata-sdk/tests/export/fixtures/test_export_excel_by_visualization_id.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -61,9 +59,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -72,7 +67,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -151,7 +149,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2024-01-25 12:37 + createdAt: 2024-10-07 09:18 relationships: createdBy: data: @@ -195,7 +193,7 @@ interactions: type: metric attributes: title: '# of Active Customers' - createdAt: 2024-01-25 12:37 + createdAt: 2024-10-07 09:18 content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) @@ -205,7 +203,7 @@ interactions: type: metric attributes: title: Revenue per Customer - createdAt: 2024-01-25 12:37 + createdAt: 2024-10-07 09:18 content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) @@ -298,10 +296,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -326,9 +322,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -339,9 +332,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '778' + - '843' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -375,10 +371,10 @@ interactions: name: Revenue per Customer localIdentifier: dim_1 links: - executionResult: 127b128bd0d5b4cf45d7a6ec2758d9e2f421fb35 + executionResult: 6ae8c8de921598391ebbcdf454a4af97a246d285:3029b1cff8a8ecc84348a1529b72cd6aaee9991e4c3e26da5ab2ac45efa04ee2 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/127b128bd0d5b4cf45d7a6ec2758d9e2f421fb35?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/6ae8c8de921598391ebbcdf454a4af97a246d285%3A3029b1cff8a8ecc84348a1529b72cd6aaee9991e4c3e26da5ab2ac45efa04ee2?offset=0%2C0&limit=512%2C256 body: null headers: Accept: @@ -405,10 +401,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -433,9 +427,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -446,70 +437,78 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '1323' + - '1402' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: - - - 61 - - 150.10735849056604 - - - 70 - - 110.63396825396825 - - - 53 - - 164.63276595744682 + - - 56 + - 170.1824 + - - 88 + - 178.174875 + - - 65 + - 174.79036363636362 + - - 66 + - 146.0419298245614 + - - 65 + - 111.88542372881356 + - - 56 + - 184.2714 - - 54 - - 247.32333333333332 - - - 58 - - 113.54166666666667 + - 228.0194117647059 + - - 59 + - 110.62510204081633 - - 76 - - 213.47925373134328 - - - 95 - - 167.58869047619046 - - - 110 - - 237.2503 + - 208.63134328358208 + - - 99 + - 194.15443181818182 + - - 107 + - 215.70928571428573 - - 91 - - 154.40761904761905 - - - 59 - - 307.9370909090909 - - - 63 - - 252.81866666666667 + - 152.4380487804878 dimensionHeaders: - headerGroups: - headers: - attributeHeader: - labelValue: 2023-02 - primaryLabelValue: 2023-02 + labelValue: 2023-11 + primaryLabelValue: 2023-11 - attributeHeader: - labelValue: 2023-03 - primaryLabelValue: 2023-03 + labelValue: 2023-12 + primaryLabelValue: 2023-12 - attributeHeader: - labelValue: 2023-04 - primaryLabelValue: 2023-04 + labelValue: 2024-01 + primaryLabelValue: 2024-01 - attributeHeader: - labelValue: 2023-05 - primaryLabelValue: 2023-05 + labelValue: 2024-02 + primaryLabelValue: 2024-02 - attributeHeader: - labelValue: 2023-06 - primaryLabelValue: 2023-06 + labelValue: 2024-03 + primaryLabelValue: 2024-03 - attributeHeader: - labelValue: 2023-07 - primaryLabelValue: 2023-07 + labelValue: 2024-04 + primaryLabelValue: 2024-04 - attributeHeader: - labelValue: 2023-08 - primaryLabelValue: 2023-08 + labelValue: 2024-05 + primaryLabelValue: 2024-05 - attributeHeader: - labelValue: 2023-09 - primaryLabelValue: 2023-09 + labelValue: 2024-06 + primaryLabelValue: 2024-06 - attributeHeader: - labelValue: 2023-10 - primaryLabelValue: 2023-10 + labelValue: 2024-07 + primaryLabelValue: 2024-07 - attributeHeader: - labelValue: 2023-11 - primaryLabelValue: 2023-11 + labelValue: 2024-08 + primaryLabelValue: 2024-08 - attributeHeader: - labelValue: 2023-12 - primaryLabelValue: 2023-12 + labelValue: 2024-09 + primaryLabelValue: 2024-09 + - attributeHeader: + labelValue: 2024-10 + primaryLabelValue: 2024-10 - headerGroups: - headers: - measureHeader: @@ -519,21 +518,21 @@ interactions: grandTotals: [] paging: count: - - 11 + - 12 - 2 offset: - 0 - 0 total: - - 11 + - 12 - 2 - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular body: - executionResult: 127b128bd0d5b4cf45d7a6ec2758d9e2f421fb35 fileName: Customers Trend format: XLSX + executionResult: 6ae8c8de921598391ebbcdf454a4af97a246d285:3029b1cff8a8ecc84348a1529b72cd6aaee9991e4c3e26da5ab2ac45efa04ee2 customOverride: labels: 0de7d7f08af7480aa636857a26be72b6: @@ -574,10 +573,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -602,9 +599,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -613,17 +607,21 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: - exportResult: f27228b3bc17c642753e37cf9c23875d834d09e4 + exportResult: 0e43963b16ccc52e72cd305fcc916ae99e7afd26 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/f27228b3bc17c642753e37cf9c23875d834d09e4 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/0e43963b16ccc52e72cd305fcc916ae99e7afd26 body: null headers: Accept: - - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/csv + - application/pdf, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, + text/csv, text/html Accept-Encoding: - br, gzip, deflate X-GDC-VALIDATE-RELATIONS: @@ -648,10 +646,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -674,9 +670,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -685,87 +678,20 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block - body: - string: '' - - request: - method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/f27228b3bc17c642753e37cf9c23875d834d09e4 - body: null - headers: - Accept: - - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/csv - Accept-Encoding: - - br, gzip, deflate - X-GDC-VALIDATE-RELATIONS: - - 'true' - X-Requested-With: - - XMLHttpRequest - response: - status: - code: 202 - message: Accepted - headers: - Access-Control-Allow-Credentials: - - 'true' - Access-Control-Expose-Headers: - - Content-Disposition, Content-Length, Content-Range, Set-Cookie - Cache-Control: - - no-cache, no-store, max-age=0, must-revalidate - Connection: - - keep-alive - Content-Length: - '0' - Content-Security-Policy: - - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' - ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com - cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com - *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src - ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src - ''self'' blob:; child-src blob:; connect-src ''self'' *.tiles.mapbox.com - *.mapbox.com *.litix.io *.wistia.com *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net - matomo.anywhere.gooddata.com; media-src ''self'' blob: data: *.wistia.com - *.wistia.net embedwistia-a.akamaihd.net' - DATE: *id001 - Expires: - - '0' - GoodData-Deployment: - - aio - Permission-Policy: - - geolocation 'none'; midi 'none'; sync-xhr 'none'; microphone 'none'; camera - 'none'; magnetometer 'none'; gyroscope 'none'; fullscreen 'none'; payment - 'none'; - Pragma: - - no-cache - Referrer-Policy: - - no-referrer - Server: - - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax - Vary: - - Origin - - Access-Control-Request-Method - - Access-Control-Request-Headers - X-Content-Type-Options: - - nosniff - X-GDC-TRACE-ID: *id001 - X-XSS-Protection: - - 1 ; mode=block + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:04 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: '' - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/f27228b3bc17c642753e37cf9c23875d834d09e4 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/export/tabular/0e43963b16ccc52e72cd305fcc916ae99e7afd26 body: null headers: Accept: - - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/csv + - application/pdf, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, + text/csv, text/html Accept-Encoding: - br, gzip, deflate X-GDC-VALIDATE-RELATIONS: @@ -788,16 +714,14 @@ interactions: Connection: - keep-alive Content-Disposition: - - attachment; filename*=UTF-8''Customers%20Trend.xlsx + - attachment; filename="=?UTF-8?Q?Customers_Trend.xlsx?="; filename*=UTF-8''Customers%20Trend.xlsx Content-Length: - - '6121' + - '6144' Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -822,9 +746,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Vary: - Origin - Access-Control-Request-Method @@ -833,7 +754,10 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:05 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: !!binary | UEsDBBQAAAAIAAAAPwBhXUk6TwEAAI8EAAATAAAAW0NvbnRlbnRfVHlwZXNdLnhtbK2Uy27CMBBF @@ -852,95 +776,95 @@ interactions: tLZMbElot2n99xEJTR0IoQefxIzYmQe7683P0IsDJuqCV1AVJQj0JtjOtwo+d2+PzyCItbe6Dx4V jEiwqR/W79hrzjPkukgih3hS4Jjji5RkHA6aihDR558mpEFzlqmVUZu9blEuyvJJpmkG1FeZYmsV pK2tQOzGiP/JDk3TGXwN5mtAzzcq5HdIe3KInEN1apEVXCySp6cqcirI2zCLOWE4z+IfyEmezbsM - yzkZiMc+L/QCcdb36lez1jud0H5wytc2pZjavzDy6uLqI1BLAwQUAAAACAAAAD8ARA3JE88CAAC3 - CAAAGAAAAHhsL3dvcmtzaGVldHMvc2hlZXQxLnhtbI2WW2+bMBiG7/crEPcDnw9RkqpNVW0Xk6Yd - rylxElTAEXab7d/PmKR1jSONSMjmOz28sT+zvPnTtdmLGkyj+1UOC5Bnqq/1tun3q/znj4ePIs+M - rfpt1eperfK/yuQ36w/Lkx6ezEEpm7kEvVnlB2uPi7I09UF1lSn0UfXOstNDV1k3HfalOQ6q2vqg - ri0RAKzsqqbPpwyL4X9y6N2uqdW9rp871dspyaDayjp8c2iOJl8vt42zje+TDWq3ym/hYgNRXq6X - vvSvRp1MMM5s9fhdtaq2ausEyLPxzR61fhqNn90jMIaWs9gHT/V1yLZqVz239ps+fVLN/mBdEjqG - 1Lo1/p51Te8zd9WfqUKztQc34gXlAENE86x+NlZ3v8+Gc/gUiM6B+C2QFQRRLq5EllNlT3lf2Wq9 - HPQpG3xpc6zGPwsusBOqHh/ejk+9zZGP8r2s0bJ8GdOcPe4mDxR4gPcem8kDBx7w1aN01V8RUBIB - +XAShOMIYfKg3sZgVH0ysqkuBQUEHFNBJKCMpTFwEgP7PDzAIBHG5CG8jcciTEY5YUBQMIwlE4j6 - e5qDJDnIjINGHCSQg0ZabUgoByOOA3FGJeWEMJHmoEkOOuNgEQcN9KCRWBsa6IEILzDCb1eagyU5 - 2IyDRxws1ENEHCzUA+KCEsguF09z8CQHn3FEpe54uD4isTY81MNxEC7d4uAYYnJND5HkEDMOGXGI - QA8ZLZ6NeLc+XBMSgklAOINux6Q5ZJJDzjhgtCfuZCAIjK0bGSqCeYEouCIEBOneBeYIMO5eIBQj - 7h1n66V5kIIAL4SX40oTg1caKZzDzFopDHeMjGFgIAgGvJCYA3n5XYFJt1SI5jBxU4XvumrcRmDY - VhFFhYDi6r4pg9PmWO3Vl2rYN73JWrVz9UHhOIbpcPRjq49+5FrEo7bu/LrMDu4LQQ3jzHXTndb2 - MhnPtddvjvU/UEsDBBQAAAAIAAAAPwDvbfqrTwEAAC8CAAAPAAAAeGwvd29ya2Jvb2sueG1sjVHL - TsMwELzzFZbvNA8lEa2aVKKAqISAQ2nPJt40Vv2IbIe0f886VQrcOHlndnc0s16uTkqSL7BOGF3S - ZBZTAro2XOhDST+2T7d3lDjPNGfSaCjpGRxdVTfLwdjjpzFHgvvalbT1vltEkatbUMzNTAcaO42x - inmE9hC5zgLjrgXwSkZpHBeRYkLTi8LC/kfDNI2o4cHUvQLtLyIWJPPo3rWic7RaNkLC7hKIsK57 - ZQptnyQlkjn/yIUHXtIMoRngD2H77r4XMoA8zmlUXUO+W8KhYb30W7Q2qeO50ixNizAZpnYCBvez - FCA57YXmZihpmuFlzxNKckqGsd4L7lskinh+5Z5BHFpf0nlRxEE8+qU+3m96iR7DrXvnjUJTZGtB - c/yw0NxgkARTLQQWdsOTUWrar5msMVZ4xsE0y5M5JU0v5Rq5N/1i2CgQlqZI1TdQSwMEFAAAAAgA - AAA/AIb8yMvfAAAABgIAABQAAAB4bC9zaGFyZWRTdHJpbmdzLnhtbG3RQWrDMBAF0H1PIbSPJTtp - mhRZWQR6gnZthD2JBdbI1YxNevsqFEIJWur9P0hizOkWJrFCIh+xlXWlpQDs4+Dx2sqvz4/NQQpi - h4ObIkIrf4Dkyb4YIhZ5FKmVI/P8rhT1IwRHVZwBc3KJKTjOx3RVNCdwA40AHCbVaL1XwXmUoo8L - cr52J8WC/nuB8wOsIW8NWxfu1MVL53r2K3T9QhxDfrFRbI26t/6aCVbABboZ0qP03BkcQxUi8vic - NLrZbnRT5m2Zd2V+LfO+zG9lPpT5WORal7ku879fqrxI+wtQSwMEFAAAAAgAAAA/AB/1sd4DAwAA - DxEAAA0AAAB4bC9zdHlsZXMueG1szVjRbpswFH3fV1ju61ZImmbZBFRbJaRJWzWp3bRXgw2xZmxk - TJT062djCNCRhiZZF3jAvtx7zrn2jW3i3awzBlZEFlRwH04uXQgIjwWmPPXhj4fw3QKCQiGOEROc - +HBDCngTvPEKtWHkfkmIAhqBFz5cKpV/dJwiXpIMFZciJ1y/SYTMkNJdmTpFLgnChQnKmDN13bmT - Icph4PEyCzNVgFiUXGkZWxOwjy9YG+czCCzcrcBaysXbiwsXOoHn1OGBlwjeolxDawi84hGsENMQ - E+MeCyYkUFomMVTawlFGrMctYjSS1BgTlFG2seapMVSZ1X4Z5UJW3Jahz7NoaWQa+TAM3erqc/0k - EiOOBrmGYS/dv4Dt1QdenQJ44Zr7lMDDIz4Cs3qY2aWM9WdXGwIvR0oRyUPdAXX7YZNrJq4r1sJU - fnu8U4k2k+n1+IBCMIqNivR2eOCi+gXlmKyJLmFdwQa9g3gkVzv7r8DlmvulXNVDz10kJNarTDN7 - C9iYAo+RROlwSdOleSqRGw6hlMh0A1OUCo6YIWgiRkSCaoHyoVrS+DdsShCVStQV6Fi//QT7kYxX - T0UnhMOdvytHe55ernM2SkZyd0ZvP3fl9jSzHb7DST0n5aVj3MBipDc1PF4wP0jvMdWwF/A/6/y3 - tTK0KhxaB3VDL2kxYeze4P1KeieXddI5tbjmzMK3Tb0Y1k0LYzsGv4tmsbuw7kG4YJ1sCXZFT3ZE - T9pogPKcbUJhE7S9z5Vj2//EaMoz0owBarpgKSR91KFmUzfTB81pU9HY9PXUVLmvk936pq2+aVff - 9Hl9ZhM6hdpD5V2dh7yrVt5VV97sdeSNmev6XG/1znZU4/VTvXdlFhEZVp8DHd3H12i1anSFx9qD - yCO0z89T+4gqeX/+VTI7ukpOkMVJamZ2dM28QiZOvTF1dr/e3re1AvOF58M7I5h1kolKyhTlA/ue - xsTrdsur3ioUMdJn0RiYJKhk6mH70odt+xvBtMw+bL2+05VQtVfb/mrynMwrBe1fGcEfUEsDBBQA - AAAIAAAAPwAY+kZUsAUAAFIbAAATAAAAeGwvdGhlbWUvdGhlbWUxLnhtbO1ZTY/bRBi+8ytGvreO - EzvNrpqtNtmkhe22q920qMeJPbGnGXusmcluc0PtEQkJURAXJG4cEFCplbiUX7NQBEXqX+D1R5Lx - ZrLNtosAtTkknvHzfn/4HefqtQcxQ0dESMqTtuVcrlmIJD4PaBK2rTuD/qWWhaTCSYAZT0jbmhJp - Xdv64CreVBGJCQLyRG7ithUplW7atvRhG8vLPCUJ3BtxEWMFSxHagcDHwDZmdr1Wa9oxpomFEhwD - 19ujEfUJGmQsra0Z8x6Dr0TJbMNn4tDPJeoUOTYYO9mPnMouE+gIs7YFcgJ+PCAPlIUYlgputK1a - /rHsrav2nIipFbQaXT//lHQlQTCu53QiHM4Jnb67cWVnzr9e8F/G9Xq9bs+Z88sB2PfBUmcJ6/Zb - TmfGUwMVl8u8uzWv5lbxGv/GEn6j0+l4GxV8Y4F3l/CtWtPdrlfw7gLvLevf2e52mxW8t8A3l/D9 - KxtNt4rPQRGjyXgJncVzHpk5ZMTZDSO8BfDWLAEWKFvLroI+UatyLcb3uegDIA8uVjRBapqSEfYB - 18XxUFCcCcCbBGt3ii1fLm1lspD0BU1V2/ooxVARC8ir5z+8ev4UvXr+5OThs5OHP588enTy8CcD - 4Q2chDrhy+8+/+ubT9CfT799+fhLM17q+N9+/PTXX74wA5UOfPHVk9+fPXnx9Wd/fP/YAN8WeKjD - BzQmEt0ix+iAx2CbQQAZivNRDCJMKxQ4AqQB2FNRBXhripkJ1yFV590V0ABMwOuT+xVdDyMxUdQA - 3I3iCnCPc9bhwmjObiZLN2eShGbhYqLjDjA+Msnungptb5JCJlMTy25EKmruM4g2DklCFMru8TEh - BrJ7lFb8ukd9wSUfKXSPog6mRpcM6FCZiW7QGOIyNSkIoa74Zu8u6nBmYr9DjqpIKAjMTCwJq7jx - Op4oHBs1xjHTkTexikxKHk6FX3G4VBDpkDCOegGR0kRzW0wr6u5i6ETGsO+xaVxFCkXHJuRNzLmO - 3OHjboTj1KgzTSId+6EcQ4pitM+VUQlerZBsDXHAycpw36VEna+s79AwMidIdmciyq5d6b8xTc5q - xoxCN37fjGfwbXg0mUridAtehfsfNt4dPEn2CeT6+777vu++i313VS2v220XDdbW5+KcX7xySB5R - xg7VlJGbMm/NEpQO+rCZL3Ki+UyeRnBZiqvgQoHzayS4+piq6DDCKYhxcgmhLFmHEqVcwknAWsk7 - P05SMD7f82ZnQEBjtceDYruhnw3nbPJVKHVBjYzBusIaV95OmFMA15TmeGZp3pnSbM2bUA0IZwd/ - p1kvREPGYEaCzO8Fg1lYLjxEMsIBKWPkGA1xGmu6rfV6r2nSNhpvJ22dIOni3BXivAuIUm0pSvZy - ObKkukLHoJVX9yzk47RtjWCSgss4BX4ya0CYhUnb8lVpymuL+bTB5rR0aisNrohIhVQ7WEYFVX5r - 9uokWehf99zMDxdjgKEbradFo+X8i1rYp0NLRiPiqxU7i2V5j08UEYdRcIyGbCIOMOjtFtkVUAnP - jPpsIaBC3TLxqpVfVsHpVzRldWCWRrjsSS0t9gU8v57rkK809ewVur+hKY0LNMV7d03JMhfG1kaQ - H6hgDBAYZTnatrhQEYculEbU7wsYHHJZoBeCsshUQix735zpSo4WfavgUTS5MFIHNESCQqdTkSBk - X5V2voaZU9efrzNGZZ+ZqyvT4ndIjggbZNXbzOy3UDTrJqUjctzpoNmm6hqG/f/w5OOumHzOHg8W - gtzzzCKu1vS1R8HG26lwzkdt3Wxx3Vv7UZvC4QNlX9C4qfDZYr4d8AOIPppPlAgS8VKrLL/55hB0 - bmnGZaz+2TFqEYLWinhf5PCpObuxwtlni3tzZ3sGX3tnu9peLlFbO8jkq6U/nvjwPsjegYPShClZ - vE16AEfN7uwvA+BjL0i3/gZQSwMEFAAAAAgAAAA/AN/8h8MlAQAAUAIAABEAAABkb2NQcm9wcy9j - b3JlLnhtbJ2Sy07DMBBF93xF5H3iJIWCrCSVAHVFJSSCQOwse9paxA/ZhrR/j5tXWykrluN758yd - kYvVQTbRL1gntCpRlqQoAsU0F2pXovd6HT+gyHmqOG20ghIdwaFVdVMwQ5i28Gq1AesFuCiAlCPM - lGjvvSEYO7YHSV0SHCqIW20l9aG0O2wo+6Y7wHmaLrEETzn1FJ+AsZmIaEByNiHNj206AGcYGpCg - vMNZkuGz14OVbrahUy6cUvijgVnrKE7ugxOTsW3bpF101pA/w5+bl7du1Vio06kYoKrgjDAL1Gtb - FfiyCIdrqPObcOKtAP54DPrM27BI3wc8CgFIH3dUPhZPz/UaVXma38ZpFud3dZaTxT3Jl1+nkVf9 - Z6AchvybOAL63NefoPoDUEsDBBQAAAAIAAAAPwCywDJHfgEAABkDAAAQAAAAZG9jUHJvcHMvYXBw - LnhtbJ1SwU7rMBC88xWR79RphdBT5RihAuLA06vUAGfjbBoLx7a826h9X4+TqiEFTuQ0OzsaT3ZX - 3Oxbm3UQ0XhXsPksZxk47SvjtgV7Lh8u/7AMSblKWe+gYAdAdiMvxDr6AJEMYJYcHBasIQpLzlE3 - 0CqcpbZLndrHVlEq45b7ujYa7rzeteCIL/L8msOewFVQXYbRkB0dlx391rTyus+HL+UhJD8pbkOw - RitKPyn/Gh09+pqy+70GK/i0KZLRBvQuGjrIXPBpKTZaWVglY1kriyD4JyEeQfUzWysTUYqOlh1o - 8jFD8z9NbcGyN4XQxylYp6JRjthRdiwGbANSlK8+vmMDQCj4SA5wqp1icyXngyCBcyEfgyR8HrE0 - ZAH/1WsV6YfE82niIQObZFztkHybriYrY1rft6CnJ788svJtUC5Nko/oybh3fA6lv1MEp7mek2LT - qAhVWsU495EQjylgtL1+1Si3heqk+d7or+DleOlyvpjl6RuWf+IE/zxq+QFQSwECFAMUAAAACAAA - AD8AYV1JOk8BAACPBAAAEwAAAAAAAAAAAAAAgIEAAAAAW0NvbnRlbnRfVHlwZXNdLnhtbFBLAQIU - AxQAAAAIAAAAPwDyn0na6QAAAEsCAAALAAAAAAAAAAAAAACAgYABAABfcmVscy8ucmVsc1BLAQIU - AxQAAAAIAAAAPwBEdVvw6AAAALkCAAAaAAAAAAAAAAAAAACAgZICAAB4bC9fcmVscy93b3JrYm9v - ay54bWwucmVsc1BLAQIUAxQAAAAIAAAAPwBEDckTzwIAALcIAAAYAAAAAAAAAAAAAACAgbIDAAB4 - bC93b3Jrc2hlZXRzL3NoZWV0MS54bWxQSwECFAMUAAAACAAAAD8A7236q08BAAAvAgAADwAAAAAA - AAAAAAAAgIG3BgAAeGwvd29ya2Jvb2sueG1sUEsBAhQDFAAAAAgAAAA/AIb8yMvfAAAABgIAABQA - AAAAAAAAAAAAAICBMwgAAHhsL3NoYXJlZFN0cmluZ3MueG1sUEsBAhQDFAAAAAgAAAA/AB/1sd4D - AwAADxEAAA0AAAAAAAAAAAAAAICBRAkAAHhsL3N0eWxlcy54bWxQSwECFAMUAAAACAAAAD8AGPpG - VLAFAABSGwAAEwAAAAAAAAAAAAAAgIFyDAAAeGwvdGhlbWUvdGhlbWUxLnhtbFBLAQIUAxQAAAAI - AAAAPwDf/IfDJQEAAFACAAARAAAAAAAAAAAAAACAgVMSAABkb2NQcm9wcy9jb3JlLnhtbFBLAQIU - AxQAAAAIAAAAPwCywDJHfgEAABkDAAAQAAAAAAAAAAAAAACAgacTAABkb2NQcm9wcy9hcHAueG1s - UEsFBgAAAAAKAAoAgAIAAFMVAAAAAA== + yzkZiMc+L/QCcdb36lez1jud0H5wytc2pZjavzDy6uLqI1BLAwQUAAAACAAAAD8A+0a6I/MCAAAY + CQAAGAAAAHhsL3dvcmtzaGVldHMvc2hlZXQxLnhtbI2WW2+bMBTH3/cpEO8zPr4TJal6UbU9TJp2 + fabESVABR+C227efuaQzrjNNSMjm+Pj/899wzPrqV1Mnz7rrK9NuUkA4TXRbml3VHjbp92/371Wa + 9LZod0VtWr1Jf+s+vdq+W7+Y7rE/am0TN0Hbb9KjtadVlvXlUTdFj8xJty6yN11TWNftDll/6nSx + G5OaOiMYi6wpqjadZlh1/zOH2e+rUt+Z8qnRrZ0m6XRdWIffH6tTn27Xu8rFhvUknd5v0mtY3QJN + s+16lP5R6Zfeaye2ePiqa11avXMGpMmwsgdjHofgR/cID6nZm9z7kepzl+z0vniq7Rfz8kFXh6N1 + k/AhpTR1P96TpmrHmZvi16RQ7ezRtSTiElMgPE3Kp96a5uccmNOnRDIn0r+JAjHCpbqQmU3KI+Vd + YYvtujMvSTdK96di2CxYUWdUOTy8Hp6OMUc+2Pe8JevseZhmHnEzjSDeCLwccTuNoN4IeB2ROfVX + BBJFIGM6GxMZJxQCgCnOxzgXgfYUFJOqxAgUYXFxGhWnY748i4tQfIqrMa5UID4F81lcIZBMSR6X + Z1F5tpTPQ/OZt3bBA3m2WDtDMsdUnK84BY9S8AUFJTSg4J4JItwB7pvABMIMcpK7beACLmyFiFKI + JQUPvRD/8kL4XgAgpTgjVBKl4JIXMkohlxQq9EJ6Xrx5G6XvhWKIyEsWqKi4WogzCMWV/ymwQFx5 + FhCiEIacAUjBJOZ5nCKPUuRLChYI3eS+BXlAkfsWAEaCcMAEM6xA0DgF4HhpwksOGXLMAyY7ZLgX + c3T2AyskKFBGiaJckQsFCi4USViQcMxDEvAsyUNL5ujsSc4QOFMpqOm6QBKvlUCWJFSEJH61BCxD + FL9eEuBI4pwo7l7T4X4BJV45YVk6eVgYbsCvnTmEJIviyQliVGFXPqdbQJJ5x9mpOOhPRXeo2j6p + 9d6dORi5766bTt+xbc1pbLnS9GCsOyDPvaP7BdHd0HPqe2PsuTMcnK8/Nds/UEsDBBQAAAAIAAAA + PwDvbfqrTwEAAC8CAAAPAAAAeGwvd29ya2Jvb2sueG1sjVHLTsMwELzzFZbvNA8lEa2aVKKAqISA + Q2nPJt40Vv2IbIe0f886VQrcOHlndnc0s16uTkqSL7BOGF3SZBZTAro2XOhDST+2T7d3lDjPNGfS + aCjpGRxdVTfLwdjjpzFHgvvalbT1vltEkatbUMzNTAcaO42xinmE9hC5zgLjrgXwSkZpHBeRYkLT + i8LC/kfDNI2o4cHUvQLtLyIWJPPo3rWic7RaNkLC7hKIsK57ZQptnyQlkjn/yIUHXtIMoRngD2H7 + 7r4XMoA8zmlUXUO+W8KhYb30W7Q2qeO50ixNizAZpnYCBvezFCA57YXmZihpmuFlzxNKckqGsd4L + 7lskinh+5Z5BHFpf0nlRxEE8+qU+3m96iR7DrXvnjUJTZGtBc/yw0NxgkARTLQQWdsOTUWrar5ms + MVZ4xsE0y5M5JU0v5Rq5N/1i2CgQlqZI1TdQSwMEFAAAAAgAAAA/AE3DFS27AAAABwEAABQAAAB4 + bC9zaGFyZWRTdHJpbmdzLnhtbF2PwUoEMRBE735F6LuT2RVEJMkehP0CPQ9NpncnMOmM6c6gf28W + UcFjVb2CKnf6yKvZqUoq7OEwjGCIY5kTXz28vZ7vn8CIIs+4FiYPnyRwCndORE2vsnhYVLdnayUu + lFGGshH35FJqRu2yXq1slXCWhUjzao/j+GgzJgYTS2P18ACmcXpv9PKjg5MUnAbMN2cqlwmjpp2m + 2ERL7nud1eDsjfomK+3EjaaN6i/0n5lRaciFdflLbH8SvgBQSwMEFAAAAAgAAAA/AHGJdRUZAwAA + bhEAAA0AAAB4bC9zdHlsZXMueG1s1Vhbb9owFH7fr7Dc161JKDC2EaqtEtKkrZrUbtqriZ1gzZfI + MQj66+dLIEkXSgr0svAQ+/ic7/uOfbAN48sVZ2BJVEGliGF0HkJARCIxFVkMf95O340gKDQSGDEp + SAzXpICXkzfjQq8ZuZkTooFBEEUM51rnH4OgSOaEo+Jc5kSYkVQqjrTpqiwockUQLmwQZ0EvDIcB + R1TAyVgs+JTrAiRyIXQMe1sT8K+v2Ggb9iHwcFcSGymcc7A2zycYtLoPmu5nb8/OQusalGyTcSpF + RTqA3jAZF3dgiZiBiKx7IplUQJusDIizCMSJ97hCjM4UtcYUccrW3tyzBjcRpR+nQirH7RmaPKOK + RmWzGE6noXuaXL+IwkigVq522PPwH2D/NIGXpwAehfZzSuD2Ge+A6V52dSljzdU1hsk4R1oTJaam + A8r27To3TMIUuIdxfnu8M4XWUW/QPaCQjGKrIrtqn7hZOUAFJitiStgUvEWvIR7JVa3+M3CF9vNY + LvcyazeTCptNabN6I7gxTcaMpNqEK5rN7VvL3HJIrSU3DUxRJgVilmAT0SESuP0shnpOkz9wU4Jo + oWVZgYH320+wH8l6NVTUQgTc+b0KjOfp5QavRklH7trs7ed2bvcz2+HbntRDUh47xxtYjMwZiLsL + FgfpPaYa9gK+sM6nrZW2XeHQOigbZktLCGM3Fu93ut3XIoO6Smu3ltDeWcS2aTbDsulhfMfi19E8 + dh02PAgXrNItwa7oaEd0VEUDlOdsPZU+Qd/74hyr/mdGM8HJZg7QpgvmUtE7E2oPdbt80F5ONU1s + 3yyNy32V7tbXq/T16vp6D+uzh9Ap1B4q7+IF5ZUXay/wohJ4URfYvy/wesFnRE3dBbsm9Elkd6mB + 8r7vs+jvqNLBIVkcpNvtJnXhifEg6gjtw9eqvUP1vP9fq6d/dPWcIIuT1FL/6Fp6hkyC8iCrnZaN + s3JrBfYXYQyvrWBWS2a2oExT0XJOGky8qo5IN6rRjJEmi8HAJEULpm+3gzGs2t8Jpgv+Yev1gy6l + Lr2q9jebZzR0Cqp/SiZ/AVBLAwQUAAAACAAAAD8AGPpGVLAFAABSGwAAEwAAAHhsL3RoZW1lL3Ro + ZW1lMS54bWztWU2P20QYvvMrRr63jhM7za6arTbZpIXttqvdtKjHiT2xpxl7rJnJbnND7REJCVEQ + FyRuHBBQqZW4lF+zUARF6l/g9UeS8WayzbaLALU5JJ7x835/+B3n6rUHMUNHREjKk7blXK5ZiCQ+ + D2gStq07g/6lloWkwkmAGU9I25oSaV3b+uAq3lQRiQkC8kRu4rYVKZVu2rb0YRvLyzwlCdwbcRFj + BUsR2oHAx8A2Zna9VmvaMaaJhRIcA9fboxH1CRpkLK2tGfMeg69EyWzDZ+LQzyXqFDk2GDvZj5zK + LhPoCLO2BXICfjwgD5SFGJYKbrStWv6x7K2r9pyIqRW0Gl0//5R0JUEwrud0IhzOCZ2+u3FlZ86/ + XvBfxvV6vW7PmfPLAdj3wVJnCev2W05nxlMDFZfLvLs1r+ZW8Rr/xhJ+o9PpeBsVfGOBd5fwrVrT + 3a5X8O4C7y3r39nudpsVvLfAN5fw/SsbTbeKz0ERo8l4CZ3Fcx6ZOWTE2Q0jvAXw1iwBFihby66C + PlGrci3G97noAyAPLlY0QWqakhH2AdfF8VBQnAnAmwRrd4otXy5tZbKQ9AVNVdv6KMVQEQvIq+c/ + vHr+FL16/uTk4bOThz+fPHp08vAnA+ENnIQ64cvvPv/rm0/Qn0+/ffn4SzNe6vjffvz011++MAOV + Dnzx1ZPfnz158fVnf3z/2ADfFniowwc0JhLdIsfogMdgm0EAGYrzUQwiTCsUOAKkAdhTUQV4a4qZ + CdchVefdFdAATMDrk/sVXQ8jMVHUANyN4gpwj3PW4cJozm4mSzdnkoRm4WKi4w4wPjLJ7p4KbW+S + QiZTE8tuRCpq7jOINg5JQhTK7vExIQaye5RW/LpHfcElHyl0j6IOpkaXDOhQmYlu0BjiMjUpCKGu + +GbvLupwZmK/Q46qSCgIzEwsCau48TqeKBwbNcYx05E3sYpMSh5OhV9xuFQQ6ZAwjnoBkdJEc1tM + K+ruYuhExrDvsWlcRQpFxybkTcy5jtzh426E49SoM00iHfuhHEOKYrTPlVEJXq2QbA1xwMnKcN+l + RJ2vrO/QMDInSHZnIsquXem/MU3OasaMQjd+34xn8G14NJlK4nQLXoX7HzbeHTxJ9gnk+vu++77v + vot9d1Utr9ttFw3W1ufinF+8ckgeUcYO1ZSRmzJvzRKUDvqwmS9yovlMnkZwWYqr4EKB82skuPqY + qugwwimIcXIJoSxZhxKlXMJJwFrJOz9OUjA+3/NmZ0BAY7XHg2K7oZ8N52zyVSh1QY2MwbrCGlfe + TphTANeU5nhmad6Z0mzNm1ANCGcHf6dZL0RDxmBGgszvBYNZWC48RDLCASlj5BgNcRpruq31eq9p + 0jYabydtnSDp4twV4rwLiFJtKUr2cjmypLpCx6CVV/cs5OO0bY1gkoLLOAV+MmtAmIVJ2/JVacpr + i/m0wea0dGorDa6ISIVUO1hGBVV+a/bqJFnoX/fczA8XY4ChG62nRaPl/Ita2KdDS0Yj4qsVO4tl + eY9PFBGHUXCMhmwiDjDo7RbZFVAJz4z6bCGgQt0y8aqVX1bB6Vc0ZXVglka47EktLfYFPL+e65Cv + NPXsFbq/oSmNCzTFe3dNyTIXxtZGkB+oYAwQGGU52ra4UBGHLpRG1O8LGBxyWaAXgrLIVEIse9+c + 6UqOFn2r4FE0uTBSBzREgkKnU5EgZF+Vdr6GmVPXn68zRmWfmasr0+J3SI4IG2TV28zst1A06yal + I3Lc6aDZpuoahv3/8OTjrph8zh4PFoLc88wirtb0tUfBxtupcM5Hbd1scd1b+1GbwuEDZV/QuKnw + 2WK+HfADiD6aT5QIEvFSqyy/+eYQdG5pxmWs/tkxahGC1op4X+TwqTm7scLZZ4t7c2d7Bl97Z7va + Xi5RWzvI5KulP5748D7I3oGD0oQpWbxNegBHze7sLwPgYy9It/4GUEsDBBQAAAAIAAAAPwAlLLR0 + JgEAAFACAAARAAAAZG9jUHJvcHMvY29yZS54bWydkstuwjAQRff9isj7xA70Qa0kSG3FqkiVSkXV + nWUPwWr8kO025O9rEgggsepyfO+cuTNyMd+pJvkF56XRJcozghLQ3Aip6xJ9rBbpDCU+MC1YYzSU + qAOP5tVNwS3lxsGbMxZckOCTCNKecluibQiWYuz5FhTzWXToKG6MUyzE0tXYMv7NasATQu6xgsAE + CwzvgakdieiAFHxE2h/X9ADBMTSgQAeP8yzHJ28Ap/zVhl45cyoZOgtXrUdxdO+8HI1t22bttLfG + /Dn+XL6+96umUu9PxQFVheCUO2DBuKrA50U8XMN8WMYTbySIpy7qV94Oiwx9IJIYgA5xj8p6+vyy + WqBqQia3aU5S8rAijzSfUXL3tR950X8CqsOQfxOPgCH35Seo/gBQSwMEFAAAAAgAAAA/ALLAMkd+ + AQAAGQMAABAAAABkb2NQcm9wcy9hcHAueG1snVLBTuswELzzFZHv1GmF0FPlGKEC4sDTq9QAZ+Ns + GgvHtrzbqH1fj5OqIQVO5DQ7OxpPdlfc7FubdRDReFew+SxnGTjtK+O2BXsuHy7/sAxJuUpZ76Bg + B0B2Iy/EOvoAkQxglhwcFqwhCkvOUTfQKpyltkud2sdWUSrjlvu6NhruvN614Igv8vyaw57AVVBd + htGQHR2XHf3WtPK6z4cv5SEkPyluQ7BGK0o/Kf8aHT36mrL7vQYr+LQpktEG9C4aOshc8GkpNlpZ + WCVjWSuLIPgnIR5B9TNbKxNRio6WHWjyMUPzP01twbI3hdDHKVinolGO2FF2LAZsA1KUrz6+YwNA + KPhIDnCqnWJzJeeDIIFzIR+DJHwesTRkAf/VaxXph8TzaeIhA5tkXO2QfJuuJitjWt+3oKcnvzyy + 8m1QLk2Sj+jJuHd8DqW/UwSnuZ6TYtOoCFVaxTj3kRCPKWC0vX7VKLeF6qT53uiv4OV46XK+mOXp + G5Z/4gT/PGr5AVBLAQIUAxQAAAAIAAAAPwBhXUk6TwEAAI8EAAATAAAAAAAAAAAAAACAgQAAAABb + Q29udGVudF9UeXBlc10ueG1sUEsBAhQDFAAAAAgAAAA/APKfSdrpAAAASwIAAAsAAAAAAAAAAAAA + AICBgAEAAF9yZWxzLy5yZWxzUEsBAhQDFAAAAAgAAAA/AER1W/DoAAAAuQIAABoAAAAAAAAAAAAA + AICBkgIAAHhsL19yZWxzL3dvcmtib29rLnhtbC5yZWxzUEsBAhQDFAAAAAgAAAA/APtGuiPzAgAA + GAkAABgAAAAAAAAAAAAAAICBsgMAAHhsL3dvcmtzaGVldHMvc2hlZXQxLnhtbFBLAQIUAxQAAAAI + AAAAPwDvbfqrTwEAAC8CAAAPAAAAAAAAAAAAAACAgdsGAAB4bC93b3JrYm9vay54bWxQSwECFAMU + AAAACAAAAD8ATcMVLbsAAAAHAQAAFAAAAAAAAAAAAAAAgIFXCAAAeGwvc2hhcmVkU3RyaW5ncy54 + bWxQSwECFAMUAAAACAAAAD8AcYl1FRkDAABuEQAADQAAAAAAAAAAAAAAgIFECQAAeGwvc3R5bGVz + LnhtbFBLAQIUAxQAAAAIAAAAPwAY+kZUsAUAAFIbAAATAAAAAAAAAAAAAACAgYgMAAB4bC90aGVt + ZS90aGVtZTEueG1sUEsBAhQDFAAAAAgAAAA/ACUstHQmAQAAUAIAABEAAAAAAAAAAAAAAICBaRIA + AGRvY1Byb3BzL2NvcmUueG1sUEsBAhQDFAAAAAgAAAA/ALLAMkd+AQAAGQMAABAAAAAAAAAAAAAA + AICBvhMAAGRvY1Byb3BzL2FwcC54bWxQSwUGAAAAAAoACgCAAgAAahUAAAAA diff --git a/gooddata-sdk/tests/support/fixtures/is_available.yaml b/gooddata-sdk/tests/support/fixtures/is_available.yaml index 0660bbee3..e9c7b6756 100644 --- a/gooddata-sdk/tests/support/fixtures/is_available.yaml +++ b/gooddata-sdk/tests/support/fixtures/is_available.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '111' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:05 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: options: diff --git a/gooddata-sdk/tests/support/fixtures/is_available_no_access.yaml b/gooddata-sdk/tests/support/fixtures/is_available_no_access.yaml index bdf37705a..4e4365275 100644 --- a/gooddata-sdk/tests/support/fixtures/is_available_no_access.yaml +++ b/gooddata-sdk/tests/support/fixtures/is_available_no_access.yaml @@ -32,10 +32,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -69,6 +67,6 @@ interactions: X-Content-Type-Options: - nosniff X-XSS-Protection: - - 1 ; mode=block + - '0' body: string: '' diff --git a/gooddata-sdk/tests/support/fixtures/wait_till_available_no_wait.yaml b/gooddata-sdk/tests/support/fixtures/wait_till_available_no_wait.yaml index 0660bbee3..e9c7b6756 100644 --- a/gooddata-sdk/tests/support/fixtures/wait_till_available_no_wait.yaml +++ b/gooddata-sdk/tests/support/fixtures/wait_till_available_no_wait.yaml @@ -30,10 +30,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -59,9 +57,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -72,9 +67,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '111' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:05 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: options: diff --git a/gooddata-sdk/tests/table/fixtures/table_with_attribute_and_metric.yaml b/gooddata-sdk/tests/table/fixtures/table_with_attribute_and_metric.yaml index 136ade280..35ad8e211 100644 --- a/gooddata-sdk/tests/table/fixtures/table_with_attribute_and_metric.yaml +++ b/gooddata-sdk/tests/table/fixtures/table_with_attribute_and_metric.yaml @@ -58,10 +58,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -87,9 +85,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -100,9 +95,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '530' + - '614' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -122,6 +120,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 - headers: - measureGroupHeaders: @@ -130,10 +129,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: c1d0ce8592f9c1ec68dddbeceee13fd3b5f3e587 + executionResult: 10100d2319715def379773d5bbb6ce46e66e0307:d59eb5eaa08bf410aa988d4043f5a5caff5736992828f87020d5f9ba7c4b45b4 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/c1d0ce8592f9c1ec68dddbeceee13fd3b5f3e587?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/10100d2319715def379773d5bbb6ce46e66e0307%3Ad59eb5eaa08bf410aa988d4043f5a5caff5736992828f87020d5f9ba7c4b45b4?offset=0%2C0&limit=512%2C256 body: null headers: Accept: @@ -160,10 +159,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -188,9 +185,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -201,9 +195,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '626' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-sdk/tests/table/fixtures/table_with_attribute_metric_and_filter.yaml b/gooddata-sdk/tests/table/fixtures/table_with_attribute_metric_and_filter.yaml index 2eb0be653..43989b70c 100644 --- a/gooddata-sdk/tests/table/fixtures/table_with_attribute_metric_and_filter.yaml +++ b/gooddata-sdk/tests/table/fixtures/table_with_attribute_metric_and_filter.yaml @@ -65,10 +65,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -94,9 +92,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -107,9 +102,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '530' + - '614' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -129,6 +127,7 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 - headers: - measureGroupHeaders: @@ -137,10 +136,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: fbb62bbc441f14e756b23f22b46da8286b246d1a + executionResult: a739d2b1cc6aed809b5aa2d06168a5ac3eb4ee26:b1bc21daf88c64094b12e237356c601b9d483a53d77951c5961058ffa2daa2fc - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fbb62bbc441f14e756b23f22b46da8286b246d1a?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/a739d2b1cc6aed809b5aa2d06168a5ac3eb4ee26%3Ab1bc21daf88c64094b12e237356c601b9d483a53d77951c5961058ffa2daa2fc?offset=0%2C0&limit=512%2C256 body: null headers: Accept: @@ -167,10 +166,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -195,9 +192,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -208,9 +202,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '377' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: diff --git a/gooddata-sdk/tests/table/fixtures/table_with_attribute_show_all_values.yaml b/gooddata-sdk/tests/table/fixtures/table_with_attribute_show_all_values.yaml index b0f71a69d..6acd74fce 100644 --- a/gooddata-sdk/tests/table/fixtures/table_with_attribute_show_all_values.yaml +++ b/gooddata-sdk/tests/table/fixtures/table_with_attribute_show_all_values.yaml @@ -59,10 +59,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -88,9 +86,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -101,9 +96,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '573' + - '638' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -132,10 +130,10 @@ interactions: - localIdentifier: metric1 localIdentifier: dim_1 links: - executionResult: 326e2b492d6b6359da4696d5f1473d66d6260881 + executionResult: ce7369a095e76892e8bf49f023205ec8ab57e45f:6e39bab381b4e69fc3f764f8fece02f1765ec23fd93ef5ef8ca2932b14aa98cb - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/326e2b492d6b6359da4696d5f1473d66d6260881?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/ce7369a095e76892e8bf49f023205ec8ab57e45f%3A6e39bab381b4e69fc3f764f8fece02f1765ec23fd93ef5ef8ca2932b14aa98cb?offset=0%2C0&limit=512%2C256 body: null headers: Accept: @@ -162,10 +160,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -190,9 +186,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -203,17 +196,20 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '4433' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: - - - 61.0 - - - 111.0 - - - 131.0 - - - 111.0 - - - 78.0 + - - 66.0 + - - 108.0 + - - 130.0 + - - 114.0 + - - 74.0 - - 99.0 - - 94.0 - - 104.0 @@ -249,56 +245,20 @@ interactions: - - 125.0 - - 228.0 - - 160.0 - - - 141.0 - - - 164.0 - - - 155.0 - - - 156.0 - - - 149.0 - - - 191.0 - - - 238.0 - - - 316.0 - - - 220.0 - - - 170.0 - - - 204.0 + - - 152.0 + - - 153.0 + - - 168.0 + - - 151.0 + - - 147.0 + - - 189.0 + - - 267.0 + - - 294.0 + - - 217.0 + - - 165.0 + - - 201.0 dimensionHeaders: - headerGroups: - headers: - - attributeHeader: - labelValue: 2019-10 - primaryLabelValue: 2019-10 - - attributeHeader: - labelValue: 2019-11 - primaryLabelValue: 2019-11 - - attributeHeader: - labelValue: 2019-12 - primaryLabelValue: 2019-12 - - attributeHeader: - labelValue: 2020-01 - primaryLabelValue: 2020-01 - - attributeHeader: - labelValue: 2020-02 - primaryLabelValue: 2020-02 - - attributeHeader: - labelValue: 2020-03 - primaryLabelValue: 2020-03 - - attributeHeader: - labelValue: 2020-04 - primaryLabelValue: 2020-04 - - attributeHeader: - labelValue: 2020-05 - primaryLabelValue: 2020-05 - - attributeHeader: - labelValue: 2020-06 - primaryLabelValue: 2020-06 - - attributeHeader: - labelValue: 2020-07 - primaryLabelValue: 2020-07 - - attributeHeader: - labelValue: 2020-08 - primaryLabelValue: 2020-08 - - attributeHeader: - labelValue: 2020-09 - primaryLabelValue: 2020-09 - attributeHeader: labelValue: 2020-10 primaryLabelValue: 2020-10 @@ -416,6 +376,42 @@ interactions: - attributeHeader: labelValue: 2023-12 primaryLabelValue: 2023-12 + - attributeHeader: + labelValue: 2024-01 + primaryLabelValue: 2024-01 + - attributeHeader: + labelValue: 2024-02 + primaryLabelValue: 2024-02 + - attributeHeader: + labelValue: 2024-03 + primaryLabelValue: 2024-03 + - attributeHeader: + labelValue: 2024-04 + primaryLabelValue: 2024-04 + - attributeHeader: + labelValue: 2024-05 + primaryLabelValue: 2024-05 + - attributeHeader: + labelValue: 2024-06 + primaryLabelValue: 2024-06 + - attributeHeader: + labelValue: 2024-07 + primaryLabelValue: 2024-07 + - attributeHeader: + labelValue: 2024-08 + primaryLabelValue: 2024-08 + - attributeHeader: + labelValue: 2024-09 + primaryLabelValue: 2024-09 + - attributeHeader: + labelValue: 2024-10 + primaryLabelValue: 2024-10 + - attributeHeader: + labelValue: 2024-11 + primaryLabelValue: 2024-11 + - attributeHeader: + labelValue: 2024-12 + primaryLabelValue: 2024-12 - headerGroups: - headers: - measureHeader: @@ -498,10 +494,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -526,9 +520,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -539,9 +530,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '573' + - '638' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:10 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -570,10 +564,10 @@ interactions: - localIdentifier: metric1 localIdentifier: dim_1 links: - executionResult: 30b3448590ba675888170d2337928bbddfc5d070 + executionResult: 2bbbb1d680a3c0f153f75aac41df47c5cb14bd98:4855f84348918da90b69a6aaf25caf4009ac7d0233d0be1bb89d53eb2be5e88e - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/30b3448590ba675888170d2337928bbddfc5d070?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2bbbb1d680a3c0f153f75aac41df47c5cb14bd98%3A4855f84348918da90b69a6aaf25caf4009ac7d0233d0be1bb89d53eb2be5e88e?offset=0%2C0&limit=512%2C256 body: null headers: Accept: @@ -600,10 +594,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -628,9 +620,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -641,9 +630,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '4280' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:10 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -692,50 +684,14 @@ interactions: - - null - - 1.0 - - null - - - 3.0 - - - 9.0 - - - 1.0 - - - 9.0 + - - 4.0 + - - 8.0 + - - 6.0 + - - 4.0 - - 5.0 dimensionHeaders: - headerGroups: - headers: - - attributeHeader: - labelValue: 2019-11 - primaryLabelValue: 2019-11 - - attributeHeader: - labelValue: 2019-12 - primaryLabelValue: 2019-12 - - attributeHeader: - labelValue: 2020-01 - primaryLabelValue: 2020-01 - - attributeHeader: - labelValue: 2020-02 - primaryLabelValue: 2020-02 - - attributeHeader: - labelValue: 2020-03 - primaryLabelValue: 2020-03 - - attributeHeader: - labelValue: 2020-04 - primaryLabelValue: 2020-04 - - attributeHeader: - labelValue: 2020-05 - primaryLabelValue: 2020-05 - - attributeHeader: - labelValue: 2020-06 - primaryLabelValue: 2020-06 - - attributeHeader: - labelValue: 2020-07 - primaryLabelValue: 2020-07 - - attributeHeader: - labelValue: 2020-08 - primaryLabelValue: 2020-08 - - attributeHeader: - labelValue: 2020-09 - primaryLabelValue: 2020-09 - - attributeHeader: - labelValue: 2020-10 - primaryLabelValue: 2020-10 - attributeHeader: labelValue: 2020-11 primaryLabelValue: 2020-11 @@ -850,6 +806,42 @@ interactions: - attributeHeader: labelValue: 2023-12 primaryLabelValue: 2023-12 + - attributeHeader: + labelValue: 2024-01 + primaryLabelValue: 2024-01 + - attributeHeader: + labelValue: 2024-02 + primaryLabelValue: 2024-02 + - attributeHeader: + labelValue: 2024-03 + primaryLabelValue: 2024-03 + - attributeHeader: + labelValue: 2024-04 + primaryLabelValue: 2024-04 + - attributeHeader: + labelValue: 2024-05 + primaryLabelValue: 2024-05 + - attributeHeader: + labelValue: 2024-06 + primaryLabelValue: 2024-06 + - attributeHeader: + labelValue: 2024-07 + primaryLabelValue: 2024-07 + - attributeHeader: + labelValue: 2024-08 + primaryLabelValue: 2024-08 + - attributeHeader: + labelValue: 2024-09 + primaryLabelValue: 2024-09 + - attributeHeader: + labelValue: 2024-10 + primaryLabelValue: 2024-10 + - attributeHeader: + labelValue: 2024-11 + primaryLabelValue: 2024-11 + - attributeHeader: + labelValue: 2024-12 + primaryLabelValue: 2024-12 - headerGroups: - headers: - measureHeader: @@ -932,10 +924,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -960,9 +950,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -973,9 +960,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '573' + - '638' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:10 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -1004,10 +994,10 @@ interactions: - localIdentifier: metric1 localIdentifier: dim_1 links: - executionResult: d630f484d42b0a4c3fda9d5b638feafe87f8bee2 + executionResult: 0b14e3cda4f7a50e33ebaca33f1c2ed977a58205:dc2ba7a1089a1a495e52d4c1a4de525e55e33868db52eafe4ce08d0b6c80e55f - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/d630f484d42b0a4c3fda9d5b638feafe87f8bee2?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/0b14e3cda4f7a50e33ebaca33f1c2ed977a58205%3Adc2ba7a1089a1a495e52d4c1a4de525e55e33868db52eafe4ce08d0b6c80e55f?offset=0%2C0&limit=512%2C256 body: null headers: Accept: @@ -1034,10 +1024,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -1062,9 +1050,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -1075,9 +1060,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '2722' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:10 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: @@ -1107,89 +1095,65 @@ interactions: - - 10.0 - - 3.0 - - 1.0 - - - 3.0 - - - 9.0 - - - 1.0 - - - 9.0 + - - 4.0 + - - 8.0 + - - 6.0 + - - 4.0 - - 5.0 dimensionHeaders: - headerGroups: - headers: - - attributeHeader: - labelValue: 2019-11 - primaryLabelValue: 2019-11 - - attributeHeader: - labelValue: 2019-12 - primaryLabelValue: 2019-12 - - attributeHeader: - labelValue: 2020-01 - primaryLabelValue: 2020-01 - - attributeHeader: - labelValue: 2020-02 - primaryLabelValue: 2020-02 - - attributeHeader: - labelValue: 2020-04 - primaryLabelValue: 2020-04 - - attributeHeader: - labelValue: 2020-09 - primaryLabelValue: 2020-09 - attributeHeader: labelValue: 2020-11 primaryLabelValue: 2020-11 - attributeHeader: labelValue: 2020-12 primaryLabelValue: 2020-12 + - attributeHeader: + labelValue: 2021-01 + primaryLabelValue: 2021-01 - attributeHeader: labelValue: 2021-02 primaryLabelValue: 2021-02 - - attributeHeader: - labelValue: 2021-03 - primaryLabelValue: 2021-03 - attributeHeader: labelValue: 2021-04 primaryLabelValue: 2021-04 - attributeHeader: - labelValue: 2021-05 - primaryLabelValue: 2021-05 - - attributeHeader: - labelValue: 2021-08 - primaryLabelValue: 2021-08 - - attributeHeader: - labelValue: 2021-10 - primaryLabelValue: 2021-10 + labelValue: 2021-09 + primaryLabelValue: 2021-09 - attributeHeader: labelValue: 2021-11 primaryLabelValue: 2021-11 + - attributeHeader: + labelValue: 2021-12 + primaryLabelValue: 2021-12 - attributeHeader: labelValue: 2022-02 primaryLabelValue: 2022-02 + - attributeHeader: + labelValue: 2022-03 + primaryLabelValue: 2022-03 + - attributeHeader: + labelValue: 2022-04 + primaryLabelValue: 2022-04 - attributeHeader: labelValue: 2022-05 primaryLabelValue: 2022-05 - - attributeHeader: - labelValue: 2022-06 - primaryLabelValue: 2022-06 - attributeHeader: labelValue: 2022-08 primaryLabelValue: 2022-08 - - attributeHeader: - labelValue: 2022-09 - primaryLabelValue: 2022-09 - attributeHeader: labelValue: 2022-10 primaryLabelValue: 2022-10 - attributeHeader: labelValue: 2022-11 primaryLabelValue: 2022-11 - - attributeHeader: - labelValue: 2022-12 - primaryLabelValue: 2022-12 - - attributeHeader: - labelValue: 2023-01 - primaryLabelValue: 2023-01 - attributeHeader: labelValue: 2023-02 primaryLabelValue: 2023-02 + - attributeHeader: + labelValue: 2023-05 + primaryLabelValue: 2023-05 - attributeHeader: labelValue: 2023-06 primaryLabelValue: 2023-06 @@ -1208,6 +1172,30 @@ interactions: - attributeHeader: labelValue: 2023-12 primaryLabelValue: 2023-12 + - attributeHeader: + labelValue: 2024-01 + primaryLabelValue: 2024-01 + - attributeHeader: + labelValue: 2024-02 + primaryLabelValue: 2024-02 + - attributeHeader: + labelValue: 2024-06 + primaryLabelValue: 2024-06 + - attributeHeader: + labelValue: 2024-08 + primaryLabelValue: 2024-08 + - attributeHeader: + labelValue: 2024-09 + primaryLabelValue: 2024-09 + - attributeHeader: + labelValue: 2024-10 + primaryLabelValue: 2024-10 + - attributeHeader: + labelValue: 2024-11 + primaryLabelValue: 2024-11 + - attributeHeader: + labelValue: 2024-12 + primaryLabelValue: 2024-12 - headerGroups: - headers: - measureHeader: diff --git a/gooddata-sdk/tests/table/fixtures/table_with_just_attribute.yaml b/gooddata-sdk/tests/table/fixtures/table_with_just_attribute.yaml index 6f0245fe7..39ed0079d 100644 --- a/gooddata-sdk/tests/table/fixtures/table_with_just_attribute.yaml +++ b/gooddata-sdk/tests/table/fixtures/table_with_just_attribute.yaml @@ -46,10 +46,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -75,9 +73,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -88,9 +83,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '394' + - '478' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:08 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -110,12 +108,13 @@ interactions: primaryLabel: id: region type: label + valueType: TEXT localIdentifier: dim_0 links: - executionResult: 02333ca01b02ab66bb33be3915ea7a9f08935aed + executionResult: c503da1a362b4a218a3b0a1dd502dc5d2f3af056:61cf2f8ea45f6a82f5ea989cc4cf09aa857184cbb0d79427beea1cb251caacb9 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/02333ca01b02ab66bb33be3915ea7a9f08935aed?offset=0&limit=512 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/c503da1a362b4a218a3b0a1dd502dc5d2f3af056%3A61cf2f8ea45f6a82f5ea989cc4cf09aa857184cbb0d79427beea1cb251caacb9?offset=0&limit=512 body: null headers: Accept: @@ -142,10 +141,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -170,9 +167,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -183,9 +177,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '499' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:08 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: [] diff --git a/gooddata-sdk/tests/table/fixtures/table_with_just_metric.yaml b/gooddata-sdk/tests/table/fixtures/table_with_just_metric.yaml index 85664bd4f..ac4c0ef5b 100644 --- a/gooddata-sdk/tests/table/fixtures/table_with_just_metric.yaml +++ b/gooddata-sdk/tests/table/fixtures/table_with_just_metric.yaml @@ -50,10 +50,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -79,9 +77,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -92,9 +87,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - - '245' + - '310' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:08 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: executionResponse: @@ -106,10 +104,10 @@ interactions: name: Order Amount localIdentifier: dim_0 links: - executionResult: b821584b344c569a2b36985d335615091110b694 + executionResult: acbaa4d2a399070ad77d8cac5db560b161dda458:fe83d3ae2080aa4da286724774f9aa53c73c221d89f5b080e2a37a57c2cc3d32 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/b821584b344c569a2b36985d335615091110b694?offset=0&limit=256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/acbaa4d2a399070ad77d8cac5db560b161dda458%3Afe83d3ae2080aa4da286724774f9aa53c73c221d89f5b080e2a37a57c2cc3d32?offset=0&limit=256 body: null headers: Accept: @@ -136,10 +134,8 @@ interactions: Content-Security-Policy: - 'default-src ''self'' *.wistia.com *.wistia.net; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' *.wistia.com *.wistia.net *.hsforms.net *.hsforms.com - src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdn.jsdelivr.net - cdnjs.cloudflare.com; img-src ''self'' data: blob: *.wistia.com *.wistia.net - *.hsforms.net *.hsforms.com embedwistia-a.akamaihd.net privacy-policy.truste.com - www.gooddata.com; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com + src.litix.io matomo.anywhere.gooddata.com *.jquery.com unpkg.com cdnjs.cloudflare.com; + img-src * data: blob:; style-src ''self'' ''unsafe-inline'' fonts.googleapis.com cdn.jsdelivr.net fast.fonts.net; font-src ''self'' data: fonts.gstatic.com *.alicdn.com *.wistia.com cdn.jsdelivr.net info.gooddata.com; frame-src ''self'' *.hsforms.net *.hsforms.com; object-src ''none''; worker-src @@ -164,9 +160,6 @@ interactions: - no-referrer Server: - nginx - Set-Cookie: - - SPRING_REDIRECT_URI=; Path=/; Max-Age=0; Expires=Thu, 01 Jan 1970 00:00:00 - GMT; HttpOnly; SameSite=Lax Transfer-Encoding: - chunked Vary: @@ -177,9 +170,12 @@ interactions: - nosniff X-GDC-TRACE-ID: *id001 X-XSS-Protection: - - 1 ; mode=block + - '0' content-length: - '176' + set-cookie: + - SPRING_REDIRECT_URI=; Max-Age=0; Expires=Mon, 07 Oct 2024 09:18:09 GMT; + Path=/; HTTPOnly; SameSite=Lax body: string: data: